I’m new to developing TTN devices and applications. Despite reading though the Wiki and lots of threads here, I haven’t found a clear-cut answer to the following question:
Is it possible to have a device be part of multiple applications? Or is there always a 1:1 mapping between device and application?
If there is indeed a 1:1 mapping, what is the technical and architecture background?
Definitely not - but only because you accidentally asked a broader question than you mean to.
A device can only be assigned to one application at a time, so the issue is in the other direction: although it is not required typically an application has many devices.
Thus in terms of the designed capability, there is a many-to-one mapping from devices to an application.
Generally for devices to be grouped under an application they need to have a common sense of administration. Commonly they will also have a common data format, or at least an agreement that data on this “port” is of this meaning and format, and that port this other. The devices may still differ in that they’d implement different subsets of a non-conflicting collection of format/port pairs.
Though technically, that’s a matter of convenience not requirement as the receiver of application data could look up information it might store specific to each device before attempting to interpret the data.