nrf9151 NTN Sockets

Hi all,

I'm testing Skylo NTN on nRF9151 SMA DK with the latest pre-commercial/alpha NTN modem firmware (downloaded mid-December 2025).

Registration works fine, and uplink NIDD send succeeds (#XSEND with WAITACK, #XSENDNTF confirm).

However, receiving downlink NIDD is impossible:
- #XSOCKET=1,3,0 succeeds (#XSOCKET: <id>,3,0 OK)
- #XSOCKET? confirms socket open
- #XRECV=<any timeout> (even 5s or 300s) immediately returns ERROR

I tried:
- RAI (#XSOCKETOPT=<id>,61,3) — ERROR (not supported?)
- Disabling PSM/eDRX (CPSMS=0, CEDRXS=0)
- Polling #XRECV multiple times quickly
- Events enabled (%MDMEV=2)

Is this expected behavior in the current alpha firmware?

Modem firmware version: 1.0.0-1.alpha nRF91

Using SLM Application ncs-serial-modem 

Thanks for any guidance — excited for NTN but stuck on receive!

Logs: 

> AT+CGMR

mfw_nrf9151-ntn_1.0.0-1.alpha

OK

> AT#XSEND=128,0,8192,"ECHO: Test msg"

#XSEND: 128,1,14

OK

%MDMEV: PRACH CE-LEVEL 0

+CSCON: 1,7,4
> AT#XRECV=5

ERROR
> AT#XRECV=5

ERROR

#XSENDNTF: 128,0,14

+CSCON: 0,7,4
> AT#XSOCKET=1,3,0

ERROR
> AT#XCLOSE=128

#XCLOSE: 128,0

OK
> AT#XSOCKET=1,3,0

#XSOCKET: 128,3,0

OK
> AT#XSEND=128,0,8192,"ECHO: Test msg"

#XSEND: 128,1,0

ERROR
> AT#XSEND=128,0,8192,"ECHO: Test msg"

#XSEND: 128,1,0

ERROR
> AT#XSEND=128,0,8192,"ECHO: Test msg"

#XSEND: 128,1,0

ERROR
> AT#XSEND=130,0,8192,"ECHO: Test msg"

#XSEND: 130,1,0

ERROR
> AT#XCLOSE=128

#XCLOSE: 128,0

OK
> AT#XSOCKET=0

ERROR
> AT#XSOCKET?

#XSOCKET: 129,3,0,3,0

#XSOCKET: 130,3,0,3,0

#XSOCKET: 131,3,0,3,0

OK
> AT#XCLOSE=129

#XCLOSE: 129,0

OK
> AT#XCLOSE=130

#XCLOSE: 130,0

OK
> AT#XCLOSE=131

#XCLOSE: 131,0

OK
> AT#XSOCKET?

OK
> AT#XSOCKET=1,3,0

#XSOCKET: 128,3,0

OK
> AT#XRECV=5

ERROR
> AT%CSCON=3

ERROR
> AT%MDMEV=2

OK
> AT#XSOCKET?

#XSOCKET: 128,3,0,3,0

OK
> AT#XSOCKETOPT=128,61,3

ERROR
> #XSOCKETOPT=128,61,3

ERROR
> AT#XSOCKET?

#XSOCKET: 128,3,0,3,0

OK
> AT#XSOCKET=1,3,0

#XSOCKET: 129,3,0

OK
> #XSOCKETOPT=129,61,3

ERROR
> AT#XRECV=120

ERROR
> AT#XSOCKET=1,3,0

#XSOCKET: 130,3,0

OK
> AT#XRECV=120

ERROR
> AT#XRECV=120

ERROR
> AT#XRECV=120

ERROR
> AT#XRECV=120

ERROR
> AT#XRECV=120

ERROR
> AT#XRECV=120

ERROR
> AT#XRECV=120

ERROR
> AT#XSOCKET=130

ERROR
> AT#XSOCKET=129

ERROR
> AT#XCLOSE=129

#XCLOSE: 129,0

OK
> AT#XCLOSE=130

#XCLOSE: 130,0

OK
> AT#XSOCKET=1,3,0

#XSOCKET: 129,3,0

OK
> AT#XRECV=300

ERROR
> AT#XRECV=800

ERROR
> AT+CPSMS=0

OK
> AT+CEDRXS=0

OK
> AT#XSOCKET=1,3,0

#XSOCKET: 130,3,0

OK
> AT#XRECV=300

ERROR

Parents
  • Hi Yeab,

    I'm sorry we don't have a NTN expert on hand right now due to Christmas / New Year holidays. You might have to wait until next week if you want an expert on the subject.

    However, I'll still try to help you Slight smile.

    Did you connect your device to a NTN network (i.e. Skylo) before sending the AT-commands you shared ? 

    I see that when you are trying to send the reception command, you write : "AT#XRECV=<x>" but if I check the SLM AT-Commands documentation I see that it should be : "AT#XRECV=<handle>,<mode>,<flags>,<timeout>[,<data_len>]". I think you might be missing some parameters.

    I saw that there is a branch on the Asset tracker template application repository that supports NTN. Maybe you can try to take a look into it to see in more details how they did it.

    I also found a small tutorial from monogoto on how to use NTN with their SIM card. It seems like they are using the latest NTN modem firmware, but not the latest SLM application. Even tho, I think that it can still be helpful to go through it. 

    Tell me if any of my suggestions helped !

    Best regards,

    Simon D-M

  • Hi Simon D-M,

    I have follow monogoto website, but I think there are a few steps I have got confused

    1. After I program 2.0.2 with zip(after unzip full download from  Nordic,there is an zip I will call that A.zip2. I unzip the full dowanload and use A.zip for "Write" to flash SMA

    2. Look for hex(I was using subdir hex file) to do "Erase and Write", where the bootloader partion disapear(shuold I pick the img subdir hex instaed), apear the booloader portion disapear

    3. Then the board does not activate for AT command

    So are you able to provide me the steps include where should I use the hex and zip file from my download zip 2.0.2 and the alpha zip

    Below is 2.0.2 release note , 

    1. Should I use hex from"img_app_bl" for Erase and Write?

    "

    These files were built with nRF Connect SDK version v3.1.0
    from sdk-nrf repository (github.com/.../sdk-nrf)
    
    Full commit SHA: 6c6e5b32496eb7203f4c52ae9b3575949eab522e
    
    Folder contents:
    img_app_bl/
      - Full application images including bootloader.
      - These files can be used with:
        - nRF Connect Programmer.
        - nRF Util CLI.
     img_dfu_zip/
      - These images contain only application and bootloader is not included.
      - Images are in binary format.
      - These files can be used with:
        - Over-the-air update, for example, through nRF Cloud, Azure or AWS.
    img_fota_dfu_hex/
      - These images contain only application and bootloader is not included.
      - Images are in HEX format.
      - These files can be used with nRF Connect Programmer (through USB bootloader only).
    img_fota_dfu_bin/
      - These images contain only application and bootloader is not included.
      - Images are in binary format.
      - These files can be used with:
        - Over-the-air update, for example, through nRF Cloud, Azure or AWS.
        - nRF Util CLI (through USB bootloader only)
    
    The following folders contain images configured for modem debugging:
      - img_app_bl/debug
      - img_fota_dfu_hex/debug
      - img_fota_dfu_bin/debug

    "

    And 2.0.2 does not include NTN band

    "

    *** mfw_nrf91x1_2.0.2
    *********************
    
    The mfw_nrf91x1 is Cellular IoT and Positioning firmware for modem subsystem of nRF9131 LACA A0,
    nRF9151 LACA A0, and nRF9161 LACA A0 SiP modules. It supports 3GPP LTE release 14 LTE-M and NB-IoT
    standards, selected optional 3GPP LTE release 14 and 15 features, GPS L1C/A and QZSS L1C/A
    positioning.
    
    LTE-M operation is enabled on E-UTRA bands 1, 2, 3, 4, 5, 8, 12, 13, 18, 19, 20, 25, 26, 28, 66
    and 85.
    
    NB-IoT operation is enabled on E-UTRA bands 1, 2, 3, 4, 5, 8, 12, 13, 17, 19, 20, 25, 26, 28, 65, 66
    and 85.
    

    .............................Jan 1st  2026  ....................

    Hi Simon-D-M

    Finally I can complete 2.0.2 modem an Aplication to programm to the kit

    Modem versiom is 2.0.2, but some how not all commands work.

    My steps are

    1. Download 2.0.2

    2. Unzip it, 

    3. Open Programmer

    4. Look unzip folder first seen zip file, and "Write"

    5. And then goto xx_bl folder, look for servic,.xxx.hex,this file include bootloader

    6. Add it and "Eraseand write", 

    7.I can send at command, but mfm still 2.0.2

    My question is how can I make it 1.0.0.1 alpha, the zip file I dowanload does not contain hex works for fullfucion, or there is steps I am missing here

  • HI Simon-DM

    I decide to give up for now

    I will switch to other brand development kit

    Simon

  • > 1. After I program 2.0.2 with zip(after unzip full download from  Nordic,

    Just to give you some hints:

    "unzip full download" 

    Nobody will fully understand, what you did. There are so many "downloads" around the nRF91, that even the "full" in the context of the modem firmware doesn't clear that up. 

    If you want to use the nRF9151 A1 for NTN (and TN), you need

    mfw_nrf9151-ntn_1.0.0-1.alpha.zip

    and if you want to rollback to TN (only), you need

    mfw_nrf91x1_2.0.4.zip

    Now: never ever unzip these mfw downloads! Apply them with:

    nrfjprog --verify -r --program mfw_nrf9151-ntn_1.0.0-1.alpha.zip

    or

    nrfjprog --verify -r --program mfw_nrf91x1_2.0.4.zip

    I don't know, how often I did that in the last months (for sure more than 10x, and with several DKs), it was always successful. And never unzipped by me.

    Using the "Programmer App" of the "nRF Connect for PC" works similar:

    - Select your DK with "Select Device".

    - Add either the "mfw_nrf9151-ntn_1.0.0-1.alpha.zip" or the "mfw_nrf91x1_2.0.4.zip" with "Add file"

    The the "Programmer App" will show you the resulting functions, "erase & write" is disabled, "Write" is enabled, so select that. A new dialog "Modem DFU" is shows up, confirm "write" and then wait, it takes a minute or two.

    Also that was always successful, even if I use the "Programmer App" only in rare cases.

  • Hi Achim

    What I see was

    1. When I first power up the board(2.0.3 by default), there are two LEDs light up, one is power LED ,one is LED1. And I can run AT command from rfn connect tool serial command, to check modem version, etc

    2. After I did alpha.zip by  "write", the LED1 went off,and not able to execute at command anymore

    3. After redo v2.0.3 by quict start,

    4. and check at command v0.7 and 1.04

    the 0.7 AT%XSYSTEMMODE=0,0,0,0,1  : 5 parameters

    The 1.04 AT%XSYSTEMMODE=0,0,0,1 : only 4, if I put 5 , it will get error

    This is what I get in past a few days

    FYI, I have NTN sim card activated as well.

  • > and check at command v0.7 and 1.04

    Sorry, you still write only some bits, but the more complete info in order to see, what happens on your side, is missing ... 

    I'm just an other user, I'm not really able to spend the time to ask again and again for more precise information. With that, I cross the fingers for you, that the "other brand development kit" works for you.

  • No problem, 

    I just share what happened, I have decide Murata , Quotel, and Iridium, they are more ready.

Reply Children
Related