You are on page 1of 25

SMS, CS calls and GPRS sessions

Page

SMS

Page

SMS - Overview
Referred to as Point to Point Short Message Service
Block mode - This was the original mode implemented initially for GSM. This is not supported by
anyone any more.
PDU mode - Mode implemented in all of the previous generation of modules, gives more control
of SMS than text mode but is more complex. This is the raw data that is sent over the air to the
network.
Text mode - A later mode designed to make it easier for people to write software, basically
translation software from text to PDU.

The two types of SMS which are seen by the MS are.


SMS submit - This is sent to the network when sending an SMS.
SMS deliver - This is received from the network when receiving an SMS.
SMS delivers and submits are different in the way they are coded, this is described in the
document How to send SMS contained on the CDs.
Point to Point-SMS is detailed in GSM 3.40 or 3GPP 23.040.

Page

SMS - PDU mode


Information is sent to the module in PDU format which is described in GSM 3.40
This gives far more control over the parameters of the SMS which are being sent such as SMS
class, validity period, service centre address to be sent to, reply paths, status reports, etc.
It is not very readable as shown below
at+cmgs=21
>0011000C9144777851042400118F08D4F29C0E9A36A7<cntrl-Z>

PDUs are shown how to be constructed in the document How to handle SMS contained on
the CD.

Page

SMS Text Mode


As said before text mode is effectively translation software in the module allowing people to
input text rather than numbers, the information that is actually sent is still a PDU.

Setting parameters
at+cmgf=1
Sets the module to use text mode
at+csdh=1
Allows user to edit/use the text mode parameters
at+csmp=17,167,0,0
Sets Validity period

Sending an SMS
at+cgms=+447787154042
Phone number SMS is to be sent to
> Hello Text to send, ended with the ctrl-z character
cgms : 128 Confirmation from the module that the SMS has been sent

Page

Cell broadcast
Messages are Broadcast by each cell, these are in a similar format to SMS as a result
they are known as SMS-CB.
Detailed in GSM 3.41 or 3GPP 23.041
Generally used in location based services.
Example of a Vodafone CB message from Sony Ericsson Maplewood building.
+CBM:8800B200320111B098AC66038140205043D168341A8D46A3D168341A8D46A3D1
68341A8D46A3D168341A8D46A3D168341A8D46A3D168341A8D46A3D168341A8D46
A3D168341A8D46A3D168341A8D46A3D168341A8D46A3D100
Controlled using the CNMI and CSCB commands
New message indications need to be set to at+cnmi=3,0,2
The CSCB command needs to be setup to receive the correct message type from the network I.e.
Vodafone use message type 50.

Page

SMS storage
The module has two areas of storage SM (SIM) and ME which it can use, these
are controlled by the following
AT+CPMS command
at+cpms?
+CPMS: "SM",0,15,"SM",0,15,"ME",0,40 Default setting
at+cpms="sm","sm","sm
Command all preferred memory to be set to SIM
+CPMS: 0,15,0,15,0,15
Return from the module showing the capacity and

amount used

SMS and where they are stored is controlled with a combination of the different
classes of SMS and the preferred storage command
Class 0 - Displayed immediately on a screen, not really applicable to modules
Class 1 (default value) - ME specific
Class 2 - SIM specific
Class 3 - TE specific

If all storage is set to that above no SMSs will ever be stored on the module, they
will all go to the SIM.

Page

Reading and writing SMS from memory

There are 2 different methods of reading messages from memory


AT+CMGR - Read an individual slot
AT+CMGL - List all SMS of a particular type or all, slightly different between PDU and text mode.
AT+CMGW - Write an SMS to a specific location in a specific memory
AT+CMGD - Delete a location of the currently specified memory
Note : All of these commands read from the currently preferred memory, (see previous slide).

Page

New message indications

When using SMS, how the messages are received and passed onto the module is of
paramount importance. This is achieved using the CNMI command.
AT+CNMI - parameters which it can use to route messages in different ways are

Class of SMS routing, see <mt> parameter


Cell broadcast messages - These have been mentioned previously.
Status reports
Delivery reports

Page

Other types of SMS

Command - Used for applications such as over the air updating of WAP and data accounts.
Currently there is no way to handle this as previously it was handled by the MMI software.
Status - This is a request sent to the network to find the status of previously sent SMSs.
Delivery - This is a bit which is set in the PDU to tell the network to report to the terminal when
the SMS has been delivered, this would consist of a class zero SMS sent to the terminal.
Note : Both status and delivery SMSs may not be supported by all networks.

