LTE-M on nrf9160 custom PCB

Hi,

 I am currently writing the firmware for a custom PCB with the nrf9160 SOC onboard.

I did much of the development work on the nrf9160dk dev kit.

I am running into issues getting LTE-M and MQTT working on the custom PCB.

To test I have used the "cellfund_less4_exer1" basic LTE-M and MQTT example and it works fine on the dev kit but not on the custom PCB.

I have 2 sims (the included ibasic one and a "simhero" card) - both work fine on dev kit but neither on the custom PCB.

I've read a few posts that suggest that the reason it won't work on the custom PCB because of the device ID and certificate issues - I'm a bit confused about this and not sure what to do to resolve it. Any help would be gratefully received.

On the nrf9160dk I get the following...

 

00> [00:00:00.634,307] <inf> Lesson4_Exercise1: Connecting to LTE network
00> [00:00:02.264,862] <inf> Lesson4_Exercise1: RRC mode: Connected
00> [00:00:04.353,698] <inf> Lesson4_Exercise1: Network registration status: Connected - roaming
00> [00:00:04.353,820] <inf> Lesson4_Exercise1: Connected to LTE network
00> [00:00:04.481,811] <inf> Lesson4_Exercise1: IPv4 Address found 91.121.93.94
00> [00:00:05.050,872] <inf> Lesson4_Exercise1: MQTT client connected
00> [00:00:05.050,903] <inf> Lesson4_Exercise1: Subscribing to: cubik/subscribe/topic len 21
00> [00:00:05.370,788] <inf> Lesson4_Exercise1: SUBACK packet id: 1234
00> [00:00:10.347,778] <inf> Lesson4_Exercise1: Publishing: {"heater_on":true,"heater_temp":{"unit":"f","value":280,"humidity":450,"moisture":46}}
00> [00:00:10.347,808] <inf> Lesson4_Exercise1: to topic: cubik/publish/topic len: 19
00> [00:00:10.685,913] <inf> Lesson4_Exercise1: PUBACK packet id: 14289
(Connection lost)

Using the same code on the custom PCB I get RCC connected then straight to idle, sometimes toggling between the two states..

00> [00:00:00.614,624] <inf> Lesson4_Exercise1: Connecting to LTE network
00> [00:00:05.951,477] <inf> Lesson4_Exercise1: RRC mode: Connected
00> [00:00:07.269,378] <inf> Lesson4_Exercise1: RRC mode: Idle

What am I doing wrong with my custom PCB??

Cheers

Duncan

  • Not sure what I've done now but getting these errors on the dev kit now when I'm trying "cellfund_less4_exer1" the simple MQTT example!

    00> [00:00:00.253,906] <inf> Lesson4_Exercise1: Connecting to LTE network
    00> [00:00:00.253,906] <err> lte_lc: Failed to get system mode, error: -1
    00> [00:00:00.253,936] <err> lte_lc: Could not get current system mode, error: -14
    00> [00:00:00.253,936] <inf> Lesson4_Exercise1: Modem could not be configured, error: -14
    00> [00:00:00.254,058] <err> Lesson4_Exercise1: getaddrinfo failed: -11

    Can't see that I've changed anything at all, so very weird. 

    Any ideas?

  • Hello, 

    I have 2 sims (the included ibasic one and a "simhero" card) - both work fine on dev kit but neither on the custom PCB.

    Can you verify that both SIM card have data available? I'm not familiar with simhero, do they support LTE-M and NB-IoT?

    DunKCubik said:
    Can't see that I've changed anything at all, so very weird. 

    With regards to your last comment, can you please download our pre-compiled firmware package from the nRF9160DK download page and program the AT Client (img_app_bl\nrf9160dk_at_client_2023-06-01_0677b099.hex)

    Then open the Cellular Monitor in nRF Connect for Desktop. First connect to the nRF9160DK, and then click on open Serial Terminal. In the Terminal type AT and hit send to verify function. It should respond with OK. Next you need to click on Refresh Dashboard in the Cellular Monitor. This will issue several commands in the Serial Terminal. Copy the output and paste here, please. 

    Thanks.

    Kind regards,
    Øyvind

  • Hi Øyvind,

    I confirmed that I have data on both SIMs and the simhero card does support LTE-M and NB-Iot as I've used it on the dev kit before.

    I have programmed the devkit as you instructed but cannot get Cellular Monitor connected. Open serial terminal option is greyed out and not available. If I click Start then seems to start a trace but never stops. I can click Refresh dashboard however and get...

    10:41:41.289
    AT command AT+CPIN? failed: +CME ERROR: 1
    10:41:41.293
    AT command AT+CIMI failed: 3 +CME ERROR:
    10:41:41.406
    AT command AT%XICCID failed: +CME ERROR: 0
    But not sure if this is valid??
  • Can you please repeat the steps, then in Serial Terminal try to disconnect from port and reconnect again. When using the DK it should find correct serial port.

    Afterwards, you should be able to click Refresh Dashboard again.

  • Still not getting anywhere.

    When I open cellular monitor I get a message...

    I click close..

    then select device (devkit)..

    when you say try to disconnect from port do you mean select "Terminal serial port" drop down and click "deselect", then change back to "COM11"?? 

    I did that and then I click "start" and it runs with "Stop" available and "Refresh Dashboard" available.

    If I click "Refresh Dashboard" then I get..

    11:30:27.434
    AT command AT+CPIN? failed: +CME ERROR: 13
    11:30:27.438
    AT command AT+CIMI failed: +CME ERROR:
    11:30:27.556
    AT command AT%XICCID failed: +CME ERROR:
    Have I done this correctly??

Related