Telit IP Easy User Guide R19 Preview
Telit IP Easy User Guide R19 Preview
Note: the features described in the present document are provided by the products
equipped with the software versions equal or higher than the versions shown in the table.
See also the Document History chapter.
80000ST10028A Rev. 19 – 2014-09-03
SPECIFICATIONS SUBJECT TO CHANGE WITHOUT NOTICE
Notice
While reasonable efforts have been made to assure the accuracy of this document, Telit
assumes no liability resulting from any inaccuracies or omissions in this document, or from
use of the information obtained herein. The information in this document has been carefully
checked and is believed to be entirely reliable. However, no responsibility is assumed for
inaccuracies or omissions. Telit reserves the right to make changes to any products described
herein and reserves the right to revise this document and to make changes from time to time
in content hereof with no obligation to notify any person of revisions or changes. Telit does
not assume any liability arising out of the application or use of any product, software, or circuit
described herein; neither does it convey license under its patent rights or the rights of others.
It is possible that this publication may contain references to, or information about Telit
products (machines and programs), programming, or services that are not announced in your
country. Such references or information must not be construed to mean that Telit intends to
announce such Telit products, programming, or services in your country.
Copyrights
This instruction manual and the Telit products described in this instruction manual may be,
include or describe copyrighted Telit material, such as computer programs stored in
semiconductor memories or other media. Laws in the Italy and other countries preserve for
Telit and its licensors certain exclusive rights for copyrighted material, including the exclusive
right to copy, reproduce in any form, distribute and make derivative works of the copyrighted
material. Accordingly, any copyrighted material of Telit and its licensors contained herein or
in the Telit products described in this instruction manual may not be copied, reproduced,
distributed, merged or modified in any manner without the express written permission of Telit.
Furthermore, the purchase of Telit products shall not be deemed to grant either directly or by
implication, estoppel, or otherwise, any license under the copyrights, patents or patent
applications of Telit, as arises by operation of law in the sale of a product.
Trademarks
TELIT and the Stylized T Logo are registered in Trademark Office. All other product or
service names are the property of their respective owners.
To get more details on which commands and relative parameters are available on
different SW versions, please consult the AT Commands Reference Guides [1], [2], [3],
[5], [6], and [7].
1.1. Scope
Scope of this document is to provide a broad description of the new IP Easy feature
functionalities and details.
1.2. Audience
The reader is expected to have gained sound experience in GPRS/UMTS/HSPA
technologies as well as in Telit’s AT Commands interface.
TS-EMEA@[Link]
TS-NORTHAMERICA@[Link]
TS-LATINAMERICA@[Link]
TS-APAC@[Link]
Alternatively, use:
[Link]
3TU U3T
For detailed information about where you can buy the Telit modules or for
recommendations on accessories and components visit:
[Link]
3TU
To register for product news and announcements or for product questions contact Telit's
Technical Support Center (TTSC).
Our aim is to make this guide as helpful as possible. Keep us informed of your comments
and suggestions for improvements.
Telit appreciates feedback from the users of our information.
80000ST10028A Rev. 19 – 2014-09-03
1.4. Document Organization
This document contains the following chapters:
“Chapter 1: “Introduction” provides a scope for this document, target audience, contact
U U
U “Chapter 2: “IP Easy Operation” is about context setting, activation and data states.
U
“Chapter 3: “IP Easy Extention” provides a broad description of The IP Easy feature,
U U
which allows the Telit module users to contact a device on internet and establish with it
a raw data flow over the Internet networks.
“Chapter 4: “Easy GSM” This new feature allows the Telit module users to connect to
an Internet Service Provider through a GSM CSD call and to use the embedded TCP/IP
stack, such as in IP Easy, to contact a device in Internet and establish with it a raw data
flow over the Internet networks.
“Chapter 5: “Command mode connections” is about the ability for Telit’s modules to
U U
Caution or Warning – Alerts the user to important points about integrating the
module, if these points are not followed, the module and end user equipment may
fail or malfunction.
Tip or Information – Provides advice and suggestions that may be useful when
integrating the module.
The context parameters consist in a set of information identifying the internet entry point
interface provided by the ISP. Using these parameters, the network identifies the ISP to
be used to gain access to the internet, and defines the value of the IP address for the
GPRS device, once connected.
Send command
AT+CGDCONT[=[<cid>[,<PDP_type>[,<APN>[,<PDP_addr>[,<d_comp>[,<h
_comp>[,<pd1>[,…[,pdN]]]]]]]]]]<cr>
where:
<cid> - (PDP Context Identifier) numeric parameter which specifies a particular PDP
context definition.
Values:
1..max - where the value of max is returned by the Test command
<PDP_type> - (Packet Data Protocol type) a string parameter which specifies the type
of packet data protocol
Values:
"IP" Internet Protocol IPV4
"IPV6" Internet Protocol IPV6, refer to chapter 6.
"PPP" Point to Point Protocol
<APN> - (Access Point Name) a string parameter that represents logical name used to
select GGSN or external packet data network. If the value is null or omitted, then the
subscription value will be requested.
<PDP_addr> - a string parameter that identifies the terminal in the address space
applicable to the PDP. The allocated address may be read using the +CGPADDR
command.
<pd1>, …, <pdN> - zero to N string parameters whose meanings are specific to the
<PDP_type>
NOTE:
A special form of the Set command, +CGDCONT=<cid>, causes the values for context
number <cid> to become undefined.
NOTE:
Issuing AT+CGDCONT<CR> is the same as issuing the Read command.
On the other hand, UE910 V2, HE910 V2 and HE920 products family return ERROR
message
NOTE:
Issuing AT+CGDCONT=<CR> returns the OK result code.
For example:
1- Let's assume you want to set-up the context number 1(cid) with your GPRS
connection parameters:
APN: [Link]
IP address: dynamically assigned by the ISP
Packet Data Protocol type: Internet Protocol (IP)
Data compression: OFF
Header compression: OFF
command:
80000ST10028A Rev. 19 – 2014-09-03
The minimum quality of service requested parameters represent the boundary under
which the connection quality is not anymore acceptable and will be terminated.
send command
AT+CGQMIN=<cid>,<precedence>,<delay>,<reliability>,<peak>,<mean><cr>
where:
<cid> - is the index number of the desired context to be written (up to 5 different context).
<precedence> - is the precedence class. It is applied when the network has a heavy
duty and user precedence must be followed to ensure operations, the higher the priority
the better the service.
Values:
0 - subscribed (default)
1 - High priority
2 - Normal priority
3 - Low priority
<delay> - is the delay class. It represents the maximum allowable time delay class
between the sending and the reception of a packet.
Values:
0 - subscribed (default)
1 - delay class 1
2 - delay class 2
3 - delay class 3
4 - delay class 4 (best effort)
NOTE:
Set command can modify the 3G QoS according to 3GPP 23.107.
NOTE:
If your minimum requirements are too high, then it can happen that it is impossible to
establish a connection, because the network has not enough resources to guarantee that
quality of service. If does this happen, then you shall try reducing your minimum quality
requirements.
Example:
Let's assume you want to set-up the GPRS context number 1(cid) written before with
your GPRS min QoS parameters:
command:
AT+CGQMIN= 1,2,0,0,5,4 <cr>
response
OK
NOTE:
Telit suggests to setup AT+CGQMIN=1,0,0,0,0,0
The requested quality of service parameters represents the connection quality that is
requested to the network on context activation.
send command
AT+CGQREQ=<cid>,<precedence>,<delay>,<reliability>,<peak>,<mean> <cr>
where:
80000ST10028A Rev. 19 – 2014-09-03
<cid> - is the index number of the desired context to be written (up to 5 different context).
For example:
1- Let's assume you want to set-up the context number 1(cid) written before with your
GPRS requested QoS parameters:
command:
AT+CGQREQ= 1,1,0,0,0,31 <cr>
response
OK
NOTE:
Telit suggests to setup AT+CGQREQ=1,0,0,3,0,0
NOTE:
Set command can modify the 3G QoS according to 3GPP 23.107.
80000ST10028A Rev. 19 – 2014-09-03
2.1.4. 3G Minimum Quality of the Service Requested2
The 3G minimum quality of service requested parameters represent the boundary under
which the 3G connection quality is not anymore acceptable and will be terminated.
send command
where:
<cid> - the index number of the desired context to be written (up to 16 different context).
<traffic class> - a numeric parameter that indicates the type of application for which the
UMTS bearer service is optimised.
<maximum bitrate UL> - a numeric parameter that indicates the maximum number of
kbits/s delivered to UMTS (up-link traffic) at a SAP. As an example a bitrate of 32kbit/s
would be specified as ‘32’(e.g. AT+CGEQMIN=…,32,…)(refer TS24.008 [8] subclause
[Link]).
<maximum bitrate DL> - a numeric parameter that indicates the maximum number of
kbits/s delivered by UMTS (down-link traffic) at a SAP. As an example a bitrate of 32kbit/s
would be specified as ‘32’(e.g. AT+CGEQMIN=…,32,…)(refer TS 24.008 [8] subclause
[Link]).
<guaranteed bitrate UL> - a numeric parameter that indicates the guaranteed number
of kbits/s delivered by UMTS (up-link traffic) at a SAP(provided that there is data to
deliver). As an example a bitrate of 32kbit/s would be specified as ‘32’(e.g.
AT+CGEQMIN=…,32,…)(refer TS 24.008 [8] subclause [Link]).
<guaranteed bitrate DL> - a numeric parameter that indicates the guaranteed number
of kbits/s delivered by UMTS (down-link traffic) at a SAP (provided that there is data to
deliver). As an example a bitrate of 32kbit/s would be specified as ‘32’(e.g.
AT+CGEQMIN=…,32,…) (refer TS 24.008 [8] subclause [Link]).
<delivery order> - a numeric parameter that indicates whether the UMTS bearer shall
provide in-sequence SDU deliver or not.
<SDU error ratio> - a string parameter that indicates the target value for the fraction of
SDUs lost or detected as erroneous. SDU error ratio is defined only for conforming traffic.
The value is specified as ‘mEe’. As an example a target SDU error ration of 5*10-3 would
be specified as ‘5E3’ (e.g. AT+CGEQMIN=…”5E3”,…)(refer TS 24.008 [8] subclause
[Link]).
<residual bit error ratio> - a string parameter that indicates the target value for the
undetected bit error ratio in the delivered SDUs. If no error detection is requested,
Residual bit error ratio indicates the bit error ratio in the delivered SDUs. The value is
specified as ‘mEe’. As an example a tartet residual bit error ration of 5*10-3 would be
specified as ‘5E3’( e.g. AT+CGEQMIN=…,”5E3”,…)(refer TS 24.008 [8] subclause
[Link]).
<transfer delay> - a numeric parameter (0,1,2,…) that indicates the targeted time
between request to transfer an SDU at on SAP to its delivery at the other SAP, in
milliseconds (refer TS 24.008 [8] subclause [Link]).
<signalling indication>3 - Signalling content of submitted SDUs for a PDP context. This
parameter should be provided if the <Traffic class> is specified as interactive.
Parameters assume the range of values defined in [3], [5], [6], and [7].
NOTE:
Set command can modify the 2G QoS according to 3GPP 23.107.
NOTE:
If your minimum requirements are too high, then it can happen that it is impossible to
establish a PDP activation, because the network has not enough resources to
guarantee that quality of service. If does this happen, then you shall try reducing your
minimum quality requirements.
send command
where:
<cid> - is the index number of the desired context to be written (up to 16 different context).
<traffic class>
<delivery order>
<transfer delay>
<signalling indication>5
Parameters assume the range of values defined in [3], [5], [6], and [7].
NOTE:
Set command can modify the 2G QoS according to 3GPP 23.107.
NOTE:
Telit suggests to setup AT+CGEQREQ=1,4,0,0,0,0,2,0,”0E0”,”0E0”,3,0,0(default setting
value)
80000ST10028A Rev. 19 – 2014-09-03
2.2. Context activation and data state entering
This operation corresponds to the dial and connect of a CSD GSM data call issued to an
internet service provider.
send command
ATD*99***<cid>#<cr>
where:
<cid> - is the index number of the desired context to be used (up to 5 different context)
For example:
1- Let's assume you want to activate and enter the data state with context number
1(cid) written before with your requested QoS parameters:
command:
ATD*99***1# <cr>
response
CONNECT
At this point, your application should start the PPP protocol with the LCP Exchange
phase:
PAP Authentication
PAP-Ack
80000ST10028A Rev. 19 – 2014-09-03
At this point the TCP/IP - PPP protocol stack is up and data packets can be exchanged.
NOTE:
Explanation of TCP/IP and PPP protocol stack is beyond the scope of this document.
Further information on the LCP protocol and PPP protocol definition can be found in the
RFC1661. Further information on the PAP protocol definition can be found in the
RFC1334. Further information on the IPCP protocol definition can be found in the
RFC1332.
NOTE:
The CONNECT result code is raised before complete connection establishment.
80000ST10028A Rev. 19 – 2014-09-03
2.3. Data state exit
or in alternative:
+++
send command
ATH<cr>
The IP Easy feature allows the Telit module users to contact a device on internet and
establish with it a raw data flow over the GPRS/UMTS/HSPA and Internet networks.
This feature can be seen as a way to obtain a "virtual" serial connection between the
Application Software on the Internet machine involved and the controller of the Telit
module, regardless of all the software stacks underlying.
An example of the protocol stack involved in the devices is reported:
This specific implementation allows the devices to interface to the Telit module via
GPRS/UMTS/HSPA and Internet packets without the need of an internal TCP/IP stack
since this function is already embedded inside the module.
The basic idea behind multisocket is the possibility of suspend a socket connection with
the escape sequence +++.
80000ST10028A Rev. 19 – 2014-09-03
With the #SKTD command it is possible to open a socket connection and get online.
When the online activities are concluded, the +++ sequence is used to close the
connection (see the figure below).
The green part represents the module command mode while the red part is the online
mode.
Now, the online mode can be suspended with the escape sequence +++ by using the
multisocket feature. During suspend mode the data received by the socket will be
buffered, which data will be displayed after socket resumption, as shown in the figure
below:
This new feature allows users to switch between online mode and command mode
without closing the connection or even opening another socket (or resuming the
suspended one), FTP or EMAIL connection.
Another new feature is the possibility to associate any socket connection to a specific
context. This means that we can use different IP addresses for connections (max 2). The
Socket Identifier is called Connection Id -- selects which socket we want to use from 1
up to 6 -- and every Connection Id is associated to a context.
80000ST10028A Rev. 19 – 2014-09-03
3.2. Commands Overview
What follows are new AT command sequences that activate context, sets and opens the
socket connection. There will be explained a new listen command and how to use FTP
and Easy GPRS at the same time.
NOTE:
For more detailed AT commands and parameters definitions please consult the AT
Commands Reference Guides [1], [2], [3], [5], [6], and [7].
The IP Easy feature provides a way to place outgoing TCP/UDP connections and keep
the same IP address after a connection is made, leaving the context active.
The steps required to open a socket and close it without closing the GRPS context are:
All these steps are achieved through AT commands. As far as the common modem
interface, two logical statuses are involved: command mode and data traffic mode.
Before opening a connection we have to set the socket parameters with the new #SCFG
command. It is possible to set all the timeout values and packet size for each socket
connection with a single AT command. The command syntax is:
AT#SCFG = <Conn Id>, <Cntx Id>, <Pkt sz>, <Global To>, <Conn To>, <Tx To>
Where:
The first two parameters are new and they represent the association between the socket
connection and the context set with +CGDCONT. It means that we can have socket
connection working on different IP addresses.
The other parameters replace the old IP Easy commands #DSTO, #SKTTO, #SKTCT
and #PKTSZ.
If we try to modify the socket configuration of an online connection, an error will appear.
So it’s recommended to set the socket configuration at the beginning. It is strongly
recommended to leave the first Connection Id associated to context one to allow
simultaneous FTP, SMTP and IP Easy services.
The values set with this command are saved in NVM.
Example:
Command:
80000ST10028A Rev. 19 – 2014-09-03
Answer:
This command allows activation of one of the contexts defined with AT command
+CGDCONT. With multisocket it is possible to activate simultaneously two contexts of
the five that have been set. We can write username and password directly from command
line (if required). At least one Connection Id must be associated to the context we want
to activate; otherwise an error will be appear.
Where:
Example:
Command:
AT#SGACT = 2,1
Answer:
#SGACT: “[Link]”
OK if activation success.
The response code to the AT#SGACT=1 command reports the IP address obtained from
the network, allowing the user to report it to his server or application. On the other hand,
this command is not applicable to UE910 V2, HE910 V2 and HE920 products family.
Deactivating the context implies freeing the network resources previously allocated to the
device.
NOTE:
80000ST10028A Rev. 19 – 2014-09-03
Also the command AT+CGACT activates a context, but in this case the context cannot
be used for IP Easy.
It’s also possible to set authentication type through the command AT#SGACTAUTH.
The command syntax is:
AT#SGACTAUTH=<type>
0 – no authentication
1 – PAP authentication(factory default)
2 - CHAP authentication
AT#SGACTCFG=<Cntx Id>,<retry>[,<delay>[,<urcmode>]]
Where:
Example:
No previous setting through #SCFG is needed in this case, because socket connection
identifiers <Conn Id> 1,2,3 are already associated to <Cntx Id> 1 by default.
For more details, please refer to refer to the AT Commands Reference Guides [1], [2],
[3], [5], [6], and [7].
80000ST10028A Rev. 19 – 2014-09-03
Open the connection with the internet host
With the AT command #SD (socket Dial) the TCP/UDP request to connect with the
internet host starts:
DNS query is done to resolve the IP address of the host name internet peer if required
Telit module establishes a TCP/UDP (depending on the parameter request)
connection with the given internet host
Once the connection is up the module reports the code: CONNECT
Where:
To open the remote connection the context to which the Connection Id is associated must
be active, otherwise an error will appear.
For example, if we want to connect to a web server with Connection Id number 3 the
command is:
AT#SD = 3 , 0 , 80 , “[Link]”
If the command is successful we’ll have a CONNECT message, and the socket number 3
will be connected to the Telit webserver.
From this moment the data incoming in the serial port is packet and sent to the Internet
host, while the data received from the host is serialised and flushed to the Terminal
Equipment.
The +++ sequence does not close the socket, but only suspends it.
NOTE:
Check guard time/S12 parameter before and after escape sequence.
We can suspend the connection and open another one with a different Connection Id.
80000ST10028A Rev. 19 – 2014-09-03
AT#SD = 3 , 0 , 80 , “[Link]”
CONNECT
(send, receive data….)
(+++)
OK
OK is returned after the escape sequence, it means that the socket has been suspended
correctly.
Now the connection number 3 is suspended and the module is in command mode so we
can give another #SD command.
AT#SD = 2 , 0 , 80 , “[Link]”
CONNECT
(send, receive data….)
(+++)
OK
If we try to open a connection while the ConnId is in suspended state or online an error
will be occur.
If a suspended connection receives some data the user will receive an unsolicited SRING
indication from the module. In case we receive some data from the suspended
connection with Telit server we’ll receive this unsolicited message:
SRING: 3
NOTE:
The unsolicited SRING indication appears only in command mode.
with #PADFWD it is possible to choose a char that, if received from serial port and if
#PADCMD is set, enables flushing of pending data on the socket.
Example:
80000ST10028A Rev. 19 – 2014-09-03
AT#PADFWD=65
OK
AT#PADCMD=1
OK
AT#SD = 3 , 0 , 80 , “[Link]”
CONNECT
// data are not sent on the socket till <Pkt sz>
// is reached or <Tx To> is expired….
………………….
This is the new command to resume a suspended connection, the command syntax is:
Example:
AT#SD = 2 , 0 , 80 , “[Link]”
CONNECT
data sending
(+++)
OK
SRING: 2
AT#SO = 2
CONNECT
data sending
(+++)
In case there is data pending on this socket -- you can know this the unsolicited message
SRING has appeared before--, issuing command AT#SO these pending data will be
displayed after the CONNECT string.
It is possible to resume a suspended socket without waiting for SRING message or data
pending on that connection.
80000ST10028A Rev. 19 – 2014-09-03
Using AT#SO on a Connection Id in idle state (no socket open or suspended) we obtain
a NO CARRIER message. On the other hand, UE910 V2, HE910 V2 and HE920 products
family return ERROR message.
AT#SLASTCLOSURE=[<connId>]
#SLASTCLOSURE: <connId>,<cause>
For details, please consult the AT Commands Reference Guides [1], [2], [3], [5], [6], and
[7]. With the new management of the escape sequence we need a command to close
the socket connection. The AT command syntax to use is:
Example:
AT#SD = 2 , 0 , 80 , “[Link]”
CONNECT
data sending
(+++)
OK
AT#SH = 2
OK
Now the connection is closed. If we send this command with an idle Connection Id we
obtain in any case an OK message.
80000ST10028A Rev. 19 – 2014-09-03
NOTE:
If there is an escape sequence in the raw data to be sent, then the TE must work it out
and sent it in a different fashion to guarantee that the connection is not closed.
The pause time is defined in the parameter S12. To avoid sending of the escape
sequence a command AT#SKIPESC should be set at the beginning.
AT#TCPREASS=<n>
0 – disable TCP reassembly feature(default)
1 – enable TCP reassembly feature
AT#TCPMAXDAT=<size>(bytes) –
maximum TCP payload size accepted in one single TCP/IP datagram received from the
peer
<size> will be sent by the module(TCP stack) to the peer when the socket connection
will be opened.
Example:
AT#TCPMAXDAT=1000 – maximum TCP payload size accepted from peer set to 1000
bytes
Then, if we open a TCP socket connection we will advice the peer that we will not
accept
TCP/IP datagrams with a payload bigger than 1000 bytes.
On the other hand, these commands are not applicable to UE910 V2, HE910 V2 and
HE920 products family.
80000ST10028A Rev. 19 – 2014-09-03
7
[Link]. Sending and receiving base64 encoded data
<enc> and <dec> can be set to 1 or 2 depending on MIME line feeds setting
required(please refer to the AT Commands Reference Guides [1],[2],[3],[5],[6], and [7])
Example:
at#skipesc=1
OK
AT#SD=1,0,<port>,"IP"
CONNECT
// Data received from serial port are sent
// directly on the socket
+++ (suspension)
at#base64=1,1,0
OK
AT#SO=1
CONNECT
// Data received from serial port are encoded
// base64 before to be sent on the socket
+++ (suspension)
at#base64=1,0,1
OK
AT#SO=1
CONNECT
// Data received from socket are decoded
// base64 before to be sent on the serial port
+++ (suspension)
80000ST10028A Rev. 19 – 2014-09-03
NOTE:
It is also possible to use new feature in command mode
(please refer to AT Commands Reference Guides [1], [2], [3], [5], [6], and [7]).
The IP Easy feature provides a way to accept incoming TCP/UDP connections and keep
the same IP address after a connection, leaving the context active.
The steps that will be required to open a socket in listen, waiting for connection requests
from remote hosts and accept these request connections only from a selected set of
hosts, then close it without closing the context are:
All these steps are achieved through AT commands. As for common modem interface,
two logical statuses are involved: command mode and data traffic mode.
In Command Mode (CM), some AT commands are provided to configure the Data
Module Internet stack and to start up the data traffic.
In data traffic mode (Socket Mode, SKTM), the client can send/receive a raw data
stream which will be encapsulated in the previously configured TCP / IP packets
which will be sent to the other side of the network and vice versa. Control plane of
ongoing socket connection is deployed internally to the module.
[Link]. Defining the Internet Peer that can contact this device (firewall settings)
The Telit module has an internal Firewall that controls the behavior of the incoming
connections to the module. The firewall applies for INCOMING (listening) connections;
OUTGOING connections will be always done regardless of the firewall settings.
Firewall General policy is DROP, therefore all packets that are not included into an
ACCEPT chain rule will be silently discarded.
80000ST10028A Rev. 19 – 2014-09-03
When packet incomes from the IP address <incoming IP>, the firewall chain rules will be
scanned for matching with the following criteria:
if the result is yes, then the packet is accepted and the rule scan is finished, otherwise
the next chain is taken into account until the end of the rules when the packet is silently
dropped if no matching was found.
For example, let’s assume we want to accept connections only from our devices which
are on the IP addresses ranging from [Link] to [Link]
AT#FRWL=1,"[Link]","[Link]"
The new listen command is now extended to 6 connections; it’s possible to set from 1 to
6 socket listening on a specific port for the incoming connections. Another difference with
the old IP Easy is that now we receive an unsolicited indication when someone tries to
connect, so we can decide to accept (AT#SA) or refuse (AT#SH) the incoming
connection.
NOTE:
In case you decide to reject an incoming connection request the listening socket will be
closed and if you want to re-open it the AT command AT#SL needs to be re-issued.
It’s not possible to have two ConnId listening on the same port.
Example:
AT#SL = 2, 1, 6543
OK
Now the module is listening for incoming connection on port 6543 with Connection Id
number 2, if a remote host is trying to connect we’ll receive a SRING unsolicited indication
with the listening Connection Id:
80000ST10028A Rev. 19 – 2014-09-03
SRING: 2
After receiving the SRING indication for an incoming connection we can decide to refuse
the remote host connection with #SH command or accept the connection with #SA
command.
The command syntax is:
Example:
AT#SL = 3, 1, 6543
OK
SRING: 3
AT#SA = 3
CONNECT
We pass in online mode and the connection is established. With the escape sequence
we suspend the socket and the module is back to command mode. To resume the
suspended connection we can use the #SO command described above.
NOTE8:
It’s also possible to accept automatically the incoming connection if the <ListenAutoRsp>
parameter has been set through the command AT#SCFGEXT(for the specific connId);
see also par. 5.2.2.
It’s also possible to open a socket listening for an incoming UDP connection on a
specified port.
80000ST10028A Rev. 19 – 2014-09-03
Also in this case it’s possible to receive SRING unsolicited and decide to accept
(AT#SA) or refuse (AT#SH).
With the old IP Easy socket connection the possible states were: online state or closed,
while with multi-socket suspension we have other socket states. With the new command
AT#SS we can see the status of all the six sockets.
AT#SS
[=<connId>]
Suppose that we have suspended some sockets and we are in command mode, in order
to verify which Connection Id has been opened, we can use AT#SS command to have a
snapshot of sockets status.
For every Connection Id with have the information about our local IP address, local port,
remote IP and port if we are connected.
The Status field represents the socket status:
0 – Socket Closed.
1 – Socket with an active data transfer connection.
2 – Socket suspended.
3 – Socket suspended with pending data.
4 – Socket listening.
5 – Socket with an incoming connection. Waiting for the user accept or shutdown
command.
80000ST10028A Rev. 19 – 2014-09-03
Example:
AT#SS
#SS: 1,4,[Link],21
#SS: 2,2,[Link],1033,[Link],10510
#SS: 3,3,[Link],1034,[Link],10510
#SS: 4,1,[Link],1035,[Link],10510
#SS: 5,0
#SS: 6,0
OK
In this case we can see Connection Id 1 in listen mode on port 21, number 2 suspended
with no data pending, number 3 suspended with pending data and number 1 is online.
The last two connections are closed
By issuing AT#SS=<connId> it’s possible to get status only of the corresponding socket.
Another new functionality of multi-socket is the simultaneous FTP client service with
socket connections. We can use socket suspension mode to give FTP commands as in
the old IP Easy, keeping socket alive and eventually resuming socket connections when
we need to.
NOTE:
It is recommended to leave Connection Id 1 associated to context 1 for using this
functionality. ( for more explanation see also paragraph [Link])
Using CMUX we can have up to three virtual port to execute normal AT commands; if we
join CMUX with multi-socket we can share the six connections on the three ports (six is
the total number in any case) and we can have up to three sockets active (online) at the
same time9.
FTP with CMUX is locked on the opening port. So if we try to open an FTP client
connection on another virtual port the FTP commands will show an error message until
the first connection with FTP server is not closed. When the connection is closed we can
80000ST10028A Rev. 19 – 2014-09-03
open another FTP session on another virtual port. In any case we can always have only
one FTP session opened at the time.
The old commands like #SKTD or #SKTL are available also on multi-socket platform and
they work like in the old IP Easy platform. If we open a connection with #SKTD we can’t
suspend the connection, and the +++ sequence will close definitively the connection.
In particular with #SKTD command we have the possibility to open three simultaneous
connections using CMUX virtual ports. They are closed using the +++ sequence10.
NOTE:
#SKTOP has some limitations. It is available only on the first virtual port of CMUX and it
is recommended not to use it with the new multi-socket commands because #SKTOP
deactivates the context when the connection is closed. This can generate the closure of
suspended sockets. It’s strongly recommended in any case to avoid using old IP Easy
command with new multi-socket commands.
With multi-socket we recommend you to use the first context for a dialup connection and
use the other available context for IP Easy socket connection.
The first context must be deactivated to make dialup connection work correctly, if we
activate IP Easy and dialup at the same time the performance get worse. It is possible to
make web browsing and IP Easy socket connection at the same time.
80000ST10028A Rev. 19 – 2014-09-03
3.2.3. Known limitations
The implementation of the IP EASY feature has the following known limitations:
A set of AT commands is available to support the FTP activities. The first command is
called #FTPTO (FTP Time-Out) which defines the time-out for FTP operations. The
module has already a factory default time defined that is 10 s.
AT#FTPTO[=<tout>]
Parameter:
<tout> - time-out in 100 ms units
Values:
100..5000 - hundreds of ms (factory default is 100)
NOTE:
The parameter is not saved in NVM.
NOTE:
if parameter <tout> is omitted the behavior of Set command is the same as Read
command.
On the other hand, UE910 V2, HE910 V2 and HE920 products family return OK
message.
Example:
AT#FTPTO=1000<cr> (set the timeout to 100sec)
OK
With the command AT#FTPTYPE[=<type>] is possible to configure the file transfer type.
The command must be provided during an FTP connection.
Parameter:
<type> - file transfer type:
Values:
0 - binary
1 - ASCII
NOTE:
The command causes an ERROR result code to be returned if no FTP connection has
been opened yet.
NOTE:
If the parameter is omitted then the behavior of Set command is the same of Read
command.
On the other hand, UE910 V2, HE910 V2 and HE920 products family return ERROR
message.
Parameter:
<filename> - string type, name under which you choose to save the file on the server
(must have the right extension: e.g. if the file you’re sending is .txt then the <filename>
can be [Link])
NOTE:
Use the escape sequence +++ to close the data connection.
NOTE:
Check the guard time/S12 parameter before and after escape sequence.
80000ST10028A Rev. 19 – 2014-09-03
NOTE:
The command causes an ERROR result code to be returned if no FTP connection has
been opened yet.
Example:
AT#FTPOPEN=”[Link]”,”user”,”pass”,0<cr>
OK
In this case port of FTP server is not specified, which means that it has the default
value: 21
It is also possible to open FTP data port to send(put) data in command mode as
follows.
AT#FTPOPEN=”IP”,username,password
OK
80000ST10028A Rev. 19 – 2014-09-03
AT#FTPPUT=<filename>,1 -> the new param 1 means that we open the data port in cmd
mode
OK
... here data port is opened and we remain in command mode ...
AT#FTPAPPEXT=Size
>Write here the binary data. As soon size byte are written, data are sent on the data port
and OK is returned
#FTPAPPEXT: <SentBytes>
OK
...to send new data on the data port #FTPAPPEXT has to be used again...
AT#FTPAPPEXT=Size
>Write new data chunk. As soon size byte are written, data are sent and OK is returned
#FTPAPPEXT: <SentBytes>
OK
To close data port at the end, second parameter has to be set as follows:
AT#FTPAPPEXT=Size,1
>Write here the binary data. As soon Size byte are written, data are send and OK is
returned
#FTPAPPEXT: <SentBytes>
OK
If a new file has to be sent, same sequence from beginning has to be considered.
If the file has to appended, FTPAPP(with second parameter set) instead of FTPPUT
has to be used.
Note: if while sending the chunks the data port is closed from remote, user will be aware
of it because #FTPAPPEXT will indicate ERROR and cause(CMEE 2) will indicate that
socket
has been closed.
Also in this case obviously, data port will have to be reopened with FTPPUT and so on…
(same sequence)
80000ST10028A Rev. 19 – 2014-09-03
3.3.4. FTP File download from the server
[Link]. FTP download / online mode
Parameter:
<filename> - file name, string type.
NOTE:
The command causes an ERROR result code to be returned if no FTP connection has
been opened yet.
Example:
AT#FTPOPEN=”[Link]”,”user”,”pass”,0<cr>
OK
In this case the port of FTP server is not specified, which means that it has the default
value of 21
In order to get the list of files on the working directory from the server AT command
AT#FTPLIST should be used.
80000ST10028A Rev. 19 – 2014-09-03
Data connection will be closed automatically when the file sending is terminated:
NO CARRIER
TIP:
The #SGACT command activates the context and it is necessary to start the FTP
connection.
It’s possible to start an FTP download while remaining in command mode, buffering
data in the module, by issuing #FTPGETPKT command during an FTP connection.
Successive transfer of required data onto the serial port is possible by issuing
#FTPRECV command.
AT#FTPGETPKT=<filename>[,<viewMode>]
where the optional parameter <viewMode> permit to choose view mode (text format or
Hexadecimal).
80000ST10028A Rev. 19 – 2014-09-03
If the data connection succeeds, and we get an OK indication, it’s possible to check
how many buffered bytes are currently available, by issuing #FTPRECV? read
command.
Example:
Provided that an FTP connection has already been issued by an FTPOPEN command
as indicated in [Link], the following applies.
Download the FTP file “[Link]” from the server while still remaining in command mode:
AT#FTPGETPKT="[Link]"
OK
The data port is opened and the download of the file is started; data is buffered within the
module.
AT#FTPRECV?
#FTPRECV: 600
OK
AT#FTPRECV=400
#FTPRECV: 400
OK
AT#FTPRECV =200
#FTPRECV: 200
80000ST10028A Rev. 19 – 2014-09-03
88888 *
Text row number 9 * 9999999999999999999999999 *
Text row number 10 * AAAAAAAAAAAAAAAAAAAAAAAAA *
Text row number 12 * BBBBBBBBBBBBBBBBBBBBBBBBB *
Text row number 13 * CCCCCCCCCCCCCCCC
OK
NOTE:
to check when you have read the whole file, use AT#FTPGETPKT read command:
AT#FTPGETPKT?
#FTPGETPKT: [Link],0,1
OK
Third parameter indicates <eof>(end of file) current state(first parameter is file name and
second
Indicates text or hex mode).
Data port is automatically closed by read command #FTPGETPKT? itself when the whole
file has been red(by last #FTPRECV): another FTP download in online/command mode
can be started by issuing #FTPGET/#FTPGETPKT.
It’s possible to restart an FTP download from a specific position(byte) of the file by
issuing #FTPREST command before FTPGET(or FTPGETPKT) command.
AT#FTPREST=<restartposition>(byte).
NOTE:
it’s necessary to issue FTPTYPE=0 before FTPGET(or FTPGETPKT) command to
set binary file transfer type.
80000ST10028A Rev. 19 – 2014-09-03
3.3.6. FTP File upload restart
If previous FTP upload(FTPPUT) of file <filename> has been interrupted, it’s possible to
know how many bytes have been received from the server by issuing
#FTPFSIZE=<filename>(during an FTP connection).
NOTE:
it’s necessary to issue FTPTYPE=0 before FTPFSIZE command to set binary file
transfer type.
Then application can append missing part of the file with AT#FTPAPP=<filename>, using
FTPFSIZE response to know restart position of the local file.
On the other hand, the upload restart function is not available to UE910 V2, HE910 V2
and HE920 products family.
To get more information for other available commands on the FTP functionality please
refer to the AT Commands Reference Guides [1], [2], [3], [5], [6], and [7].
NOTE:
FTP works only on context one (AT#SGACT=1,1)
80000ST10028A Rev. 19 – 2014-09-03
3.4. HTTP OPERATIONS
3.4.1. HTTP settings
With the command
AT#HTTPCFG=<prof_id>,<server_address>,<server_port>,<auth_type>,<usernam
e>,<password>,<ssl_enable>,<timeout>,<cid> is possible to setup the HTTP
connection.
Parameters:
<prof_id>Numeric parameter indicating the profile identifier. Range: 0-2
<server_address> - String parameter indicating the IP address of the HTTP server.
This parameter can be either:
Any valid IP address in the format: “[Link]”
Any host name to be solved with a DNS query
Default value: “” for first and second profile; "[Link]" for third profile.
<server_port> - Numeric parameter indicating the TCP remote port of the
HTTP server to connect to.
Default: 80 for first and second profile; 9978 for third profile. Range
1...65535
<auth_type> - Numeric parameter indicating the HTTP authentication type.
0 – no authentication (default)
1 – basic authentication
<username> - String parameter indicating authentication user identification string for
HTTP.
<password> - String parameter indicating authentication password for HTTP.
<ssl_enable> - Numeric parameter indicating if the SSL encryption is enabled.
0 – SSL encryption disabled (default)
1 – SSL encryption enabled (not applicable to UE910 V2, HE910 V2 and
HE920 products family)
<timeout> - Numeric parameter indicating the time interval in seconds to wait for
receiving data from HTTP server. Range: (1- 65535). Default: 120.
<cid> - Numeric parameter indicating the PDP Context Identifier. Range: (1-5).
Default: 1
NOTE:
A special form of the Set command, #HTTPCFG=<prof_id>, causes the values for
profile number <prof_id> to reset to default values.
NOTE:
If the SSL encryption is enabled, the <cid> parameter has to be set to 1.
NOTE:
The SSL encryption can be enabled only if <Enable> parameter of #SSLEN is set to 0
and <FTPSEn> parameter of #FTPCFG is set to 0.
NOTE:
Values are automatically saved in NVM.
80000ST10028A Rev. 19 – 2014-09-03
3.4.2. Sending HTTP requests (GET / HEAD / DELETE)
With the command
AT#HTTPQRY=<prof_id>,<command>,<resources>,<extra_header_lines> is
possible to send a request to HTTP server.
Parameters:
<prof_id> - Numeric parameter indicating the profile identifier. Range: 0-2
<command> - Numeric parameter indicating the command requested to HTTP server:
0 – GET
1 – HEAD
2 – DELETE
<resources> - String parameter indicating the HTTP resource (uri), object of the
request
<extra_header_lines> - String parameter indicating optional HTTP header line.
If sending ends successfully, the response is OK; otherwise an error code is
reported.
Note: the HTTP request header sent with #HTTPQRY always contains the
“Connection:close” line, and it cannot be removed. When the HTTP server answer is
received, the following URC is printed on the serial port:
#HTTPRING: <prof_id>,<http_status_code>,<content_type>,<data_size>
Where:
<prof_id> - is defined above
<http_status_code> - is the numeric status code, as received from the server
(see RFC 2616)
<content_type> - is a string reporting the “Content-Type” header line, as received from
the server (see RFC 2616)
<data_size> - is the byte amount of data received from the server. If the server doesn’t
report the "Content-Length:" header line, the parameter is 0.
NOTE:
If no data is received from server or the server doesn’t answer within the time interval
specified in <timeout> parameter of #HTTPCFG command, then the URC
#HTTPRING <http_status_code> parameter has a value of 0.
NOTE:
The time required to receive the #HTTPRING unsolicited can be greater than the one
specified in <timeout> parameter of #HTTPCFG command because it is also includes
the time needed to send the HTTP request to the server.
NOTE:
After issuing #HTTPQRY command is not possible to change SSL configuration with
#SSLSECCFG and #SSLSECDATA until a #HTTPCFG is issued, because SSL
connection remains up.
80000ST10028A Rev. 19 – 2014-09-03
3.4.3. Sending HTTP POST or PUT
Parameters:
<prof_id> - Numeric parameter indicating the profile identifier. Range: 0-2
<command> - Numeric parameter indicating the command requested to HTTP server:
0 – POST
1 – PUT
<resource> - String parameter indicating the HTTP resource (uri), object of the request
<data_len> - Numeric parameter indicating the data length to input in bytes
<post_param> - Numeric/string parameter indicating the HTTP Contenttype identifier,
used
only for POST command, optionally followed by colon character (:) and a string that
extends
with sub-types the identifier:
“0[:extension]” – “application/x-www-form-urlencoded” with optional extension
“1[:extension]” – “text/plain” with optional extension
“2[:extension]” – “application/octet-stream” with optional extension
“3[:extension]” – “multipart/form-data” with optional extension other content –
free string corresponding to other content type and possible sub-types
<extra_header_line> - String parameter indicating optional HTTP header line.
If sending ends successfully, the response is OK; otherwise an error code is reported.
When the HTTP server answer is received, the following URC is printed on the serial
port:
#HTTPRING: <prof_id>,<http_status_code>,<content_type>,<data_size>
Where:
<prof_id> is defined as above
<http_status_code> is the numeric status code, as received from the server (see RFC
2616)
<content_type> is a string reporting the “Content-Type” header line, as received from
the
server (see RFC 2616)
<data_size> is the byte amount of data received from the server. If the server doesn’t
report the "Content-Length:" header line, the parameter is 0.
NOTE:
The HTTP request header sent with #HTTPSND always contains the “Connection:
close” line, and it cannot be removed.
80000ST10028A Rev. 19 – 2014-09-03
NOTE:
If no data is received from server or the server doesn’t answer within the time interval
specified in <timeout> parameter of #HTTPCFG command, the URC #HTTPRING
<http_status_code> parameter has a value of 0.
NOTE:
The time required to receive the #HTTPRING unsolicited can be greater than the one
specified in <timeout> parameter of #HTTPCFG command because it is also includes
the time needed to send the HTTP request to the server.
NOTE:
After issuing #HTTPQRY command is not possible to change SSL configuration with
#SSLSECCFG and #SSLSECDATA until a #HTTPCFG is issued, because SSL
connection remains up.
Context activation:
AT#SGACT=1,1 <CR>
#SGACT: [Link]
OK
#HTTPRING: 0,200,"text/html",1270
AT#HTTPRCV=0<CR>
<!doctype html>
<html>
<head>
<title>Example Domain</title> …
OK
80000ST10028A Rev. 19 – 2014-09-03
3.4.5. HTTP GET over SSL / TLS Example
NOTE:
To validate the identity of the server, the CA certificate must be previously loaded on
the module with command AT#SSLSECDATA. For additional information refer to Telit
SSL TLS Users Guide.
On the other hand, this functionality is not applicable to UE910 V2, HE910 V2 and
HE920 products family.
Context activation:
AT#SGACT=1,1 <CR>
#SGACT: [Link]
OK
AT#SSLEN=1,0<CR>
OK
#HTTPRING: 0,200,"text/html",1270
AT#HTTPRCV=0<CR>
<!doctype html>
<html>
<head>
<title>Example Domain</title>
….
OK
80000ST10028A Rev. 19 – 2014-09-03
3.5. SMTP OPERATIONS
3.5.1. SMTP Settings
Support for SMTP over SSL / TLS is currently not available in all software versions.
The applicability table shows the software versions that currently support this feature:
Parameters:
<ssl_enable> - Numeric parameter indicating if the SSL encryption is enabled.
0 – SSL encryption disabled (default)
1 – SSL encryption enabled (check the applicability table)
<port> - SMTP port to contact (default 25). Range: 25 - 465, 587
<mode> - SMTP start session command:
0 – SMTP start session command HELO (default)
1 – SMTP start session command EHLO
Parameters:
<da> - destination address, string type (maximum length 100 characters)
<subj> - subject of the message, string type (maximum length 100 characters)
To complete the operation send Ctrl-Z char (0x1A); to exit without writing
the message send ESC char (0x1B).
NOTE:
80000ST10028A Rev. 19 – 2014-09-03
Maximum length for message body is 1024 bytes, trying to send more data will cause
the surplus to be discarded and lost.
Parameters:
<da> - destination address, string type.(maximum length 100 characters)
<subj> - subject of the message, string type.(maximum length 100 characters)
<att> - attached file flag:
0 – no attachment
1 – attach a txt file
2 – attach a binary file(jpg,bin,pdf,...)
<filename> - attached file name (maximum length 50 characters)
<encod> - Content-Transfer-Encoding used for attachment
0 – “7bit” means data all represented as short lines of US-ASCII data
1 – “base64” designed to represent arbitrary sequences of octets in a form that
need not be humanly readable
NOTE:
If a txt file (<att>=1) is attached, only <encod>0(“7bit”) is possible.
If a binary file (<att>=2) is attached, only <encod>1(“base64”) is possible.
NOTE:
If <att>=0 and <filename> is present and not empty, the
attachment won’t be considered
NOTE:
If <att> 1 or 2 and <filename> is not present, command
will return an ERROR
80000ST10028A Rev. 19 – 2014-09-03
3.5.2. E-mail with attachment Example
Define PDP context:
AT+CGDCONT=1,"IP","[Link]"<CR>
OK
Context activation:
AT#SGACT=1,1 <CR>
#SGACT: [Link]
OK
Configure SMTP server port: (This command is not applicable to UE910 V2, HE910 V2
and HE920 products family.)
AT#SMTPCFG=0,587
OK
Configure username:
AT#EUSER="john@[Link]"
OK
> Hello,<CR><LF>
This is the body.<CR><LF>
The picture is in the attachment.<CR><LF> <CTRL+Z>
CONNECT
<binary data of the picture>
+++
NO CARRIER
80000ST10028A Rev. 19 – 2014-09-03
3.5.3. E-mail over SSL / TLS Example
NOTE:
To validate the identity of the server, the CA certificate must be previously loaded on
the module with command AT#SSLSECDATA. For additional information refer to Telit
SSL TLS Users Guide.
NOTE:
The command AT#SMTPCFG affects all three e-mail sending commands and therefore
SSL / TLS can be used with all three commands (AT#EMAILD, AT#SMTPCL and
AT#SEMAIL).
NOTE:
SMTP over SSL / TLS is currently not supported on all software versions. Check the
applicability table in section SMTP Settings for more information.
On the other hand, this functionality is not applicable to UE910 V2, HE910 V2 and
HE920 products family.
Context activation:
AT#SGACT=1,1 <CR>
#SGACT: [Link]
OK
Disable SSL:
AT#SSLEN=1,0<CR>
OK
Configure username:
AT#EUSER="john@[Link]"
OK
Send e-mail:
AT#EMAILD="[Link]@[Link]","This is the subject”
> Hello, <CR><LF>
This is the body.<CR><LF>
Best Regards.<CR><LF> <CTRL+Z>
OK
80000ST10028A Rev. 19 – 2014-09-03
3.6. AT Commands Compatibility Table
Telit advises all clients that start a new application development with SW version 7.02.03
or higher to use these new IP Easy AT commands. Below you can find compatibility table
for old and new commands:
It is strongly recommended not to mix the new commands with the old ones,
and to use only the new ones
Note: #SKTOP command is not available for versions starting from 12.00.xx1
and for HE910 product family, UE910 V2 product family, HE920 V2 product family and
HE920 product family.
80000ST10028A Rev. 19 – 2014-09-03
3.7. Examples
3.7.1. IP Easy- HTTP client with #SD
Let’s suppose we want to connect our embedded device to an HTTP server and
retrieve an HTML page using the IP EASY feature.
Initial data:
Server to be contacted [Link]
Application Layer Protocol HTTP1.0 (RFC1945);
HTTP1.1 (RFC2068)
Page to be retrieved homepage of server
Preliminary settings
APN internet
IP of device dynamically assigned by
the network
DNS assigned by the network
USERID IPEASY
PASSWORD IPEASY
Socket parameters
Connection Identifier 1
Packet size (used by
TCP/UDP/IP stack for data 300
sending)
Socket inactivity timeout 90
Connection timeout 600
Data sending time out 50
Checking on the RFC990 the HTTP service we can found that the port 80 is dedicated
for HTTP service, therefore our HTTP server will be waiting for incoming connections
on that port and we will fix the IP EASY port to be contacted on the remote server
exactly to 80.
Second thing we have to discover is whether the transport protocol has to be TCP or
UDP; on the RFC1945 we can read that the HTTP Application layer protocol is meant
to be on top of TCP/IP protocol, therefore the transport protocol choice will fall on TCP.
Now we have all the information needed to configure our system.
With our microcontroller we issue to the Telit module the following AT commands:
AT+CGDCONT = 1,"IP","internet","[Link]",0,0<cr> (GPRS context setting)
For all the socket settings the following AT command will be used:
AT#SCFG=1,1,300,90,600,50
80000ST10028A Rev. 19 – 2014-09-03
OK
Now we can proceed with contacting the server with AT command for socket dial:
AT#SD=1,0,80,”[Link]”,0,0
When we receive the CONNECT indication, then we are exchanging data with the
HTTP server program on the remote host machine.
Now following the HTTP protocol we ask for the homepage by sending the following
lines on the serial line:
GET / HTTP/1.1<cr><lf>
Host: [Link]<cr><lf>
Connection: keep-alive<cr><lf>
<cr><lf>
TIP:
Remember that the strings, which are sent to the HTTP server, have to be ended by
line feed character. To see the issued commands enable the local echo.
As a response to our query the HTTP server will reply with the HTML code of the
homepage and some debugging responses that we will see directly on the serial line:
HTTP/1.1 200 OK
Date: Thu, 06 2003 [Link] GMT
Server: Apache/1.3.27 (Unix)
Last-Modified: Thu, 06 2003 [Link] GMT
Content-Type: text/html
Connection: close
<pause>+++<pause>
OK
AT#SH=1
OK
The Telit module is now back to command mode and the socket is closed.
80000ST10028A Rev. 19 – 2014-09-03
3.7.2. IP Easy - EMAIL sending with #SD
Let’s suppose we want to send with our embedded device an EMAIL using the SMTP
protocol.
Initial data:
Server to be contacted [Link]
SMTP service port #25
Application Layer Protocol SMTP (RFC821)
Sender "module"<module@[Link]>
Receiver "Receiver"<receiver@[Link]>
Subject Email Test
Message body This message is sent in order to
test IP Easy feature. Hello
World!
Preliminary settings
APN internet
IP of device dynamically assigned by the
network
DNS assigned by the network
USERID IPEASY
PASSWORD IPEASY
SMTP settings
SMTP server address [Link]
Email account
USERID module@[Link]
PASSWORD telit
Socket parameters
Connection Identifier 1
Packet size (used by
TCP/UDP/IP stack for data 300
sending)
Socket inactivity timeout 90
Connection timeout 600
Data sending time out 50
Checking on the RFC990 the SMTP service we can found that the port 25 is dedicated
for SMTP service, therefore our SMTP server will be waiting for incoming connections
on that port and we will fix the IPEASY port to be contacted on the remote server
exactly to 25.
Second thing we have to discover is whether the transport protocol has to be TCP or
UDP; on the RFC821 we can read that the SMTP Application layer protocol is meant to
be on top of TCP/IP protocol, therefore the transport protocol choice will fall on TCP.
Now we have all the information needed to configure our system.
80000ST10028A Rev. 19 – 2014-09-03
In the following example are described the steps to send an e-mail from the Telit
module with a socket dial command (AT#SD).
For all the socket settings the following AT command will be used:
AT#SCFG=1,1,300,90,600,50
OK
Now we can proceed with contacting the server with AT command for socket dial:
AT#SD=1, 0,25,"[Link]",0,0<cr>
When we receive the CONNECT indication, then we are exchanging data with the
SMTP server on the remote host machine.
Following the SMTP protocol we proceed with the HELO presentation and mail delivery
directly over the serial line (in bold you can find the data sent by us, in regular the one
received from host):
NOTE:
represents received data,
represents sent data / sent command
The Telit module is now back in the command mode and the socket is closed.
80000ST10028A Rev. 19 – 2014-09-03
3.7.3. IP Easy -EMAIL receive with #SD
Let's suppose we want to receive with our embedded device an EMAIL by using a
POP3 server.
Initial data:
Server to be contacted [Link]
POP service port #110
Application Layer Protocol POP3 (RFC1785)
Receiver
"module"<module@[Link]>
Email account username module@[Link]
Email account password telit
Context settings
APN internet
IP of device dynamically assigned by the
network
DNS assigned by the network
USERID IPEASY
PASSWORD IPEASY
Socket parameters
Connection Identifier 1
Packet size (used by
TCP/UDP/IP stack for data 300
sending)
Socket inactivity timeout 90
Connection timeout 600
Data sending time out 50
Checking on the RFC1785, we can found that the port 110 is dedicated for POP3
service, therefore our POP server will be waiting for incoming connections on that port
and we will fix the IP EASY port to be contacted on the remote server exactly to 110.
Second thing we have to discover is whether the transport protocol has to be TCP or
UDP; on the RFC1785 we can read that the POP3 Application layer protocol is meant
to be on top of TCP/IP protocol, therefore the transport protocol choice will fall on TCP.
Now we have all the information needed to configure our system.
With our microcontroller we can now issue to the Telit module the following AT
commands:
For all the socket settings the following AT command will be used:
80000ST10028A Rev. 19 – 2014-09-03
AT#SCFG=1,1,300,90,600,50
OK
The commands gives as response the IP address assigned to the module by the
network.
AT#SD=1,0,110,"[Link]",0,0<cr>
When we receive the CONNECT indication, then we are exchanging data with the
POP3 server program on the remote host machine.
Following the POP3 protocol we can proceed with the authentication directly over the
serial line (in blue you can find the data sent by us, in violet the one received from
host):
USER module@[Link]<cr><lf>
+OK Password required
PASS telit<cr><lf>
+OK 1 messages
LIST\r\n
+OK
1 19550
.
RETR 1<cr><lf>
+OK 19550 bytes
Return-Path: <module@[Link]>
Received: from [Link] ([Link]) by [Link] (7.0.028)
id 40DFC49A010E5708 for test@[Link]; Tue, 17 Aug 2004 [Link]+0200
Received: from [Link] ([Link]) by [Link] (7.0.027-DD01)
.
QUIT<cr><lf>
+OK POP3 server closing connection
+++
OK
AT#SH=1
80000ST10028A Rev. 19 – 2014-09-03
OK
First you have to define PDP context filling in the information of APN in this example:
[Link].
Next step is activation of context which gives as reply the IP of the module assigned by
network:
AT#SGACT=1,1
#SGACT: [Link]
OK
Before opening socket in listen it is possible to define an accept firewall chain in order
to filter IP of the senders.
At the end with AT command AT#SL=1,1,1024,0 the socket will be set in listen on the
port #1024.
First you have to define PDP context filling in the information of APN in this example:
[Link].
Next step is activation of context which gives as reply the IP of the module assigned by
network. Now you can open the connection with the remote host with IP address
[Link] on the port 1024 (as in example).
NOTE16:
IP of the modules can be verified with the following AT command line: AT#CGPADDR=
80000ST10028A Rev. 19 – 2014-09-03
4. Easy GSM17
4.1. Overview
This new feature allows the Telit module users to connect to an Internet Service
Provider through a GSM CSD call and to use the embedded TCP/IP stack, such as in
IP Easy, to contact a device in Internet and establish with it a raw data flow over the
Internet networks.
The connection between the module and the Provider is based on PPP protocol over a
GSM CSD call.
An example of the protocol stack involved in the devices is reported:
In this case the speed at which packets can be downloaded is limited to the maximum
data rate for a data call, 14400 bps.
All the features of Telit multisocket, FTP and EMAIL can be used over the GSM carrier.
In order to enable GSM carrier, a particular context has to be activated with
identification number 0. The use of this context is analogue to that of
GPRS/UMTS/HSPA contexts.
80000ST10028A Rev. 19 – 2014-09-03
4.2. Commands overview
This paragraph describes the configuration and the activation of the GSM context and
the new AT commands implemented to facilitate the use of Easy GSM and IP Easy in
the same device.
For more information about concerning outgoing and incoming connections, you can
refer to the chapter “Enhanced IP Easy Extension“: there are no differences at sockets
level.
NOTE:
For more detailed AT commands and parameters definitions consult the AT Commands
Reference Guides [1], [2], and [3].
GSM context definition differs from GPRS/UMTS/HSPA one and requires a new
command: #GSMCONT, that replaces, just in GSM case, the standard +CGDCONT.
The only parameter to set is the number of the Internet Service Provider. The command
syntax is:
Where
GSM context activation is done through the same command #SGACT, with 0 as
context identifier.
We cannot activate more than one GSM context at the same time.
The activation may require also in this case two Authentication parameters: User Name
and Password, depending on the Internet Service Provider that we want to connect to.
80000ST10028A Rev. 19 – 2014-09-03
So the command syntax is the same as for GPRS/HSPA/UMTS:
Where:
Example:
Command:
AT#SGACT = 0,1
Answer:
#SGACT: “[Link]”
OK if activation success.
The response code to the AT#SGACT=0,1 command reports the IP address obtained
from the network, allowing the user to report it to his server or application.
Deactivating the context implies freeing the network resources previously allocated to the
device.
Once activated the GSM context, to interrogate the module about the IP address
assigned by the network, a new command has been implemented: #CGPADDR. It
reports the all addresses relative to the active contexts; contexts are displayed exactly
like in the case of the standard +CGPADDR.
Example:
Command:
AT#SGACT = 0,1
Answer:
#SGACT: “[Link]”
Answer:
#CGPADDR: 0,” [Link]”
GSM context activation is affected, like all CSD calls, by the AT+CBST command. The
maximum data rate that can be set through this command is 14400 bps (Network
dependent).
Context activation is just allowed with “non transparent” data calls. This property is the
default value of one of the AT+CBST command parameters.
The commands AT+COPS=? and AT#CSURV return ERROR if a data call is active.
The same commands return ERROR also if a GSM context is active.
4.3. Examples
4.3.1. Easy GSM - HTTP client application
Let’s suppose we want to connect our embedded device to an HTTP server and
retrieve an HTML page using the EASY GSM feature. This example is analogue to the
one given for GPRS/UMTS/HSPA carrier.
Suppose to use a sim TIM.
Initial data:
Server to be contacted [Link]
Application Layer Protocol HTTP1.0 (RFC1945);
HTTP1.1 (RFC2068)
Page to be retrieved homepage of server
Context settings
Provider number “3359009000“
IP of the device dynamically assigned by
the network
DNS assigned by the network
USERID Userid of the TIM account
PASSWORD Password of the TIM
account
Socket parameters
80000ST10028A Rev. 19 – 2014-09-03
Connection Identifier 0
Packet size (used by
TCP/UDP/IP stack for data 300
sending)
Socket inactivity timeout 90
Connection timeout 600
Data sending time out 50
Our HTTP server will be waiting for incoming connections on port 80 and we will fix the
port to be contacted on the remote server exactly to 80.
As transport protocol we choose TCP.
With our microcontroller we issue to the Telit module the following AT commands:
AT#GSMCONT = 0,"IP","3359009000"<cr> (GSM context setting)
For the all socket settings, the following AT command will be used:
AT#SCFG=1,0,300,90,600,50
OK
Now we can proceed with contacting the server with AT command for socket dial:
AT#SD=1,0,80,”[Link]”,0,0
When we receive the CONNECT indication, then we are exchanging data with the
HTTP server program on the remote host machine.
Now following the HTTP protocol we ask for the homepage by sending the following
lines on the serial line:
GET / HTTP/1.1<cr><lf>
Host: [Link]<cr><lf>
Connection: keep-alive<cr><lf>
<cr><lf>
As a response to our query, the HTTP server will reply with the HTML code of the
homepage and some debugging responses that we will see directly on the serial line:
HTTP/1.1 200 OK
Date: Thu, 06 2003 [Link] GMT
80000ST10028A Rev. 19 – 2014-09-03
Server: Apache/1.3.27 (Unix)
Last-Modified: Thu, 06 2003 [Link] GMT
Content-Type: text/html
Connection: close
<pause>+++<pause>
OK
AT#SH=1
OK
The Telit module is now back to command mode and the socket is closed.
AT#FTPOPEN=”[Link]”,”userid”,”password”,0<cr>
OK
In this case the port of the FTP server is not specified, which means that it has the
default value: 21
In this example we send data from a module using IP EASY to a module using EASY
GSM.
You have to define GSM context filling in the information of the Internet Service
Provider Number.
Next step is activation of GSM context which gives as reply the IP of the module
assigned by network:
AT#SGACT=0,1
#SGACT: [Link]
OK
You have to define PDP context filling in the information of APN in this example:
[Link].
Next step is activation of context which gives as reply the IP of the module assigned by
network.
AT#SGACT=1,1
#SGACT: [Link]
OK
Now, on the server side, before opening socket in listen it is possible to define an
accept firewall chain in order to filter IP of the senders.
Then with the AT command AT#SL=1,1,1024,0 the socket will be set in listen on the
port #1024:
80000ST10028A Rev. 19 – 2014-09-03
On the client side, you can open the connection with the remote host with IP address
[Link] on the port 1024 (as in example):
NOTE:
IP of the modules can be verified with the following AT command line: AT#CGPADDR=
80000ST10028A Rev. 19 – 2014-09-03
5. Command Mode Connections
5.1. Overview
This feature allows Telit’s modules to establish a socket connection in command mode.
The “classic” online mode connection is described in the figure below:
This means that the socket connection is created, but the user can give AT commands
as usually in command mode. If we receive some data on a socket a SRING message
is raised.
This paragraph describes the configuration and the activation of a command mode
connection and the AT commands implemented to use the new configuration socket
parameters.
For anything concerning outgoing and incoming connections, you can refer to the
chapter “Enhanced IP Easy Extension“: there are no differences at sockets level.
NOTE:
For more detailed AT commands and parameters definitions consult the AT Commands
Reference Guides [1], [2], [3], [5], [6], and [7].
80000ST10028A Rev. 19 – 2014-09-03
5.2.1. Opening a socket connection in command mode
To open a socket in command mode we must use the multisocket commands AT#SD
or AT#SA.
After a PDP context activation with AT#SGACT it is possible to open all sockets
associated to this PDP context in command mode using:
AT#SD=<connId>,<txProt>,<rPort>,<IPaddr>[,<closure type>[,<lPort>],1]]
SRING: <connId>
we have to use:
AT#SA = <connId>,1
where the last parameter of AT#SD and AT#SA is <ConnMode>. Default value is 0
which means “classic” online mode, 1 is used for command mode.
Examples:
AT#SA = 1,1
OK
AT#SS
#SS: 1,2,[Link],38158,[Link],10510
#SS: 2,0
#SS: 3,0
#SS: 4,0
#SS: 5,0
#SS: 6,0
Classic SRING: only one message (SRING: <connId> ) when some new data arrive on
a socket connection ( like it was for a socket connection of multisocket). This message
is received also when there’s an incoming connection on listening connection Id.
Data amount SRING: an unsolicited message is raised for every new packet received
on a socket connection. The message gives information on the connection id and on
the number of bytes pending in the socket buffer.
View data SRING: in this message we have connection Id, amount of buffered data by
the socket and a string (up to 1500 chars for UE910 V2, HE910 V2, HE920 products
family, up to 1300 chars for HE910 product family, up to 64 chars for all other products)
with the dump of data extracted from the socket buffer. An unsolicited is raised until the
socket buffer is empty. In this specific case we can decide to see data as text or as hex
using the <recvDataMode> parameter (default value is 0 – text).
View data UDP SRING: the message is the same as the previous one for TCP
connections, but for UDP connections it shows also the source IP and port and the
number of bytes left in the datagram.
NOTE:
the data amount is updated until the maximum TCP windows size for reception is
reached.
80000ST10028A Rev. 19 – 2014-09-03
The command syntax is:
AT#SCFGEXT = <connId>,<srMode>,<recvDataMode>,<keepalive>
[,<ListenAutoRsp> [,<sendDataMode>] ]
Where:
Examples:
AT#SCFGEXT = 1,2,1,0 - Socket 1 set with SRING view data mode in hex.
AT#SCFGEXT = 1,2,1,0,0,1 – Socket 1 set also with hex data mode for sending
data14
AT#SCFGEXT = 1,3,1,0 - Socket 1 set with SRING view UDP data mode in
hex.
NOTE:
For UC864-G, UC864-E, UC864-E-DUAL and UC864-E-AUTO the command syntax is:
AT#SCFGEXT = <connId>,<srMode>,<recvDataMode>,<keepalive>
[,<unused_A> [,<unused_B>] ]
NOTE14:
With AT command #SCFGEXT2 is possible to set other configuration parameters.
Where:
At the prompt we can write data and send immediately on the socket with CTRL-Z
sequence. Maximum number of bytes is 1500, if more characters are written they are
truncated in upload. The command syntax is:
AT#SSEND = <connId>
Where <connId> is the connection Id of the socket that we want to use to send data
(socket must be opened otherwise an error is raised).
80000ST10028A Rev. 19 – 2014-09-03
Example:
We send the string “hello” on an echo socket with SRING mode set to Data amount.
AT#SSEND=1
> hello<CTRL-Z>
OK
SRING: 1,5
NOTE14:
Through new AT#SSENDEXT command it is possible to include all bytes within data to
send, including special characters(ESC, Ctrl-Z and BS) previously reserved with
#SSEND.
AT#SSENDEXT = <connId>,<bytestosend>
If we receive an unsolicited message SRING we can extract the data from the socket
buffer in command mode. The syntax of the command is:
AT#SRECV=<connId>,<maxByte>
Where :
<connId> is the connection Id of the socket with data pending
<maxbytes> is the number of pending bytes we want to extract (maximum value
is 1500).
Example:
We receive a SRING data amount and then we extract all the five bytes pending with
SRECV.
SRING: 1,5
at#srecv=1,5
#SRECV: 1,5
hello
OK
80000ST10028A Rev. 19 – 2014-09-03
5.2.5. Socket Information command
It is possible to have additional information on every socket with the AT#SI command.
The command syntax is:
AT#SI [= <connId>]
Where connId is an optional parameter, we can see info on a specific socket or for all
sockets.
The information shown by the command are:
AT#SI
#SI: 1,123,400,10,50
#SI: 2,0,100,0,0
#SI: 3,589,100,10,100
#SI: 4,0,0,0,0
#SI: 5,0,0,0,0
#SI: 6,0,98,60,0
OK
AT#SD=2,0,10510,”[Link]”,0,0,1
OK
AT#SSEND=2
> hello
OK
SRING: 2
AT#SSEND=2
> hello
OK
…
Only one SRING unsolicited also if we have other data pending, the user is informed
only once.
AT#SD=2,0,10510,”[Link]”,0,0,1
OK
AT#SSEND=2
> hello
OK
SRING: 2,5
AT#SSEND=2
> hello
OK
SRING: 2,10
Sring data amount unsolicited is updated every time new data arrives on the
socket.
AT#SI=2
#SI: 2,10,0,10,0
AT#SCFGEXT = 1,2,0,0
OK
We configure connection Id 2 for data view in hex mode for received data:
AT#SCFGEXT = 2,2,1,0
OK
AT#SD=1,0,10510,”[Link]”,0,0,1
OK
AT#SD=2,0,10510,”[Link]”,0,0,1
OK
AT#SSEND=1
> hello
OK
SRING: 1,5,hello
Send some data on the second, hex mode for received data:
AT#SSEND=2
> hello
OK
SRING: 2,5,68656C6C6F
Data are extracted directly from the socket buffer. Now we send more than the
maximum number of chars for a SRING, this will cause two unsolicited SRING.
AT#SSEND=1
> testtesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttest
OK
SRING: 1,64,testtesttesttesttesttesttesttesttesttesttesttesttesttesttesttest
SRING: 1,4,test
The first unsolicited contains the first 64 bytes of the socket buffer, the remaining 4 are
extracted with the second unsolicited message.
80000ST10028A Rev. 19 – 2014-09-03
19
NOTE :
Example:
We configure connection Id 1 for data view in hex mode for received data and also for
sending data:
AT#SCFGEXT = 1,2,1,0,0,1
OK
AT#SD=1,0,10510,”[Link]”,0,0,1
OK
SRING: 1,5,68656C6C6F
5.3.4. Open a command mode UDP connection with Data view UDP
SRING
AT#SCFGEXT = 1,3,0,0
OK
We configure connection Id 2 for data view in hex mode for received data:
AT#SCFGEXT = 2,3,1,0
OK
AT#SD=1,1,10510,”[Link]”,0,0,1
OK
AT#SD=2,1,10510,”[Link]”,0,0,1
OK
80000ST10028A Rev. 19 – 2014-09-03
Send some data on the first, text mode:
AT#SSEND=1
> hello
OK
SRING: ”[Link]”,10510,1,5,0,hello
Send some data on the second, hex mode for received data:
AT#SSEND=2
> hello
OK
SRING: ”[Link]”,10510,2,5,0,68656C6C6F
Now we send more than the maximum number of chars for a SRING, this will
cause two unsolicited SRING. The first one showing also the number of bytes
left in the UDP datagram.
AT#SSEND=1
> testtesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttest
OK
SRING: ”[Link]”,10510,1,64,4,testtesttesttesttesttesttesttesttesttesttesttesttesttesttesttest
SRING: ”[Link]”,10510,1,4,0,test
After using AT#SL we have a <connId> listening on a specific port (only for TCP
connections).
If we receive an incoming connection an unsolicited code is raised.
AT#SL = 1,1,1000
SRING: 1
AT#SA = 1,1
OK
and we stay in command mode, but the connection has been opened.
80000ST10028A Rev. 19 – 2014-09-03
5.3.6. Passing from command mode to online mode interface
It’s always possible to come back to online mode interface using the command
AT#SO = <connId>.
SRING: 1,5
AT#SO = 1
CONNECT
Hello
The AT interface is now in online mode and all characters written are interpreted as
data to send on the connection Id.
NOTE21:
Where:
80000ST10028A Rev. 19 – 2014-09-03
<Ipaddr> remote host address(IP address in dotted decimal notation or DNS
host name)
<retryNum> retries of PING Echo Request
<len> length of PING Echo Request
<timeout> - timeout waiting for a single Echo Reply
<ttl> - time to live
NOTE:
to use AT#PING the context has to be previously activated by AT#SGACT=1,1.
To receive the Echo Replies it’s not necessary to use AT#ICMP before AT#PING.
Example:
AT#PING=”[Link]”
#PING: 01,”[Link]”,6,50
Where:
<Echo Reply number>,<IP address of the remote host>,<replyTime>(100 ms units),<ttl>
OK
80000ST10028A Rev. 19 – 2014-09-03
6. Notes concerning IPV6 Implementation
The table below shows in which Connection Configurations are supported IPV4, IPV6 or
both Internet Protocols in accordance with the used module family and software version.
Refer to the Application Table to see the latest Software Versions for each module family
covered by the document.
Connection Configurations
SW Versions22 IP Easy Dial UP
[Link] IPV4 / IPV6 IPV4 / IPV6
[Link] IPV4 / IPV6 IPV4 / IPV6
[Link] IPV4 / IPV6 IPV4 / IPV6
[Link] IPV4 IPV4 / IPV6
[Link] IPV4 IPV4
The table shows that the GE910 Family ([Link]) supports the IPV4/IPV6 Internet
Protocols also when the IP Easy connection configuration is used. When the IPV6
parameter value is selected via the +CGDCONT command, the TCP/IP stack installed
on the module (IP Easy configuration) uses the IPV6 Internet Protocol. In this case the
protocol deals only with IPV6 addresses.
Currently, the GE910 Family provides the following commands supporting the IPV6
addresses:
AT#SD
AT#SSENDUDP
AT#SSENDUDPEXT
AT#FTPOPEN
AT#PING
AT#EMAILD
AT#DNS
AT#FRWLIPV6 (new AT command)
The IPV6 address used as input parameter in an AT command can have the following
two formats:
[Link]
Where xxx is a number having the range: 000 255
The results of AT commands show the IPV6 addresses always in the first format as
shown by the following examples:
Example:
AT+CGDCONT=1,”Ipv6”,”APN”
OK
AT#SGACT=1,1
+IP: [Link].[Link].[Link].[Link]
OK
Example:
AT#SCFG=1,1,300,90,600,50
OK
AT#SD=1,0,80,”[Link].[Link].[Link].[Link]”,0
CONNECT
or
AT#SD=1,0,80,” [Link]”,0
CONNECT
Example:
AT#FTPOPEN=”[Link]”,””,””,1
OK
or
AT#FTPOPEN=”=”[Link].[Link].[Link].[Link]”,””,””,1
OK
Example:
AT#PING=”[Link].[Link].[Link].[Link]”
#PING: 01,” [Link].[Link].[Link].[Link]”,47,237
…
OK
or
80000ST10028A Rev. 19 – 2014-09-03
AT#PING=”[Link]”
#PING: 01,” [Link].[Link].[Link].[Link]”,47,237
…
OK
Example:
AT#DNS=1,”[Link]”,”[Link]”
OK
AT#DNS?
#DNS: 1,”[Link].[Link].[Link].[Link]”,”[Link].[Link].[Link]
.[Link]”
In addition, the GE910 Family provides a new AT command to set the firewall
functionalities working with the IPV6 format addresses, see next examples:
AT#FRWLIPV6=1,”[Link]”,”[Link]”
OK
AT#FRWLIPV6?
#FRWLIPV6: “[Link].[Link].[Link].[Link]”,”[Link].[Link]
[Link].[Link].255”
80000ST10028A Rev. 19 – 2014-09-03
7. List of acronyms
Abbreviation Description
Ack Acknowledge
APN Access Point Name
AT Attention commands
CM Command mode
CR
0T Carriage Return
CSD Circuit Switched Data
CTS Clear To Send
DCD Data Carrier Detected
FTP File Transfer Protocol
GGSN Gateway GPRS Serving/Support Node
GPRS General Radio Packet Service
GSM Global System for Mobile communication
GTP GPRS Tunnelling Protocol
HTML Hyper Text Mark-up Language
HTTP Hypertext Transfer Protocol
HSCSD High-Speed Circuit-Switched Data
IP Internet Protocol
ISDN Integrated Services Digital Network
ISP Internet Service Provider
LCP Link Control Protocol
LLC Logical Link Control
MS Mobile Station
MT Mobile Terminated
NCP Network Control Protocol
OEM Other Equipment Manufacturer
PAP Password Authentication Protocol
PDP Packet Data Protocol
PDU Protocol Data Unit
PLMN Public Land Mobile Network
PPP Point to Point Protocol
QoS Quality Of Service
RLC Radio Link Control
RoHS Reduction of Hazardous Substances
RTS Ready To Send
SIM Subscriber Identity Module
SKTM Socket Mode
SMTP Simple Mail Transfer Protocol
TCP Transmission Control Protocol
80000ST10028A Rev. 19 – 2014-09-03
8. Document History
Added note in Easy GSM chapter, about COPS and CSURV commands
Changed title from EASY GPRS User Guide to IP Easy User Guide
80000ST10028A Rev. 19 – 2014-09-03
Revision Date Products/SW Versions Changes
Updated software versions
ISSUE#11 2011-10-17 / Corrected mistake in note at par 2.1.3
Products added:
GE910-QUAD AUTO /
ISSUE#16 2014-03-06 13.00.xx5
GE910-GNSS / 13.00.xx4
GL865-QUAD V3 / 16.00.xx3
GE910-QUAD V3 / 16.00.xx3
/
GE866-QUAD / 16.00.xx3
UE910-EUR / EUD / 12.00.xx4
UE910-NAR / NAD / 12.00.xx4
UL865-EUR/EUD / 12.00.xx4
UL865-NAR/NAD / 12.00.xx4
UL865-N3G / 12.00.xx4
Added chapters 3.4 and 3.5
Chapter 3.7.1.- “IP Easy- HTTP client application” was renamed to “IP
Easy HTTP client with #SD”
Chapter 3.7.2. – “IP Easy - EMAIL sending application” was renamed to
“IP Easy - EMAIL sending with #SD” and part with AT#SMTPCL /
ISSUE#17 2014-04-18
AT#EMAILD was removed
Chapter 3.7.3 - “IP Easy -EMAIL receiving application” was renamed to
“IP Easy -EMAIL receive with #SD”
IPv6 table updated in chapter 6.- “Notes concerning IPV6
Implementation”
Chapter 3.7.4: correct the syntax of the AT#SL command listed in the
ISSUE#18 2014-07-14 /
first table of the chapter.
Products added:
UE910-EU V2 / 19.10.xx2
UE910-NA V2 / 19.10.xx2
UE910-EU V2 AUTO /
19.10.xx2
ISSUE#19 2014-09-03 HE910-EU V2 / 14.22.xx1 /
HE910-EUG V2 / 14.22.xx1
HE910-NA V2 / 14.22.xx1
HE910-NAG V2 / 14.22.xx1
HE920-EU AUTO / 14.12.xx1
HE920-NA AUTO / 14.12.xx1