The <join> element indeed solves this problem. The documentation is in the current trunk, but not yet published online. It is essentially the same as the Hibernate doc, see these links:
Note that the foreign key to tblDevice in tblRouter must be unique, otherwise, NHibernate would not know which row to use (it can only use one).
As to the DeviceType, as marcal had suggested, you probably have to use the DeviceType ID directly in your mapping file if the list of DeviceTypes are rather static.
See this post for more information on integrating NH-466 to 1.2GA:
http://forum.hibernate.org/viewtopic.ph ... 67#2365067