Auto T/R Switching with Inband code

Hi,

Is there any way to do automatic transmit/receive switching with the
inband code? I understand how the auto t/r switching in the legacy
code worked (i.e. transmit mode was enabled whenever there was data in
the transmit FIFO). My group has been hacking the inband code so that
we can utilize the inband interface through a python wrapper. This
allows us to reuse the daughterboard code (e.g. db_base.py,
db_flexrf.py, etc.). We are now able to successfully send samples or
receive samples, but we were not able to get the auto t/r switching
working. We tried to use the db.set_auto_tr() method on the
daugthboard object db (from the method in db_flexrf.py). Although
calling set_auto_tr(True) did not adversely impact the transmitter
operation, the receive operation was completely nulled out. That is,
the received samples were all nearly zero. We got the receiver to work
by calling set_auto_tr(False). Any thoughts?


Ketan M.

On Thu, Jul 17, 2008 at 03:12:29PM -0500, Ketan M. wrote:

working. We tried to use the db.set_auto_tr() method on the
daugthboard object db (from the method in db_flexrf.py). Although
calling set_auto_tr(True) did not adversely impact the transmitter
operation, the receive operation was completely nulled out. That is,
the received samples were all nearly zero. We got the receiver to work
by calling set_auto_tr(False). Any thoughts?

Hi Ketan!

I can’t think of any reason that auto t/r shouldn’t work with the
inband code… unless some control signal that it needs wasn’t
connected to the master_control module in the inband case.

Eric

Eric B. wrote:

Hi Ketan!

I can’t think of any reason that auto t/r shouldn’t work with the
inband code… unless some control signal that it needs wasn’t
connected to the master_control module in the inband case.

Hi Ketan,

I’m not sure which RBF you’re using from us. I’d suggest the latest one
in the trunk. Older ones we had made some modifications to master
control. But the latest, we did not touch it at all, so there is no
chance this might happen.

  • George

Eric & George,

Thanks for quick responses. I also wanted to verify that I am using
the correct rbf. Since I am only using a single transmit/receive
channel, I have been using “inband_1rxhb_1tx.rbf”. Is this ok, or
should I be using “inband_2rxhb_2tx.rbf”?

On Thu, Jul 17, 2008 at 3:32 PM, George N. [email protected] wrote:

Hi Ketan,

I’m not sure which RBF you’re using from us. I’d suggest the latest one in
the trunk. Older ones we had made some modifications to master control.
But the latest, we did not touch it at all, so there is no chance this
might happen.

  • George


Ketan M.

After doing some further testing, it seems that using
“inband_2rxhb_2tx.rbf” allowed us to properly do automatic t/r
switching (even with the use of just one channel). We could not get
this functionality working correctly with “inband_1rxhb_1tx.rbf”.
Maybe this rbf was not rebuilt after applying whatever fixes George
was referring to? Anyway, thanks a lot for your help.

On Thu, Jul 17, 2008 at 3:45 PM, George N. [email protected] wrote:

No problem.

inband_1rxhb_1tx.rbf is the correct RBF for a single TX/RX chain. The RFX
follows the same naming conventions as the standard firmwares.

  • George


Ketan M.

Ketan M. wrote:

After doing some further testing, it seems that using
“inband_2rxhb_2tx.rbf” allowed us to properly do automatic t/r
switching (even with the use of just one channel). We could not get
this functionality working correctly with “inband_1rxhb_1tx.rbf”.
Maybe this rbf was not rebuilt after applying whatever fixes George
was referring to? Anyway, thanks a lot for your help.

OK so I had interest in this, and I think Brian and I understand why
Auto T/R switching does not quite work right with the inband code. For
it to switch to the RX chain, tx_empty must be asserted. However, this
is a little bit of a misnomer with the in-band code because if you have
a packet in the TX buffer pending on its timestamp, tx_empty is low
since there really is something in the TX chain… but it’s not
transmitting! That’s the problem. I am working on fixing up some of
these things now.

  • George

Ketan M. wrote:

Eric & George,

Thanks for quick responses. I also wanted to verify that I am using
the correct rbf. Since I am only using a single transmit/receive
channel, I have been using “inband_1rxhb_1tx.rbf”. Is this ok, or
should I be using “inband_2rxhb_2tx.rbf”?

No problem.

inband_1rxhb_1tx.rbf is the correct RBF for a single TX/RX chain. The
RFX follows the same naming conventions as the standard firmwares.

  • George

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs