OAI and LimeSDR-Mini

OK. So I had some time and did the first test on 1800 (band 3) and 5MHz, with the following results:

First I checked the highest reasonable TX gain to see when it starts to distort the signal.

At 80dB gain, the EVMs are pretty good (see the above picture). At 83dB the EVM already shows deterioration but just within specs. At 86dB its completely crap, out of spec.

So the recommended TX gain for the mini at 1800MHz @ 5MHz is 80dB.

The measured PDSCH reference signal power is -33dBm (this goes into the config file).

This is the part that needs to be chnaged:

RUs = (
{
local_rf = “yes”
nb_tx = 1;
nb_rx = 1;
att_tx = 80; <-- this (not the attenuation but the gain)
att_rx = 0;
bands = [3];
max_pdschReferenceSignalPower = -33; <-- this
max_rxgain = 85;
eNB_instances = [0];

    }

The RX part still needs some experimentation. Some values in the config file are obsolete, and some are not known how it works (for exapmle att_rx and max_rxgain, I am not sure which one we need).

In general about the RX gain: try to keep it low, as the phone can turn its transmitter high if it needs. No need to push the RX gain on the device.

1 Like

At 1800Mhz @ 10MHz the result is the following:

Again, 80dB seems to be the max recommended TX gain, the recommended PDSCH ref sig power is -36dBm.

MOD: forgot to let you know, that the max total output power of the Lime SDR mini at this TX gain level is about -17dBm, which is fairly low. This means that a fairly good antenna will be needed for OTA tests, and the phone needs to be close (== fairly low RX gains not to over power the SDR receiver)

MOD2: on 20MHz the LimeSDR mini is producing LLLLLL (constantly loosing samples), so it is completely unusable, hence there is no measurement for 20MHz.

MOD3: as you can see the frequency error is huge (-10kHz). That results to 4.5-5ppm error, while the standard mandates 0.5ppm or less (for a macro enodeb), and about 1ppm for “smallcell” operation.

1 Like

Well, I think I found the first issue:

If I run the enodeb for more than a few minutes, this is what starts to happen:

Reference clock 40.00 MHz
Set sample rate 7.680000 MHz
Set TX frequency 1822.500000 MHz
RX LPF configured
Filter calibrated. Filter order-4th, filter bandwidth set to 5 MHz.Real pole 1st order filter set to 2.5 MHz. Preemphasis filter not active
TX LPF configured
Rx calibration finished
Tx calibration finished
SR:   7.680 MHz
SR:   7.680 MHz
[PHY]   RU 0 rf device ready
[PHY]   RU 0 no asynch_south interface
[MAC]   SCHED_MODE=0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 19, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 0, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 0, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
L
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
L
L
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
L
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
L
L
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
L
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
L
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
L
L
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
L
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
L
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
L
L
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0
[PHY]   prach_I0 = 0.0 dB
[PHY]   max_I0 12, min_I0 0

After a while, the SDR starts to drop samples quite periodically. When this “L” or loss of sample happens, the vector analyzer shows a miss. For a brief moment of time there is no transmission from the SDR.

And this is without any UE connected to the enodeb. Just the TX being on and connected to the analyzer.

Probably this is the reason some of you see disconnecting UEs after a few minutes.

1 Like

for the band 20Mhz , why not to use a low power amp like tx_gain = 8db for example. when i tested whith band 3; we configure to it and the enodeB doesn’t reject anymore the phone and for my first experience i use a usb cable 3.0!!! it’s not pretty good also because sometimes, the enodeB reject also the phone

what is the mod3 that you say? how also about the band 10Mhz lte?

I am using a PA and LNA for my OTA tests, but obviously sharing the cal data for that set is quite not useful for most. The shared results are measured directly on the TX port of the lime mini, so anyone can use it.

In MOD3 I described the massive frequency error the mini has without any external reference on its own. It is very big, that can also lead to disconnects or degraded modulation performance.

My question is not having PA or LNA, my question consist indeed in why no to use a very lowpower when you use the 20Mhz bandwith to not having a huge error frequence (-10kHz)?

My question is not having PA or LNA, my question consist indeed in why
no to use a very lowpower when you use the 20Mhz bandwith to not having a
huge error frequence (-10kHz)?

I am not sure if I can follow you.

The (output) power has no effect on the frequency error.

i think it’s have effect on traitement! in our test when i make a low
power tx_gain= 8 , the phone doesn’t disconnect anymore! so i think it’s
due to the thermic effect! when you make tx_gain high! the chip has
distorstion due to high temperature! maybe!

Are you using the .ini file located here: https://github.com/myriadrf/trx-lms7002m/tree/master/config-limeSDR ?

Hey Niels, i use the old LimeSDR_Mini_v06.ini , in the same link but it’s not here now. I will try with it!

No, I am using this one:

https://sdr-radio.groups.io/g/main/attachment/40140/0/LimeSDRMini.ini

Interesting point, will try that later on.

I see, thank you!
I guess different .ini files will have different behaviour.
I’ll also try with yours and see if it make any difference.

I was only able to find this single file specifically for the Mini, but if you found others, please share it. I think this only changes the frequency response only (slightly), maybe it allows for self calibration, but I am not sure, never found any docus describing what it is.

Yes, I always used the ones from here: https://github.com/myriadrf/trx-lms7002m/tree/master/config-limeSDR

I am not sure exactly what difference it make but it will also depends on the firmware version inside the board.

I am using config files from https://github.com/myriadrf/trx-lms7002m/tree/master/config-limeSDR with OAI, but can’t get my phones to see the network. LimeSDR-Mini with latest firmware. It used to kind of work and then it just stopped.
When testing srsLTE, it works I’m but getting unstable link. srsLTE does not use those config files, and i have no idea what srsLTE uses instead, so I can’t just take configuration from srsLTE to OAI.

@dchard, how about the new config ini file , is it possible to run 10MHz or 20Mhz band passant?

Chears,

5 and 10MHz possible, 20Mhz looses insane amount of samples.

I tried the INI of Niels, no difference.

What I try to figure out is how can I use the Clock input on the mini? Connected a 10MHz reference to it, but it is not using it.