Telit LWM2M Reference Guide

Page 1
LWM2M AT Commands Reference Guide
(ME910C1/NE910C1/ML865C1)
80529ST10974A Rev. 3 – 2020-04-21
Page 2
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
SPECIFICATIONS ARE 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 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.

COMPUTER SOFTWARE COPYRIGHTS

The Telit and 3rd Party supplied Software (SW) products described in this instruction manual may include copyrighted Telit and other 3rd Party supplied computer programs stored in semiconductor memories or other media. Laws in the Italy and other countries preserve for Telit and other 3rd Party supplied SW certain exclusive rights for copyrighted computer programs, including the exclusive right to copy or reproduce in any form the copyrighted computer program. Accordingly, any copyrighted Telit or other 3rd Party supplied SW computer programs contained in the Telit products described in this instruction manual may not be copied (reverse engineered) or reproduced in any manner without the express written permission of Telit or the 3rd Party SW supplier. 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 or other 3rd Party supplied SW, except for the normal non-exclusive, royalty free license to use that arises by operation of law in the sale of a product.
Page 3
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

USAGE AND DISCLOSURE RESTRICTIONS

I. License Agreements
The software described in this document is the property of Telit and its licensors. It is furnished by express license agreement only and may be used only in accordance with the terms of such an agreement.
II. Copyrighted Materials
Software and documentation are copyrighted materials. Making unauthorized copies is prohibited by law. No part of the software or documentation may be reproduced, transmitted, transcribed, stored in a retrieval system, or translated into any language or computer language, in any form or by any means, without prior written permission of Telit
III. High Risk Materials
Components, units, or third-party products used in the product described herein are NOT fault-tolerant and are NOT designed, manufactured, or intended for use as on-line control equipment in the following hazardous environments requiring fail-safe controls: the operation of Nuclear Facilities, Aircraft Navigation or Aircraft Communication Systems, Air Traffic Control, Life Support, or Weapons Systems (High Risk Activities"). Telit and its supplier(s) specifically disclaim any expressed or implied warranty of fitness for such High Risk Activities.
IV. 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.
V. Third Party Rights
The software may include Third Party Right software. In this case you agree to comply with all terms and conditions imposed on you in respect of such separate software. In addition to Third Party Terms, the disclaimer of warranty and limitation of liability provisions in this License shall apply to the Third Party Right software.
TELIT HEREBY DISCLAIMS ANY AND ALL WARRANTIES EXPRESS OR IMPLIED FROM ANY THIRD PARTIES REGARDING ANY SEPARATE FILES, ANY THIRD PARTY MATERIALS INCLUDED IN THE SOFTWARE, ANY THIRD PARTY MATERIALS FROM WHICH THE SOFTWARE IS DERIVED
(COLLECTIVELY “OTHER CODE”), AND THE USE OF ANY OR ALL THE OTHER CODE IN CONNECTION
NO THIRD PARTY LICENSORS OF OTHER CODE SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND WHETHER MADE UNDER CONTRACT, TORT OR OTHER LEGAL THEORY, ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE OTHER CODE OR THE EXERCISE OF ANY RIGHTS GRANTED UNDER EITHER OR BOTH THIS LICENSE AND THE LEGAL TERMS APPLICABLE TO ANY SEPARATE FILES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
Page 4
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

APPLICABILITY TABLE

ME910C1-NA
ME910C1-NV
ME910C1-E1
ME910C1-AU
ME910C1-J1
ME910C1-K1
ME910C1-E2
ME910C1-WW
NE910C1-E1
NE910C1-NA
ML865C1-NA
ML865C1-EA
ME910C1-P1
ME910C1-P2
30.00.xx8 / MOB.xx0004
Page 5
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

CONTENTS

NOTICE .............................................................................................................................................................. 2
COPYRIGHTS .................................................................................................................................................... 2
COMPUTER SOFTWARE COPYRIGHTS ......................................................................................................... 2
USAGE AND DISCLOSURE RESTRICTIONS .................................................................................................. 3
APPLICABILITY TABLE .................................................................................................................................... 4
CONTENTS ........................................................................................................................................................ 5
1. INTRODUCTION ..................................................................................................................................... 7
Scope ........................................................................................................................................... 7
Audience ...................................................................................................................................... 7
Contact Information, Support ....................................................................................................... 7
Icons and Text Conventions ......................................................................................................... 8
2. AT COMMANDS ..................................................................................................................................... 9
Definitions .................................................................................................................................... 9
AT Command Syntax ................................................................................................................... 9
2.2.1. String Type Parameters ............................................................................................................. 10
2.2.2. Command Lines ......................................................................................................................... 10
2.2.2.1. ME Error Result Code - +CME ERROR: <err> .......................................................................... 11
2.2.2.2. Message Service Failure Result Code - +CMS ERROR: <err> ................................................. 14
2.2.2.3. Carriage Returns, Line Feeds and Log ...................................................................................... 15
2.2.3. Information Responses and Result Codes ................................................................................. 15
2.2.4. Command Response Time-Out .................................................................................................. 16
2.2.5. Command Issuing Timing........................................................................................................... 16
Storage....................................................................................................................................... 16
2.3.1. Factory Profile and User Profiles ................................................................................................ 16
AT Command Short Overview Table .......................................................................................... 17
3. AT COMMANDS REFERENCES .......................................................................................................... 18
IoT Portal .................................................................................................................................... 18
3.1.1. AT#LWM2MSTAT - Telit LwM2M Client Current Status............................................................. 18
3.1.2. AT#LWM2MMON - Activate/Deactivate the LwM2M Resource ................................................. 21
3.1.3. AT#LWM2MENA - Enable/Disable Telit LwM2M Agent ............................................................. 22
3.1.4. AT#LWM2MACK - Ack for Telit LwM2M Agent .......................................................................... 28
3.1.5. AT#LWM2MR - LWM2M Client Resource Reading ................................................................... 29
3.1.6. AT#LWM2ME - LWM2M Client Resource Executing ................................................................. 31
3.1.7. AT#LWM2MW - LWM2M Client Resource Writing ..................................................................... 33
3.1.8. AT#LWM2MSTS - LWM2STS Bootstrap Server ................................ ........................................ 35
3.1.9. AT#LWM2MSET - Set LwM2M Whitelisted Resource ............................................................... 37
3.1.10. AT#LWM2MNEWINST - Create a New Object Instance ............................................................ 39
3.1.11. AT#LWM2MGET - Get LwM2M Whitelisted Resource ............................................................... 40
3.1.12. AT#LWM2MFOTACFG - LWM2M Client Fota Management ...................................................... 42
3.1.13. AT#LWM2MFOTAACK - Ack for Telit LwM2M Agent FOTA Operation Confirmation ................ 44
Page 6
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
3.1.14. AT#LWM2MINJKEYS - LWM2M Store or Delete Credentials .................................................... 45
3.1.15. AT#LWM2MNFYACKURI - Manage URIs for URC Reporting ................................................... 46
3.1.16. AT#LWM2MNFYACKENA - Control URC Reporting ................................................................. 48
3.1.17. AT#LWM2MEXIST - Command for Detecting an Agent/Specific URI Existence ........................ 50
4. LIST OF ACRONYMS ........................................................................................................................... 52
5. DOCUMENT HISTORY ......................................................................................................................... 53
Page 7
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

1. INTRODUCTION

Scope

This document is aimed in providing a detailed specification and a comprehensive listing as a reference for the whole set of AT command.

Audience

Readers of this document should be familiar with Telit modules and their ease of controlling by means of AT Commands.

Contact Information, Support

For general contact, technical support services, technical questions and report documentation errors contact Telit Technical Support at:
TS-EMEA@telit.com
TS-AMERICAS@telit.com
TS-APAC@telit.com
Alternatively, use: http://www.telit.com/support
For detailed information about where you can buy the Telit modules or for recommendations on accessories and components visit:
http://www.telit.com
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.
Page 8
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

Icons and Text Conventions

SET section – This section provides all information related to SET functionality of involved AT command. If it has got strictly and relevant SET information, these are located at section end.
READ section – This section provides all information related to READ functionality of involved AT command. If it has got strictly and relevant READ information, these are located at section end.
TEST section – This section provides all information related to TEST functionality of involved AT command. If it has got strictly and relevant TEST information, these are located at section end.
Additional info – This section provides any kind of additional and useful information related to the AT command section as well as command exceptions or special behavior cases.
REFERENCE section – This section provides useful references (standards or normative) related to involved AT command.
EXAMPLE section – This section provides useful examples related to involved AT command.
NOTE section – This section provides all information related to involved AT commands. Each note can provide a different level of information: danger, caution/warning and tip/information.
Danger – This information MUST be followed or catastrophic equipment failure or bodily injury may occur.
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.
All dates are in ISO 8601 format, i.e. YYYY-MM-DD.
Page 9
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

2. AT COMMANDS

The Telit wireless module family can be controlled via the serial interface using the standard AT commands1F1F1. The Telit wireless module family is compliant with:
1. Hayes standard AT command set, to maintain the compatibility with existing SW programs.
2. 3GPP TS 27.007 specific AT command and GPRS specific commands.
3. 3GPP TS 27.005 specific AT commands for SMS (Short Message Service) and CBS (Cell Broadcast Service)
Moreover, Telit wireless module family supports also Telit proprietary AT commands for special purposes. The following is a description of how to use the AT commands with the Telit wireless module family.

Definitions

The following syntactical definitions apply: <CR> Carriage return character, is the command line and result code terminator character, which value, in
decimal ASCII between 0 and 255, is specified within parameter S3. The default value is 13.
<LF> Linefeed character, is the character recognized as line feed character. Its value, in decimal ASCII
between 0 and 255, is specified within parameter S4. The default value is 10. The line feed character is output after carriage return character if verbose result codes are used (V1 option used) otherwise, if numeric format result codes are used (V0 option used) it will not appear in the result codes.
<...> Name enclosed in angle brackets is a syntactical element. They do not appear in the command line. [...] Optional sub parameter of a command or an optional part of TA information response is enclosed in
square brackets. Brackets themselves do not appear in the command line. When sub parameter is not given in AT commands which have a Read command, new value equals to its previous value. In AT commands which do not store the values of any of their sub parameters, and so have not a Read command, which are called action type commands, action should be done based on the recommended default setting of the sub parameter.

AT Command Syntax

The syntax rules followed by Telit implementation of either Hayes AT commands, GSM commands are very similar to those of standard basic and extended AT commands
There are two types of extended command:
- Parameter type commands. This type of commands may be "set" (to store a value or values for later use), "read" (to determine the current value or values stored), or "tested" (to determine ranges of values supported). Each of them has a test command (trailing =?) to give information about the type of its sub parameters; they also have a Read command (trailing?) to check the current values of sub parameters.
- Action type commands. This type of command may be "executed" or "tested".
"executed" to invoke a function of the equipment, which generally involves more than the simple storage of a value for later use
"tested" to determine:
o if sub parameters are associated with the action, the ranges of sub parameters values that
are supported; if the command has no sub parameters, issuing the correspondent Test command (trailing =?) raises the result code "ERROR". Note: issuing the Read command (trailing?) causes the command to be executed.
o whether or not the equipment implements the Action Command (in this case issuing the
correspondent Test command - trailing =? - returns the OK result code), and, if sub
1
The AT is an ATTENTION command and is used as a prefix to other parameters in a string. The AT
command combined with other parameters can be set up in the communications package or typed in manually as a command line instruction combined with other parameters can be set up in the communications package or typed in manually as a command line instruction.
Page 10
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
parameters are associated with the action, the ranges of sub parameters values that are supported.
Action commands don’t store the values of any of their possible sub parameters.
Moreover: The response to the Test Command (trailing =?) may be changed in the future by Telit to allow the description
of new values/functionalities.
If all the sub parameters of a parameter type command +CMD are optional, issuing AT+CMD=<CR> causes the OK result code to be returned and the previous values of the omitted sub parameters to be retained.

2.2.1. String Type Parameters

A string, either enclosed between quotes or not, is a valid string type parameter input. According to V25.ter space characters are ignored on the command line and may be used freely for formatting purposes, unless they are embedded in numeric or quoted string constants; therefore a string containing a space character has to be enclosed between quotes to be considered a valid string type parameter (e.g. typing AT+COPS=1,0,"A1" is the same as typing AT+COPS=1,0,A1; typing AT+COPS=1,0,"A BB" is different from typing AT+COPS=1,0,A BB).
A string is always case sensitive.
A small set of commands requires always to write the input string parameters within quotes: this is explicitly reported in the specific descriptions.

2.2.2. Command Lines

A command line is made up of three elements: the prefix, the body and the termination character. The command line prefix consists of the characters "AT" or "at", or, to repeat the execution of the previous
command line, the characters "A/" or "a/" or AT#/ or at#/. The termination character may be selected by a user option (parameter S3), the default being <CR>. The basic structures of the command line are:
ATCMD1<CR> where AT is the command line prefix, CMD1 is the body of a basic command (nb: the name of the command never begins with the character "+") and <CR> is the command line terminator character
ATCMD2=10<CR> where 10 is a sub parameter
AT+CMD1;+CMD2=, ,10<CR> These are two examples of extended commands (nb: the name of
the command always begins with the character "+"2F2F2). They are delimited with semicolon. In the second command the sub parameter is omitted.
+CMD1?<CR> This is a Read command for checking current sub parameter values
+CMD1=?<CR> This is a test command for checking possible sub parameter values
These commands might be performed in a single command line as shown below:
ATCMD1 CMD2=10+CMD1;+CMD2=, ,10;+CMD1?;+CMD1=?<CR>
anyway, it is always preferable to separate into different command lines the basic commands and the extended commands; furthermore, it is suggested to avoid placing several action commands in the same command line, because if one of them fails, then an error message is received but it is not possible to argue which one of them has failed the execution.
2
The set of proprietary AT commands differentiates from the standard one because the name of each
of them begins with either "@", "#", "$" or "*". Proprietary AT commands follow the same syntax rules as extended commands
Page 11
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
If command V1 is enabled (verbose responses codes) and all commands in a command line has been performed successfully, result code <CR><LF>OK<CR><LF> is sent from the TA to the TE, if sub parameter values of a command are not accepted by the TA or command itself is invalid, or command cannot be performed for some reason, result code <CR><LF>ERROR<CR><LF> is sent and no subsequent commands in the command line are processed.
If command V0 is enabled (numeric responses codes), and all commands in a command line has been performed successfully, result code 0<CR> is sent from the TA to the TE, if sub-parameter values of a command are not accepted by the TA or command itself is invalid, or command cannot be performed for some reason, result code 4<CR> and no subsequent commands in the command line are processed.
In case of errors depending on ME operation, ERROR (or 4) response may be replaced by +CME ERROR: <err> or +CMS ERROR: <err>.
The command line buffer accepts a maximum of 400 characters. If this number is exceeded none of the commands will be executed and TA returns ERROR.
2.2.2.1. ME Error Result Code - +CME ERROR: <err>
This is NOT a command, it is the error response to +Cxxx 3GPP TS 27.007 commands. Syntax: +CME ERROR: <err> Parameter: <err> - error code can be either numeric or verbose (see +CMEE). The possible values of <err>
are reported in the table:
Numeric Format 3
Verbose Format 4
0
phone failure
1
no connection to phone
2
phone adaptor link reserved
3
operation not allowed
4
operation not supported
5
PH-SIM PIN required
6
PH-FSIM PIN required
7
PH-FSIM PUK required
10
SIM not inserted
11
SIM PIN required
12
SIM PUK required
13
SIM failure
14
SIM busy
15
SIM wrong
16
incorrect password
17
SIM PIN2 required
18
SIM PUK2 required
20
memory full
21
invalid index
22
not found
23
memory failure
24
text string too long
25
invalid characters in text string
26
dial string too long
27
invalid characters in dial string
30
no network service
31
network timeout
32
network not allowed - emergency calls only
34
numeric parameter instead of text parameter
35
text parameter instead of numeric parameter
36
numeric parameter out of bounds
37
text string too short
3
Not all modules support the error codes shown in the table.
4
There could be small variations in the message depending on the module in use.
Page 12
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
Numeric Format 3
Verbose Format 4
38
The GPIO Pin is already used
40
network personalization PIN required
41
network personalization PUK required
42
network subset personalization PIN required
43
network subset personalization PUK required
44
service provider personalization PIN required
45
service provider personalization PUK required
46
corporate personalization PIN required
47
corporate personalization PUK required
49
EAP method not supported
50
Invalid EAP parameter
51
Parameter length error for all Auth commands
52
Temporary error for all Auth command
53
not verified hidden key
100
unknown
103
Illegal MESSAGE
106
Illegal ME
107
GPRS services not allowed
111
PLMN not allowed
112
Location area not allowed
113
Roaming not allowed in this location area
132
service option not supported
133
requested service option not subscribed
134
service option temporarily out of order
148
unspecified GPRS error
149
PDP authentication failure
150
invalid mobile class
257
network rejected request
258
retry operation
259
invalid deflected to number
260
deflected to own number
261
unknown subscriber
262
service not available
263
unknown class
264
unknown network message
273
Minimum TFT per PDP address error
274
Duplicate TFT eval prec index
275
Invalid TFT param combination
277
Invalid number of parameters
278
Invalid Parameter
320
Call index error
321
Call state error
322
Sys state error
323
Parameters error
550
generic undocumented error
551
wrong state
552
wrong mode
553
context already activated
554
stack already active
555
activation failed
556
context not opened
557
can not setup socket
558
can not resolve DN
559
time-out in opening socket
560
can not open socket
561
remote disconnected or time-out
562
connection failed
563
tx error
564
already listening
565
socket disconnection
566
can not resume socket
567
ip version type incompatible
568
ipv6 not enabled
Page 13
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
Numeric Format 3
Verbose Format 4
569
600
Generic undocumented error
601
wrong state
602
Can not activate
603
Can not resolve name
604
Can not allocate control socket
605
Can not connect control socket
606
Bad or no response from server
607
Not connected
608
Already connected
609
Context down
612
Resource used by other instance
613
Data socket yet opened in cmdmode
614
FTP CmdMode data socket closed
615
FTP not connected
616
FTP disconnected
617
FTP read command closed
618
FTP read command error
619
FTP write command closed
620
FTP write command error
621
FTP read data closed
622
FTP read data error
623
FTP write data closed
624
FTP write data error
625
FTP host not found
626
FTP accept failure
627
FTP listen failure
628
FTP bind failure
629
FTP file create failure
630
FTP file get failure
631
FTP file put failure
632
FTP file not found
633
FTP timed out
634
FTP login incorrect
635
FTP close error
636
FTP server not ready
637
FTP server shutdown
638
FTP unexpected reply
639
FTP user ID and password don't match
640
FTP user ID and password don't match
641
FTP user already logged in
642
FTP open channel timeout
643
FTP communication timeout
644
FTP unknown error
657
Network survey error (No Carrier)
658
Network survey error (Busy)
659
Network survey error (Wrong request)
660
Network survey error (Aborted)
680
LU processing
681
Network search aborted
682
PTM mode
683
Network search terminated
684
CSG Search processing
690
Active call state
691
RR connection established
770
SIM invalid
900
No Response for AT Command
1000
SSL not activated
1001
SSL certs and keys wrong or not stored
1002
SSL generic error
1003
SSL already activated
1004
SSL error during handshake
1005
SSL socket error
1006
SSL invalid state
Page 14
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
Numeric Format 3
Verbose Format 4
1007
SSL cannot activate
1008
SSL not connected
1009
SSL already connected
1010
SSL error enc/dec data
1011
SSL disconnected
1100
Model not recognized
1101
Model information missing
1102
Unable to open the file
1103
Unable to close the file
1104
Unable to read the nv file
1105
Unable to write the nv file
1106
Input pattern is wrong
1113
Call establishment failed
1114
File name already exist
2.2.2.2. Message Service Failure Result Code - +CMS ERROR: <err>
This is NOT a command, it is the error response to +Cxxx 3GPP TS 27.005 commands.
Syntax: +CMS ERROR: <err> Parameter: <err> - numeric error code. The <err> values are reported in the table:
Numeric Format
Meaning
According to 3GPP TS 24.011 section 8.2.5.4
0...127
According to 3GPP TS 23.040 sub clause 9.2.3.22 values
128...255
According to 3GPP TS 27.005 section 3.2.5 - Message Service Failure Result Code +CMS ERROR
300
ME failure
301
SMS service of ME reserved
302
operation not allowed
303
operation not supported
304
invalid PDU mode parameter
305
invalid text mode parameter
310
SIM not inserted
311
SIM PIN required
312
PH-SIM PIN required
313
SIM failure
314
SIM busy
315
SIM wrong
316
SIM PUK required
317
SIM PIN2 required
318
SIM PUK2 required
320
memory failure
321
invalid memory index
322
memory full
330
SMSC address unknown
331
no network service
332
network time-out
340
no +CNMA acknowledgement expected
500
unknown error
510
msg blocked
<err> 512 and on are manufacturer specific
512
No SM resources
513
TR1M timeout
514
LL error
515
No response from network
Page 15
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
2.2.2.3. Carriage Returns, Line Feeds and Log
Generally, the number of carriage returns <CR> and line feeds <LF> at the end of command responses may vary. This scenario may also vary from software version to software version. We do not have evidence of this behavior in URC lines.
Command responses examples:
AT#LWM2MMON?<CR> <CR><LF> #LWM2MMON: "4"<LF>#LWM2MMON: "3" missing <CR> <CR><LF> <CR><LF> OK <CR><LF> AT#LWM2MFYACKURI=0,2<CR> <CR><LF> #LWM2MNFYACKURI: "/3/0/9"<LF>#LWM2MNFYACKURI: "/3/0/8" missing <CR> <CR><LF> <CR><LF> OK <CR><LF>
The user must be aware of this aspect before writing a script to parse the commands lines and the relative responses lines to generate a log.

2.2.3. Information Responses and Result Codes

The TA response, in case of verbose response format enabled, for the previous examples command line could be as shown below:
information response to +CMD1? <CR><LF>+CMD1:2,1,10<CR><LF>
information response to +CMD1=? <CR><LF>+CMD1(0-2),(0,1),(0-15)<CR><LF>
result code <CR><LF>OK<CR><LF>
Moreover, there are other two types of result codes:
result codes that inform about progress of TA operation (e.g. connection establishment CONNECT)
result codes that indicate occurrence of an event not directly associated with issuance of a command
from TE (e.g. ring indication RING).
Here the basic result codes according to ITU-T V25Ter recommendation
Numeric form
Verbose form
0
OK 1 CONNECT or CONNECT <text>3F3F5
2
RING
3
NO CARRIER
4
ERROR
6
NO DIALTONE
7
BUSY
8
NO ANSWER
5
<text> can be"300", "1200", "2400", "4800", "9600", "14400" or "1200/75"
Page 16
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
10
CONNECT 24004
11
CONNECT 48004
12
CONNECT 96004
15
CONNECT 144004
23
CONNECT 1200/754

2.2.4. Command Response Time-Out

Every command issued to the Telit modules returns a result response, if response codes are enabled (default). The time needed to process the given command and return the response varies, depending on the command type. Commands that do not interact with the SIM or the network, and only involve internal setups or readings, have an immediate response. Commands that interact with the SIM or the network could take many seconds to send a response, depending on SIM configuration (e.g., number of contacts stored in the phonebook, number of stored SMS), or on the network the command may interact with.

2.2.5. Command Issuing Timing

The chain Command -> Response shall always be respected, and a new command must not be issued before the module has terminated all the sending of its response result code (whatever it may be).
This applies especially to applications that "sense" the OK text and therefore may send the next command before the complete code <CR><LF>OK<CR><LF> is sent by the module.
It is advisable anyway to wait for at least 20ms between the end of the reception of the response and the issue of the next AT command.
If the response codes are disabled and therefore the module does not report any response to the command, then at least the 20ms pause time shall be respected.

Storage

2.3.1. Factory Profile and User Profiles

The Telit wireless modules store the values, set by several commands, in the internal nonvolatile memory (NVM), allowing to remember this setting even after power off. In the NVM, these values are set either as factory profile or as user profiles. There are two customizable user profiles and one factory profile in the NVM of the device: by default, the device will start with user profile 0 equal to factory profile.
For backward compatibility, each profile is divided into two sections, one base section which was historically the one that was saved and restored in early releases of code, and the extended section which includes all the remaining values.
The &W command is used to save the current values of both sections of profiles into the NVM user profile. Commands &Y and &P are both used to set the profile to be loaded at startup. &Y instructs the device to load
at startup only the base section. &P instructs the device to load at startup the full profile: base + extended sections.
The &F command resets to factory profile values only the command of the base section of profile, while the &F1 resets to factory profile values the full set of base + extended section commands.
The values set by other commands are stored in NVM outside the profile: some of them are stored always, without issuing any &W, some other are stored issuing specific commands (+CSAS, #SLEDSAV, #SKTSAV, #ESAV); all these values are read at power-up.
In this document, each AT command description begins with a "AT Command short overview table" having the following format:
SIM Presence
Setting saved
Can be
aborted
MAX timeout
SELINT
/
see below
/ / /
This chapter focus on the values that Setting saved field can assume and their meaning. The meaning of the other fields will be described in the next chapter. Setting saved field can have one of the value listed below
Page 17
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
(to have information on the AT instance introduced hereafter, see the reference section of the #PORTCFG command):
Specific profile the parameters values set by the command are stored in the profile base section. The
stored values set is associated to the specific AT instance used to enter the command. It is a profile used by the specific AT instances.
Examples of the AT commands: +IPR, E, Q, V, X, &Y, etc. The parameters values set by the command are stored in the profile extended section.
The stored values set is associated to the specific AT instance used to enter the command. It is a profile used by the specific AT instance.
Examples of the AT commands: +FCLASS, +CREG, +CLIP, #STIA, etc.
Common profile the parameters values set by the command are stored in the profile extended section.
The stored values set is not associated to the specific AT instance used to enter the command. It is a profile shared between the AT instances.
Examples of the AT commands: +CALM, #E2SLRI, #DVI, etc.
Auto the parameters values set by the command are automatically stored in NVM, without
issuing any storing AT command, and independently from the profile (unique values). The values are automatically restored at startup.
AT commands examples: +COPS, +CGQREQ, #SCFG, etc. In some cases, the parameters values are store in the file system. AT commands examples: #TEMPCFG, #TEMPMON, etc.
Other the parameters values set by the command are stored in NVM issuing a specific
command and independently from the profile. Examples of the AT commands: #SLED setting is saved by #SLEDSAV
#BIQUADINEX setting is saved by #PSAV etc.

AT Command Short Overview Table

As stated before, each AT command description begins with a "AT Command short overview table" having the following format:
SIM Presence
Setting saved
Can be
aborted
MAX timeout
SELINT
Not required
/
No - 2
Here are the table fields meanings:
SIM Presence indicates if the AT command to be executed needs the SIM presence. Can be aborted indicates if the AT command can be aborted during its execution. MAX timeout indicates the time within which the command must be executed. SELINT indicates on which AT interface type the AT command is available.
Page 18
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3. AT COMMANDS REFERENCES

IoT Portal

3.1.1. AT#LWM2MSTAT - Telit LwM2M Client Current Status

This command sends a query about the status to the Telit LwM2M client.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
Auto
No - 2
AT#LWM2MSTAT
If executed, the command returns the current Telit LwM2M client status. The status is returned through the string:
#LWM2MGETSTAT: <enabledStatus>,<status> Additional info:
Here are described the string parameters.
Name
Type
Default
Description
<enabledStatus>
integer
N/A
the current Telit LwM2M client enabling status
Values:
0 : the client is disabled
1 : the client is enabled
<status>
string
N/A
the current internal status
Values:
DIS : the client is disabled
WAIT
:
waiting for the user's ACK
ACTIVE
:
after the ACK, the session is currently active
IDLE
:
there is not an active session currently
DEREG
:
the client is deregistering
In case the LwM2M client is enabled with the <mode> active, the <enabledStatus> parameter in #LWM2MSTS command reports the LwM2M as active just after the command insertion and while waiting for the #LWM2MACK confirmation.
In case the LwM2M client is enabled with the <mode> active, after the #LWM2MENA command insertion to disable it, the <enabledStatus> parameter returned by #LWM2MSTS command reports the LwM2M as active since the disabling message towards the server needs the #LWM2MACK confirmation; this happens only when the disabling command is typed out of the LwM2M client active time window (i.e.: outside the <guardReleaseTime> inserted in #LWM2MENA command).
In case the LwM2M client is enabled with the <mode> not active, after the #LWM2MENA command insertion to disable it, for a short period of time, the
Page 19
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
<enabledStatus> parameter in #LWM2MSTS command could report some intermediate states between the "ACTIVE" and the disabled one.
AT#LWM2MSTAT?
Not supported
AT#LWM2MSTAT=?
Test command returns OK.
Page 20
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
#LWM2MSTS command examples:
Enabling and disabling the LwM2M client when activated in "ack" mode (when outside the LwM2M activity time window)
AT#LWM2MENA=1,1,1,5,20 OK
#LWM2MRING: "REG"
AT#LWM2MSTAT #LWM2MGETSTAT: 1,"WAIT" OK
AT#LWM2MACK=1 OK
LWM2M-TLT:"BOOTSTRAPPING",SSID=0,"coaps://bs-engr.telit.io" LWM2M-TLT:"BOOTSTRAPPED",SSID=0,"coaps://bs-engr.telit.io" #LWM2MEND: 0
AT#LWM2MSTAT #LWM2MGETSTAT: 1,"ACTIVE" OK
#LWM2MEND: 0
AT#LWM2MSTAT #LWM2MGETSTAT: 1,"IDLE" OK
AT#LWM2MENA=0 OK
#LWM2MRING: "DRG"
AT#LWM2MSTAT #LWM2MGETSTAT: 1,"WAIT" OK
AT#LWM2MACK=1 OK
AT#LWM2MSTAT #LWM2MGETSTAT: "DIS" OK
AT#LWM2MENA? #LWM2MENA: 0 OK
Page 21
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.2. AT#LWM2MMON - Activate/Deactivate the LwM2M Resource

This command can be used to activate/deactivate the resource changes monitoring. Resource change could be performed by the server's write and by the #LWM2MW or #LWM2MSET commands.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
Auto
No - 2
AT#LWM2MMON=<action>,<objectID>
By inserting an <objectID> in the monitoring list with <action> in active mode, each time a resource belonging to the object under monitoring changes, the user - according to the setting performed with #LWM2MMON - receives an URC reporting the complete URI path of the resource changed in the format:
#LWM2MMON: UPD,"/<objectID>/<objectInstanceID>/<resourceID>/ <resourceInstanceID>"
Parameters:
Name
Type
Default
Description
<action>
integer
0
activate/deactivate the resource monitoring
Values:
0 : deactivate
1 : activate
<objectID>
integer
N/A
object identifier. This command is not applicable to:
object 0 "Security"
Value: 1÷65535
:
object identifier range
The list of monitorable <objectID> is limited to 6. After that number, it is not possible to monitor any further object unless another object already present in list is removed.
The object list under monitoring is not persistent to a power-cycle.
AT#LWM2MMON?
Read command reports the list of currently supported objects, in the format:
#LWM2MMON: "<objectID1>" #LWM2MMON: "<objectID2>" ...
The <objectIDi> are listed according to their insertion order in the list.
AT#LWM2MMON=?
Test command reports the supported range of values for the parameters.
Page 22
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.3. AT#LWM2MENA - Enable/Disable Telit LwM2M Agent

This command enables/disables the Telit LwM2M Client feature.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
No
No - 2
AT#LWM2MENA=<en>[,<pdpId>[,<mode>[,<guardRequestTime>[,<guardReleaseTime>]]]]
Execution command enables/disables the Telit LwM2M Client feature. Enabling the client with
<mode> set to 1 will produce the following URCs: #LWM2MRING: <ring> #LWM2MEND: <endResultCode>
Parameters:
Name
Type
Default
Description
<en>
integer
0
enable/disable the Telit LwM2M Client feature
Values:
0 : disable
1 : enable
<pdpId>
integer
1
PDP context identifier the Telit LwM2M client should use on the module
Value: 1÷6 : PDP context identifier
<mode>
integer
0
ACK modality
Values:
0 : no ACK required
1 : ACK required
<guardRequestTime>
integer
5
in case of update registration and Notify events, it is the time of advance for the ACK notification
Value: 1÷100
:
time of advance for the ACK notification, in seconds
<guardReleaseTime>
integer
5
the client waits this time to manage further LwM2M server request before releasing the network data resource (emitting #LWM2MEND: URC)
Value: 1÷100
:
time to wait to release the network resource, in seconds
Additional info:
The Telit LwM2M client show also an URC according to some events, in the form: #LWM2MINFO: <infoType>,<infoEvent>
Page 23
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
The Telit LwM2M client show also URCs according to the server registration status, in the form:
#LWM2M-TLT: <event>,<SSID>,<URL>
Unsolicited fields:
Name
Type
Description
<ring>
string
the ring code enabled by the <mode> parameter set to 1 Values:
REG
:
the client needs to register
UPD
:
registration update to be sent
NOT
:
a value under observation has changed and it should be notified to the server
SMS
:
wake up SMS received from the server
DRG
:
deregistration
<endResultCode>
integer
the result code transmitted by the #LWM2MEND URC Value:
0 : success
<infoType>
string
the type of information communicated by the client Value: GEN
:
general info
<infoEvent>
string
the event communicated with the #LWM2MINFO URC Values:
FOTA REBOOT
:
a reboot occurring during FW upgrade
DEVICE REBOOT
:
a reboot issued by LwM2M server. Case: EXEC 3/0/4 and EXEC 3/0/5.
<event>
string
event name Values:
BOOTSTRAPPING
:
the client is starting the bootstrap to the specified server
BOOTSTRAPPED
:
the client finished successfully the bootstrap to the specified server
REGISTERING
:
the client is starting the DM connection to the specified server
REGISTERED
:
the client finished successfully the DM connection to the specified server
Page 24
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
SUSPENDED
:
the client suspended successfully the DM connection to the specified server, as requested via /1/x/4 execution resource
CLIENT_DISABLED
:
the client has been disabled by AT command or by internal failures (i.e.: handshake failure)
FORCE_EXIT
:
the client failed the server connection and after the proper retries, it is stopped. This action is only manageable by a module reboot. <SSID>
integer
the short server ID code
<URL>
string
the server URL
The service registration URC service is not active by default: it is in charge of the user to activate it. Nevertheless, the bootstrap is always notified once the context has been activated.
"CLIENT_DISABLED" and "FORCE_EXIT" <event> do not report <SSID> and <URL>
Please notice that the URC reporting "FORCE_EXIT" <event> are always displayed, even in case of inactive service or in case of non-Telit clients.
During the PDP activation or deactivation triggered by the #LWM2MENA command, the client shall not manage any other #LWM2M commands for a short period of time.
If the client LwM2M is already enabled, a further enabling attempt will return an error.
AT#LWM2MENA?
If the client is enabled, read command reports the current values of parameters in the format:
#LWM2MENA: <en>,<pdpId>,<mode>,<guardRequestTime>,<guardReleaseTime>, <enabledStatus>
If the client is not enabled, read command reports the current values of parameters in the format:
#LWM2MENA: 0
The <enabledStatus> parameter reports the same values reported by the
#LWM2MSTAT. Therefore, for a list of the <enabledStatus> values, please refer to #LWM2MSTAT command.
In case the LwM2M client is enabled with the <mode> active, the <enabledStatus> parameter in read command reports the LwM2M as active just after the
command insertion and while waiting for the #LWM2MACK confirmation.
In case the LwM2M client is enabled with the <mode> active, after the #LWM2MENA command to disable it, the <enabledStatus> parameter in read command reports the LwM2M as active since the disabling message towards the server needs the #LWM2MACK confirmation; this happens only when the disabling command is typed out of the LwM2M client active time window (i.e.: outside the <guardReleaseTime> inserted in #LWM2MENA command).
Page 25
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
In case the LwM2M client is enabled with the <mode> not active, after the #LWM2MENA command to disable it, for a short period of time, the <enabledStatus> parameter in read command could report some intermediate states between the "ACTIVE" and the disabled one.
AT#LWM2MENA=?
Test command reports the supported range of values for all the parameters.
Page 26
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
Server URC and read command examples:
Bootstrap session successful
AT#LWM2MENA=1 OK
LWM2M-TLT:"BOOTSTRAPPING",SSID=0,"coaps://bs-engr.telit.io:5684" LWM2M-TLT:"BOOTSTRAPPED",SSID=0,"coaps://bs-engr.telit.io:5684"
Bootstrap session failure
AT#LWM2MENA=1 OK
LWM2M-TLT:"BOOTSTRAPPING",SSID=0,"coaps://bs-engr.telit.io:5684" LWM2M-TLT:"BOOTSTRAPPING",SSID=0,"coaps://bs-engr.telit.io:5684" LWM2M-TLT:"BOOTSTRAPPING",SSID=0,"coaps://bs-engr.telit.io:5684" LWM2M-TLT:"FORCE_EXIT"
the registration/deregistration to each server is shown only if the service is enabled:
AT#LWM2MENA=1 OK
LWM2M-TLT:"REGISTERING",SSID=99,"coaps://engr-api.devicewise.com" LWM2M-TLT:"REGISTERING",SSID=102,"coap://217.114.209.230:5683" LWM2M-TLT:"REGISTERED",SSID=102,"coap://217.114.209.230:5683" LWM2M-TLT:"REGISTERED",SSID=99,"coaps://engr-api.devicewise.com"
AT#LWM2MENA=0 OK
LWM2M-TLT:"DEREGISTERED",SSID=99,"coaps://engr-api.devicewise.com" LWM2M-TLT:"DEREGISTERED",SSID=102,"coap://217.114.209.230:5683" LWM2M-TLT:"CLIENT_DISABLED"
DM failure (i.e.: for handshake problems), the status is shown only if the service is enabled:
LWM2M-TLT:"REGISTERING",SSID=99,"coaps://engr-api.devicewise.com" LWM2M-TLT:"FORCE_EXIT" LWM2M-TLT:"CLIENT_DISABLED"
client suspending:
LWM2M-TLT:"REGISTERING",SSID=99,"coaps://engr-api.devicewise.com" LWM2M-TLT:"REGISTERED",SSID=99,"coaps://engr-api.devicewise.com"
... execution of resource /1/x/4 LWM2M-TLT:"SUSPENDED",SSID=99,"coaps://engr-api.devicewise.com" ... after timeout as in resource /1/x/5
LWM2M-TLT:"REGISTERING",SSID=99,"coaps://engr-api.devicewise.com" LWM2M-TLT:"REGISTERED",SSID=99,"coaps://engr-api.devicewise.com"
Read command example: Disabling the LwM2M client when activated in "ack" mode (when outside the LwM2M
activity time window)
AT#LWM2MENA=1,1,1,5,20 OK
Page 27
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
#LWM2MRING: "REG"
AT#LWM2MENA? #LWM2MENA: 1,1,1,5,20,"WAIT" OK
AT#LWM2MACK=1 OK
LWM2M-TLT:"BOOTSTRAPPING",SSID=0,"coaps://bs-engr.telit.io" LWM2M-TLT:"BOOTSTRAPPED",SSID=0,"coaps://bs-engr.telit.io" #LWM2MEND: 0
AT#LWM2MENA? #LWM2MENA: 1,1,1,5,20,"IDLE" OK
AT#LWM2MENA=0 OK
#LWM2MRING: "DRG"
AT#LWM2MENA? #LWM2MENA: 1,1,1,5,20,"WAIT" OK
AT#LWM2MACK=1 OK
AT#LWM2MENA? #LWM2MENA: 1,1,1,5,20,"DEREG" OK
AT#LWM2MENA? #LWM2MENA: 0 OK
Read command example: Disabling the LwM2M client when activated in "no ack" mode
AT#LWM2MENA=1 OK
AT#LWM2MENA=0 OK
AT#LWM2MENA? #LWM2MENA: 1,1,0,5,5,"DEREG" OK
AT#LWM2MENA? #LWM2MENA: 0 OK
Page 28
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.4. AT#LWM2MACK - Ack for Telit LwM2M Agent

This command sends an ACK to the Telit LwM2M Client.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
No
No - 2
AT#LWM2MACK=<action>
if the <mode> in #LWM2MENA is not 0, the Telit LwM2M client requires an ACK to performs its operations on the dedicated data context.
Parameter:
Name
Type
Default
Description
<action>
integer
1
Acknowledge: the <cid> context indicated in #LWM2MENA command is active and the user allows the client to send data through this.
Value: 1 : action is required
AT#LWM2MACK?
Not supported
AT#LWM2MACK=?
Test command reports the supported range of values for all the parameters.
Page 29
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.5. AT#LWM2MR - LWM2M Client Resource Reading

This set command selects the parameters for the read operation on the lwm2m agent, it requires the correspondent lwm2m agent enabled and working.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
Auto
No - 2
AT#LWM2MR=<agentInstance>,<objectID>,<objectInstanceID>,<resourceID>, <resourceInstanceID>
Parameters:
Name
Type
Default
Description
<agentInstance>
integer
0
selects the lwm2m instance shown below
Values:
0 : Telit agent
1÷4 : reserved for future use
<objectID>
integer
N/A
select object identifier. The following objects could not be accessed by the command:
'0', Security object
'1', Server object
'2', Access Control object
'5', Firmware Update object
Value: 0÷65535
:
object identifier range
<objectInstanceID>
integer
N/A
select object instance identifier for the query
Value: 0÷65535
:
object instance identifier range
<resourceID>
integer
N/A
select resource identifier
Value: 0÷65535
:
resource identifier range
<resourceInstanceID>
integer
N/A
select resource instance identifier
Value: 0÷65535
:
resource instance identifier range
The command returns an ERROR if the selected resource is not readable.
AT#LWM2MR?
Read command return OK code
Page 30
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
AT#LWM2MR=?
Test command reports the range for parameters
Page 31
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.6. AT#LWM2ME - LWM2M Client Resource Executing

This set command selects the parameters to execute operations on the lwm2m agent, it requires the correspondent lwm2m agent enabled and working.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
No
No - 2
AT#LWM2ME=<agentInstance>,<objectID>,<objectInstanceID>,<resourceID>, <resourceInstanceID>
Parameters:
Name
Type
Default
Description
<agentInstance>
integer
0
selects the lwm2m instance shown below
Values:
0 : Telit agent
1÷4 : reserved for future use
<objectID>
integer
N/A
select object identifier. The following objects could not be accessed by the command:
'0', Security object
'1', Server object
'2', Access Control object
'5', Firmware Update object
Value: 0÷65535
:
select object range
<objectInstanceID>
integer
N/A
select object Instance identifier for the query
Value: 0÷65535
:
object Instance identifier range
<resourceID>
integer
N/A
select resource identifier
Value: 0÷65535
:
resource identifier range
<resourceInstanceID>
integer
N/A
selects the resource instance identifier
Value: 0÷65535
:
resource instance identifier range
The command returns an ERROR if the selected resource is not executable.
AT#LWM2ME?
Read command return OK code
Page 32
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
AT#LWM2ME=?
Test command reports the range for parameters
Page 33
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.7. AT#LWM2MW - LWM2M Client Resource Writing

This set command selects the parameters for the write operation on the lwm2m agent, it requires the correspondent lwm2m agent enabled and working.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
Auto
No - 2
AT#LWM2MW=<agentInstance>,<objectID>,<objectInstanceID>,<resourceID>, <resourceInstanceID>,<value>
Parameters:
Name
Type
Default
Description
<agentInstance>
integer
0
selects the lwm2m instance shown below
Values:
0 : Telit agent
1÷4 : reserved for future use
<objectID>
integer
N/A
selects the object identifier to be selected. The following objects could not be accessed by the command:
'0', Security object
'1', Server object
'2', Access Control object
'5', Firmware Update object
Value: 0÷65535
:
object identifier range
<objectInstanceID>
integer
N/A
selects the object Instance identifier for the query
Value: 0÷65535
:
object Instance identifier range
<resourceID>
integer
N/A
selects the resource identifier
Value: 0÷65535
:
resource identifier range
<resourceInstanceID>
integer
N/A
selects the resource instance identifier
Value: 0÷65535
:
resource instance identifier range
<value>
mixed
-
data to be written in the selected node. Data type should be chosen according to the resource data type.
The command returns an ERROR if the selected resource is not writable.
Page 34
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
AT#LWM2MW? Read command return OK code
AT#LWM2MW=?
Test command reports the range for parameters.
Page 35
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.8. AT#LWM2MSTS - LWM2STS Bootstrap Server

This command selects the server that will be used at the next module's reboot. It could be used to restore the module in case of mismatch between client and server info (i.e.: like PSK key or identity). The command requires the correspondent lwm2m agent enabled and working.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
Auto
No - 2
AT#LWM2MSTS=<agentInstance>[,<serverURI>[,<URI>[,<isBootstrapServer>]]]
Parameters:
Name
Type
Default
Description
<agentInstance>
integer
0
selects the lwm2m instance shown below. Issuing the command with only the
<agentInstance> parameter will reset a formerly set server, restoring the condition to the factory default.
Values:
0 : Telit agent
1÷2 : reserved for future use
<serverURI>
integer
-
the server that will be used by the module at the next client reboot. Entries from:
0 to 9 reserved for Telit's agent
10 to 19 reserved
20 to 29 reserved
The correspondence table between <serverURI> parameter and server URI is shown in Additional info. <URI>
string
-
URI
<isBootstrapServer>
integer
0
selects if the requested server is a bootstrap.
Values:
0 : the specified server is not a bootstrap server
1 : the specified server is a bootstrap server
Additional info:
Correspondence table between <serverURI> parameter and server URI.
<serverURI> server URI
Note
0
reserved
for internal use
10
"coaps://ddocdpboot.do.motive.com:5684"
Bootstrap server
11
"coaps://ddocdp.do.motive.com:5684"
DM server
12
"coap://ddocdp.do.motive.com:5683"
DM server
Page 36
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
20
"coaps://xattmpct.xdev.motive.com:5684"
Bootstrap server
999
customized server URI entry
/
<serverURI> special value '999' allows the user to insert a customized server string; this string should start with "coap://" or with "coaps://" sbu-strings and may or not contain the indicated port. In case the port is not indicated, the coap(s) required service selects the proper default port.
The servers list is not constrained in any way to any customizations; therefore, each entry is available to every agent.
AT#LWM2MSTS? Read command returns OK result code.
AT#LWM2MSTS=?
Test command returns OK result code.
Page 37
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.9. AT#LWM2MSET - Set LwM2M Whitelisted Resource

This set command sets a user defined value to the specified resource, if whitelisted.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
Auto
No - 2
AT#LWM2MSET=<type>,<objectID>,<objectInstanceID>,<resourceID>,<resourceInstanceID>, <value>
Parameters:
Name
Type
Default
Description
<type>
integer
N/A
the data type to be inserted
Values:
0 : Integer type
1 : Float type
2 : String type
3 : Opaque (inserted in HEX format)
<objectID>
integer
N/A
select object identifier
Value: 0÷65535
:
object identifier range
<objectInstanceID>
integer
N/A
select object instance identifier
Value: 0÷65535
:
object instance identifier range
<resourceID>
integer
N/A
select resource identifier
Value: 0÷65535
:
resource identifier range
<resourceInstanceID>
integer
N/A
select resource instance identifier
Value: 0÷65535
:
resource instance identifier range
<value>
mixed
-
the value to be associated to the specified resource, see Additional info section.
Additional info:
<value> data could assume the following values, according to the specified <type>
Name
Type
Default
Description
<value>
integer
N/A
integer values
Values:
Page 38
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
-2147483648÷2147483647
:
values range for integers
0,1 : values range for booleans
<value>
mixed
-
float values are accepted in positive and negative format, according to the proper float notation
<value>
string
-
string values
<value>
hex
-
opaque values, introduced by the hexadecimal representation
This command only works on whitelisted resources and objects. Currently, the whitelist is:
URI
Name
Data Type
3,0,6,0
Device Object, Available Power Sources
Integer
3,0,7,0
Device Object, Power Source Voltage
Integer
3,0,8,0
Device Object, Power Source Current
Integer
3,0,9,0
Device Object, Battery level
Integer
3,0,17,0
Device Object, Device Type
String
3,0,20,0
Device Object, Battery Status
Integer
In addition, all the "read-only" resources dynamically created by #LWM2MNEWINST command will be automatically whitelisted.
The command #LWM2MSET provides to the user the full control of the resource, aside from the resource type, therefore the command allows writing values outside the specified range.
AT#LWM2MSET? Read command returns OK code.
AT#LWM2MSET=?
Test command reports the supported range of values for the <type> parameters.
Page 39
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.10. AT#LWM2MNEWINST - Create a New Object Instance

This command can be used to create dynamically the new <objectInstanceID> of the specified <objectID>.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
Auto
No - 2
AT#LWM2MNEWINST=<agentInstance>,<objectID>,<objectInstanceID>
Execution command allows the user to create dynamically the <objectInstanceID> of the specified <objectID>. When succeed, the newly created <objectInstanceID> will have all the resources filled with default values. The user shall populate them properly, by using the #LWM2MW command for writable resources, or by the #LWM2MSET command for non-writable resources.
Parameters:
Name
Type
Default
Description
<agentInstance>
integer
0
selects the lwm2m instance shown below.
Value: 0 : Telit client
<objectID>
integer
N/A
object identifier
<objectID> value 65535 is reserved
only <objectID> starting from value 7 can
be used to dynamically create objects
Value: 7÷65534
:
object identifier range
<objectInstanceID>
integer
N/A
object instance identifier to be created.
<objectInstanceID> value 65535 is reserved
Value: 0÷65534
:
object instance identifier range.
AT#LWM2MNEWINST? Read command returns OK code.
AT#LWM2MNEWINST=?
Test command reports the supported range of values for the parameters.
Page 40
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.11. AT#LWM2MGET - Get LwM2M Whitelisted Resource

This command can be used to get a user defined value from a "whitelisted" resource.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
Auto
No - 2
AT#LWM2MGET=<type>,<objectID>,<objectInstanceID>,<resourceID>,<resourceInstanceID>
Execution command gets a user defined value to the specified resource, if URI is whitelisted; error otherwise.
Parameters:
Name
Type
Default
Description
<type>
integer
N/A
data type to be inserted
Values:
0 : Integer type
1 : Float type
2 : String type
3 : Opaque (inserted in HEX format)
<objectID>
integer
N/A
object identifier
Value: 0÷65535
:
object identifier range
<objectInstanceID>
integer
N/A
object instance identifier
Value: 0÷65535
:
object instance identifier range
<resourceID>
integer
N/A
resource identifier
Value: 0÷65535
:
resource identifier range
<resourceInstanceID>
integer
N/A
resource instance identifier
Value: 0÷65535
:
resource instance identifier range
This command only works on whitelisted resources and objects. For the object whitelist, please refer to #LWM2MSET command.
AT#LWM2MGET?
Read command returns OK code.
Page 41
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
AT#LWM2MGET=?
Test command reports the supported range of values for the parameters.
Page 42
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.12. AT#LWM2MFOTACFG - LWM2M Client Fota Management

This set command selects the FOTA mode that will be applied to the specified agent. The user will be able to enable the ACK request for any of the FOTA operations (delta download, delta apply for the software update, both and none of them).
After the FOTA mode has been configured, an URC is issued each time the client needs the ACK to continue with the required operation. Every URC emitted should be acknowledged (and authorized) with
#LWM2MFOTAACK command.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
Auto
No - 2
AT#LWM2MFOTACFG=<agentInstance>,<mode>
Parameters:
Name
Type
Default
Description
<agentInstance>
integer
0
selects the lwm2m instance shown below
Values:
0 : Telit agent
1÷4 : reserved for future use
<mode>
integer
0
select the FOTA mode
Values:
0 : Normal mode, no ACK required
1 : ACK required for delta file downloading
2 : ACK required for delta application for the software upgrade
3
:
ACK required for both delta download and delta update application
Any operation that requires the ACK to proceed will be automatically applied after a timeout of 1 week (in case of ACK not sent).
FOTA configuration mode is persistent to the module power cycle.
FOTA configuration mode is persistent to the factory reset and to the #LWM2MSTS command.
URC are emitted, according to the FOTA mode set, to allow the user to identify the operation that has triggered it. URC are issued in the format:
#LWM2MFOTARING: <agentInstance>,"DOWNLOAD" #LWM2MFOTARING: <agentInstance>,"UPDATE"
The action that should be performed (either download or update) will be applied in a time ranging from a few seconds up to a couple of minutes.
AT#LWM2MFOTACFG?
Read command return OK code
Page 43
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
AT#LWM2MFOTACFG=?
Test command reports the range for parameters
Page 44
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.13. AT#LWM2MFOTAACK - Ack for Telit LwM2M Agent FOTA Operation Confirmation

This command sends an ACK to the LwM2M Client to authorize the FOTA operation required to the specified client.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
Auto
No - 2
AT#LWM2MFOTAACK=<agentInstance>,<action>
if the <mode> set with #LWM2MFOTACFG command is not 0 (default), the Telit LwM2M client requires an ACK to performs its operations on the dedicated data context.
Parameters:
Name
Type
Default
Description
<agentInstance>
integer
0
selects the lwm2m instance shown below
Values:
0 : Telit agent
1÷4 : reserved for future use
<action>
integer
1
acknowledge to the FOTA required operation
Value: 1 : action is required
The action that should be performed (either download or update) will be applied in a time ranging from a few seconds up to a couple of minutes.
AT#LWM2MFOTAACK?
Not supported
AT#LWM2MFOTAACK=?
Test command reports the supported range of values for all the parameters.
Page 45
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.14. AT#LWM2MINJKEYS - LWM2M Store or Delete Credentials

This command stores or deletes security credentials: ep name, identity and secret key. The new credentials will take effect after next reboot leading to a new server connection with the new credentials.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
Auto
No - 2
AT#LWM2MINJKEYS=<agentInstance>,<mode>,<epName>,<identity>,<secretKey>
Parameters:
Name
Type
Default
Description
<agentInstance>
integer
0
selects the lwm2m instance shown below
Values:
0 : Telit agent
1÷4 : reserved for future use
<mode>
integer
N/A
defines the operation to be done
Values:
0 : delete ep name, identity, secret key files.
1 : create the key files specified
2 : delete ep name file
3 : delete identity & secret key files
<epName>
string
-
ep name injected. String length range: 0...64
<identity>
string
-
Identity injected. String length range: 0...64
<secretKey>
string
-
secret key injected. String length range: 0...64
The command returns an ERROR if <identity>, <secretKey> are not both present. The strings <epName>, <identity> and <secretKey> could be used in the AT command with or without the quotation marks.
AT#LWM2MINJKEYS? Read command return OK code.
AT#LWM2MINJKEYS=?
Test command return OK code.
Page 46
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.15. AT#LWM2MNFYACKURI - Manage URIs for URC Reporting

This command can be used to remove/add/list the URIs of the resources for issuing an URC at reception of an Ack sent from a server that receives a LWM2M Notify for that resource. The issuing of an URC for the resources added to this list is enabled by the #LWM2MNFYACKENA command. If the ACK fails to be properly received, it will be reported on the URC.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
No
No - 2
AT#LWM2MNFYACKURI=<agentInstanceID>,<operation>,<objectID>,<objectInstanceID>, <resourceID>
By inserting an <objectID>,<objectInstanceID>,<resourceID> URI in the list with <operation> in add mode, each time a LWM2M Notify Ack is received for that resource, the user - if the issuing of the URCs has been enabled with #LWM2MNFYACKENA - receives an URC reporting the URI path of the resource in the format:
#LWM2MNFYACK: <agentInstanceID>,<ShortServerID>,"/<objectID>/<objectInstanceID>/ <resourceID>", "ACK" (NACK)
(Whether the ACK has been properly received or not received at all). Parameters:
Name
Type
Default
Description
<agentInstanceID>
integer
0
selects the lwm2m instance shown below
Values:
0 : Telit agent
1÷4 : reserved for future use
<operation>
integer
N/A
remove/add/list the URI
Values:
0 : remove URI
1 : add URI
2 : list URIs, see Additional info section
<objectID>
integer
N/A
selects the object identifier of the URI
Value: 0÷65535
:
object Instance identifier range
<objectInstanceID>
integer
N/A
selects the object Instance identifier of the URI
Value: 0÷65535
:
object Instance identifier range
<resourceID>
integer
N/A
selects the resource identifier of the URI
Value: 0÷65535
:
resource identifier range
Additional info:
Page 47
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
AT#LWM2MNFYACKURI=<agentInstanceID>,2 reports the list of currently supported URIs, in the format:
#LWM2MNFYACKURI: "/<objectID1>/<objectInstanceID1>/<resourceID1>" #LWM2MNFYACKURI: "/<objectID2>/<objectInstanceID2>/<resourceID2>" ...
The URI are listed according to their insertion in the list.
The list for Notify Ack is limited to 6 entries for each <agentInstanceID>. After that number, it is not possible to add any further URI unless another URI already present in list is removed.
The list and the enabling status are not persistent to a power-cycle.
AT#LWM2MNFYACKURI? Read command returns OK
AT#LWM2MNFYACKURI=?
Test command reports the supported range of values for the parameters.
Page 48
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.16. AT#LWM2MNFYACKENA - Control URC Reporting

This command can be used to disable/enable/read the status of the URC reporting at reception of an Ack sent from a server that receives a LWM2M Notify, for a resource whose URI has been added to the list managed by the #LWM2MNFYACKURI command. If the ACK fails to be properly received, it will be reported on the URC.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
No
No - 2
AT#LWM2MNFYACKENA=<agentInstanceID>,<action>
By enabling the issuing of the URCs, each time a LWM2M Notify Ack is received for a resource, the user - if the URI of that resource has been added with #LWM2MNFYACKURI - receives an URC reporting the URI path of the resource in the format:
#LWM2MNFYACK: <agentInstanceID>,<ShortServerID>,"/<objectID>/<objectInstanceID>/ <resourceID>","ACK" ("NACK")
(Whether the ACK has been properly received or not received at all) Parameters:
Name
Type
Default
Description
<agentInstanceID>
integer
N/A
selects the lwm2m instance shown below
Values:
0 : Telit agent
1÷4 : reserved for future use
<action>
integer
N/A
remove/add/list the URI
Values:
0 : disable URC reporting
1 : enable URC reporting
2 : read URC reporting status, see Additional info section
Additional info:
AT#LWM2MFYACKENA=<agentInstanceID>,2 reports the current status for the selected <agentInstanceID> in the following format:
LWM2MNFYACKENA: <agentInstanceID>,<status>
The list for Notify Ack is limited to 6 entries for each <agentInstanceID>. After that number, it is not possible to add any further URI unless another URI already present in list is removed.
The list and the enabling status are not persistent to a power-cycle.
Page 49
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
AT#LWM2MNFYACKENA? Read command returns OK
AT#LWM2MNFYACKENA=?
Test command reports the supported range of values for the parameters.
Page 50
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

3.1.17. AT#LWM2MEXIST - Command for Detecting an Agent/Specific URI Existence

This command allows the end-user to query the module in order to discover if a given agent or a given agent and URI path combination exist. URI should not be filled entirely; in this case the command returns the existence or not of the URI inserted.
SIM Presence
Setting saved
Can be aborted
MAX timeout
SELINT
Required
No
No - 2
AT#LWM2MEXIST=<agentInstance>[,<objectNumber>[,<objectInstanceNumber>[,<resourceNum ber>[,<resourceInstanceNumber>]]]]
Parameters:
Name
Type
Default
Description
<agentInstance>
integer
0
selects the lwm2m instance shown below (other values for future purposes).
Values:
0 : Telit agent
1÷2 : reserved for future use
<objectNumber>
integer
-
selects the object number to be selected.
<objectInstanceNumber>
integer
-
selects the object Instance for the query
<resourceNumber>
integer
-
selects the resource number
<resourceInstanceNumber>
integer
-
selects the resource instance number
The #LWM2MEXIST command returns OK if the given agent and URI exist. It returns an error in case it does not. The user should use +CMEE=2 command to know exactly what is not existent. List of possible errors:
+CME ERROR:
Meaning
"Invalid agent"
the given agent does not exist
"Invalid URI"
the given agent exists, but the URI does not exist
"Invalid args"
the given parameters are invalid
"Internal Error"
LwM2M client internal error
In case an object is defined but it has no valid instances declared (such as in case of dynamic objects without any explicitly declared instance), the object is present.
AT#LWM2MEXIST? Read command return OK code
AT#LWM2MEXIST=?
Test command reports the supported range of values for all the parameters.
Page 51
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
#LWM2MEXIST command examples:
The URI exists
AT#LWM2MEXIST=0,33211,0,0,0 OK
AT#LWM2MEXIST=0,11,1 OK
The URI does not exist
AT#LWM2MEXIST=0,33211,10,0,0 ERROR
AT+CMEE=2 OK
AT#LWM2MEXIST=0,33211,10,0,0 +CME ERROR: Invalid URI
the agent does not exist
AT#LWM2MEXIST=3 +CME ERROR: Invalid agent
Page 52
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

4. LIST OF ACRONYMS

Acronym
Meaning
ARFCN
Absolute Radio Frequency Channel Number
AT
Attention command
BA
BCCH Allocation
BCCH
Broadcast Control Channel
CA
Cell Allocation
CBM
Cell Broadcast Message
CBS
Cell Broadcast Service
CCM
Current Call Meter
CLIR
Calling Line Identification Restriction
CTS
Clear To Send
CUG
Closed User Group
DCD
Data Carrier Detect
DCE
Data Communication Equipment
DCS
Digital Cellular System
DGPS
Differential GPS, the use of GPS measurements, which are differentially corrected
DNS
Domain Name System
DSR
Data Set Ready
DTE
Data Terminal Equipment
DTMF
Dual Tone Multi Frequency
DTR
Data Terminal Ready
GGA
GPS Fix data
GLL
Geographic Position – Latitude/Longitude
GLONASS
Global positioning system maintained by the Russian Space Forces
GMT
Greenwich Mean Time
GNSS
Any single or combined satellite navigation system (GPS, GLONASS and combined GPS/GLONASS)
GPRS
Global Packet Radio Service
GPS
Global Positioning System
GSA
GPS DOP and Active satellites
GSM
Global System Mobile
GSV
GPS satellites in view
HDLC
High Level Data Link Control
HDOP
Horizontal Dilution of Precision
IMEI
International Mobile Equipment Identity
IMSI
International Mobile Subscriber Identity
IP
Internet Protocol
IRA
International Reference Alphabet
IWF
Interworking Function
ME
Mobile Equipment
MO
Mobile Originated
MT
either Mobile Terminated or Mobile Terminal
NMEA
National Marine Electronics Association
NVM
Non-Volatile Memory
PCS
Personal Communication Service
PDP
Packet Data Protocol
PDU
Packet Data Unit
PIN
Personal Identification Number
PPP
Point to Point Protocol
PUK
Pin Unblocking Code
RLP
Radio Link Protocol
RMC
Recommended minimum Specific data
RTS
Request To Send
SAP
SIM Access Profile
SCA
Service Center Address
SMS
Short Message Service
SMSC
Short Message Service Center
SMTP
Simple Mail Transport Protocol
TA
Terminal Adapter
TCP
Transmission Control Protocol
TE
Terminal Equipment
UDP
User Datagram Protocol
USSD
Unstructured Supplementary Service Data
UTC
Coordinated Universal Time
VDOP
Vertical dilution of precision
VTG
Course over ground and ground speed
WAAS
Wide Area Augmentation System
Page 53
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)

5. DOCUMENT HISTORY

Revision
Date
Changes
0
2019-02-12
First emission
1
2019-04-01
Updated overall document Added AT#LWM2MACK, AT#LWM2MMON, AT#LWM2MNEWINST
2
2019-10-14
Changed document title from "LwM2M AT Commands Reference Guide" to "LWM2M AT Commands Reference Guide (ME910C1/ NE910C1/ML865C1)"
Updated: Applicability Table and commands descriptions. Added: new chapters.
3
2020-04-21
The Applicability Table has been updated to 30.00.xx8 / M0B.xx0004 Added Commands descriptions: #LWM2MNFYACKENA,
#LWM2MNFYACKURI, #LWM2MFOTACFG, #LWM2MFOTAACK, #LWM2MINJKEYS, #LWM2MEXIST
Updated Command descriptions: #LWM2MENA, #LWM2MMON, #LWM2MNEWINST, #LWM2MSTAT, #LWM2MSTS
Page 54
LWM2M AT Commands Reference Guide (ME910C1/NE910C1/ML865C1)
80529ST10974A Rev. 3 Page 54 of 54 2020-04-21
sss
Mod. 0809 2016-08 Rev.7
Loading...