What is the procedure of implementing TDMA scheme on GNU radio using USRP? I want to implement TDMA scheme using two USRPs as a transmitter and the third one as a receiver. The requirement is that first transmitter sends some data to the receiver for first 10 seconds and then after a delay of two seconds, the second transmitter sends some data to the receiver for another 10 seconds and this process continues to do so. Anyone who can help or provide with some useful links in order to implement this whole process in GNU radio software?
2 Answers
I am in the middle of implementing a TDMA radio. My design relies on GPS sync on the GR host platform. I use its time to sync my USRP using set_time_unknown_pps using an arg that is 2 seconds in the future.
My MAC block is purely message based, acting as a PDU broker between the application and PHY layer. PDU's to be transmitted are tagged with a tx_time command with time set an appropriate amount into the future. I've had to write several OOT blocks to handle tx_[sob,eob] tagging and other PHY details, but in the end packets come out exactly when they need to. The turn on latency for my B200mini appears to be about 1-2 us, which is fine for my timing requirements.
My advice is to start with simple MAC functions and test all the way along until you are confident with a block, then move down the transmit chain.
Anticipating your obvious question, I cannot release any of my code because it's not my code to release :-)

- 96
- 8
Here is a useful link, explaining how a TDMA system may be implemented in GNU Radio.

- 1
- 1
- 1
-
Notice that this presentation is from 2012 and many of the architectural aspects have gone through significant rework since then. I wouldn't build a system with modern GNU Radio like Josh describes it in that video. – Marcus Müller Dec 16 '15 at 22:37
-
especially, you can't use gr-extras anymore, and you needn't. Many of Josh's features and of John's approaches have made their way into modern GNU Radio, often in slightly modified version. – Marcus Müller Dec 16 '15 at 22:38
-
So generally, this link isn't useful anymore. – Marcus Müller Dec 16 '15 at 22:54
-
Hi Marcus! Do you know any guide for implementing TDMA? (like switching from TX/RX in specific times, transmitting only in the TDMA slots) – Okan Erturk Jul 16 '22 at 18:00