discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Transmitter switching using 802.11 frames


From: CEL
Subject: Re: [Discuss-gnuradio] Transmitter switching using 802.11 frames
Date: Sun, 18 Mar 2018 13:14:37 +0000

Dear Bugra,

"Selector" will not work for your purpose. It actually *stops* all the
flow graph, including the USRP sink, then reconnects the flow graph,
then *restarts* the whole flow graph including the USRP sink. This is
too slow for reasonable switching. That's the reason why it's in the
"deprecated" category – don't use it. 
You should probably instead write a block that copies an input TSB to
one of two outputs based on a tag (do whatever you want with the other
channel).

Another red flag is the "signal source->signal probe" subgraph. That
thing doesn't do anything useful, but will spin at least one CPU core
pretty badly. (There's nothing stopping the Signal Source from
producing samples as fast as a single CPU core can. And that can't be
what you want.)

But none of that is the problem that leads to the first nor the second
error you see; first error:

> FATAL: Missing a required length tag on port 0 at item #0
> thread[thread-per-block[33]: <block ofdm_cyclic_prefixer (14)>]:
> Missing length tag.

ofdm_cyclic_prefixer is inside "WiFi Phy Hier", and in there the tag is
added in a hardcoded way. So, either, you've modified that hier block
and accidentally broke it, or something very strange is at work?

Disable one of the transmit chains and delete your selectors, set the
USRP sink to single channel, and make sure it works *in this very
configuration*.

Second error:

> thread[thread-per-block[37]: <block gr uhd usrp sink (26)>]:
> RuntimeError: On node 0/DmaFIFO_0, input port 0 is already connected.

This might be an artifact of the combination of RFNoC and your selector
block; not quite sure. Since you need to replace the "Selector"s,
anyway, not debugging this at this point.

Best regards,
Marcus

On Sun, 2018-03-18 at 02:31 -0400, Halit Bugra Tulay wrote:
> Hello everyone,
> I've been trying to implement a switching mechanism between 2
> transmitters. I use gr-ieee802-11 and there will be 2 messages with
> different MAC addresses for each transmitter. At a given time, only
> one of the transmitters will be transmitting its corresponding 802.11
> frames and other transmitter can stop or send anything except 802.11
> frames. They will transmit their frames in a turn. I have an X300
> with CBX daughter boards and I m planning to use each daughter board
> as transmitter. For this purpose, I created 2 messages and each
> message is sent through 'Selector' block which has 2 inputs and 1
> output. Selector block switches between the frames and a dummy
> message(vector source) according to the input index which is set by a
> signal source. Ultimately, only one of the transmitters will be
> transmitting the frames while the other is sending a dummy message. 
> 
> I created the following flowgraph ( https://imgur.com/a/SwFGS ). When
> I run the flowgraph, I got these errors after the first switch
> between the messages:
> 
> FATAL: Missing a required length tag on port 0 at item #0
> thread[thread-per-block[33]: <block ofdm_cyclic_prefixer (14)>]:
> Missing length tag.
> thread[thread-per-block[37]: <block gr uhd usrp sink (26)>]:
> RuntimeError: On node 0/DmaFIFO_0, input port 0 is already connected.
> 
> I don't know what I m doing wrong and I m not sure if this is a good
> way for the transmitter switching described above. I will appreciate
> if you give your suggestions for this.
> Best,
> -Bugra
> _______________________________________________
> Discuss-gnuradio mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Attachment: smime.p7s
Description: S/MIME cryptographic signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]