How to integrate a Third-Party MCU with nRF9151 Modem (SLM Mode) with LTE-M/GNSS?

Hello,

I’m working on a project where I intend to integrate the nRF9151 as a standalone modem, communicating with my external MCU via UART using AT commands.

My goals include using the modem for:

  • LTE-M / NB-IoT

  • NTN (Satellite)

  • MQTT

  • GNSS

While exploring the documentation, I found the following examples under the nRF Connect SDK:

  •  Cellular: AT Client

  • Serial LTE modem

However, I'm a bit confused about which one is the proper baseline to use when integrating with a third-party MCU.
Should I use the serial_lte_modem application as firmware for the nRF9151 and treat it as a full AT command modem? Or is at_client more appropriate in some cases?

Also, is there a list or guide of recommended AT commands (and sequences) that should be followed on the external MCU for basic operation (network registration, MQTT, GNSS, etc.)?

Thanks in advance for any guidance or clarification!

Parents
  • Hello there, 

    where I intend to integrate the nRF9151 as a standalone modem, communicating with my external MCU via UART using AT commands.

    Yes, this should not be an issue. As you have already seen there is an application to use, the Serial LTE Modem (SLM) is designed to emulate a stand-alone LTE modem on an nRF91 Series device. The application accepts both the modem-specific AT commands and proprietary AT commands. 

    This would the best application to start with as a baseline.

    Also, is there a list or guide of recommended AT commands (and sequences) that should be followed on the external MCU for basic operation (network registration, MQTT, GNSS, etc.)?

    Yes, these are linked in the documentation for the SLM application (see link above) as well. 

    There is also a sample called SLM Shell which demonstrates how to send AT commands to modem using an external device. 

    My goals include using the modem for:

    All of these should be supported in SLM, however, as the NTN functionality is still in the starting phase we cannot guarantee stable support yet. Have you been in contact with your sales representative regarding an NTN enabled nRF9151DK? 

    Kind regards,
    Øyvind

  • Thanks  !

    Other questions arose:
    1) Are there any limitations to using the nRF9151 as an SLM, working with LTE-M/NBIOT/GNSS (and NTN, in the future), on the same UART channel, with AT commands? I noticed in the commands “%XSYSTEMMODE” and “+CFUN=<fun>” that there is the possibility of more than one mode at the same time without affecting the other, but I would like to confirm if it is common to use the same UART channel for LTE-M and GNSS;
    2) I did not find in the documentation the recommended/required time to wait for a buffer or AT confirmation to be received. Only about the baud rate of the nRF9151 UART interface. Could you point me to it?

    I would like to confirm this to know if I will need to create different handlers and treatments in my firmware, since my application is using only one UART between the nRF9151 and my main MCU.

    Thanks in advance!

  • Hello, 

    Here are the answers I got from our experts internally

    dpio said:
    1) Are there any limitations to using the nRF9151 as an SLM, working with LTE-M/NBIOT/GNSS (and NTN, in the future), on the same UART channel, with AT commands? I noticed in the commands “%XSYSTEMMODE” and “+CFUN=<fun>” that there is the possibility of more than one mode at the same time without affecting the other, but I would like to confirm if it is common to use the same UART channel for LTE-M and GNSS;

    In SLM we are generally using only one UART to communicate, but we are currently outputting our NMEA messages only to RTT traces. There is also some preliminary implementation for allocating a separate CMUX channel for the NMEA messages, but that is likely missing development work. However, in future, we are likely moving to a direction that those would come with their own CMUX channel.

    dpio said:
    2) I did not find in the documentation the recommended/required time to wait for a buffer or AT confirmation to be received. Only about the baud rate of the nRF9151 UART interface. Could you point me to it?

    There seems to be no timing information available for different AT-commands. For example AT+CFUN=0 can be a long operation depending on the network state, so the amount of time for AT confirmation varies a lot. That said, you should always receive an AT confirmation, at least if you use hw-flow-control on the UART. 

    Hope this answers your question.

    KInd regards,
    Øyvind

Reply
  • Hello, 

    Here are the answers I got from our experts internally

    dpio said:
    1) Are there any limitations to using the nRF9151 as an SLM, working with LTE-M/NBIOT/GNSS (and NTN, in the future), on the same UART channel, with AT commands? I noticed in the commands “%XSYSTEMMODE” and “+CFUN=<fun>” that there is the possibility of more than one mode at the same time without affecting the other, but I would like to confirm if it is common to use the same UART channel for LTE-M and GNSS;

    In SLM we are generally using only one UART to communicate, but we are currently outputting our NMEA messages only to RTT traces. There is also some preliminary implementation for allocating a separate CMUX channel for the NMEA messages, but that is likely missing development work. However, in future, we are likely moving to a direction that those would come with their own CMUX channel.

    dpio said:
    2) I did not find in the documentation the recommended/required time to wait for a buffer or AT confirmation to be received. Only about the baud rate of the nRF9151 UART interface. Could you point me to it?

    There seems to be no timing information available for different AT-commands. For example AT+CFUN=0 can be a long operation depending on the network state, so the amount of time for AT confirmation varies a lot. That said, you should always receive an AT confirmation, at least if you use hw-flow-control on the UART. 

    Hope this answers your question.

    KInd regards,
    Øyvind

Children
Related