I am working on a project where we have several remote XTend 900 modules reporting GPS data to a central location. My predecessor has implemented this using TDMA as follows:
The system consists of several remote units on a single hopping channel. The units use GPS PPS data to synchronize so that each one broadcasts during a specific (unique) time slot. The time slot for a typical unit is 20-50 ms long (depending on how many units are sharing the hopping channel) and repeats every 250 ms, giving us four samples per second from each unit. The message sent by each unit during its time slot is about 150 bytes long.
For each hopping channel used by remote units, there is a receiver at our central station. The idea is that each receiver is responsible for the stream of data coming from units on a single hopping channel. This stream is then de-multiplexed in software to give one sample from each remote unit every 250 ms.
The problem is this… Each remote unit is frequency hopping independently of the others, so there is no guarantee that the incoming stream of messages will follow the usual frequency hopping scheme for a given channel. Thus, I believe, the receiver is actually “resetting” its frequency hopping scheme between messages–falling back to the initialization mode where it searches for a transmission on any of the 50 available frequencies.
I have three questions:
The first is whether someone can recommend a better scheme than the one we are currently using. Each remote unit needs to send 4 messages of 150 bytes each per second, and we would like to support 20-50 remote units.
The second, more specific, question is whether there is a way to synchronize frequency hopping between units. Since we have a GPS PPS source, in principle we should be able to follow the same hopping scheme that would be used for a given channel, but with each message sent from a different remote unit. However, looking through the user manual I don’t see any documented commands which would allow us to synchronize frequency hopping in this way.
Finally, I wonder if someone can describe in greater detail how the frequency hopping scheme works. At the moment, our maximum packet length is set to 200 bytes and we shut down the transmitter between messages, so each 150-byte message sent from a remote unit is sent as an individual packet during that unit’s TDMA time slot. However, it’s not clear to me whether a single transmitter will attempt to send the next message (250 ms later) on the next hopping frequency, or if hopping has a timed component which would cause it to “skip” some frequencies. It also isn’t clear to me how the receiver “searches” for transmitters during initialization, or what conditions might cause it to be re-initialized. This information would help a lot when I’m trying to understand/model the behaviour of our system.
Thanks so much for your help!