Page 1 of 1

BladeRF 2 micro Tx in MO mode example?

Posted: Sat Sep 29, 2018 9:26 pm
by f4exb
Hello,

it seems I can't get the Multiple Output (Tx1 and Tx2 working at the same time) work correctly on a BladeRF 2 micro. I don't see where things are going wrong since it seems to me the code is consistent with the libbladeRF documentation. I am looking for a working C or C++ example.

Best regards, Edouard.

Re: BladeRF 2 micro Tx in MO mode example?

Posted: Sun Sep 30, 2018 10:17 am
by f4exb
Hello,

it seems that I got it finally working in MO mode but I have to double the rate from the sample rate of the channel. If for example I expect one channel to be 3 MS/s then I have to call bladerf_set_sample_rate for the Tx channel with 6 MS/s. I am not sure this is what is expected and this is not the same situation on the Rx side where the sample rate that is set with bladerf_set_sample_rate is always the rate of one channel whether in SO or SI mode. A side effect is that the rate on the Rx side is also doubled as the sample rate is common to all 4 channels (Rx + Tx).

Note: this is using libbladeRF tag 2018.08

Let me know if I should open an issue on Github.

Brgds, Edouard.

Re: BladeRF 2 micro Tx in MO mode example?

Posted: Tue Oct 02, 2018 12:22 pm
by rtucker
Oof, yeah, that's not good. Please do open a github issue on this... it's definitely something I'd consider a bug.

Thanks :)

Re: BladeRF 2 micro Tx in MO mode example?

Posted: Wed Oct 03, 2018 11:36 pm
by f4exb
Hello,

issue: https://github.com/Nuand/bladeRF/issues/675 opened.

Thanks and brgds, Edouard.

Re: BladeRF 2 micro Tx in MO mode example?

Posted: Wed Oct 10, 2018 5:18 am
by f4exb
Hello,

the end of story was that the bug was in my code because I called bladerf_enable_module for each channel with channel index 0 like this:

Code: Select all

status = bladerf_enable_module(m_dev, BLADERF_CHANNEL_TX(0), true);
The channel index was stored in the channel variable but was not used so correct code is:

Code: Select all

status = bladerf_enable_module(m_dev, BLADERF_CHANNEL_TX(channel), true);
This is of course very important to activate a channel with the correct index for it: Tx1: 0 and Tx2: 1.

Brgds, Edouard.