Page

Circuit switched calls

Page

Voice and data calls


Voice calls are very simple with the only thing differentiating between the two being a ; at the end
of the string for a voice call and no ; for a data call.
atd01256774626;

Voice call

atd01256774626

Data call

Data calls will be examined more in detail later.

Page

Audio paths and parameters


There are 3 audio paths out of the unit
AUX 1 Differential based audio path
AUX 2 Differential based audio path
PCM Digital audio providing raw audio output allowing external echo cancellation
to be applied
Main commands to be used are
At+speaker Controls the audio output used
At+vgt, at+vgr Basic volume control settings
At+echo Controls the echo cancellation settings. Very detailed and allows
individual adjustment of tap filters.

Page

Data calls - Circuit switched


A data call is an ordinary circuit switched call which engages the internal modem, this is
signalled to the network and it routes the information as raw data rather than being encoded
as voice.
A number of important points to note about data calls are
Online command/data mode - In a data call the module can be in either online data mode
where data sent to the module is directed across the network to the modem on the other
side or online on line command mode where ordinary AT commands can be used to
request various information such as signal strength, registration status, etc.
Escape sequences - To get into on line command mode and to end the call an escape
sequence needs to be used, we support +++AT<cr>, we also support a guard time after this
sequence has been received, although this switched off as default.
Hanging up a data call - There are two ways to hang a data call up.
Enter on line command mode as described above and type the ATH command.
Use the escape sequence +++ATH, this will cause the call to hangup instantly.

Page

Data calls - Circuit switched (cont)


Example of a data call session
atd07787159314
CONNECT 9600
dfglkstmklsgbjsfh
OK
at+csq
+CSQ: 6,0
OK
ato
CONNECT 9600
dfglkstmklsgbjsfh
OK
ath
OK

Dial string, note no ;


Response from modem
Data sent from modem on other side
This modem sent escape sequence +++at<CR> (not seen)
Entered into on line command mode and requested signal strength

Return to on line data mode


Response to confirm return
Data sent from modem on other side
This modem sent escape sequence +++at<CR> (not seen)
Hangup call

Page

GPRS sessions

Page

Setting data accounts and parameters up


When making a GPRS call a data account held by the phone must be used, the module
can hold upto 10 different accounts. These contain the following information
APN (Access Point Name)
Connection type (SEM only support Internet Protocol (IP))
Compression information

at+cgdcont command
The command below creates a data account in profile 1 of type IP with an APN of internet
at+cgdcont=1,IP,internet,0,0

Quality of Service parameters are specified by the commands at+cgqreq and at+cgqmin
at+cgqmin=?
Requests the minimum acceptable QoS
+CGQMIN: "IP",(0-3),(0-4),(0-5),(0-5),(0-18,31)
OK
at+cgqreq=?
Request the required QoS
+CGQREQ: "IP",(0-3),(0-4),(0-5),(0-5),(0-18,31)
OK

Page

Data calls - GPRS


When a call is made by the module on the GPRS network it connects to the APN,
specified in the data account being used for the call
The dial string for making a GPRS call is ATD*99***X#, where X is the account
number you want to use.
There are a few ways to connect to the network.
Go into hyperterminal and type ATD*99***1# after the module has registered on the
network, this should return the CONNECT prompt and enter the module into V.250 on
line data mode.
Use dialup networking, which we will go through now.
Another option is to use the Vodafone Connect me software which does the above in a
more complete and transparent way and can be found on the Vodafone web site.

Page

Starting a GPRS session


Below are examples of GPRS commands setting up accounts and calls
at+cgdcont=1,"IP","internet","",0,0
OK

Create a data account

at+cgdcont?
Request what data accounts exist
+CGDCONT: 1,"IP","internet","",0,0
Account 1 setup for Vodafone
+CGDCONT: 2,"IP","adf.btcellnet.net","",0,0 Account 2 setup for BTCellnet
OK
atd*99***1#
Place a GPRS call using profile 1
CONNECT
Response from the network stating it has connected
successfully
at+cgdcont=1
Request the module to clear account 1
OK
at+cgdcont?
Request existing accounts
+CGDCONT: 2,"IP","adf.btcellnet.net","",0,0 BTCellnet account remains
OK

