Sending a Chinese SMS using PDU mode

Can anyone give me an example on how to send a chinese SMS using PDU mode (AT Command set)??

Thanks
boonhui78Asked:
Who is Participating?
 
kwyshellConnect With a Mentor Commented:
I think to send Chinese SMS using PDU mode you need to use Unicode encoding for PDU format. PDU format is simpler for Unicode (16Bits) Encoding. Because you don't have to perform a 7bit compressing and decompressing. All you have to do is to swap hign and low byte.

To send SMS in pdu format, you need parse your sms into two parts of PDU. One is header for PDU to saved your phone information. Another is content of SMS.

For unicode format,

Kwyshell SMS
[Receive Format]
  +-----------Data Length (AT+CMGS= 22)---------------------------------------------------+
  |  +- Add Len --+        +- Add Len --+                                                 |
  |  |            |        |            |                                                 |
07|91|889653704434|04|0C|91|889622892190|00|08|10309022541423|80|591C76E16597661F5E0C00209B
|  |  |            |  |  |  |            |  |  |              |  |
|  |  |            |  |  |  |            |  |  |              |  +------------------ TP-DATA
|  |  |            |  |  |  |            |  |  |              +--------------------- TP-UDL
|  |  |            |  |  |  |            |  |  +------------------------------------ TP-SCTS Time Stamp
|  |  |            |  |  |  |            |  +--------------------------------------- TP-DCS. Data coding scheme
|  |  |            |  |  |  |            +------------------------------------------ TP-PID
|  |  |            |  |  |  +------------------------------------------------------- Delivering Address
|  |  |            |  |  +---------------------------------------------------------- Type of deliver Address
|  |  |            |  +------------------------------------------------------------- Length of deliver Address
|  |  |            +---------------------------------------------------------------- SMS_DELIVER = 8
|  |  +----------------------------------------------------------------------------- Service Center Address
|  +-------------------------------------------------------------------------------- Type of Address
+----------------------------------------------------------------------------------- SMSC Message Length
*/

You must fellow the GSM_03.38 to encode this header and encode the content bytes in BigEnd.

The AT command sequences: (I have tried on Nokia and Erisson's phone)

// Reset modem
> ATZ<CR>
< OK
// Turn off echo
> ATE0<CR>
< OK
// Using PDU format
> AT+CMGF=0<CR>
< OK
// Set PDU length
> AT+CMGS=<SMS_LEN>
< <
// After get '<' you can start to write pdu content
> <SMS_PDU_DATA>
// Write a ending character
>< CTRL+Z>
< OK

Finish!
Kwyshell
http://home.kimo.com.tw/kwyshell/
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.