This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Sending SMS using at_client example

Should it be possible to send SMS with the at_client example, and is there any special requirements to do so?

This is the AT commands setup procedure I've used:

AT+CFUN=1
OK
AT+CPIN="1234"
OK
AT+CNUM
+CNUM: ,"+47123456789",145
OK
AT+CEREG?
+CEREG: 0,5,"0AF1","02055515",7
OK
AT+CNMI=3,2,0,1
OK

After this I can receieve SMS. But if I try to send one, the following happens:

AT+CMGS=17<CR>0691746435990511000A91742904694700000B04F4F29C0E<SUB>
ERROR

It looks like I get the ERROR as soon as the carriage return is sent

AT+CMGS=17<CR>
ERROR
  • I was able to get sending of SMS to work.

    It does not appear to work with the iBasis SIM card that came with the DK. But I was able to use my own SIM card (this might not work for everyone since LTE-M might not be supported)

    I could not use the at_client example, as the AT+CMGS command isn't supported over a UART terminal to at_client, if I understand correctly.

    If I write the AT commands directly from C firmware, it works.

    This is the sequence of AT commands I used:

    > AT+CPIN="1234"
    OK
    > AT+CFUN?
    +CFUN: 4
    OK
    > AT+CFUN=1
    OK
    > AT+CFUN?
    +CFUN: 1
    OK
    Sleeping...
    > AT+CNUM
    +CNUM: ,"+47123456789",145
    OK
    > AT+CEREG?
    +CEREG: 0,2,"0AF1","02055515",7
    OK
    > AT+CNMI=3,2,0,1
    OK
    > AT+CMGS=27<CR>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX<SUB>
    +CMGS: 99
    OK
    


    It was important to add a sleep function before sending CPIN, and after sending CFUN=1

    I used the following example for how to send simple AT commands from C firmware code:

    https://github.com/Rallare/fw-nrfconnect-nrf2/blob/nrf9160_samples/samples/nrf9160/simple_at/src/main.c

    (I used k_sleep(10000) to sleep before CPIN and after CFUN=1)

    I used this tool to generate the AT+CMGS command:
    http://rednaxela.net/pdu.php

    In the C code the string for the CMGS command looks like this:

    "AT+CMGS=YY\rXXXX\x1A"

    Where YY is the length (from the first line from the PDU generator) and XXXX is the hexidecimal code (from the second line from the generator)

  • Hi!,

    I'm following your steps, but it seems simple_at doesn't boot correctly. First I erase all, then program secure_boot, then simple_at. But it stops when showing "***** Booting Zephyr OS v1.13.99-ncs2 *****", and it doesn't show the first printk from app_socket_start.

    Any help?

    Thanks!

  • Hi all!

    We are trying to send SMS with the nrf9160 DK, without success.

    Thank you @skyfex for your clear explanations. Unfortunately, using SIM cards other than iBasis seems to prevent the firmware from booting (we got the same behavior that @Diego Garcia with only the "Booting Zephyr OS" printk showing when using SIM cards other than the iBasis one).

    @skyfex could you share which SIM card you used for your successful SMS test?

    @Diego Garcia could you in the end manage to send SMS? If yes, could you share how you did it?

    Thank you very much for your help!

    Best,

    Étienne

  • Hi! Has probably nothing to do with the SMS problem, but could you explain what  "using SIM cards other than iBasis seems to prevent the firmware from booting" mean? I am also using my own sim card  (with NB-IoT firmware), and the boot process itself is working. My problem is that the registration process is not working reliably. Meaning that it seems to work after I flashed the application for time and then never again.

  • Hi Dominik! Thank you for your answer!

    The behavior we saw is the following one:

    - Booting simple_at with the iBasis sim card inserted in the DK works fine (= we see the secure boot trace + the application printk as expected)

    - Booting simple_at (or else) with our own sim cards inserted (we tried two different ones, Orange & SFR french operators) only shows the secure boot traces, and nothing else after the "Booting Zephyr OS" printk. The firmware seems then stuck.

    It seems like our sim cards are not "allowed" to be used with the nrf9160 DK.

    Best,

    Étienne

Related