LimeSDR new set of tests

We use the latest commit in https://github.com/myriadrf/LimeSuite.git

Ubuntu 18.04

LimeSDR (HW: V1.4) flashed with latest firmware (Limeutil –update)

Scope: LTE SISO downlink signal

We use a custom OpenAirInterface version

The LimeSDR interface code is:

LMS_Open(&lms_device,list[0],NULL);
 LMS_Init(lms_device);
 LMS_Reset(lms_device);

LMS_EnableCalibCache(lms_device,false);
 LMS_LoadConfig(lms_device, );
 LMS_SetSampleRate(lms_device,4), “”); //rate is LTE standard one, so a division of 30720MS/s
 LMS_SetLOFrequency(lms_device,LMS_CH_RX, 0); // several feq tested 700MHz-3600MHz
 LMS_SetLOFrequency(lms_device,LMS_CH_TX, 0); // Tx/Rx freq are different, gap is defined by 3GPP
 LMS_SetGaindB(lms_device, LMS_CH_TX, 0, MyGain);
 LMS_SetGaindB(lms_device, LMS_CH_RX, 0, MyGain);
 //value is 0…70, we saw the today limitation: it is not actually in dB, but still the range is 0…70
 LMS_SetLPFBW(lms_device,LMS_CH_RX,0,ChosenLTEBand); // 5MHz or 10MHz or 20MHz
 LMS_SetLPFBW(lms_device,LMS_CH_TX,0,ChosenLTEBand);
 LMS_Calibrate(lms_device,LMS_CH_RX,0,ChosenLTEBand,0);
 LMS_Calibrate(lms_device,LMS_CH_TX,i,ChosenLTEBand,0)

First observation is: the API calls often fails: calibration reports failures

With some ini files, it is simply impossible to run successfully the above sequence.

With “good” ini files, we have to power-off the board before each trial.

The key problem is to make a decent .ini file, that is good only in a specific case: RF band, modulated band, power, …

Then, even with a good ini file, the result of the calibration is not repeatable, and often fails randomly (need to power off the LimeSDR board).

Measuring this DL signal

A USRP B210 output:

The best of LimeSDR can be close to this

Even in this best result, the DC offset is not well calibrated

Also it is not repeatable, and depend heavily of the .ini file we use

or non repeatable results

At lower frequency, LimeSDR is globally better