Page

FTP, PPP and TCP/IP

PPP - Point to Point Protocol

PPP is the underlying protocol used by the internet to establish and secure a point to
point link. The module has a PPP stack on board which we shall go through in a
moment. Extra security can be added using PAP (PPP Authentication Protocol) and
CHAP (Configure Handshake Authentication Protocol).

TCP/IP

This is the protocol used to route and address information going across the internet.

FTP - File transfer protocol

This is a protocol used specifically to transfer files between servers.

WAP - Wireless Application Protocol

This is a cut down version of TCP/IP optimised for wireless networks. The module
does have a WAP stack on board but there is currently no way to make a WAP call as
this was previously done through the MMI software.

Page

Network management and control

Page

Registration
Registration
AT+CREG shows information regarding registration on the GSM network
AT+CGREG shows information regarding registration on the GPRS network (or packet based bearers)
at+creg? Requests the GSM registration status
+CREG: 0,1
OK
at+cgreg?Queries the status of GPRS registration
+CGREG: 0,1 Module is registered on the GPRS network
OK
at+cgreg=2
Changes the mode of the at+cgreg command
OK
at+cgreg?
+CGREG: 2,1,"1600","0D91 Returns the status in the new mode
OK

Page

Networks

The module provides a number of commands which allow the user to monitor and control
the networks around it

Available networks
AT+COPS shows more user facing information I.e. network name
at+cops=?
+COPS: (2,"UK VODAFONE","UK VODA","23415")
+COPS: (3,"UK Orange PCS Ltd","Orange","23433")
+COPS: (3,"UK BTCELLNET","BTCELLNET","23410")
+COPS: (3,"UK one2one","one2one","23430")
OK

Cell and network information


AT*E2CD
AT*E2EMM
Page

Cell and environment information


AT*CCED Cell environment description
at+cced=0
+CSQ: 21,99
+CCED:
234,33,0014,4bd4,41,815,39,,,0,,,0,234,33,0014,0ceb,43,837,35,234,33,0014,,42,760,25,234,33,0078,,43,820,21,234,33,0014,0cec,46,798,
21,234,33,0014,,45,759,21,234,33,0014,,44,801,26,1
OK

Timing advance
This is a parameter that is generated in CS calls (data or voice) which give you a time (at the speed
of light) to the base station the MS has the call up with

Page

Glossary
BCCH - Broadcast Control Channel
CB - Cell Broadcast
CGSN - Combined GPRS Support Node
EDGE - Enhanced GSM Data for GSM
FDMA - Frequency Division Multiple Access
FTP - File Transfer Protocol
GGSN - Gateway GPRS Support Node
GM - GSM Module
GPRS - General Packet Radio System
GSM - Global System for Mobile communications
HDLC - High Data Link Control
IETF - Internet Engineering Task Force
IMEI - Individual Mobile Equipment Identity
IMSI - Individual Mobile Subscriber Identity
IP - Internet Protocol
ISP - Internet Service Provider
ITU - International Telecoms Union
LA - Location Area
LAC - Location Area Code
MCC - Mobile Country Code
MNC - Mobile Network Code
MS - Mobile Station
MSC - Mobile Switching Centre
PACCH - Packet Associated Control Channel
PAGCH - Packet Access Grant Channel
PBCCH - Packet Broadcast Control Channel

PCCCH - Packet Common Control Channel


P-Channels - Collective name for PBCCH, PACCH, PAGCH, PCCCH,
PDTCH, PNCH, PRACH and PTCCH - Packet Traffic Control Channel
PDP - Packet Data Protocol
PDTCH - Packet Data Traffic Channel
PDU - Protocol Data Unit
PNCH - Packet Notification Channel
PPP - Point to Point Protocol
PRACH - Packet Radio Access Channel
PTACH - Packet Timing Advance Control Channel
QoS - Quality of Service
RA - Routing Area
RF - Radio Frequency
SAR - Specific Absorption Rate
SGSN - Serving GPRS Support Node
SIM - Subscriber Identity Module
SMS - Short Message Service
SS7 - Signalling System number 7
TCP - Transfer Control Protocol
TDMA - Time Division Multiple Access
TE - Terminal Equipment
UMTS - Universal Mobile Telephone System
WAN - Wide Area Network
WAP - Wireless Application Protocol
WML - Wireless Markup Language
WWW - World Wide Web

Page

You might also like