Jawad,

I though I'd add a few more comments:



*gr-mac*
Much of the functionality of pre-cog has been ported to gr-mac, which works
with "core" features of gnuradio like the new message passing API.  *We've
also added a burst_tagger block that converts length tags to tx_sob/tx_eob
tags as Martin suggests.*

Of course, for real TDMA you will need to add tx_time tags, in addition to
adding the tx_sob (doesn't actually do much IIRC) and tx_eob flags (makes
the Tx switch off quickly after tx). tx_time tells the USRP exactly when to
start streaming and the value you assigned here would take into
consideration slots, guard intervals, interface latency, processing jitter,
etc.  The block that adds these tags will also have to track time and
schedule when these tags are added and samples go out.

If you plan to make a TDMA block, perhaps you can contribute that back to
community through gr-mac.  Balint and I were also planning to develop one,
but I can't make any specific promises on out timeline.  We certainly
welcome and encourage more contributions!  You can see my GRCon13
presentation for more information on how tx_eob/time tags work, and how the
FHSS/TDMA designs worked (could be vastly improved):
http://gnuradio.squarespace.com/storage/grcon13_presentations/grcon13_malsbury_phy_mac_primer.pdf

https://github.com/jmalsbury/gr-mac

https://github.com/balint256/gr-mac


*An Alternative Way to do Tags*

If you know that your radios will always transmit with the same packet
length, even if those packets are "preamble/fillter" packets with no useful
data, then you could do the following:

   - Each USRP gets two antennas and runs in full duplex, and would be
   synchronized in time with PPS or a GPSDO with visibility to the GPS system
   - On the transmit side, the transmit stream would run continuously
   - Use offset LO tuning
   - Interleave 0-samples with the useful transmitted data to reduce the
   null output of the quadrature modulator

This approach isn't the cleanest and might come with some minor penalties
like inflexibility, and the presence of a low, unmodulated carrier from LO
leakage/DC offset.  But this would require less knowledge of tags and
custom block development.


*GR-Extras and Pre-Cog*
Use GNU Radio 3.6 and some older commit from gr-extras, like
4bbb1cf01a8ac35a989bc2468fd0ccd384dede45.  This is not recommended as the
community won't be able to provide the same level of support as we can with
3.7.


Best Regards,
John Malsbury
Ettus Research


On Wed, Apr 2, 2014 at 4:55 AM, Jawad Seddar <jawad.sed...@gmail.com> wrote:

> Ok, thanks for the quick reply, this clarifies things for me.
>
>
> 2014-04-02 13:49 GMT+02:00 Martin Braun <martin.br...@ettus.com>:
>
> On 04/02/2014 01:45 PM, Jawad Seddar wrote:
>> > Yes I am using only stock GNU Radio blocks.
>> >
>> > I don't mind creating my own block for this, I just want to be sure that
>> > there is no easier way that already exists say in GRC or through a
>> > python wrapper (maybe using pmt).
>>
>> We are currently working on a solution which will make gr-uhd understand
>> length tags. Until then, you'll need to add blocks in there to do that.
>>
>> MB
>>
>> >
>> >
>> > 2014-04-02 13:40 GMT+02:00 Martin Braun <martin.br...@ettus.com
>> > <mailto:martin.br...@ettus.com>>:
>> >
>> >     On 04/02/2014 11:46 AM, Jawad Seddar wrote:
>> >     > Hi everyone,
>> >     >
>> >     > I have several USRP N210 and I want all of them to transmit using
>> the
>> >     > same frequency. Since I cannot use FDMA (this is one of my
>> >     requirements,
>> >     > not a GNU Radio/USRP limitation) then I thought I would give TDMA
>> >     a try.
>> >     >
>> >     > I want to be able to tell a node not to transmit when it is not
>> >     its turn
>> >     > and to transmit when its turn comes up. I saw the tag feature of
>> GNU
>> >     > Radio (tx_sob, tx_eob in particular) but I do not know how to use
>> them
>> >     > from my python flowgraph.
>> >
>> >     Are you only using stock GNU Radio blocks?
>> >
>> >     If you have your own blocks, it's really simple: Just insert a
>> tx_sob on
>> >     the first sample of any burst, and a tx_eob on the last.
>> >
>> >     Martin
>> >
>> >
>> >     _______________________________________________
>> >     Discuss-gnuradio mailing list
>> >     Discuss-gnuradio@gnu.org <mailto:Discuss-gnuradio@gnu.org>
>> >     https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>> >
>> >
>>
>>
>> _______________________________________________
>> Discuss-gnuradio mailing list
>> Discuss-gnuradio@gnu.org
>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>
>
>
> _______________________________________________
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
>
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to