# How to implement TDM on USRP1 and GNU Radio

**URL:** <https://www.ruby-forum.com/t/how-to-implement-tdm-on-usrp1-and-gnu-radio/240525>\
**Category:** GNU Radio\
**Created:** [April 18, 2014, 11:00am UTC](https://www.ruby-forum.com/t/how-to-implement-tdm-on-usrp1-and-gnu-radio/240525 "2014-04-18T11:00:51Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Detlef\_R](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@Detlef\_R](https://www.ruby-forum.com/u/Detlef_R)\
**Post date:** [April 18, 2014, 11:00am UTC](https://www.ruby-forum.com/t/how-to-implement-tdm-on-usrp1-and-gnu-radio/240525/1 "2014-04-18T11:00:51Z")

</div>

Hello everyone,

I’m working on implementation of two-way relaying model using GNU Radio  
(with GNU Radio Companion as interface) and 3 USRP1s (each has one  
RFX2400  
daughterboard and one VERT2450 antena). The relay node (R) decodes  
messages  
from two end nodes (A and B) separately and performs a bitwise XOR on  
these  
messages before transmitting the XORed data to end nodes. This model  
runs  
well with short message.

However, at the moment, nodes A and node B are running on their own and  
user can just start/stop transmitting/receiving by hand. It’s needed to  
have timing synchronization. This can be done by adding a beacon in node  
R.  
This beacon is a pulse, transmitted each time before node R is able to  
receive signal. Node A and node B transmit their message once the end of  
the beacon is received. This process requires system to perform TDM. The  
flow chart for each node can be found here:  
[![](https://dl.dropboxusercontent.com/s/456s3lucpfa5wnc/AB%20protocol.png) ](https://dl.dropboxusercontent.com/s/456s3lucpfa5wnc/AB%20protocol.png)

My problem is that I don’t know how to design a TDM to manage the  
transmit/receive phase. In particular, in end nodes, we need to notice  
the  
transmitter when the beacon is received and tell it to transmit; in  
relay  
node, we need to tell it when to transmit the beacon, when to receive  
(not  
simultaneously).

Does anyone have experience with TDM on USRP and GNU Radio? Please give  
me  
some clue for that. Should I write some new blocks or modify the python  
script generated by GNU Radio Companion?

Any help would be greatly appreciated.

Hoang from Vietnam.

–  
Ngo K. Hoang  
Faculty of Electronics and Telecommunications -  
University of Engineering and Technology (UET) - Vietnam National  
University, Hanoi (VNU)  
Vice-president of Student Association of UET  
Alternative email: removed\_email\_address@domain.invalid  
Mobilephone: +84.163.682.7874
