Hi Guys,

 

Thanks for all your replies.

 

I have prop, action and mtu forwarding all set to ONE-TO-FAN in my pol 
converter block.

 

(It doesn’t seem to matter whether I send the stream command to the radio or to 
the rx_streamer though.)

 

On the timed commands I have a new idea I’m going to implement and test today 
where I latch one of the radio adc channel timestamps after ADC TEOB drops 
(hopefully indicating the first sample of a new packet), and then use that 
timestamp for the remainder of my new packet post-decimation.

 

I am thinking of just adding the maximum decimator latency + a bit as an offset 
as I don’t care if the transmitted signal is not aligned to the input signal.

 

I also just realized I need to tell the TX side, independently, to start 
streaming – I don’t think it will transmit just because there is data there. 
Not sure how I’m going to align that (from the host) to the looped-back data in 
the fpga yet.

 

But then isn’t ONE-TO-ALL the better option so the pol converter can start the 
transmitter as well?

 

All very tricky and interesting…!

 

Kind regards, Kevin

 

From: Martin Braun <martin.br...@ettus.com> 
Sent: Friday, 23 May 2025 08:51
Cc: usrp-users@lists.ettus.com
Subject: [EXTERNAL][USRP-users] Re: rfnoc loopback to tx ports, and other 
warnings

 

Did you, by any chance, set the action forwarding policy to ONE_TO_ALL? I 
sketched your RFNoC flow graph and there's a loopback going from Radio -> 
PolConverter -> Split Stream 0 -> DUC -> Radio. (Loopbacks are fine in RFNoC!).

 

If you have the action forwarding to ONE_TO_ALL, then the PolConverter will 
forward the stream command to its output ports, and Split-Stream/DUC will 
forward them to the radio input ports. But those don't accept stream commands, 
hence the warning. It seems ONE_TO_FAN would be the right choice.

 

--M

 

On Thu, May 22, 2025 at 3:28 PM Rob Kossler via USRP-users 
<usrp-users@lists.ettus.com <mailto:usrp-users@lists.ettus.com> > wrote:

Hi Kevin,

Try issuing the stream command directly on the Radio block rather than the 
rx_streamer.  I don't know why you are getting the warnings you are getting, 
but trying this step might produce a different result. 

 

On another note, since you are using timed commands, there will be a time stamp 
in your received data stream. When this stream arrives at the Tx Radio after 
passing through the loopback path, it will be considered "Late" at the Tx Radio 
because the time stamp has passed.  Your block will need to add an offset to 
the time stamp (or remove it) so that it won't be late when arriving at the Tx 
Radio.

Rob

 

On Thu, May 22, 2025 at 4:45 AM Kevin Williams <kevin.willi...@vastech.co.za 
<mailto:kevin.willi...@vastech.co.za> > wrote:

Hi,

 

I have an rfnoc block with two output ports which is feeding the splitter block 
to duplicate each port.

 

One pair is used to stream to the host, and the other is looped back to the 
radio via the DUC block.

 

The active connections are reported as:

 

Active connections:

* 0/Radio#0:0==>0/PolConverter#0:0

* 0/Radio#0:1==>0/PolConverter#0:1

* 0/PolConverter#0:0==>0/SplitStream#0:0

* 0/SplitStream#0:0-->0/DUC#0:0

* 0/PolConverter#0:1==>0/SplitStream#0:1

* 0/SplitStream#0:1-->0/DUC#0:1

* 0/DUC#0:0==>0/Radio#0:0

* 0/DUC#0:1==>0/Radio#0:1

* 0/SplitStream#0:2-->RxStreamer#0:0

* 0/SplitStream#0:3-->RxStreamer#0:1

 

I’m getting this warning when trying to stream (to the host and the TX):

 

[WARNING] [0/Radio#0] Received stream command, but not to output port! Ignoring.

 

Along with debug info:

 

[DEBUG] [RxStreamer#0] Received overrun message on port 0

[DEBUG] [RxStreamer#0] Received overrun message on port 1

L[DEBUG] [RxStreamer#0] Received late command message on port 0

[DEBUG] [RxStreamer#0] Received late command message on port 1

D

 

I start the streaming with a timed command to the RX streamer like:

 

rx_stream->issue_stream_cmd(stream_cmd);

 

I’m not getting the red “TX” led illuminated on the N300, and I don’t 
understand where or why these warnings are being created?

 

Previous posts have mentioned this link 
(https://corvid.io/2017/04/22/stupid-rfnoc-tricks-loopback/ 
<https://url.za.m.mimecastprotect.com/s/K94BCX6wllSD43gc6fwfWdFPu?domain=corvid.io/>
 ) has helped but it seems to be down.

 

How does one get a loopback in the fpga from rfnoc blocks to the radio TX?

 

BTW: in the firmware I tie TEOV and TEOB to my TLAST in my custom block.

 

Many thanks, Kevin

 

_______________________________________________
USRP-users mailing list -- usrp-users@lists.ettus.com 
<mailto:usrp-users@lists.ettus.com> 
To unsubscribe send an email to usrp-users-le...@lists.ettus.com 
<mailto:usrp-users-le...@lists.ettus.com> 

_______________________________________________
USRP-users mailing list -- usrp-users@lists.ettus.com 
<mailto:usrp-users@lists.ettus.com> 
To unsubscribe send an email to usrp-users-le...@lists.ettus.com 
<mailto:usrp-users-le...@lists.ettus.com> 

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

_______________________________________________
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com

Reply via email to