This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

LTE Link monitor

Hi everyone,

I am getting start with the GPS and LTE connections on your nrf9160dk platform. I have tried all of the samples I was able to find but I get some weird results more often then not. I've seen that the LTE Link Monitor in the nrfconnect app could be useful to play around with the board. However I am unable to find any information about how to get started with the LTE Link Monitor? 

I am not sure what should I flash to the device, in order to get it working. Right now I have flashed one of your samples(multicell location - doesn't really work for me, it gives "CELL ID = -1"), and I've updated the modem firmware through the programmer from the nrfconnect. But when I connect via LTE Link Monitor, and reset the board, nothing shows up in the terminal except for the AT+CFUN=?.

Any help would be appreciated. I'd prefer getting LTE Link Monitor working, but some advices on the GPS/AGPS/MCELL samples are welcome as well. 

Cheers,

Aleksa

Parents
  • Hi Aleksa,

    You can find documentation and a user guide for LTE Link Monitor at our infocenter. Please see the following link: nRF Connect LTE Link Monitor.

    If you have enabled logging on your device you should be able to see the log output in the terminal in LTE Link Monitor. You will also be able to use LTE Link Monitor to see information about the modem, view modem events, send AT commands and more. Information about how to do all of this can be found in the link I added above. 

    Have you looked at the documentation for the samples you are testing? In our nRF Connect SDK documentation you can find all the applications and samples in the SDK. I would recommend looking at the "Testing" section of the sample you are using to see how you can test it. For the Multicell location sample this can be found here: nRF9160: Multicell location testing. If you are new to nRF9160, I would also recommend taking a look at Working with nRF9160 DK.

    Since you are getting Cell ID = -1 it seems like you are not connected to the network. If you are using the iBasis SIM card that came with the DK, make sure that you have activated it in your nRF Cloud account and that there is iBasis coverage in your area, see iBasis network coverage.

    Best regards,

    Marte

  • Hi Marta,

    Thanks for a detailed answer. Sadly I live in Serbia, and there is no iBasis coverage here. Could I somehow work with a sim from a local provider? 

    I guess this is what's stopping my LTE Link Monitor. But one thing confuses me still, do I need to flash any firmware on the device when I use LTE Link Monitor, or does it communicate directly with the modem and doesn't depend on the firmware of the NRF9160?

    Best Regards,

    Aleksa

  • Hi Aleksa,

    According to the GSMA deployment map the operator Vipmobile (A1) has NB-IoT coverage in Serbia. You can contact them about getting a NB-IoT SIM card. 

    You need firmware running on the application core of the nRF9160 DK, and this firmware must include the Modem library in order to communicate with the modem. Additionally, if you want to be able to send an view AT commands, you need to use the AT Host library to expose the AT command interface. For an example of how this is done, you can look at the AT Client sample. This is a simple sample that demonstrates sending AT commands to the modem.

    Best regards,

    Marte

Reply Children
  • Hi Marta,

    I am now finally getting some results from AT Client and LTE Link monitor. Weirdly, it doesn't work with Vipmobile at the moment but I get an LTE connection with the iBasis sim card. 

    Now I've decided to go back to the multicell_location sample, and it still outputs:
    LTE cell changed: Cell ID: -1.

    Also in all of the samples, I have to add the following to prj.conf to get the output in the Debug Terminal:

    # Add RTT debugging (Comment out for Low Power)
    CONFIG_PRINTK=y
    CONFIG_CONSOLE=y
     
    CONFIG_STDOUT_CONSOLE=y
    CONFIG_UART_CONSOLE=n
    CONFIG_RTT_CONSOLE=y
    CONFIG_USE_SEGGER_RTT=y
     
    #LOGGING (Comment out for Low Power)
    CONFIG_LOG=y
    

    I don't understand why wouldn't they provide output by default, it's confusing me a bit. 

    So basically I was able to get the LTE Link monitor working but not much more than that it seems.

    Best Regards,

    Aleksa

  • Hi Aleksa,

    I am happy to hear that you get some results. 

    Aleksa said:
    I get an LTE connection with the iBasis sim card

     What are you doing to check whether you have a connection? Since the multicell sample still outputs Cell ID: -1, I suspect there is still issues with your network connection.

    Aleksa said:
    it doesn't work with Vipmobile at the moment

    Did you use a SIM card specifically for NB-IoT? You cannot use a regular SIM card such as for your phone, but it needs to be a SIM card with support for NB-IoT.

    Aleksa said:
    Also in all of the samples, I have to add the following to prj.conf to get the output in the Debug Terminal:

     Logging should be automatically set with the CONFIG_NCS_SAMPLES_DEFAULT Kconfig option, and UART is the default logging backend. LTE Link Monitor should display the UART output in the terminal window. Are you using UART for something else? 

     Best regards,

    Marte

  • Hi Marte,

    I was able to get going with AGPS and GPS with iBasis, but the multicell is still troubling me.

    Well I've ran the code from the segger ide, and I've used LTE Link Monitor to see if it has LTE connection. It didn't have one. Weird thing with the example is that it uses only lte_connect(), instead of lte_lc_init_and_connect(). Not sure if that could be an issue.

    Best Regards,

    Aleksa

  • Hi Aleksa,

    The multicell sample use lte_lc_init_and_connect_async() instead of lte_lc_init_and_connect(). You can see this in the function lte_connect(), which is a function in main.c, and specific for this sample. The difference between lte_lc_init_and_connect() and lte_lc_init_and_connect_async() is that the latter, async, is non-blocking. This means that it does not block until a connection is established (or has timed out), which lte_lc_init_and_connect does. 

    Could you please post the log output you are getting from the multicell sample? 

    Best regards,

    Marte

  • Hi Marta,

    This is the complete output:

    *** Booting Zephyr OS build v2.6.0-rc1-ncs1-3-g0944459b5b62  ***
    [00:00:00.215,789] <inf> multicell_location_sample: Multicell location sample has started
    [00:00:00.225,067] <inf> multicell_location: A certificate is already provisioned to sec tag 177
    [00:00:00.274,627] <inf> multicell_location_sample: Connecting to LTE network, this may take several minutes...
    [00:01:08.908,203] <inf> multicell_location_sample: LTE cell changed: Cell ID: -1, Tracking area: -1
    [00:01:08.908,721] <inf> multicell_location_sample: Cell change triggered start of cell measurements
    [00:01:08.911,346] <inf> multicell_location_sample: Neighbor cell measurements received
    [00:05:33.943,481] <inf> multicell_location_sample: Button 1 pressed, starting cell measurements
    [00:05:33.952,148] <inf> multicell_location_sample: Neighbor cell measurements received

    I've pressed the button 1 once. When I log in to the nrf cloud, I see that the device is disconnected. I've configured the api key and set nrf_cloud=y in the prj.conf. I've seen in the project readme that only one cell is usable when going with nrf_cloud, and that here and skyhook can use multiple cells. Not sure why is that the case and if I can't use nrf_cloud when trying to get MCELL readings.  

    This is what I get when I change from async connection to the blocking lte_lc_init_and_connect():

     

    *** Booting Zephyr OS build v2.6.0-rc1-ncs1-3-g0944459b5b62  ***
    [00:00:00.216,461] <inf> multicell_location_sample: Multicell location sample has started
    [00:00:00.225,738] <inf> multicell_location: A certificate is already provisioned to sec tag 177
    [00:00:00.233,764] <inf> multicell_location_sample: lte_lc_init and connect this may take a while
    [00:10:00.282,257] <inf> lte_lc: Network connection attempt timed out
    [00:10:00.291,961] <inf> lte_lc: Using fallback network mode
    [00:20:00.324,432] <inf> lte_lc: Network connection attempt timed out
    [00:20:00.324,829] <err> multicell_location_sample: Modem could not be configured, error: -116
    [00:20:00.325,317] <err> multicell_location_sample: Failed to connect to LTE network, error: -116

    I've removed k_sem_take(&lte_connected, K_FOREVER); and just replaced the async function with the blocking one.

    Cheers,

    Aleksa

Related