Sending text message using AT command « Mezgani blog

Playing with my USB dongle that is a 3g modem, i felt the need to send message using this modem.

but i saw that it has no support to send message using AT command, well to check this use the AT+CSMS command before any shake.

In the case when you have a GSM/GPRS modem/mobile phone with full support of what we talk about before :

You can easily sending message using the great Kannel, or from scratch:

In this article we will focus on how to send message using AT command and we can resume this in five steps :

1. Initializing the modem

2. Setting SMSC

3. Storing the message into storage

4. Sending

5. Delete the message from storage

First of all, to interact with the device you need a serial tools like screen or may be minicom.

Well i recommend the use of screen when you work on pseudo devices :

Let’s connect to the device (ttyUSB0) using screen with a baud of 9600 :

$ screen /dev/ttyUSB0 9600

1. Send the initialize strings :





2. Define the service center address as follow and verify that it is correct:


145 means that we deal with formatted address using typical ISDN/telephony numbering plan

(ITU E.164/E.163) and it is an international number.

3. In the fact if you may send a text messages to +85291234567, write the message first to storage area, as like as:

AT+CMGW=”+85291234567″,145,”STO UNSENT”Hello world

4. And finally you can now send the message, referenced with it index:


You can also do this if you rather to send it to mutli destinations:




Lastly, delete the message from storage area.

5. AT+CMGD=3

To read the first message indexed with 1 :


Also if you need to play or list all the message in the storage


viaSending text message using AT command « Mezgani blog.