Activate GNSS while connected on lte-m or nb-iot on nrf9160

Hi there.

I am currently developing a simple asset tracker based on several examples using nrf9160 custom board.

So I am using several examples like mqtt_simple, gnss, and location. All of those locations are works on my custom boards because it is compiled as nrf9160dk.

So, the way I want this works are first it is getting a location, then publish the raw data location (gnss or cellular) to the mqtt. But after combining several those code, I got error that gnss couldn't works when LTE-M or/and NB-IOT Activated. So below is the result for rtt viewer from my firmware.

00> * Booting Zephyr OS build v3.2.99-ncs1 *
00> init fw`
00> 
00> Configuring time
00> Configuring modem.
00> Enabling PSM
00> Disabling EDRX
00> LTE services init.
00> Connect to network
00> Connected to LTE
00> Connected to the network!
00> 
00> Client init IPv4 Address found 3.228.54.173Broker : broker.emqx.io
00> Port : 1883
00> client_id = palmlab_thingy91--> success.
00> mqtt connect --> success.
00> fds init --> success.
00> Create poll fds --> success.
00> create mqtt live --> success.
00> create mqtt input MQTT client connectedSubscribing to: palmlab/pettracker/subscribe len 28
00> Waiting for current time
00> Sending ping message --> success.
00> Init location handler --> success.
00> Init sample --> success.
00> Gnss init and start --> success.
00> Tracking:  0 Using:  0 Unhealthy: 0
00> GNSS operation blocked by LTE
00> -----------------------------------
00> Seconds since last fix: 0
00> Searching [|]
00> 
00> NMEA strings:
00> 
00> Tracking:  0 Using:  0 Unhealthy: 0
00> GNSS operation blocked by LTE
00> -----------------------------------
00> Seconds since last fix: 1
00> Searching [/]
00> 
00> NMEA strings:
00> 
00> Tracking:  0 Using:  0 Unhealthy: 0
00> GNSS operation blocked by LTE
00> -----------------------------------
00> Seconds since last fix: 2
00> Searching [-]
00> 
00> NMEA strings:
00> 
00> Tracking:  0 Using:  0 Unhealthy: 0
00> GNSS operation blocked by LTE
00> -----------------------------------
00> Seconds since last fix: 3
00> Searching [\]
00> 
00> NMEA strings:
00> 
00> Tracking:  0 Using:  0 Unhealthy: 0
00> GNSS operation blocked by LTE
00> -----------------------------------
00> Seconds since last fix: 4
00> Searching [|]
00> 
00> NMEA strings:
00> 
00> Tracking:  0 Using:  0 Unhealthy: 0
00> GNSS operation blocked by LTE
00> -----------------------------------
00> Seconds since last fix: 5
00> Searching [/]
00> 
00> NMEA strings:
00> 
00> Tracking:  0 Using:  0 Unhealthy: 0
00> GNSS operation blocked by LTE
00> -----------------------------------
00> Seconds since last fix: 6
00> Searching [-]
00> 
00> NMEA strings:
00> 
00> Tracking:  0 Using:  0 Unhealthy: 0
00> GNSS operation blocked by LTE
00> -----------------------------------
00> Seconds since last fix: 7
00> Searching [\]
00> 
00> NMEA strings:
00> 
00> Tracking:  0 Using:  0 Unhealthy: 0
00> -----------------------------------
00> Seconds since last fix: 7
00> Searching [|]
00> 
00> NMEA strings:
00> 
00> $GPGGA,000045.77,,,,,0,,99.99,,M,,M,,*67
00> 
00> $GPGLL,,,,,000045.77,V,N*4B
00> 
00> $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99,1*2D
00> 
00> $GPGSV,1,1,0,,,,,,,,,,,,,,,,,1*54
00> 
00> $GPRMC,000045.77,V,,,,,,,060180,,,N,V*09
00> 
00> Tracking:  0 Using:  0 Unhealthy: 0
00> -----------------------------------
00> Seconds since last fix: 8
00> Searching [/]
00> 
00> NMEA strings:
00> 
00> $GPGGA,000046.77,,,,,0,,99.99,,M,,M,,*64
00> 
00> $GPGLL,,,,,000046.77,V,N*48
00> 
00> $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99,1*2D
00> 
00> $GPGSV,1,1,0,,,,,,,,,,,,,,,,,1*54
00> 
00> $GPRMC,000046.77,V,,,,,,,060180,,,N,V*0A
00> 
00> Tracking:  0 Using:  0 Unhealthy: 0
00> -----------------------------------
00> Seconds since last fix: 9
00> Searching [-]
00> 
00> NMEA strings:
00> 
00> $GPGGA,000047.77,,,,,0,,99.99,,M,,M,,*65
00> 
00> $GPGLL,,,,,000047.77,V,N*49
00> 
00> $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99,1*2D
00> 
00> $GPGSV,1,1,0,,,,,,,,,,,,,,,,,1*54
00> 
00> $GPRMC,000047.77,V,,,,,,,060180,,,N,V*0B
00> 
00> Tracking:  0 Using:  0 Unhealthy: 0
00> -----------------------------------
00> Seconds since last fix: 10
00> Searching [\]
00> 
00> NMEA strings:
00> 
00> $GPGGA,000048.77,,,,,0,,99.99,,M,,M,,*6A
00> 
00> $GPGLL,,,,,000048.77,V,N*46
00> 
00> ,1*2D
00> 
00> $GPGSV,1,1,0,,,,,,,,,,,,,,,,,1*54
00> 
00> $GPRMC,000047.77,V,,,,,,,060180,,,N,V*0B
00> 
00> Tracking:  0 Using:  0 Unhealthy: 0
00> -----------------------------------
00> Seconds since last fix: 10
00> Searching [\]
00> 
00> NMEA strings:
00> 
00> $GPGGA,000048.77,,,,,0,,99.99,,M,,M,,*6A
00> 
00> $GPGLL,,,,,000048.77,V,N*46
00> 
00> * Booting Zephyr OS build v3.2.99-ncs1 *
00> init fw
00> Pet Tracker Started
00> 
00> Configuring time
00> Configuring modem.
00> Enabling PSM
00> Disabling EDRX
00> LTE services init.
00> Connect to network
00> Connected to LTE
00> Connected to the network!

As you can see, at the first it is connecting to the network service. After that publishing ping message for indicate it is alive. But when it is trying to connect to the services, I got error like GNSS operation blocked by LTE or sometime Insufficient GNSS time windows.

I read some solution iin this forum like enable PSM configuration but I already did that and still same.

Anybody have experience or solution with this? Thank you very much and really appreciate if there is any suggestion for this, thanks again.

Parents
  • Hello,

    Due to Christmas Holidays our team is lower staffed than normal and some delays in our answers must be expected. We apologize for the inconvenience.


    What version of the nRF Connect SDK are you using? And what modem FW are you running on your board?

    I read some solution iin this forum like enable PSM configuration but I already did that and still same.

    Have you verified that you are in PSM mode? Are you able to verify functionality using the Asset Tracker v2?

    Kind regards,
    Øyvind

  • Hi, there. No problem.

    Relaly thanks for responding my question in this holiday time.

    Anyway, I use nrf sdk v.2.2.0 and my modem firmware I think is the latest version, which is v.1.3.3.

    For enabiling PSM, I execute code below.

    		printk("Enabling PSM\n");
    		lte_lc_psm_req(true);

    I can't run asset tracker v2 because I need to generate code for my nrf9160. But I already try gnss and mqtt_simple examples, and those examples are works properly.

  • What is your location? What SIM are you using? Have you verified that your network allows you to use PSM? 

    Can you please try to run the AT_client and issue CEREG command to see what network you are connecting to. 

    Will need more information. 

    Thanks. 

    -Øyvind

  • Hi, I think the issue is not from network. Because as you can see on my first message, it was connected on LTE-M / NB-IOT Network. But it got stuck and restarted after trying to retrieve gnss location while lte-m service is connected.

Reply Children
Related