Hi Daniel,

I too have experienced RF leakage problems between the TX/RX and RX ports on my B210 (and B200) when operating in a full-duplex modem application. In my case I am transmitting continuously repeated Pseudorandom Noise Sequences of various lengths and chipping rate, and a tracking GNSS type correlator is implemented in the receiver.

I found that when operating at identical or close TX and RX frequencies, a combination of poor TX to RX port leakage in the B210 and high correlator receiver gain made testing very difficult or impossible, and this was irrespective of RX and TX gain settings in the USRP transceiver.

To test the receiver software, I used substantially different TX and RX frequencies and an external passive diode mixer and local oscillator to provide the necessary frequency separation, when using a single USRP. I have tried converting 450 MHz TX to 100 MHz RX and 2.4 GHz TX to 1.2 GHz RX , both with some success.

In-circuit signal power measurements taken at the TX and RX connections in a leakage loop configuration using a spectrum analyser would indicate a TX/Rx to RX port isolation value of no better than 20 dB (100 MHz to 3 GHz).
This was concurred using a VNA on an un-powered B210 device.

To improve my test arrangement, I used the B210 and B200 as receiver and transmitter respectively, each with their own PC, but with shared 10 MHz external reference inputs.
Best regards,

David GD4FMB



------ Original Message ------
From "Daniel Estévez" <[email protected]>
To [email protected]
Date 29/09/2025 11:15:18
Subject [USRP-users] Half duplex with USRP B2xx and GNU Radio

Hello,

I am implementing a half-duplex modem with GNU Radio and a USRP B2xx that uses 
CSMA to control medium access. I have a GNU Radio flowgraph with a USRP Source 
and USRP Sink blocks both set to use the TX/RX antenna. The USRP Sink block 
uses burst transmission. When a burst is sent, the B2xx automatically switches 
the receive to the RX2 port.

The issue is that there is enough leakage through the RX2 port that the system 
is able to receive its own transmit packets with good SNR. This is a problem 
for the CSMA system because it makes the system detect that the channel is busy 
while it is transmitting its own packet. Due to the latency between the RX and 
TX streams in GNU Radio, this prevents the modem from transmitting back-to-back 
packets (which is allowed and expected by this CSMA scheme), because when the 
second packet is about to be sent, the modem receiver is still seeing the end 
of the previous packet and determines that the channel is still busy.

To solve this issue, I would like the USRP Source to receive either zeros, no 
samples at all, or something that at least does not have so much leakage of its 
own TX signal.

Is it possible to do this either by appropriate configuration in GNU Radio or 
UHD?

I've been studying the sources of UHD and GNU Radio to see how this could be 
done. The only thing I have found is that this would be possible with a small 
change to the FPGA image. For instance, this line

https://github.com/EttusResearch/uhd/blob/master/fpga/usrp3/lib/radio_200/radio_legacy.v#L446

could be modified to replace the RX samples by zeros whenever run_rx is 
asserted.

However I would prefer not to build a modified FPGA image for this system, so I 
was wondering if other solutions exist.

Best,
Daniel.
_______________________________________________
USRP-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to