30 thoughts on “LimeSDR new set of tests”

  1. Dear laurent

    could u please send .ini file?
    i have limesdr with 4 antenna ( each support range between 700- 2690 Mhz ) and i wanted to run a 4G network
    when i run …/cmake_targets/build_oai -c -w LMSSDR –eNB –UE i get this error back :
    oai_lmssdrdevif compilation failed error!!

    and when i see log file there is sth like that:
    http://s6.picofile.com/file/8386768042/Screenshot_60_.png

    can u please help me on that and also send me both “.ini ” file and “config” file

    Thank you so much

    1. Hi,
      For your compilations errors:

      *** write_output() error
      add:
      #ifdef __cplusplus
      extern “C” {
      #endif
      ….
      #ifdef __cplusplus
      }
      #endif
      as it is done in many OAI files, the file that require this is:
      targets/ARCH/COMMON/common_lib.h
      (I will push merge request in OAI)

      *** LMS_EnableCache()
      The LimeSDR api changed
      It was LMS_EnableCalibCache() in old versions.
      So, you use a old version of the limeSDR driver.
      I suggest to update it, or to put back the old API call

      *** config file:
      I don’t think anybody tested recently LimeSDR (as it doesn’t even compile!)
      You can use a usrp file in:
      ci-scripts/conf_files/
      then, try to play with rx and tx gain parameters

      *** ini file
      there are some in targets/ARCH/LMSSDR

      Best regards,
      Laurent

      1. Dear Laurent
        Thank u very much for ur respond

        I did what u said
        there was sth in targets/ARCH/COMMON/common_lib.h
        http://s7.picofile.com/file/8386859168/Screenshot_from_2020_02_02_10_00_02.png

        i also changed this file targets/ARCH/LMSSDR/USERSPACE/LIB/lms_lib.cpp
        http://s7.picofile.com/file/8386859284/Screenshot_from_2020_02_02_10_02_43.png

        and again when i run …/cmake_targets/build_oai -c -w LMSSDR –eNB –UE i get this error back :
        oai_lmssdrdevif compilation failed error!!

        and when i see log file there is sth like that:
        http://s7.picofile.com/file/8386859418/Screenshot_from_2020_02_02_10_05_06.png

        can u please help me again to run my first 4G running using LimeSDR

        1. Hi,
          This is related to C/C++ cross linkage.
          I didn’t give you the right file name: openair1/PHY/TOOLS/tools_defs.h
          The fixed file is in:
          https://open-cells.com/tools_defs.h
          I pushed this fix for merge in main OAI (it will be merged in develop branch later)
          Regards,
          Laurent

          1. Dear laurent,

            Its done now ( thanks to u and ur great tutorial)

            I run this command ./lte-softmodem -d -O ~/openairinterface5g/ci-scripts/conf_files/enb.band7.tm1.25PRB.usrpb210.conf –rf-config-file ~/openairinterface5g/targets/ARCH/LMSSDR/LimeSDR_above_1p8GHz_1v4.ini and it is running now

            but the problem is, i can not see the ENB on my phone!
            in phone when i go to the Mobile Networks and search for network operators, i cannot find ENB!
            my phone support band 7 but i cannot see it!

            This is my ENB log when i run this command ./lte-softmodem -d -O ~/openairinterface5g/ci-scripts/conf_files/enb.band7.tm1.25PRB.usrpb210.conf –rf-config-file ~/openairinterface5g/targets/ARCH/LMSSDR/LimeSDR_above_1p8GHz_1v4.ini

            http://s6.picofile.com/file/8387104384/A.txt.html

            and bellow is my config file that i changed the gain of tx and rx and att-tx in RUs
            http://s6.picofile.com/file/8387104542/enb_band7_tm1_25PRB_usrpb210.conf.html

            could u please help me as u did before?

            Thanks

          2. Hi,

            If “search” doesn’t show the network, the DL doesn’t work.
            Maybe the tx gain, the Lime board itself or your setup: could you take a picture of the setup?

            messages: [PHY] [eNB 0/0][RAPROC] Frame 214, subframe 1 Initiating RA procedure with preamble 33, energy 21.9 dB, delay 144
            Means the eNB detects energy in the RACH (UE access channel).
            As there is no UE, probably the rx gain is too high, so the detected energy is thermal noise.

            If i have time, I will try again a limeSDR board
            Regards,
            Laurent

          3. Dear Laurent
            my setup is sth like this!
            http://s6.picofile.com/file/8387224776/1.jpeg
            http://s7.picofile.com/file/8387224784/2.jpeg
            http://s7.picofile.com/file/8387224800/3.jpeg

            when i use this config file http://s6.picofile.com/file/8387225042/enb_band7_tm1_100PRB_usrpb210.conf.html
            i get this from ENB: http://s6.picofile.com/file/8387225492/Z.html

            when i use this config file : http://s6.picofile.com/file/8387225592/enb_band7_tm1_25PRB_usrpb210.conf.html

            i will get this from ENB: http://s6.picofile.com/file/8387225918/X.html

            and when i use this config as cedric said once : http://s6.picofile.com/file/8387226184/enb_band7_tm1_50PRB_usrpb210.conf.html

            i will get this from ENB: http://s7.picofile.com/file/8387226500/C.html

            lets say:
            I completely followed ur all in one tutorial ( with specified commit that u mentioned )

            This is my HSS: http://s6.picofile.com/file/8387226742/HSS.html
            I dont even changed the config in /usr/local/etc/hss.conf ( I mean even don’t uncomment Operation Key)
            this is my MME: http://s7.picofile.com/file/8387227100/MME.html
            this is my SPGW: http://s6.picofile.com/file/8387227334/SPGW.html

            and for LimeSDR i did https://open-cells.com/index.php/2017/05/10/limesdr-installation/ +++ changing the LMS_EnableCalibCache to LMS_EnableCache

            and run this: ./lte-softmodem -O ~/openairinterface5g/ci-scripts/conf_files/enb.band7.tm1.50PRB.usrpb210.conf –rf-config-file ~/openairinterface5g/targets/ARCH/LMSSDR/LimeSDR_above_1p8GHz_1v4.ini

            the problem is UE cannot see the ENB!
            and one other thing is i’ve never seen Enb tracer or anything like that when i run the code!

            Could u please help me on that to fix the problem?

          4. Hi,
            Your antennas are too close together: try to separate them, but it doesn’t explain you receive nothing
            You are using band 7: you use the right ports: Tx1_2 and Rx1_H
            (I used also Tx1_1 in band 7, it should be not so different)
            I will try to retest a limeSDR board.
            From my records, i think we were using tx_gain=20, rx_gain=50
            Remember we never reached a stable quality with LimeSDR
            Laurent

          5. Hi,
            In the top left graph, we see a very high signal level: the rx gain is too high
            The other graphs are not meaningful: no UE is connected
            Laurent

          6. Thank you so much

            So i will wait for ur new test of LimeSDR
            I think the problem is in Config file and RX_gain, TX_gain, RX_att, TX_att, Max_RX
            Please confirm the right configuration.

            Wish u to get the best in ur life
            regards

          7. Dear Laurent

            As u guided me i fixed the issue of compiling eNB and EPC

            I tried lots of times to see my eNB on UE search network!
            Now it is available and i can see it

            ### But i cannot connect UE to eNB ###

            my configuration is for band 7 and sim programmed as in Database :
            http://s6.picofile.com/file/8387933034/Sim_programming.png
            http://s7.picofile.com/file/8387931542/opencells_db.png

            Could u please check if i write the sim correctly?
            i used ki as 6874736969202073796D4B2079650A73
            OPC as 504F20634F6320504F50206363500A4F
            IMSI as 208920100001109
            MSISDN as 33638020009
            but i dont know if i uses right ICCID or not ? ( ICCID as 89882110000002277137)

            Should i replace my device’s IMEI in database?

            ***should i make APN in UE? ( ie. make APN in cellphone and put the name to ltebox and mnc ,mcc to 802 , 92 ?)

            My log file of MME, HSS, eNB are here:

            * http://s6.picofile.com/file/8387783068/Enb.html

            http://s6.picofile.com/file/8387783092/MME.html
            http://s6.picofile.com/file/8387783526/Hss.html

            Thanks in Advance

          8. Hi,
            The function “search network” of commercial UE doesn’t use the SIM: it actually scans the RF signals
            If you don’t see the network you have set in enb.conf file (the MCC+MNC), it means the RF signal is not LTE compliant or too weak.
            This issue is related to LimeSDR board and OAI.
            We never got a stable configuration with this board, even if we were able to do a bit better than you (attach a commercial UE for several seconds)
            Regards,
            Laurent

          9. Dear Laurent,

            Hi
            I Could connect to the network( It is Stable and will continue to be connected)
            but cannot connect to Internet!
            I dont know How can i use Apn?

            Can u help me on that?
            i use “oai” for APN in db and “oai.ipv4” in UE!

            i can see 4G ( LTE ) sign on top of my cellphone! but when i browse i get sometime timeout, sometimes DNS problem and sometimes too long to get access!
            but i’ve never handle to connect to google or any other site!

          10. Hi,

            Great.
            We also did some more tests with LimeSDR: at least in low bands (below 1.8GHz), we succeeded to get good signal.
            We used the latest source code from LimeSuite, modified the OAI driver (maybe we will release it).

            To answer your question, please follow our “all in one” tutorial, or try to fix the issue: apn is set in hss database and in the cell phone (android: network=>advanced=>access point name)

            Let us know when it works!
            Laurent

          11. Happy to hear that.

            I did it with band 7!

            Thanks for ur guidance, But i had set the APN in both HSS and UE!
            i think i had bad typing style of questioning and don’t mention my real problem

            As i said, i could connect to the OAI network ( i mean UE connected to eNB and EPC and now my eNB name is on my UE’s Operator Network name ). SO i’m connected to OAI network!

            But I cannot connect to the INTERNET!!!

            My questions are these:
            Is it APN problem that i cannot connect to the INTERNET?

            Should APN be the SAME in both HSS and UE?( Or i can use for example “ASMA” in HSS’s DATABASE and “ASMA.IPV4” in UE?

            When i want to create APN in UE should i set Authentication Type, APN Type, APN Protocol and Bearer? ( If yes Please name it and what’s the answer of those)

            Thank u So much
            Best regard

          12. Hi Asma,

            For APN, you have to set the same string in UE and in HSS (IPV4 is only a part of the string, no meaning)
            Let all other parameters related to APN empty.

            Laurent

  2. Dear Laurent
    my setup is sth like this!
    http://s6.picofile.com/file/8387224776/1.jpeg
    http://s7.picofile.com/file/8387224784/2.jpeg
    http://s7.picofile.com/file/8387224800/3.jpeg

    when i use this config file http://s6.picofile.com/file/8387225042/enb_band7_tm1_100PRB_usrpb210.conf.html
    i get this from ENB: http://s6.picofile.com/file/8387225492/Z.html

    when i use this config file : http://s6.picofile.com/file/8387225592/enb_band7_tm1_25PRB_usrpb210.conf.html

    i will get this from ENB: http://s6.picofile.com/file/8387225918/X.html

    and when i use this config as cedric said once : http://s6.picofile.com/file/8387226184/enb_band7_tm1_50PRB_usrpb210.conf.html

    i will get this from ENB: http://s7.picofile.com/file/8387226500/C.html

    lets say:
    I completely followed ur all in one tutorial ( with specified commit that u mentioned )

    This is my HSS: http://s6.picofile.com/file/8387226742/HSS.html
    I dont even changed the config in /usr/local/etc/hss.conf ( I mean even don’t uncomment Operation Key)
    this is my MME: http://s7.picofile.com/file/8387227100/MME.html
    this is my SPGW: http://s6.picofile.com/file/8387227334/SPGW.html

    and for LimeSDR i did https://open-cells.com/index.php/2017/05/10/limesdr-installation/ +++ changing the LMS_EnableCalibCache to LMS_EnableCache

    and run this: ./lte-softmodem -O ~/openairinterface5g/ci-scripts/conf_files/enb.band7.tm1.50PRB.usrpb210.conf –rf-config-file ~/openairinterface5g/targets/ARCH/LMSSDR/LimeSDR_above_1p8GHz_1v4.ini

    the problem is UE cannot see the ENB!
    and one other thing is i’ve never seen Enb tracer or anything like that when i run the code!

    Could u please help me on that to fix the problem?

    1. Hi Asma,

      Could you please share the final eNB config file which you were using when you managed to get RF connection between UE and eNB?
      I tried so many combinations of Rx/Tx gain and still not figured it out. I cant see OAI network in the network search menu and there is no oscilloscope activity.

      1. Hi Andrew, you were able to achieve the connection between UE and eNB? If yes , can you please share the configuration file with me. It will be helpful for me. Thanks in advance

        1. Hi Surabhi,

          Yes, it turns out to be an issue with the way config file interpreted by the Lime SDR.

          For some reason the rx_gain and tx_gain parameters under the ” ////////// Physical parameters: component_carriers = (” line are not working. As I found out, the only way to actually change tx/rx gain is through modification of att_tx and att_rx in the “RUs” section of the config file.

          So when I changed the att_tx to about 120 dbm i was managed to observe my oai network in the network search menu on my phone (K20 Pro). But unfortunately it is still unable to setup a stable connection, and i have a lot ULSCH errors and UL failure at the end…

  3. Hi Laurent,

    Could you please share working config and .ini files for using LimeSDR with OAI.
    I’ve been struggling for quite some time now and still didn’t manage to see my OAI network on commercial UE.

      1. Dear Laurent,

        Thank you, that would be much appreciated, in a meantime I will continue trying, mb on another machine (currently I use my I5 gen8 based laptop).
        If it finally would work out somehow, I’ll post configs here.

        BR, Andrew

  4. Hi Laurent,

    can you please share the config file, i have tried so many configurations , still no success in getting network name on my phone.

  5. Dear laurent,
    I am using LimeSDR usb with openairinterface, when i am starting LimeSDR , i can see in EPC , it is showing one eNB got attached. but once i am trying to search the network in my mobile samsung galaxy S10 Lite, it is not showing the network. could you please suggest some idea or could you please make one video regarding all the configurations required for some specific mobile!!!
    This will be a great help

    Thanks
    Vikash

Comments are closed.