Hi all,
I was wondering if it is possible to generate a TDMA frame sync output on a GPIO line of a USRP device (and/or any other SDR supported by osmo-trx). This way it would be much easier to do e.g. BER testing by using a pure waveform/pattern generator for the "MS side". Such devices (Like an E4433B) can only generate the uplink bursts with pseudo-random sequence, but they don't have any receiver, so they're not able to receive the downlink from the BTS in order to lock on the TDMA frame and transmit the uplink in sync to that.
There are of course specialized devices (CMU-300, ...) or hardware options that add such receivers for synchronization on the signal generators, equipment side, but why go there if there would be an easy way to generate some kind of a frame sync output.
I would appreciate to know even if there's a way to introduce such "synchronous GPIO toggles" or the like in the command stream to UHD devices. If that existed, it should be rather simple to insert those whenever a new burst for TS0 is sent.
A rather computationally (and bandwidth) expensive other option might be to use the second RF output to generate such a signal, but I was hoping not having to abuse the 2nd channel for that ;)
Regards, Harald
Hi Harald,
On Fri, May 26, 2017 at 1:59 PM, Harald Welte laforge@gnumonks.org wrote:
I was wondering if it is possible to generate a TDMA frame sync output on a GPIO line of a USRP device (and/or any other SDR supported by osmo-trx). This way it would be much easier to do e.g. BER testing by using a pure waveform/pattern generator for the "MS side".
I recently tested GSM frame triggering with a B210. The UHD code itself for GPIO triggering is fairly straightforward.
/* Configure GPIO-0 pin*/ usrp->set_gpio_attr("FP0", "CTRL", 0x00); usrp->set_gpio_attr("FP0", "DDR", 0x01);
/* Set rise and fall times */ usrp->set_command_time(TIME_A); usrp->set_gpio_attr("FP0", "OUT", 0x01); usrp->set_command_time(TIME_B); usrp->set_gpio_attr("FP0", "OUT", 0x00);
I tested the frame trigger using the B210 with osmo-trx in a new signal generator application (to be announced shortly), which works fine.
But, when I attempt to trigger with full-duplex osmo-trx, the trigger becomes unstable for reasons that I do not fully understand. I'm still looking into the cause.
So right now we can generate a frame trigger for the BTS downlink, but, unfortunately, not while the uplink receiver is enabled.
-TT