Telit LE910Cx Module User Guide

Document preview
File info: application/pdf · 179 pages · 4.03MB

1VV0301556 LE910Cx SW Guide r10

LE910Cx

FUNCTIONAL DESCRIPTION. 18. General Functionality and Main Features. 18. Application System Overview. 19. 4.2.1. Memory Configuration.

PDF - 1VV0301556 LE910Cx SW Guide r10

This document introduces Telit LE910Cx module as well as present possible and recommended Software solutions useful for the development of a product based on the LE910Cx module. All the...

Original Document

If the viewer doesn’t load, open the PDF directly.

Extracted Text

LE910Cx
Software User Guide
1VV0301556 Rev. 10 � 2021-06-04
Telit Technical Documentation

LE910Cx Software User Guide

APPLICABILITY TABLE
LE910C1-NA LE910C1-NS LE910CX-NF LE910CX-EU LE910CX-AP LE910CX-LA LE910C4-CN LE910C1-SV LE910C1-SA LE910C1-ST LE910C1-EUX LE910C1-SAX LE910C1-SVX LE910Cx-WWX

PRODUCTS

1VV0301556 Rev. 10

Page 2 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

CONTENTS

APPLICABILITY TABLE

CONTENTS

1.

INTRODUCTION

Scope

Audience

Contact Information, Support

Symbol Conventions

Related Documents

2.

LE910CX VARIANTS

3.

HIGH LEVEL SW ARCHITECTURE

Architecture Based on Linux

Architecture Based on ThreadX

4.
4.2.1. 4.2.1.1. 4.2.1.2. 4.2.2. 4.2.2.1. 4.2.2.2. 4.2.3. 4.2.3.1. 4.2.4. 4.2.5. 4.2.5.1. 4.2.5.2. 4.2.6. 4.2.7. 4.2.8.

FUNCTIONAL DESCRIPTION General Functionality and Main Features Application System Overview Memory Configuration LE TX(ThreadX) Partition Layout LE TX(ThreadX) RAM Memory LE(Linux) Customer Application � Storage & Configuration Power Up Time LE TX(ThreadX) Power Up Sequence Location Subsystem Application Development Environment

1VV0301556 Rev. 10

Page 3 of 179
Not Subject to NDA

2
3
11 11 11 12 13 13
15
16 16 17
18 18 19 20 20 20 20 20 23 25 25 25 26 26 26 27 27 27
2021-06-04

LE910Cx Software User Guide
4.2.9. Random Number Generator 4.2.10. Wake up Events 4.2.10.1. Wake up Event Examples
CFUN=0: Call, SMS, #QSS, +CALA CFUN=4: #QSS, +CALA CFUN=5: Call, SMS, +CALA 4.2.11. SPI 4.2.11.1. LE (Linux) 4.2.11.2. TX (ThreadX) 4.2.12. GPIO 4.2.13. Serial Interfaces 4.2.13.1. LE (Linux) Apps to External MCU Apps to Modem 4.2.14. Audio 4.2.14.1. LE 4.2.14.2. TX (ThreadX) 4.2.15. UART 4.2.15.1. LE (Linux) 4.2.16. USB Interface 4.2.16.1. LE (Linux) 4.2.16.2. TX (ThreadX) 4.2.17. HSIC Interface 4.2.18. Ethernet Interface 4.2.19. SD/MMC Interface 4.2.20. RTC 4.2.21. Time Services 4.2.21.1. Coordinated Universal Time (UTC) 4.2.21.2. Time Zones 4.2.21.3. Daylight Saving Time (DST) 4.2.21.4. Time Update 4.2.21.5. System Time Base

1VV0301556 Rev. 10

Page 4 of 179
Not Subject to NDA

28 28 30 30 33 35 40 40 41 41 42 42 42 43 44 44 47 47 48 48 48 50 51 52 52 52 53 53 53 54 54 54
2021-06-04

LE910Cx Software User Guide

4.2.22. Data Connection

55

4.2.22.1. QCMAP_CLI

55

4.2.23. WatchDog

55

4.2.23.1. Hardware Watchdog Characteristics

56

4.2.23.2. Watchdog Connectivity

57

4.2.23.3. A7 Apps Processor Watchdogs

58

4.2.23.4. MPSS Watchdog

59

4.2.24. Power Management

60

4.2.25. Performance Build(Linux)

63

Basic Operations

65

4.3.1. Command Syntax

65

4.3.2. Command Response Timeout

65

4.3.3. Basic AT Commands

68

4.3.3.1. AT Error Report Format

68

4.3.4. RAT and Band Selection

68

4.3.4.1. RAT Selection

68

4.3.4.2. Band Selection

69

4.3.5. SIM/USIM Management

70

4.3.5.1. SIM Presence and PIN Request

70

4.3.5.2. Enter PIN Code

70

4.3.5.3. Enter PUK Code

71

4.3.5.4. SIM Status

71

4.3.5.5. SIM Detection Mode

72

4.3.5.6. SIM/USIM Access File

75

4.3.5.7. MSISDN

75

4.3.5.8. Preferred Operator List

76

4.3.6. Network Checking

78

4.3.6.1. Network Survey

78

4.3.6.2. BCCH Survey

79

4.3.7. Network Information

79

4.3.7.1. Network Status

79

Circuit Service Network Registration Status in UTRAN/E-

UTRAN

80

1VV0301556 Rev. 10

Page 5 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Packet Service Network Registration Status in UTRAN 80

Packet Service Network Registration Status in E-UTRAN 81

4.3.8. Network Operator Identification

82

4.3.9. Signal Strength & Quality

83

4.3.10. Extended Signal Quality

84

4.3.11. Fast Network Status Check

85

4.3.11.1. 3G Network

87

4.3.11.2. 4G Network

88

4.3.12. Voice Call Establishment � Originate

88

4.3.12.1. Dialing a Phone Number

89

4.3.12.2. Disconnect a Call

89

4.3.12.3. Answering an Incoming Call

89

4.3.12.4. Set Microphone Mute

89

Advanced Operations

90

4.4.1. Call Management

90

4.4.1.1. Identifying the Call Type

90

4.4.1.2. Identify the Caller

91

4.4.1.3. Calling Line Indication

92

CLIR Service Status

92

Restrict/Allow Caller Line ID Indication

93

4.4.1.4. Call Barring Control

93

Lock/Unlock the Module

94

Call Barring Service Status

94

Bar/Unbar All Incoming Calls

96

Bar/Unbar Incoming Calls in International Roaming

97

Bar/Unbar All Outgoing Calls

98

Bar/Unbar All Outgoing International Calls

99

Bar/Unbar All Outgoing International Calls Except to Home

Country

100

Unbar All Calls

101

4.4.2. DTMF Tones

103

4.4.2.1. DTMF Transmission on Uplink

103

4.4.3. SMS Management

103

1VV0301556 Rev. 10

Page 6 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

4.4.3.1. Select SMS Format Type

103

Set Text Mode Parameters

104

Character Sets

106

4.4.3.1.2.1. IRA Character Set

107

4.4.3.1.2.2. UCS2 Character Set

108

4.4.3.2. Read SMSC Number

108

4.4.3.3. Set SMSC Number

109

4.4.3.4. Send a SMS

109

4.4.3.5. Select/Check SMS Storage Type

112

4.4.3.6. Store a SMS

113

4.4.3.7. Send a Stored SMS

114

4.4.3.8. Delete an SMS

115

4.4.3.9. Read an SMS

116

4.4.3.10. SMS Status

116

4.4.3.11. Cell Broadcast Service

118

4.4.4. GNSS Management

119

4.4.4.1. Introduction

119

4.4.4.2. LE910Cx Serial Ports

120

4.4.4.3. WGS84

120

4.4.4.4. NMEA 0183

120

GGA � Global Position System Fixed Data

121

GLL - Geographic Position - Latitude/Longitude

122

GSA - GNSS DOP and Active Satellites

123

GSV - GNSS Satellites in View

124

RMC - Recommended Minimum Specific GNSS Data

125

VTG - Course over Ground and Ground Speed

126

GNS - GNSS Fix Data

127

GRS - Range Residuals

128

DTM - Datum Reference Information

129

4.4.4.5. Checking GNSS Device Functionality

129

4.4.4.6. Controlling GNSS Receiver

130

Power Control of GNSS Receiver

130

1VV0301556 Rev. 10

Page 7 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

4.5.1. 4.5.1.1. 4.5.1.2. 4.5.1.3. 4.5.2. 4.5.2.1. 4.5.2.2. 4.5.2.3.
4.5.2.4.
4.5.2.5.
4.5.3. 4.5.3.1. 4.5.3.2.
4.5.3.3.

GNSS Reset GNSS Parameters Save Restore GNSS Parameters Read Acquired GNSS Position Packet Switched Data Operations USB Tethering Connection Dial-Up Networking Standard ECM/RNDIS MBIM/RmNet Socket AT Commands Configuring Embedded TCP/IP Stack Activating PDP Context Online Mode Operation Open Socket Connection Resume Suspended Connection Close the Connection Command Mode Operation Open Socket Connection Send User Data Receive User Data Close the Connection Server Mode(Socket Listen) Operation Create Listen Socket Accept Incoming Connection Command Mode Operation SSL AT Commands Configuration Online Mode Operation Open Secure Socket Connection Exchanging User Data Close the Connection Command Mode Operation

1VV0301556 Rev. 10

Page 8 of 179
Not Subject to NDA

130 131 131 132 133 133 133 134 134 135 135 136 137 137 137 138 138 138 139 139 140 140 140 140 141 141 141 143 143 144 144 144
2021-06-04

LE910Cx Software User Guide

4.5.4. 4.5.4.1. 4.5.4.2. 4.5.4.3. 4.5.4.4. 4.5.5. 4.5.5.1. 4.5.5.2. 4.5.5.3.
4.5.5.4.
4.5.5.5. 4.5.6. 4.5.6.1. 4.5.6.2. 4.5.7. 4.5.7.1. 4.5.7.2. 4.5.7.3. 4.5.7.4. 4.5.8. 4.5.8.1.

Open Secure Socket Connection Send User Data Receive User Data Close the Connection HTTP AT Commands Configuration Query Request Receive FTP AT Commands Configuration Open Connection Online Mode Operation Uploading Appending Downloading Command Mode Operation Uploading Appending Downloading Close the Connection Email AT Commands Configuration Sending an Email IOT Platform AT Commands Connect to IOT Service API and AT Commands Disconnect from IOT Service IOT Platform AT Commands List Data Concurrency LE(Linux) Same PDN

1VV0301556 Rev. 10

Page 9 of 179
Not Subject to NDA

144 145 146 147 147 147 147 148 148 149 149 149 150 150 151 151 152 152 152 153 154 154 154 154 155 156 156 157 157 158 158 158
2021-06-04

LE910Cx Software User Guide

Different PDNs

159

4.5.8.2. TX(ThreadX)

159

Same PDN

159

Different PDNs

160

4.5.9. Maximum Number of PDN Contexts

160

5.

PERFORMANCE MEASUREMENTS(LINUX)

161

Interrupt Latencies

161

Memory Bandwidth & Latencies

162

6.

SERVICE AND FIRMWARE UPDATE

166

Firmware Update

166

6.1.1. TFI Update

166

6.1.2. XFP Update

167

7.

PRODUCT AND SAFETY INFORMATION

171

Copyrights and Other Notices

171

7.1.1. Copyrights

171

7.1.2. Computer Software Copyrights

171

Usage and Disclosure Restrictions

172

7.2.1. License Agreements

172

7.2.2. Copyrighted Materials

172

7.2.3. High Risk Materials

172

7.2.4. Trademarks

172

7.2.5. Third Party Rights

173

7.2.6. Waiwer of Liability

173

Safety Recommendations

173

8.

GLOSSARY

175

9.

DOCUMENT HISTORY

177

1VV0301556 Rev. 10

Page 10 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
1. INTRODUCTION
Scope
This document introduces Telit LE910Cx module as well as present possible and recommended Software solutions useful for the development of a product based on the LE910Cx module. All the features and solutions described in this document are applicable to all LE910Cx variants, where "LE910Cx" refers to the variants listed in the applicability table. If a specific feature is applicable to a specific product, it will be clearly highlighted.
Note: The description text "LE910Cx" refers to all modules listed in the Applicability Table.
All the basic functions of a wireless module will be considered in this document; for each one of them a valid hardware solution will be suggested and usually incorrect solutions and common errors to be avoided will be highlighted. This document cannot embrace every hardware solution or every product that may be designed. Avoiding invalid solutions must be considered as mandatory. Where the suggested hardware configurations are not to be considered mandatory, the information provided should be used as a guide and starting point for the proper development of the product with the Telit LE910Cx module.
Note: The integration of the GSM/GPRS/EGPRS/WCDMA/HSPA+/LTE LE910Cx cellular module within user application must be done according to the design rules described in this manual.
The information presented in this document is believed to be accurate and reliable. However, no responsibility is assumed by Telit Communication S.p.A. for its use, as well as any infringement of patents or other rights of third parties which may arise from its use. No license is granted by implication or otherwise under any patent rights of Telit Communication S.p.A. other than for circuitry embodied in Telit products. This document is subject to change without notice.
Audience
This document is intended for Telit customers, especially system integrators, about to implement their applications using the Telit LE910Cx module.

1VV0301556 Rev. 10

Page 11 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
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  TS-SRD@telit.com (for Short Range Devices)
Alternatively, use: https://www.telit.com/contact-us/
For detailed information about where you can buy the Telit modules or for recommendations on accessories and components visit: https://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 the user feedback on our information.

1VV0301556 Rev. 10

Page 12 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Symbol Conventions
Danger: This information MUST be followed, or catastrophic equipment failure or personal injury may occur.

Warning: Alerts the user on important steps about the module integration.

Note/Tip: Provides advice and suggestions that may be useful when integrating the module.

Electro-static Discharge: Notifies the user to take proper grounding precautions before handling the product.
Table 1: Symbol Conventions
All dates are in ISO 8601 format, i.e. YYYY-MM-DD.

Related Documents
 AT Commands Reference Guide, 80502ST10950A  Refer to the specific "Telit Product Description" document  Refer to the specific "Telit Hardware User Guide" document  ETSI GSM 07.07, 27.07  Telit EVB (Evaluation Board) User Guide, 1VV0301249  ETSI GSM 03.38, 23.038  Device Requirements AT&T, Document Number 13340  ITU-T Recommendation E.164  ETSI GSM 11.11, 51.011, 31.101, 31.102  ITU-T Recommendation V.24  ETSI GSM 11.14, 51.014

1VV0301556 Rev. 10

Page 13 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
 LE910Cx_Digital_Voice_Interface_Application_Note, 80000NT11246A  LE910Cx_Audio_over_USB_Application_Note, 80502NT11759A  ETSI GSM 27.005  IP Easy User Guide Application Note, 80000ST10028A  LE910Cx_Linux_device_driver_Application_Note, 80502NT11769A  uxfp User Guide, 1VV0301613

1VV0301556 Rev. 10

Page 14 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

2. LE910CX VARIANTS
LE910Cx has several variants, but it is divided into 2 types according to the basic operating system. One is Linux base and the other is ThreadX.
Below is the basic OS for each variant.

Variants

OS

LE910C1-NA

Linux

LE910C1-NS

Linux

LE910Cx-NF

Linux

LE910Cx-EU

Linux

LE910Cx-AP

Linux

LE910Cx-LA

Linux

LE910C4-CN

Linux

LE910C1-SV

Linux

LE910C1-SA

Linux

LE910C1-ST

Linux

LE910C1-EUX

ThreadX

LE910C1-SAX

ThreadX

LE910C1-SVX

ThreadX

LE910Cx-WWX
Table 2: Basic OS for Each Variant

ThreadX

Therefore, when referring to the document, please check for differences depending on the OS. Unless otherwise specified, the descriptions are commonly applicable to both Linux and ThreadX variants.

1VV0301556 Rev. 10

Page 15 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

3. HIGH LEVEL SW ARCHITECTURE

Architecture Based on Linux

RPM Power Mgr

Resource Mgr

Register IF

SBL

SPM

AVS

Drivers

App Core

USB 2.0

QMI

SMD\SMEM

SDIO UART
I2C SPI SBL

PBL (boot rom)

AUDIO

ACDB

CSD

I2S

Drivers Cor eB SP
CLK SIO SMD UART Data mover
Mis c UIM

UART

SPMI

SIM card

PMIC

Services Cor eB SP
Diag Ti me rs INTC
EFS Sleep
QURT RTOS REX emulation
POSIX

Modem subsystem QMI services

NAS

QOS

WDS

DM S

PBM

IM S

GPS

Data serv ices

MM CP

MM OC

CM

SD

MM CP UMTS/GERAN/TDSCDMA NAS

LTE NAS

Protocol Stack (Access stratum)

1X

GERAN

UMTS

TD SCDM A

LTE

HD R

LPASS

AFE

CVD

Encoder

I2S

PP

/

De co der

RF Driver

FW Common (CRM, FWS)

GERAN UMTS

LTE

TD SCDM A

WTR

NAV core

Modem HW

Figure 1 : General System Architecture

Common PHY RX FE Link Mg r
TxC Link
MCPM

1VV0301556 Rev. 10

Page 16 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Figure 2: Linux Kernel components
Architecture Based on ThreadX

Figure 3: Architecture Based on ThreadX

1VV0301556 Rev. 10

Page 17 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4. FUNCTIONAL DESCRIPTION
General Functionality and Main Features
The LE910Cx family of cellular modules features LTE and multi-RAT modem together with an on-chip powerful application processor and a rich set of interfaces. The main functions and features are listed below:
 Multi RAT cellular modem for voice and data communication o LTE FDD/TDD Cat4 (150/50Mbps DL/UL). o GSM/GPRS/EDGE o WCDMA up to DC HSPA+ Rel. 9 o Support for SIM profile switching
 Digital audio and analog audio codec  Application processor to run customer application code
o 1.3 GHz Cortex-A7 with Linux version 3.18 o Flash + DDR are large enough to allow for customer's own software
applications  High speed serial interfaces:
o USB, HSIC  Tools for firmware update (TFI)  Stream download protocol (SDL)  FOTA (Legacy AT FOTA)  SGMII (optional) for external Ethernet transceiver  SDIO for (optional) external Wi-Fi transceiver
Note: Small memory of Linux products, ThreadX products don't support Wi-Fi.

Note: ThreadX products don't support HSIC, SGMII and SDIO.

1VV0301556 Rev. 10

Page 18 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Application System Overview
The Application Processor is a 32bit ARM Cortex-A7 up to 1.3 GHz running the Linux operating system. The following software is pre-integrated and runs on the application processor:
 32bit Cortex-A7@1.3GHz running the Linux kernel 3.18.  Telit Unified AT command set, backward compatible with LE920, which is the main
control interface to offer features from the variant not enabled to the application, with the following:
o Hayes standard AT command set o ETSI GSM 07.07 specific AT command and GPRS specific commands. o ETSI GSM 07.05 specific AT commands for SMS (Short Message Service)
and CBS (Cell Broadcast Service) o Control of pre-integrated Firmware Update Agent (Harman) o Antenna diagnostics  Firmware Over-The-Air (FOTA) update supporting selective update. Backward compatible with LE910.  Operator specific Device management client, backward compatible with LE910  SPI device driver for user space access of the SPI device, including slave to master interrupt, backward compatible with LE910  GPIO interrupts driver for user space to listen to interrupts on selected user GPIOs, backward compatible with LE910  2G/3G/4G and GNSS jamming detection  Audio subsystem, backward compatible with LE910 o PCM digital audio IO o Limited support for DTMF detection.  FTM support, backward compatible with LE910  Vocoder support and processing o GSM vocoders (EFR/HR/FR), all rates o AMR-NB, AMR-WB, all rates o VoLTE o Configurable noise suppressor, echo canceller and processing chain

1VV0301556 Rev. 10

Page 19 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
 Pre-integrated Wi-Fi driver via SDIO (QualcommA9377) o Wi-Fi can be controlled through AT command. See "AT Commands Reference Guide(80502ST10950A)"
Note: ThreadX products:  Do not support SDIO.  Do not support SPI interrupt from slave.

4.2.1. Memory Configuration
The LE910Cx memory configuration is as follows:
4.2.1.1. LE
 Extended memory: 512Mbyte Flash /256Mbyte DDR  Regular memory: 256Mbyte Flash /256Mbyte DDR  Small memory: 256Mbyte Flash /128Mbyte DDR
4.2.1.2. TX(ThreadX)
 128Mbyte Flash /128Mbyte DDR
4.2.2. Partition Layout
The below tables show the flash storage allocation on a partition basis. Note/: flash allocation size includes the UBI container overhead (usually at 15% of the partition) Partitions marked as Telit: These are specific partitions used by Telit

4.2.2.1. LE
 Extended Memory

sbl mibib telit

Partition name

1VV0301556 Rev. 10

Permission RO RO RO
Page 20 of 179
Not Subject to NDA

Partition size (MB) 1.25 1.25 3.25
2021-06-04

LE910Cx Software User Guide

Partition name

efs2

tz

telit

rpm

telit

aboot

telit

boot

telit

modem

telit

recovery

fota

recoveryfs

telit

telit
Customapps (0x77e0000 ~ 0x153e0000)
System (0x153e0000 ~ 0x20000000)

rootfs cachefs usrfs

Summary
Table 3: LE Extended Memory

Permission RO RO RO RO RO RO RO RO RO RO RO RO RO RO RO RO
RW RO RW RW

Partition size (MB) 12 1 1 0.5 0.5 1 1 11.75 0.625 57.875 0.375 11.75 0.5 10.25 0.5 3.5 220
172.125
512

Note: Available memory: about 180 MB is for customer application (custom apps partition)

1VV0301556 Rev. 10

Page 21 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

 Regular Memory

sbl mibib telit

Partition name

efs2 tz rpm

aboot boot

telit

modem telit

recovery

fota recoveryfs

telit

System (0x71e0000 ~ 0x10000000)

rootfs cachefs usrfs

Summary
Table 4: LE Regular Memory

Permission RO RO RO RO RO RO RO RO RO RO RO RO RO RO RO RO RW RW

Partition size (MB) 1.25 1.25 3.25 12 1 0.5 1 11.75 0.625 57.875 0.375 11.75 0.5 10.25 0.5
142.125
256

Note: Available memory: about 7 MB is for customer application

1VV0301556 Rev. 10

Page 22 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

 Small Memory

sbl mibib telit

Partition name

efs2 tz rpm

aboot boot

telit

modem telit

recovery

fota recoveryfs

telit

System (0x71e0000 ~ 0x10000000)

rootfs cachefs usrfs

Summary
Table 5: LE Small Memory

Permission RO RO RO RO RO RO RO RO RO RO RO RO RO RO RO RW RW RW

Partition size (MB) 1.25 1.25 3.25 12 1 0.5 1 11.75 0.625 47.875 0.375 11.75 0.5 20.25 0.5
142.125
256

4.2.2.2. TX(ThreadX)
Partition name SBL MIBIB Telit telit Telit

Permission RO RO RO RO RO

Partition size (MB) 1.25 1.25 2.75 5.5 0.5

1VV0301556 Rev. 10

Page 23 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Partition name EFS2 TZ telit DEVCFG APDP MSADP SEC MBA ACDB RPM telit QDSP APPS telit telit Cache_APPS Cache_ACDB misc sec Telit Telit EFS2APPS Summary Table 6: TX(ThreadX)

Permission RO RO RO RO RO RO RO RO RO RO RO RO RO RO RO RO RO RO RO RO RO RO

Partition size (MB) 12 2.25 2.25 0.375 0.375 0.5 0.25 0.5 0.5 0.375 0.375 47.25 7 7 25.875 0.25 0.25 0.25 0.25 1.25 2.125 5.5 128

1VV0301556 Rev. 10

Page 24 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.2.3. RAM Memory
4.2.3.1. LE(Linux)
 LE910Cx-NF/EU/AP/LA 256Mbyte DDR, of which ~60MB will be available for customers' application usage.
 LE910C1-SV/SA/ST 128Mbyte DDR, is not available for customers' application usage due to small memory. No Telit AppZone Linux support
4.2.4. Customer Application � Storage & Configuration
Using the Telit SDK, the customer application will be installed directly into the USRFS (/data is the mountpoint). The customer application can also be linked to the powerup process on predefined hookpoints:
 /data/oem_earlystart.sh � This is at order 38 of the rcS (S is for Single user scripts are run first)
 /data/oemstart.sh - This is at order 43 of the rc5 (5 is for multi-user scripts)  /data/oem_poststart.sh - This is at order 99 of the rc5 Telit root-fs is RO, so an application cannot be installed into the root-fs. The above method allows the application to run at powerup. The selection of one of the above methods for application installation should be made based on when the customer wants the application to run during powerup (early, normal and later). The above scripts should link to the application binary for execution (at least one of them). The installation method as well as build/installation tools should be covered by the Telit LE910C1 SDK document. The Configuration files are stored in three main areas: 1. Telit Linux RO FS. The configuration stored there (mainly in /and so on) cannot be
changed. 2. Telit RW USER FS (/data). The configuration stored there can be changed by the
customer application. Examples are hosts, iproute, wlan etc. Configuration stored there are persistent, that is written to the flash.

1VV0301556 Rev. 10

Page 25 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
3. Telit RW RAM disk (/var/run). This is a FS mounted on the RAM directly, that is. not persistent.
Examples are DNS, mobile AP and firewall configuration.
Customer applications are installed in the usrfs storage (/data). This is a RW mountpoint. The customer application will be automatically linked to the powerup process via predefined scripts in the /data:
 /data/oem_earlystart.sh � This is at order 38 of the rcS (S is for Single user scripts are run first)
 /data/oemstart.sh - This is at order 43 of the rc5 (5 is for multi-user scripts)  /data/oem_poststart.sh - This is at order 99 of the rc5 The above scripts must then be linked to any customer application that needs to automatically run during the powerup process. Note the order of the scripts, rcS scripts runs first on a Linux machine, rc5 script runs after (43 is first then 99).
Note: chapter 4.2.4 is valid only for LE models.
4.2.5. Power Up Time
4.2.5.1. LE
The following measurements were taken using a special perf build. Non-secured device:
1. Entering kernel: 0.712747 2. Entering user space: 0.742889 3. Entering customer application: 11.046918 4. Modem out of reset: 13.774010
4.2.5.2. TX(ThreadX)
1. AT On: about 9 seconds.

1VV0301556 Rev. 10

Page 26 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.2.6. Power Up Sequence
The following figure explains the LE910Cx powerup sequence.

Figure 4: LE910Cx Powerup Sequence
4.2.7. Location Subsystem
The following key features are offered by the Location subsystem:  Support for GPS, GLONASS, BeiDou/Compass Phase II, Galileo and QZSS  Supports following Satellite Based Augmentation Systems (SBAS): WAAS, EGNOS, MSAS (tracked for cross correlation improvement only)  Receiver Autonomous Integrity Monitoring (RAIM) & Fault Detection and Exclusion (FDE) support, internal in the receiver.  Support of assistance data (Ephemerides, location, time...) provided by customer application to ensure faster Time To First Fix (TTFF) through SUPL and LTO injection  Periodic pulse output for synchronization with the GPS system clock  NMEA-0183 output on USB
4.2.8. Application Development Environment
Please refer to the Telit AppZone Linux documentation in the link, below https://s3.amazonaws.com/iot-appzone.telit.com/LE910Cx-TX/25.30.222/index.html

1VV0301556 Rev. 10

Page 27 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Note: Telit AppZone Linux is not available on LE910C1-SA, LE910C1ST, LE910C1-SV products, which have low memory,128Mbyte DDR and there is no RAM space for customer application.
4.2.9. Random Number Generator
The LE910Cx RNG is based on FIPS-140-2 PRNG (aka hw_drbg), seeded with QC designed hw entropy unit consisting of the noise source of the ring oscillator (RO). There are several Linux devices to generate random numbers (under the /dev node):
1. hw_random � This is an HW random number generator, this is the preferred device to get random data from.
2. random � This is, in most cases, a SW random generator. The Linux kernel itself (on latest kernel versions >= msm-3.18) adds HW random data to /dev/random if randomness is not sufficient from SW RNG. Random will block if no sufficient randomness is built up.
3. urandom � This device does not have enough randomness and it is not recommended for use unless the quality of the RNG is a concern (this device will probably work faster).
The number of entropies used for the RNG can be checked, and modified, with the following sysfs: /sys/module/rng_core/parameters/current quality Max value is 1024. An example for reading random bytes from the hw_random:
Note: chapter 4.2.9 is valid only for LE(Linux) models.

4.2.10. Wake up Events
The Telit Modules provide a function that reduces the power consumption during the period when they are in IDLE state (waiting for a call), allowing for longer activity with a given battery capacity.
The power saving function can be configured in several modes according to the user's needs.

1VV0301556 Rev. 10

Page 28 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

According to the answer of the AT+CFUN=? Command, you can know the Power Saving Modes supported by the Telit Module, please refer to the AT Commands Reference Guide for more details. In power saving mode with CFUN=5, UART AT interface disabled. URC is not displayed and is stored in the buffer on UART AT interface. It flushed to DTE when the modem device exit power saving mode by <DTR=ON>.
AT#PSMRI=<duration time> must be configured as non-zero value. It enables RI with the specified time if URC event happened during power saving mode with CFUN=5.
The power saving function can be waked up in several event as follows:

CFUN=0

CFUN=4

CFUN=5

Wake up Events

Module enters NONCYCLIC SLEEP mode

Module performs network deregistration and SIM deactivation. TX and RX are disabled

The power saving is enabled. DTR is used to exit/enter power saving.

Unsolicited Result Code

The new mode depends on URC

The new mode depends on URC

AT#PSMRI must be configured as non-zero value to get URC event via RI.
The new mode depends on URC.

Incoming voice call

Incoming call is managed, RING is displayed. The N/A

Incoming data call(VoLTE) module exits power saving

state and enters CFUN=1

mode.

Incoming call is managed. RI toggle. DTR is used to exit/ enter power saving state in CFUN=5 mode

Incoming SMS AT+CNMI=0,0, ...

Incoming SMS is managed, URC is not N/A displayed. The module stays in power saving state in CFUN=0 mode.

Incoming SMS is managed, URC is not displayed. DTR is used to exit/enter power saving state in CFUN=5 mode.

Incoming SMS AT+CNMI=1,1, ...

Incoming SMS is

managed,

URC

is N/A

displayed. The module

exits power saving state

and enters CFUN=1 mode.

Incoming SMS is managed. DTR is used to exit/ enter power saving state in CFUN=5 mode. URC is displayed when modem device exit power saving mode

Incoming GPRS packet

CFUN=1

N/A

CFUN=5

RTC alarm

CFUN=1

CFUN=4

CFUN=5

RTS toggling

CFUN=1

N/A

N/A

Table 7: Wake-up events out of power-saving mode

1VV0301556 Rev. 10

Page 29 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Note: Since the RTS toggle event periodically checks the pin status in CFUN=0 mode, in the worst case, it may take up to around 1 second for the module to wake up. LE910C1-EU(4G+2G) does not allow power saving mode because HSIC configuration of LE910C1-EU(4G+2G) is the master mode. To support power saving mode, HSIC configuration must be disabled by #HSICEN=0 (Manual reboot is required) or please refer to section 4.2.17
4.2.10.1. Wake up Event Examples
CFUN=0: Call, SMS, #QSS, +CALA
Example 1 The wake-up event is an incoming call. Starting control line configuration, UART AT interface is enabled. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON Type in CFUN=0, the module enters NON-CYCLIC SLEEP mode. AT+CFUN=0 OK Here is the new control line configuration. The module is in power saving. <DSR=OFF>, RI=OFF, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=ON An incoming call is arrived. RING Here is the new control line configuration. The module is no longer in power saving. <DSR=ON>, RI=ON, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON RING Check the current CFUN. AT+CFUN? +CFUN: 1  the module is in full functionality mode OK RING

1VV0301556 Rev. 10

Page 30 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Hang up the call. ATH OK Here is the new control line configuration. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON
Example 2
The wake-up event is a SMS receiving.
Enable URC created by the SMS receiving. AT+CNMI=1,1,0,0,0 OK Starting control line configuration, UART AT interface is enabled. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON Type in CFUN=0, the module enters NON-CYCLIC SLEEP mode. AT+CFUN=0
OK Here is the new control line configuration. The module is in power saving. <DSR=OFF>, RI=OFF, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=ON
A SMS is arrived. +CMTI: "SM",17
Here is the new control line configuration. The module is no longer in power saving. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON Check the current CFUN. AT+CFUN? +CFUN: 1  the module is in full functionality mode
OK

Example 3
The wake-up event is the #QSS URC.
Starting control line configuration, UART AT interface is enabled. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON
Enable Query SIM Status URC. AT#QSS=1 OK

1VV0301556 Rev. 10

Page 31 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Type in CFUN=0, the module enters NON-CYCLIC SLEEP mode. AT+CFUN=0 OK

Here is the new control line configuration. The module is in power saving.

<DSR=OFF>,

RI=OFF,

DCD=OFF,

<CTS=OFF>,

RTS=ON,

DTR=ON

Extract the SIM. After a while, the DTE displays the following URC:

#QSS:0

Here is the new control line configuration. The module is no longer in power saving. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON

Check the current CFUN mode. AT+CFUN?

+CFUN: 1  the module is in full functionality mode

OK

Example 4

+CALA URC event forces the module in CFUN=1 Starting control line configuration, UART AT interface is <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON

mode. enabled.

Set the clock AT+CCLK="08/05/16,09:20:30+00" OK

Set when the alarm wakes up: in two minutes (it is just an example). AT+CALA="08/05/16,09:22:30+00",0,2,"ALARM, ALARM, ALARM" OK

Type in CFUN=0, the module enters NON-CYCLIC SLEEP mode. AT+CFUN=0 OK

Here is the new control line configuration. The module is in power saving. <DSR=OFF>, RI=OFF, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=ON

During the ALARM waiting, the module is in power saving and UART AT interface is disabled. When the alarm wakes up, the DTE displays the URCs. The module exits power saving in CFUN=0 mode and enters CFUN=1 mode.

+CALA: ALARM, ALARM, ALARM

1VV0301556 Rev. 10

Page 32 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Here is the new control line configuration. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON +CALA: ALARM, ALARM, ALARM Check the alarm mode AT#WAKE?
#WAKE: 1  the module is in alarm mode OK
+CALA: ALARM, ALARM, ALARM
Check the current CFUN. AT+CFUN? +CFUN: 1  the module is in full functionality mode OK
+CALA: ALARM, ALARM, ALARM
+CALA: ALARM, ALARM, ALARM After 90 sec, the module exits alarm mode.
Check the alarm mode. AT#WAKE?
#WAKE: 0  the module exited alarm mode
OK

CFUN=4: #QSS, +CALA

Example 1
#QSS URC event leaves the module in CFUN=4 mode. Starting control line configuration, UART AT interface is enabled. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON
Type in CFUN=4, the module performs network deregistration, and SIM deactivation. AT+CFUN=4 OK
Control line configuration is not changed. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON Enable Query SIM Status URC. AT#QSS=1 OK

1VV0301556 Rev. 10

Page 33 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Extract the SIM. The URC does not arrive because CFUN=4 mode deactivates the SIM. The module stays in CFUN=4 mode. AT+CFUN? +CFUN: 4 OK

Example 2

+CALA URC event leaves the module in CFUN=4 Starting control line configuration, UART AT interface is <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON

mode. enabled.

Set the clock AT+CCLK="08/05/16,09:20:30+00" OK

Set when the alarm wakes up: in two minutes (it is just an example). AT+CALA="08/05/16,09:22:30+00",0,2,"ALARM, ALARM, ALARM" OK

Type in CFUN=4, the module performs network deregistration, and SIM deactivation. AT+CFUN=4 OK

Control line configuration is not changed <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON

When the alarm wakes up, the DTE displays the URCs.

+CALA: ALARM, ALARM, ALARM Control line configuration is not changed. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON +CALA: ALARM, ALARM, ALARM Check the alarm mode AT#WAKE? #WAKE: 1  the module is in alarm mode OK +CALA: ALARM, ALARM, ALARM The module does not change CFUN mode. AT+CFUN?

1VV0301556 Rev. 10

Page 34 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
+CFUN: 4 OK +CALA: ALARM, ALARM, ALARM After 90 sec, the module exits alarm mode. Check the alarm mode. AT#WAKE? #WAKE: 0  the module exited alarm mode OK The module does not change CFUN mode. AT+CFUN? +CFUN: 4 OK
CFUN=5: Call, SMS, +CALA
Example 1 The wake-up event is an incoming call. Starting control line configuration, UART AT interface is enabled. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON Force the module in CFUN=5 mode, the power saving is enabled. AT+CFUN=5 OK Control line configuration does not change, UART AT interface is still enabled. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON Force the module in power saving. DTR  OFF The module is in power saving, and UART AT interface is disabled. <DSR=OFF>, RI=OFF, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=OFF An incoming call is arrived Here is the new control line configuration: RI=ON <DSR=OFF>, RI=ON, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=OFF Exit power saving, and UART AT interface is enabled DTR  ON

1VV0301556 Rev. 10

Page 35 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
<DSR=ON>, RI=ON, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON The module exits power saving, but stays in CFUN=5 mode.
AT+CFUN? +CFUN:5 OK
RING
Hang up the call. ATH OK
Enter power saving. DTR  OFF
The module enters again the power saving mode, and UART AT interface is disabled. <DSR=OFF>, RI=OFF, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=OFF
Example 2 The wake-up event is a SMS receiving.
Enable URC created by the SMS receiving. AT+CNMI=1,1,0,0,0 OK
Set AT#PSMRI to get URC event during power saving mode
AT#PSMRI=1000
OK
Starting control line configuration, UART AT interface is enabled. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON
Force the module in CFUN=5 mode, the power saving is enabled. AT+CFUN=5 OK
Control line configuration does not change, UART AT interface is still enabled. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON Force the module in power saving.
DTR  OFF The module is in power saving and UART AT interface is disabled. <DSR=OFF>, RI=OFF, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=OFF

1VV0301556 Rev. 10

Page 36 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
A SMS is arrived and it stored in the buffer on UART AT interface and RI is ON during 1 sec
<DSR=OFF>, RI=ON, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=OFF The module is still in power saving and UART AT interface is disabled. <DSR=OFF>, RI=OFF, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=OFF Exit power saving, and AT interface enabled. The buffered URC displayed DTR  ON
+CMTI: "SM",17
<DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON The module exits power saving but stays in CFUN=5 mode. AT+CFUN? +CFUN:5 OK Enter power saving. DTR  OFF The module enters again the power saving mode, and UART AT interface is disabled. <DSR=OFF>, RI=OFF, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=OFF

Example 3 The wake-up event is a SMS receiving Check the number of SMS already arrived. AT+CPMS? +CPMS: "SM",18,30,"SM",18,30,"SM",18,30  Yes, a new SMS is arrived. OK
Disable URC created by the SMS receiving. AT+CNMI=0,0,0,0,0 OK
Starting control line configuration, UART AT interface is enabled. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON Force the module in CFUN=5 mode, the power saving is enabled. AT+CFUN=5 OK
Control line configuration does not change, UART AT interface is still enabled. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON Force the module in power saving.
DTR  OFF

1VV0301556 Rev. 10

Page 37 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
The module is in power saving and UART AT interface is disabled. <DSR=OFF>, RI=OFF, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=OFF A SMS is sent and arrived. The DTE does not displays the URC +CMTI. The module is still in power saving and UART AT interface is disabled. <DSR=OFF>, RI=OFF, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=OFF Exit power saving and enable again the hardware flow control of the serial line. DTR  ON <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON
The module exits power saving but stays in CFUN=5 mode. AT+CFUN? +CFUN:5 OK
Check if a new SMS is arrived. AT+CPMS? +CPMS: "SM",19,30,"SM",19,30,"SM",19,30  Yes, a new SMS is arrived. OK
Enter power saving. DTR  OFF The module enters again the power saving mode, and UART AT interface is disabled. <DSR=OFF>, RI=OFF, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=OFF

Example 4
+CALA URC event leaves the module in CFUN=5 mode. Starting control line configuration, AT interface is enabled. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON Force the module in CFUN=5 mode, the power saving is enabled. AT+CFUN=5 OK Control line configuration does not change, UART AT interface is still enabled. <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON Set the clock AT+CCLK="08/05/16,09:20:30+00" OK Set when the alarm wakes up: in two minutes (it is just an example). AT+CALA="08/05/16,09:21:30+00",0,2,"ALARM, ALARM, ALARM" OK Set AT#PSMRI to get URC event during power saving mode

1VV0301556 Rev. 10

Page 38 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
AT#PSMRI=1000
OK
Force the module in power saving. DTR  OFF During the ALARM waiting, the module is in power saving, and UART AT interface is disabled. <DSR=OFF>, RI=OFF, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=OFF When the alarm time is expired, URC event take place. It stored in the buffer on UART AT interface. and RI is ON during 1 sec <DSR=OFF>, RI=ON, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=OFF UART AT interface is disabled. Now, enable UART AT interface. The module exits power saving, and the buffered URC flushed to DTE. but stays in CFUN=5 mode. DTR  ON <DSR=ON>, RI=OFF, DCD=OFF, <CTS=ON>, RTS=ON, DTR=ON +CALA: ALARM, ALARM, ALARM +CALA: ALARM, ALARM, ALARM Check if the module is in alarm mode. AT#WAKE? #WAKE: 1 OK

+CALA: ALARM, ALARM, ALARM Check the current CFUN. AT+CFUN? +CFUN: 5 OK
+CALA: ALARM, ALARM, ALARM After 90 sec the module exits alarm mode. AT#WAKE? #WAKE: 0 OK Check the current CFUN. AT+CFUN? +CFUN: 5 OK Force the module in power saving. DTR  OFF

1VV0301556 Rev. 10

Page 39 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
The module is in power saving in CFUN=5 mode, and UART AT interface is disabled. <DSR=OFF>, RI=OFF, DCD=OFF, <CTS=OFF>, RTS=ON, DTR=OFF
4.2.11. SPI
The LE910Cx includes a Serial Peripheral Interface (SPI) bus supporting:  Master mode at max 50 MHz  Programmable data bits (4 to 32 bits)  Programmable spacing between byte/word transfers (SPI_CS_N WAIT)  Programmable transfer length (number of bytes transferred within each SS/CS assertion)
LE910Cx has one SPI core using BLSP (board low speed peripheral). The BLSP includes a UART and QUP (Qualcomm universal peripheral) cores. This QUP has an SPI/I2C mini cores. These mini cores implement the following logic:
 A common output FIFO provides system output data to one or more mini cores  A common input FIFO provides system input data from one or more mini cores These cores use BAM (Bus access module) to move data to/from the peripheral buffers. There is a pair of BAM pipes attached to each peripheral. BAM block periodically reads the input FIFO until the programmed number of words are received. BAM block periodically populates the output FIFO until the programmed number of words are written to the output FIFO. Interrupt is generated once transfer completes.
Note: Two H/W Pins of SPI are shared with Aux UART, so SPI and Aux UART couldn't be used at the same time. If SPI want to be used, please use #SPIEN and #SPICFG commands. ThreadX products don't support #SPICFG.

4.2.11.1. LE (Linux)
TGPIO 1-10 (customer allocated GPIO) can be configured as an interrupt source of an SPI master device. This allows an SPI slave device to notify the SPI master device of data being transferred.

1VV0301556 Rev. 10

Page 40 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.2.11.2. TX (ThreadX)
SPI functionality is only provided to customer through AppZone framework. Please refer to 4.2.7 chapter for detailed information.
4.2.12. GPIO
LE910Cx provides 10 GPIOs and 8 UART pins, which can be configured as Input and Output through Linux device driver and AT command. These GPIO pins can control external hardware directly using the GPIO pins, with little or even no hardware added.

<Supported GPIO pins for LE910Cx> 1 - GPIO1 6 - GPIO6 2 - GPIO2 7 - GPIO7 3 - GPIO3 8 - GPIO8 4 - GPIO4 9 - GPIO9 5 - GPIO5 10 - GPIO10

20 - DCD 21 - CTS

22 - RI

23 - DSR

24 - DTR 25 - RTS

26 - RXD 27 - TXD

To use UART pins as GPIO, it should be pre-set to GPIO through #V24CFG command.

(See "8.1. How to use #V24CFG command")

To use 10 GPIOs, it should be control through #GPIO command or GPIO interface.

(See "AT Commands Reference Guide" and "Linux device driver Application Note")

Warning: Some GPIOs (GPIO-1, GPIO-5~9) must not lifted externally (by the carrier board) during the module power on procedure. Pulling these pads up during module power up might lead to an unwanted/non-operational boot mode.
(See "Hardware User Guide")

1VV0301556 Rev. 10

Page 41 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Note: ThreadX products don't support GPIO device driver.
4.2.13. Serial Interfaces
4.2.13.1. LE (Linux)
Apps to External MCU
The LE910Cx includes serial interfaces (cdc-acm and raw data interfaces) on both the UART and USB physical interfaces. These interfaces are accessible from the Linux side and can be used to communicate with an external MCU. The UART device nodes are:
 /dev/ttyHS0 � This is the high speed UART (the modem port). This port is used by the modem as an AT command port. An application that wants to use this port for communication with an external MCU should first stop the modem service running on top of this port using the following command ("/sbin/ds_uart_script stop") or #PORTCFG should be set to 8.
Note: In case of #M2MATP=1, #PORTCFG should be set to 8. Please refer to # PORTCFG on "LE910Cx_AT_Command_Reference_Guide.doc".
 /dev/ttyHSL0 � This is the debug console port. This port is in use by the modem as an AT command port. In order to use this port for communication with an external MCU, #PORTCFG should be set to 0 or the modem service that runs on top of this port use the following command ("/sbin/ds_uart_script stop") should be stop.
The USB device nodes are:  /dev/ttyGSX (X is a number) � Depending on the selected USB composition, there might be one or several ttyGS ports. For example, USB composition 1201 includes a single ttyGS0 port (in 1201 this port is meant for NMEA sentences sent by the modem). This is a gadget serial interface and can be used as a standard tty port to communicate with an external MCU if NMEA sentences are not enabled.
ttyGS ports represent:

1VV0301556 Rev. 10

Page 42 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
o NMEA ports - These ports are used by the modem to dump NMEA sentences. This port is disabled by default, and are enabled when the user activates it via the following AT commands:  AT$GPSP=1  AT$GPSNMUN=1,1,1,1,1,1,1
If the NMEA ports are not enabled, these ports can be used by the application to communicate with an external MCU.
Apps to Modem
Modem and apps communicate via shared memory. The devices used for this communication are smd devices and are present in the /dev/node. It is not recommended to work with these ports directly, Telit uses these ports for several use cases and a change might break these functionalities. Below is the list of smd channels available on the apps: /dev#Is-I/dev/smd* Crw-rw ---- 1 root root 248, 11 Jan 1 1970 / dev / smd11 Crw-rw ---- 1 root root 248, 2 Jan 6 01:58 / dev / smd2 Crw-rw ---- 1 root root 248, 21 Jan 1 1970 / dev / smd21 Crw-rw ---- 1 root root 247, 1 Jan 1 1970 / dev / smd22 Crw-rw ---- 1 root root 248, 36 Jan 1 1970 / dev / smd36 Crw-rw ---- 1 root root 248, 7 Jan 1 1970 / dev / smd7 Crw-rw ---- 1 root root 248, 8 Jan 6 01:58 / dev / smd8 Crw-rw ---- 1 root root 248, 9 Jan 1 1970 / dev / smd9

/dev/smd8 is used by the ttyHS0 for AT command over the UART (USIF0 port.) /dev/smd9 is used by the MCM_ATCOP for AT commands sent via the mcm interfaces. /dev/smd2 is used by the ttyHSL0 for AT command over the AUX UART (USIF1 port). If #PORTCFG is 8 or 0, User can send an AT command via this smd channel and capture a response as following: /dev # cat /dev/smd2& /dev # echo-e "at/r/n">/dev/smd2 /dev # at

1VV0301556 Rev. 10

Page 43 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide OK

/dev # echo-e "at+cpin?\r\n">/dev/smd2 /dev # at+cpin? +CPIN: READY OK

When #PORTCFG is 14 and #M2MATP is 1, the following command ("/sbin/ds_uart_script stop") should be stop in order to use smd2.
Other smd channels are used internally by Telit/QC and cannot be accessed by user.

Note: If UART (USIF0 port) is assigned as an AT port by #PORTCFG, the /dev/smd8 is used internally. In case of #M2MATP=1, #PORTCFG should be set to 8 to use "/dev/smd8" for customer use
If AUX UART (USIF1 port) is assigned as an AT port by #PORTCFG, the "/dev/smd2" is used internally. #PORTCFG should be set to 8 or 0 to use "/dev/smd2" for customer use. Or the modem service running on top of this port should be stopped with the following command ("/sbin/ds_uart_script stop") on every boot-up.
Please refer to #PORTCFG on the AT command guide document.

4.2.14. Audio
4.2.14.1. LE
Audio subsystem  Optional embedded analog codec with two microphone inputs  Optional embedded analog codec with one stereo or two mono outputs  PCM digital audio IO o Clock Type: Master o Short frame sync o Data format 16 �bit linear

1VV0301556 Rev. 10

Page 44 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
o <clock>  128 � DVI Clock activated at 128KHz  256 � DVI Clock activated at 256KHz  512 � DVI Clock activated at 512KHz  1024 � DVI Clock activated at 1024KHz  2048 � DVI Clock activated at 2048KHz  4096 � DVI Clock activated at 4096KHz
o <sample rate>  8KHz  16KHz
The purpose of the Audio user space Application is: 1. Configure and control the audio properties such as Volume, clock, mute device and so on. 2. Use the UCM file to configure audio paths and audio devices (handset, hands-free) 3. Use AMIX to send commands and data to the ALSA. 4. Manage all voice call events for audio. 5. Manage the digital (external codec) and analog (internal codec) use cases. Data communication between MAXIM9867 and MDM9628 is via a dedicated Aux PCM interface.
Audio Application UCM
ALSA Kernel audio subsystem ASoC HW

UCM is the user space library that provides C API for clients. ALSA is the kernel audio subsystem that abstracts the PCM and controls. ASoC is the low-level driver subsystem.

1VV0301556 Rev. 10

Page 45 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

The ACDB file contains audio calibration data and is categorized as following:  Handset_cal.acdb - Contains calibration data for handset devices  Speaker_cal.acdb - Contains calibration data for speakerphone (handheld, handsfree) devices  Headset_cal.acdb - Contains calibration data for headset devices  Bluetooth_cal.acdb - Contains BT devices for voice and audio (not supported)  Global_cal.acdb - Contains voice and audio stream calibration that is independent of device, and other global calibration  Hdmi_cal.acdb - Contains HDMI audio playback device (not supported)  General_cal.acdb - Contains general calibration data not falling in any of the other categories.
The LE910Cx has several locations to search for ACDB files, which allows customer to override Telit's defaults settings and work with QC tools. These ACDB sets of files are searched in the order below:
1. /data/acdb/acdbdata. This is usually where the QC tool enters calibration data when used.
2. Default code settings. This is Telit's default setting. We will fall back into this if none of the above exists.
This basically allows the customer to calibrate the audio via the QC tool and apply. If the calibration data is accepted, the customer puts the calibration files into its rom volume and the device will automatically pick this up in the next power up. Command-line examples for using the ALSA soundcard driver :
 Record an active voice call (analog audio): o amix 'MultiMedia1 Mixer AUX_PCM_MAX9867_UL_TX' 1 o amix 'Input Mixer' 1 o arec -D hw:0,0 -R 8000 -C 1 file.wav
 Record an active voice call (digital audio): o amix 'MultiMedia1 Mixer AUX_PCM_UL_TX' 1 o arec -D hw:0,0 -R 8000 -C 1 file4.wav
 Play an audio file: o amix 'AUX_PCM_MAX9867_RX Audio Mixer MultiMedia1' 1 o aplay filename.wav

1VV0301556 Rev. 10

Page 46 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.2.14.2. TX (ThreadX)
Audio subsystem  Optional embedded analog codec with two microphone inputs  Optional embedded analog codec with one stereo or two mono outputs  PCM digital audio IO o Clock Type: Master o Short frame sync o Data format 16 �bit linear
o <clock>  2048 � DVI Clock activated at 2048KHz  4096 � DVI Clock activated at 4096KHz
o <samplerate>  8KHz  16KHz
o Clock 2048KHz supports only Sample Rate 8KHz o Clock 4096KHz supports only Sample Rate 16KHz
Note: ThreadX products don't supports the following features & functionality. UCM, ALSA (amix, arec, aplay), Audio playback, Audio playback during voice call, Voice recording, In call music delivery, TTY, USB Audio
4.2.15. UART
The LE910Cx has two UART interface, Main and Aux. Main UART interface is a 4-wires UART with max data rates up to 3.75 Mbps and acts as DUN channel as default. Aux UART interface is a 2-wires UART acting as DUN channel as default. Following baud rates are supported: 300,600,1200,2400,4800,9600,19200,38400,57600,115200,230400,460800,921600,2000000 ,2500000,3000000,3500000,3750000

1VV0301556 Rev. 10

Page 47 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.2.15.1. LE (Linux)
If the Customer does not need UART modem ports, then can access the TTY device created under the dev file-system. This device can be accessed from user space to read/write data to a peripheral connected to the LE910Cx. The TTY device can be configured with the STTY utility (included). To tear down the UART to modem connection, use this command: /sbin/ds_uart_script stop After this, the ttyHS0 and ttyHSL0 can be directly accessed (/dev/ttyHS0) from Linux user space for read/write to an external processor connected on the other side.
Note: If the Customer doesn't need UART modem ports, #PORTCFG should be set to 8 when #M2MATP is 1. Please refer to #PORTCFG on "LE910Cx_At_Command_Reference_Guide.doc"

4.2.16. USB Interface
The LE910Cx includes a USB2.0 compliant Universal Serial Bus (USB) Transceiver, which operates at USB high-speed (480Mbits/sec). By default, the module is configured as a USB peripheral.

4.2.16.1. LE (Linux)
The USB port is typically used for:  Flashing of firmware and module configuration  Production testing  Accessing the Application Processor's filesystem (debug bridge)  AT command access (2 modem ports)  High speed WWAN access to external host  Diagnostic monitoring and debugging  NMEA data to an external host CPU
The following standardized device classes can be supported:  Serial (reduced ACM), CDC-ECM, MBIM, RMNET (Qualcomm proprietary)  Audio Device class, but limited to voice Rx & Tx and only when in peripheral mode
Note:

1VV0301556 Rev. 10

Page 48 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
 When the module is attached to USB serial driver on Linux platform, DIAG port, MODEM ports and NMEA port will be created as "/dev/ttyUSBx" not "/dev/ttyACMx". Please refer to "Telit_Modules_USB_Drivers_User_Guide".
 LE910Cx uses a fixed USB serial number, not the unique USB serial number of each device on normal boot. Ex) 012345789ABCDEF ...
The following USB compositions are available: 1201 - DIAG + ADB + RMNET + NMEA + MODEM + MODEM + SAP 1203 - RNDIS + DIAG + ADB + NMEA + MODEM + MODEM + SAP 1204 - DIAG + ADB + USB_MBIM + NMEA + MODEM + MODEM + SAP 1205 - USB_MBIM 1206 - DIAG + ADB + ECM + NMEA + MODEM + MODEM + SAP 1250 - RMNET + NMEA + MODEM + MODEM + SAP 1251 - RNDIS + NMEA + MODEM + MODEM + SAP 1252 - USB_MBIM + NMEA + MODEM + MODEM + SAP 1253 - ECM + NMEA + MODEM + MODEM + SAP 1254 - MODEM + MODEM 1255 - NMEA + MODEM + MODEM + SAP 1230 - DIAG + ADB + RMNET + AUDIO + NMEA + MODEM + MODEM + SAP 1231 - RNDIS + DIAG + ADB + AUDIO + NMEA + MODEM + MODEM + SAP 1260 - DIAG + ADB + RMNET + NMEA + MODEM + MODEM + SAP 1261 - DIAG + ADB + RMNET + NMEA + MODEM + MODEM + SAP 1262 - DIAG + ADB + RMNET + MODEM + MODEM + AUX
The USB composition can be changed using the usb_composition utility on the Linux side as well as using the #USBCFG AT command (covered by the LE910Cx AT user guide). The usb_composition utility can be used to select any of the above composition lists. The 125X USB compositions are specifically made for customers that are willing to allow the LE910Cx device to sleep even if the USB is connected (Enables the USB selective suspend). The USB selective suspend also depends on the host implementation. How to change USB composition to MBIM only USB composition. Note that on Linux operating system only, the following commands can be used.

1VV0301556 Rev. 10

Page 49 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
 Please send MBIM_OPEN message to modem with the following command and wait 3 sec. echo 01 00 00 00 10 00 00 00 01 00 00 00 00 10 00 00 | xxd -r -p >/dev/cdc-wdm0
 Please send USB composition with the following command echo 03 00 00 00 32 00 00 00 05 00 00 00 01 00 00 00 00 00 00 00 54 65 6c 69 74 4d 42 49 4d 45 78 74 65 6e 64 53 01 00 00 00 01 00 00 00 02 00 00 00 XX 00 | xxd -r -p >/dev/cdc-wdm0 The red number should be changed to set USB configuration and the range of red number is 0x00-0x0c.
4.2.16.2. TX (ThreadX)
The USB port is typically used for:  Flashing of firmware and module configuration  Production testing  AT command access (2 modem ports)  High speed WWAN access to external host  Diagnostic monitoring and debugging
The following standardized device classes can be supported:  Serial (reduced ACM), CDC-ECM, RMNET (Qualcomm proprietary)
Note: When the module is attached to USB serial driver on Linux platform, DIAG port and MODEM ports will be created as "/dev/ttyUSBx" not "/dev/ttyACMx". Please refer to "Telit_Modules_USB_Drivers_User_Guide".

The following USB compositions are available: 1031 - DIAG + MODEM + MODEM + RMNET 1033 - DIAG + MODEM + MODEM + ECM 1034 - MODEM + MODEM + RMNET 1035 - MODEM + MODEM + ECM 1036 - MODEM + MODEM

1VV0301556 Rev. 10

Page 50 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
The USB composition can be changed by #USBCFG AT command (covered by the LE910Cx AT user guide).
4.2.17. HSIC Interface
The LE910Cx includes a 2-wire HSIC (High-Speed Inter-Chip) interface and the interface supports HSIC master or slave mode. The HSIC interface of LE910Cx supports the following feature:
 No hot plug detection  No hot removal/attach, interface is always connected  No high-speed chirp protocols  HSIC master/ slave mode support The HSIC configuration can be changed using #HSICEN command and manual reboot is required.
Example 1 Enable HSIC master mode. AT#HSICEN=1 OK Example 2 Enable HSIC slave mode. AT#HSICEN=2 OK Example 3 Disable HSIC configuration. AT#HSICEN=0 OK How to make power saving mode when HSIC configuration of LE910Cx is master mode (master and slave connected state)
 Before set CFUN to 5, please do the following command on apps echo auto > /sys/bus/usb/devices/1-1/power/control

1VV0301556 Rev. 10

Page 51 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Note: If the HSIC configuration of LE910Cx is in slave mode, the LE910Cx does not allow the power saving mode because the signals between HSIC master and slave resume are not sync. If HSIC configuration of LE910Cx is the master mode, the power saving mode can only be entered in the HSIC master and slave connection state. ThreadX products do not support the HSIC interface.
4.2.18. Ethernet Interface
The LE910Cx have Embedded Ethernet MAC and support only SGMII interface. The embedded Ethernet MAC of LE910Cx supports the following features.
 IEEE 802.3 Ethernet 10/100/1000Mbps, SGMII IF  SGMII interface can be used using external PHY. (SGMII to external PHY)
o Giga Ethernet PHY can be used by a transceiver chip (example: Marvell 88EA1512 PHY chip)
Note: ThreadX products do not support SGMII interface.

4.2.19. SD/MMC Interface
LE910Cx provides an SD port supporting the SD3.0 specification, which can be used to support standard SD/MMC memory cards. Please refer to the "LE910Cx Linux device driver Application Note" document for more details.
Note: ThreadX products do not support SDIO interface.

4.2.20. RTC
The LE910Cx includes an RTC (Real Time Clock), which allows an application to set an alarm to either wake up the module from sleep mode, power up the module or simply interrupt it once the alarm expires. The interface to the RTC, from the SW perspective, takes place via the RTC device exposed in the device file system (standard RTC device interface).

1VV0301556 Rev. 10

Page 52 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
The RTC driver handles the RTC time and alarm requests from the user. The RTC sysfs interface can be seen at: /sys/class/rtc/rtc0/ User can set the RTC for wake alarm (using RTC_WKALM_SET ioctl) and receive notification via RTC device interface (/dev/rtc0). Another way is to set the RTC wake alarm, shutdown the module (shutdown �h now) and the device will automatically power up when the alarm expires. To allow the user space to know why the device has powered up, the following file has been added:/var/volatile/tmp/rtc_wake_status. If the file contains 0 as a value, it basically means a normal user selected power up. 1 means power up due to RTC alarm expiration.
Note: ThreadX products do not support RTC interface.

4.2.21. Time Services
The time daemon manages the system time between the modem and the app processor. The time daemon service starts during boot and reads the RTC time from /dev/rtc0 and the offset from file /data/time/ats_1 (or /var/tmp/time/ in older versions). This value is then set as the system time. When the system boots and time daemon initialize for the first time, the daemon reads the file at /data/time/ats_1 to initialize the offset value. Therefore, as long as the files are present and contain the correct values, the system time is preserved after system reboot.
4.2.21.1. Coordinated Universal Time (UTC)
The UTC time standard is used to adjust the world clock and time. UTC is based on International Atomic Time (TAI), and time zones around the world are expressed as positive or negative offsets from UTC. UTC is the time standard used for many Internet and web standards. The Network Time Protocol, designed to synchronize the clocks of computers over the Internet, encodes the times using the UTC system. UTC is helpful to avoid confusion about time zones and daylight saving time.
4.2.21.2. Time Zones
The time zones around the world are expressed as positive or negative offsets from UTC.

1VV0301556 Rev. 10

Page 53 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.2.21.3. Daylight Saving Time (DST)
DST is observed in some time zones by advancing the time by some duration in summer and reverting to the original time during winter. DST helps in getting more daylight in the evening and less in the morning.

4.2.21.4. Time Update
Mobile devices have an internal timer system and the time and time zone can be updated manually. Due to inaccuracies of the device-specific internal timer system, each device deviates with time over a period. There are various network standards to synchronize the device time with the network-provided wall clock time periodically:
Network Time Protocol (NTP)
NTP is a networking protocol for synchronizing the clocks of computer systems over packet-switched, variable-latency data networks.
NTP provides UTC, including scheduled leap-second adjustments. No information about time zones or DST is transmitted. This information is outside the scope of this document and must be obtained separately.
NTP uses an epoch of January 1, 1900.
Network Identity and Time Zone (NITZ)
NITZ is a mechanism for provisioning the local time, date, and network provider identity information to mobile devices via a wireless network. NITZ is currently an optional part of the official GSM standard (phase 2+release 96).
The NITZ standard allows the network to "transfer its current identity, universal time, DST, and LTZ, but each is optional and support varies across radio access network vendor and operators."
With NITZ, the accuracy of the time information is in the order of minutes.
GPS � Clock synchronization
The GPS receiver can also use time information received from GPS time signals. The time accuracy of GPS network is < 1 ms.

4.2.21.5. System Time Base
Real-time time base
The Real time is a wall clock time used by the UI to display the current system time. Generally, this time is updated and synchronized with time information from the network, for example, as the modem uses standard network time protocols, such as NTP or NITZ.

1VV0301556 Rev. 10

Page 54 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
During synchronization, this time can go forward or backward with regards to the network time.

Monotonic time base The monotonic time is time elapsed since the epoch time (01 Jan 1980) or some random start time. Since this time is not used for displaying UI or alarm setup, the start time is not relevant. The monotonic time always moves forward in time but does not reflect the time on the wall clock in any specific way. In the current implementation, CLOCK_MONOTONIC resembles the number of tick jiffies that it starts at 0 when the system boots and monotonically increases from there. The monotonic time is used by the kernel and the user for all relative time events, because this time never goes backward.
4.2.22. Data Connection
4.2.22.1. QCMAP_CLI
QCMAP_CLI is a QC user space application that allows to activate a PDP context along with network interface setup, firewall configuration, DNS etc. This is a GUI application which resides in the /usr/bin directory.
Note: ThreadX not supports QCMAP_CLI.
4.2.23. WatchDog
A watchdog is a fixed-length counter that enables a system to recover from an unexpected hardware or software catastrophe. Unless the system periodically resets the watchdog timer, the watchdog timer assumes a catastrophe and tries to handle the situation. In general, there are two types of watchdog implementations, a hardware watchdog and a software watchdog based on timer interrupt. Both software and hardware watchdogs are used in the system.

1VV0301556 Rev. 10

Page 55 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
The software watchdog is not implemented in all subsystems; for example RPM, TrustZone, and APSS do not have software watchdogs, while CNSS and MPSS implement software watchdog.
The hardware watchdog module is a piece of hardware used to ensure that the processor is not stuck or overloaded and consists of a timer that counts down from a predetermined value. If the timer is not reset (also known as "dog_kick" or "petting the dog" or "servicing the dog") by the corresponding CPU core, it eventually counts to 0 and triggers a watchdog timeout.
It is the responsibility of each CPU core to ensure it keeps resetting the counter. If it is unable to do so (if the dedicated task is starved or the CPU core is locked up, etc.), it is assumed that the system has gone into a bad state.
In addition to the reset triggering signal (WatchDog_expired), it is also possible to generate a watchdog interrupt before the watchdog expiration, to allow a processor to attempt the system recovery before resetting it:
 BARK (FIQ) � Interrupt before watchdog expiration to allow the processor to attempt the system recovery before resetting it
 BITE (Reset) � When watchdog timeout happens
The watchdog timer continues counting even after BARK occurs.
4.2.23.1. Hardware Watchdog Characteristics
In the LE910Cx platform, the system has one and only one hardware watchdog counter for every processor or processor cluster located in the corresponding processor subsystem.
 The only exception is that the app processor has a non-secure and secure watchdog.
 Each processor or processor cluster is responsible for periodically resetting (kicking/ petting/servicing) of its own watchdog.
 The system has one and only one secure watchdog whose primary event (Bite) causes a system reset or cold boot.
 With the exception of the secure watchdog, the primary event, or bite, shall be sent to the app processor as an interrupt.
 The secondary event, or bark, must and will be serviced by the corresponding processor.

1VV0301556 Rev. 10

Page 56 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
 The secure watchdog is always under the control of the Secure Root of Trust (SRoT).
 The system provides a secure watchdog enable pin to be used to connect the watchdog bites to the global reset circuitry for debug purposes.
 A watchdog enable pin is provided behind a GPIO.
 The GPIO pin is detected by the fuse detect operation, and the value is stored in a register in the security control block.
 A watchdog enable fuse is also provided and will be ORed with the GPIO. So, if the watchdog enable fuse is blown, the secure watchdog is forced to be enabled and the GPIO is essentially ignored.
 The watchdog timer never causes a processor from exiting a sleep or powercollapse state with the exception of the secure watchdog.
 With the exception of programming the watchdog duration, the watchdog hardware is designed in such a way that the corresponding software should only need to pet its own watchdog. All watchdog enables and interruptions due to power collapse, processor sleep, and debug conditions are handled automatically by the hardware.
 All hardware watchdogs run on the 32 kHz sleep XTAL clock.
 The size of the watchdog timer counter is 20 bits wide. With the sleep clock running at 32 kHz, a maximum duration of 32 sec is achieved.
 When a processor is in the Reset state, the associated watchdog is held in the Disabled state. When a processor is hung, the subsequent restart process resets the processor subsystem, not just the CPU; then the watchdog timer including the configuration registers is also reset.
 Upon cold boot or subsystem restart, the watchdog is held in the Disabled state until the software enables the watchdog timer.
4.2.23.2. Watchdog Connectivity
All processor subsystems have the watchdog bite sent to the app processor. The barking event is routed as a local interruption.
Note that the non-secure watchdog bark in the app processor is sent to HLOS, and the non-secure bite is sent to TrustZone.

1VV0301556 Rev. 10

Page 57 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

4.2.23.3. A7 Apps Processor Watchdogs
The A7 app processor subsystem has two watchdogs (secure and non-secure), each handled by a different software block.
Non-secure A7 apps processor watchdog
If the A7 apps processor hardware watchdog goes without being petted for 4 sec, a bark IRQ is asserted. This is known as nonsecure dog bark.
The kernel handles this as a software error. If the watchdog continues for 5 sec without being petted or if the bark IRQ has not been handled properly, FIQ is reported to TrustZone. This is known as nonsecure dog bite and it collects register values, downloads the cache contents, and resets the device. The watchdog driver currently schedules itself to pet the watchdog every 3 sec.
For debugging purposes, you can disable the watchdog module by the following method:
 If the watchdog is enabled at bootup (enable=1), the runtime_disable sysfs node at /sys/devices/b017000.qcom,wdt/disable can be used to deactivate the watchdog
Note the dog bark is only received if the processor is not stuck with interrupts enabled and the hardware is still in a functional state, which is not common. If the dog bark cannot be handled and the system gets stuck for any reason, the dog bite occurs and resets the target. The Register information stored by TrustZone is used to debug non-secure apps dog bite issues.
Secure watchdog timer
The secure watchdog timer is managed by SRoT running on the apps processor.
The bark event of this timer is sent to SRoT as an interrupt. If SRoT becomes nonresponsive, the integrity and stability of the entire SoC is in question and the only course of action is a reset to cold boot. Therefore, the bite event of this timer resets the PS_HOLD register, causing the PS_HOLD to transit to a logic-0 state.
This causes the PMIC to enter a chipset reset sequence.
The registers in the secure watchdog timer shall only be accessible by SRoT.
The access control infrastructure must prevent any other EEs than SRoT from accessing the secure watchdog.
The secure watchdog timer will automatically resume from the hardware upon any wakeup event to SRoT when SRoT is in Sleep mode.
The secure watchdog timer must be kept in the Disabled state when the chip exit cold reset until SRoT enables it. Since only the secure watchdog timer can cause the PMIC to reset the MSM, it is also used to respond to exit errors from chip sleep states (XO

1VV0301556 Rev. 10

Page 58 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
shutdown and/or VDD minimization) by clearing PS_HOLD to cause PMIC to reset the MSM. The secure watchdog timer will automatically resume on any wakeup event, which directs the chip to come out of a chip sleep state (VDDmin or XO shutdown). Safe watchdog barking is an outage for SRoT only.
4.2.23.4. MPSS Watchdog
The MPSS watchdog module can generate BARK and BITE events:
 BARK (FIQ) � Bark time is programmable
 BITE (Reset) � Watchdog BITE generates an IRQ for the apps processor; MPSS watchdog BITE time is fixed at ~390 ms
An FIQ is generated when BARK time is hit. A BARK event is handled as a software error in the MPSS. Therefore, the MPSS follows generic error handling procedures.
When the MPSS watchdog timer count reaches 0, the hardware watchdog asserts an interrupt to the apps processor (A7 apps processor). An NMI is generated locally. As the name NMI suggests, this interrupt cannot be blocked. The NMI handler on the subsystem then triggers the error handler that saves the context of the system and informs the apps processor of the error.
BITE interrupts on the MPSS indicate unresponsive subsystems due to a software glitch and/or hardware error such as bus lockup, memory corruption, etc. The A7 apps processor generates a kernel panic once it receives a BITE interrupt from MPSS unless the subsystem restart feature is enabled. In addition to hardware watchdog support, the modem implements software watchdog, which consists of the DOG task, and a protocol imposed on reporting activities in the system. The monitored activities call a function to report to DOG. The activity of the DOG software is one of the most important activities in the system. It defines a software timer, for example 100 ms, which causes it to run periodically to reset the hardware watchdog timer, that is to stroke the hardware watchdog and prevent hardware watchdog timeout. Each monitored activity has a defined timeout period during which it must report to the DOG activity to indicate proper operation. These activities generally set a software timer to schedule their reporting to the DOG activity. Since activity latency delays make planning and execution of activities uncertain, activities must be reported significantly before their timeout period to reliably avoid a dog timeout.
Periodically, for example, once every 100 milliseconds, the DOG activity checks the signaling status of the monitored activities in order to detect the signaling of delayed activity (dog timeout).

1VV0301556 Rev. 10

Page 59 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

4.2.24. Power Management
Hardware Power Architecture/Features
 Single XO
o CXO (19.2 MHz) sources all clocks. CXO is always ON as its buffers are turned off when XO shutdown is exercised. The sleep clock (32 KHz) used by the MDM chipset in XO Shutdown mode is derived from CXO; it is used to clock always-on domains such as the MDM Power Manager (MPM), parts of the modem core, and certain timer circuits.
 Multiple voltage domains � Memory, digital, and APC
o VddMx (memory rail) � VDD_MX represents on-chip memories. This power domain is never switched off but can be minimized to a lower power, typically when MDM is in deep sleep with XOs turned off (memory voltage does not scale in Low-Power modes with the logic domains).
o VddCx (digital rail) � VDD_CX represents all digital logic circuits/cores of MDM that must retain a minimum voltage, even when MDM is in deep sleep (with XOs off). RPM core, system fabric, and MDM9x07 digital cores are some of the examples that depend on this power domain.
o Vdd APC (APC rail) � VDD_APC rail powers up the APSS subsystem.
Software Power Features
 XO shutdown
o During XO shutdown, CXO buffers at PMIC are switched off, leaving CXO crystal still running.
o CXO still needs to be generated as it is used to generate the 32 KHz sleep clock in PMIC.
o No clock is fed to MDM9x07 except the 32 KHz sleep clock, which is required for the always-on parts; for example, MPM block.
o To enter XO shutdown, all master processors must be in Power collapse mode, dedicated clocks should be off, and shared clocks must be rated "off" by their clients.
 Vdd minimization
o Vdd minimization is the deepest Low-power mode that can be achieved in the system by minimizing VddCx and VddMx to their lowest possible voltage.
o When Vdd minimization is achieved, the chip is not operational, except for detecting wake-up interrupt/timer expiration; however, all hardware

1VV0301556 Rev. 10

Page 60 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
(supplied by Vdd Cx/Mx) states are still maintained. These two power domains cannot be power-collapsed, so they are put to a lower voltage that can sustain the contents in memories, and so on.
o Lowering the voltage saves leakage current, and therefore reduces overall power consumption.
o To enter into Vdd minimization, all master processors should vote for XO Shutdown as well as retention voltage on Cx/Mx.
APPS Power features
Supported Low-Power modes
 SWFI � SWFI is an ARM-supported instruction. In this mode, the processor clock is stopped, no instructions are executed, and the register states are preserved. Core exits this Low-power mode upon any interruption.
 Standalone power collapse (without RPM notification) � Clock gate and power collapse for individual core. Processor clock is stopped and power-collapse for individual core without assistance from RPM.
 Power collapse (with RPM notification) � This Low-power mode includes switching off the power of the core in addition to stopping the processor clock.
o RPM-assisted power-collapse.
o Subsystems vote for Low-power mode on shared resources such as XO, L2 cache, and Vdd Cx/Mx to the RPM.
o There is a higher recovery penalty to resume Active state
Suspend Features for LE(Linux)
Wakeup Sources Replacing Legacy Android Wakelock
 Enables drivers (kernel space/user space) to finish transactions in progress before going into suspension
 To verify active wakeup sources: cat /sys/kernel/debug/wakeup_sources
 Wakeup sources are good for tracking kernel-originated events, but they do not provide any way for user space to indicate that the system should not sleep
 An application can write a name (and an optional timeout) to /sys/power/wake_lock to establish a new, active wakeup source. The wake lock name provided will be written to the wakeup sources. That source will prevent system from being suspended until either its timeout expires or the same name is written to/sys/power/wake_unlock.

1VV0301556 Rev. 10

Page 61 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
 A driver receiving a wakeup event will mark the associated wakeup source as active, keeping the system running. That source will remain active until user space consumes the event. But before doing so, the user-space application takes a "wake lock" of its own, ensuring it will be able to complete its processing before the system goes back to sleep.

Autosleep
 Automode is enabled or disabled by writing on/off to /sys/power/autosleep (libsuspend)
 try_to_suspend() function is the core of Autosleep
 Continuous looping (without polling) on itself to see if all active wakeup sources have been released while Automode is on
CPUIdle
CPUidle is a kernel PM infrastructure. CPUs today support multiple idle levels differentiated by varying exit latencies and power consumption during inactivity. CPUidle enables efficient management of these different idle CPUs.
It separates drivers that can provide support for multiple types of Idle states and policy governors that decide which Idle state to use at runtime. The CPUidle driver can support multiple idle states based on parameters like variable power consumption, wakeup latency, etc.
The main advantage of this infrastructure is that it allows independent development of drivers and governors and allows for better CPU PM.
CPUidle provides idle state detection capability and can also support entry/exit into CPU Idle states
CPUidle initializes the cpuidle_device structure for each CPU device and registers with cpuidle using cpuidle_register_device CPUFreq
CPU Frequency (CPUFreq) scaling is PM method used in running mode. Sysfs interface � /sys/devices/system/cpu/cpu*/cpufreq/* (Linux)
Switching of CPUFreq is governed by these governors in static or dynamic manner:
 Performance � CPU runs at static maximum frequency

1VV0301556 Rev. 10

Page 62 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
 Powersave � CPU runs at static minimum frequency  User space � Determined by static user space program  Ondemand � On-demand dynamic governor sets target frequency based on CPU
busy/idle statistics  Conservative � Conservative dynamic governor sets target frequency, based on
CPU busy/idle statistics User space interface for LE(Linux) LE910Cx provides the following power management capabilities, accessible to the user space:
 Wakelocks. Just like the LE910, a wakelock is used to prevent the system from going into sleep and is accessible to a user space application. Wakelock is implemented as a wakeup source.
 Autosleep. Allows the user to override the above wakelock mechanism. o Setting to "off" will force the system not to sleep regardless of the wakelocks. o Setting to "mem" will cause the system to use the wake locks to decide whether to sleep or not.

4.2.25. Performance Build(Linux)
The LE910Cx offers a performance optimized build along with the non-performance optimized build provided so far. Any tests performed on the A4 regarding performance, especially on the following topics, should be performed on the performance build.
The main differences between these two builds are the powerup time and throughput in various scenarios, including WWAN, WLAN and Ethernet.
Performance optimized build changes (oppose to the non perf) the following images:
 Linux LK
 Linux Kernel
 Linux root FS
The following configurations are removed when using the performance build:
 CONFIG_KALLSYMS_ALL - This option ensures that all symbols are loaded into the kernel image (that is, symbols of all sections) at the cost of a larger kernel size
 CONFIG_PROFILING � This option enables the extended profiling support mechanisms used by profilers

1VV0301556 Rev. 10

Page 63 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
 CONFIG_NETFILTER_DEBUG � This option adds additional messages useful in debugging the netfilter code
 CONFIG_DYNAMIC_DEBUG � This option compiles debug level messages into the kernel, which would not otherwise be available at runtime.
 CONFIG_DEBUG_PAGEALLOC � This option Unmaps pages from the kernel linear mapping after free_pages(). This results in a large slowdown but helps to find certain types of memory corruptions.
 CONFIG_DEBUG_KMEMLEAK � This option enables the memory leak detector and introduces an overhead to the memory allocation.
 CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF
 CONFIG_DEBUG_STACK_USAGE � This option enables the display of the minimum amount of free stack which each task has ever had available.
 CONFIG_DEBUG_MEMORY_INIT � This option enables additional sanity checks during memory initialization.
 CONFIG_DEBUG_SPINLOCK � This option enables catching missing spinlock initialization and certain other kinds of spinlock errors commonly made.
 CONFIG_DEBUG_MUTEXES � This option allows mutex semantics violations and mutex related deadlocks (lockups) to be detected and reported automatically.
 CONFIG_DEBUG_ATOMIC_SLEEP � When this option is enabled, various routines which may sleep will become very noisy if called within atomic sections: when a spinlock is held, within pre-disabled sections, inside an interrupt, and so on.
 CONFIG_DEBUG_LIST � This option enables extended checks in linked-list walk routines
 CONFIG_FAULT_INJECTION_DEBUG_FS � This option enables the configuration of fault-injection capabilities via debugs.
 CONFIG_FAULT_INJECTION_STACKTRACE_FILTER � This option provides stack trace filter for fault-injection capabilities.
 CONFIG_BLK_DEV_IO_TRACE � This option enables tracing the block layer actions on a given queue. The trace allows you to view the traffic in progress on a block device queue.
 CONFIG_DEBUG_USER - When a user program crashes due to an exception, the kernel can print a brief message explaining what the problem was. This is sometimes helpful for debugging but is useless on a production system.

1VV0301556 Rev. 10

Page 64 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
In addition to the above, the perf build also disables the debug console starting from the Linux LK through the Kernel image. Disabling the console is making almost 90% of the differences in bootup time between these two builds. As a result, in a performance build, there would be no messages printed out to the serial console and no login services would be provided using the serial console.
Basic Operations
4.3.1. Command Syntax
In the next paragraphs the following notations are used: <cr> represents the Carriage Return Character (13) <lf> represents the Line Feed Character (10) <xx> represents a parameter with changing name is in place of the double x. (< and > characters are only for limiting the parameter and must not be sent to the terminal). [<xx>] represents an optional parameter whatever the name in place of the xx. [ and ] characters are only for limiting the optional parameter and must not be sent to the terminal).
4.3.2. Command Response Timeout
Every command issued to the Telit modules returns a result response if response codes are enabled (default). The time required to process the given command and return the response varies, depending on the type of command. The commands that do not interact with the SIM/UICC or the network, and only involve the internal configuration settings or readings, have an immediate response, depending on the configuration of the SIM/UICC configuration (for example, the number of contacts stored in the address book, number of stored SMS), or on the network with which the command can interact. The table below lists only the commands whose interaction with the SIM/UICC or the network could lead to long response timings. Unless otherwise specified, timing refers to the set command. For commands related to writing and reading the phonebook and SMS, timing refers to the commands issued after the sorting of the phone book has been completed. For sending and dialing DTMF commands, the timing refers to the module registered on network ("AT+CREG/+CEREG?" answer is "+CREG/+CEREG: 0,1" or "+CREG/+CEREG: 0,5").

1VV0301556 Rev. 10

Page 65 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Note: In case no response is received after the timeout time has elapsed, then try repeating the last command and if still no response is received until the timeout time, an Unconditional Shutdown MUST be issued and the device must be powered ON again.

Command +COPS +CLCK
+CPWD
+CLIP +CLIR +CCFC +CCWA +CHLD +CPIN +CPBS +CPBR
+CPBF
+CPBW +CACM +CAMM +CPUC
+VTS
+CSCA +CSAS +CRES +CMGS +CMSS

Time-Out (Seconds) 180 (test command)
15 (SS operation) 5 (FDN enabling/disabling)
15 (SS operation) 5 (PIN modification) 15 (read command) 15 (read command)
15 15 60 30 5 (FDN enabling/disabling) 5 (single reading) 15 (complete reading of a 500 records full phonebook) 10 (string present in a 500 records full phonebook) 5 (string not present) 5 5 5 180 20 (transmission of full "1234567890*#ABCD" string with no delay between tones, default duration) 5 (read and set commands) 5 5 120 after CTRL-Z; 1 to get `>' prompt 120 after CTRL-Z; 1 to get `>' prompt

1VV0301556 Rev. 10

Page 66 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Command +CMGW +CMGD
+CNMA +CMGR +CMGL +CGACT +CGATT
D
A
H +CHUP +COPN +COPL +WS46 +CRSM #MBN #TONE #EMAILD #STSR #GPRS #SKTD #QDNS #FTPOPEN #SGACT
#SH #SD #CSURV #CSURVC #CSURVUC #CSURVB
1VV0301556 Rev. 10

Time-Out (Seconds) 5 after CTRL-Z; 1 to get `>' prompt
5 (single SMS cancellation) 25 (cancellation of 50 SMS) 120 after CTRL-Z; 1 to get `>' prompt
5 100 150 90 120 (voice call) Timeout set with ATS7 (data call) 60 (voice call) Timeout set with ATS7 (data call) 60 60 10 180 10 180 10 5 (if no duration specified) 90 30 150 140 (DNS resolution + timeout set with AT#SKTCT) 170 120 (timeout set with AT#FTPTO, in case no response is received from server) 150 10 140 (DNS resolution + connection timeout set with AT#SCFG) 180 180 180 180

Page 67 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Command

Time-Out (Seconds)

#CSURVBC

180

#CSURVP

180

#CSURVPC

180

#CSURVL

180

#CSURVCL

180

#CSURVW

180

#CSURVCW

180

#CSURVG

180

#CSURVCG

180

Table 8: AT Commands with Long Response Timeout

4.3.3. Basic AT Commands

4.3.3.1. AT Error Report Format
Disable the Error Report in numerical and verbose format. AT+CMEE=0 OK Enable the Error Report in numerical format. AT+CMEE=1 OK Enable the Error Report in verbose format. AT+CMEE=2

4.3.4. RAT and Band Selection

4.3.4.1. RAT Selection
The following AT command selects the technology: 2G, 3G, 4G, or automatic. AT+WS46=[<n>] <n> - integer type, it is the WDS-Side Stack used by the TA. 12 GSM Digital Cellular Systems (GERAN only) 22 UTRAN only

1VV0301556 Rev. 10

Page 68 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
25 3GPP Systems (GERAN and UTRAN and E-UTRAN) 28 E-UTRAN only 29 GERAN and UTRAN 30 GERAN and E-UTRAN 31 UTRAN and E-UTRAN 32 TDSCDMA only 33 GERAN and TDSCDMA 34 TDSCDMA and E-UTRAN 35 GERAN and TDSCDMA and E-UTRAN 36 GERAN and TDSCDMA and UTRAN and E-UTRAN 37 GERAN and TDSCDMA and UTRAN 38 TDSCDMA and UTRAN 39 TDSCDMA and UTRAN and E-UTRAN
Note: The <n> parameter is stored in NVM, and the command will take effect on the next power on. The factory default value depends on each variant.
4.3.4.2. Band Selection
In manual band selection the following AT command selects the current band for both technologies GERAN, UTRAN and EUTRAN: AT#BND=<GSM band>[,<UMTS band>[,<LTE band>]] Examples AT#BND=0,0,2  selected band: GSM(2G) + DCS(2G) + B1 (3G) + B2(4G) OK
Note: The input range for supported band are depends on variants

1VV0301556 Rev. 10

Page 69 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.3.5. SIM/USIM Management
4.3.5.1. SIM Presence and PIN Request
The following AT command checks if the SIM device needs the PIN code: AT+CPIN?

Examples Assume that the SIM is inserted into the module and the PIN code is needed. AT+CPIN? +CPIN: SIM PIN OK Assume that the SIM is not inserted, and Extended Error result code is not enabled. Check if PIN code is needed, just to see the response command: AT+CPIN? ERROR Assume that the SIM is not inserted, and Verbose Extended error result code is enabled. Check if PIN code is needed, just to see the response command: AT+CPIN? +CME ERROR: SIM not inserted Assume that the SIM is not inserted, and Numerical Extended error result code is enabled. Check if PIN code is needed, just to see the response command: AT+CPIN? +CME ERROR: 10
4.3.5.2. Enter PIN Code
Use the following AT command to enter the PIN code: AT+CPIN=<pin>

Examples Assume to enter a wrong PIN code, and Extended Error result is not enabled. AT+CPIN=1235

1VV0301556 Rev. 10

Page 70 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
ERROR Now, enter the right PIN code: AT+CPIN=1234 OK Enable Verbose Extended error result code: AT+CMEE=2 OK Enter a wrong PIN code: AT+CPIN=1235 +CME ERROR: incorrect password.
Note: After 3 unsuccessful attempts with the PIN, the PIN code is no longer requested and the SIM is locked. Use SIM PUK to enter a new PIN code and unlock the SIM

4.3.5.3. Enter PUK Code
Enter the following AT command if PUK or PUK2 code is required: AT+CPIN=<pin>[,<newpin>]
Note: After 10 PUK code failed attempts, the SIM Card is locked and no longer available.

4.3.5.4. SIM Status
Use the following AT command to enable/disable the SIM Status Unsolicited Indication. AT#QSS=<mode>

Example 1

Enable the unsolicited indication concerning the SIM status change.

AT#QSS=1

 enable URCs: #QSS:0/1

OK

#QSS: 0

 unsolicited indication: SIM is extracted.

1VV0301556 Rev. 10

Page 71 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

#QSS: 1

 unsolicited indication: SIM is inserted.

Example 2

AT#QSS=2

 enable URCs: #QSS:0/1/2/3

OK

AT+IPR=19200

 select the Main Serial Port speed = DTE speed

OK

AT&W0

 store the setting on profile 0

OK

AT&P0

 at Power on use profile 0

OK

Now, power off the module:

#QSS: 0

 unsolicited indication: SIM is extracted.

Now, power on the module:

#QSS: 1

 unsolicited indication: SIM is inserted.

AT+CPIN?

+CPIN: SIM PIN  SIM is locked

OK

AT+CPIN=<PIN>  enter PIN

OK

#QSS: 2

 unsolicited indication: SIM is unlocked.

#QSS: 3

 unsolicited indication: SMS and Phonebook are accessible

4.3.5.5. SIM Detection Mode
Use the following AT command to manage the SIM Detection Mode: AT#SIMDET=<mode> Or Use the following AT command to enable/disable the SIM Status Unsolicited Indication. AT#SIMPR = <mode>

1VV0301556 Rev. 10

Page 72 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Example

AT#SIMDET?

#SIMDET: 2,1

OK

2 = automatic SIM detection through SIMIN pin (Factory Setting)

1 = SIM inserted

AT#SIMPR?

#SIMPR: 0, 0, 1

#SIMPR: 0, 1, 0

OK

First Line:

0 = Disable URC

0 = Local UICC

1 = SIM inserted

Second Line:

0 = Disable URC

1 = Remote SIM

0 = Remote SIM not connected (If SIM/UICC Access Profile of BT is supported)

Enable the unsolicited indication concerning the SIM status change.

AT#QSS=1

OK

Now, extract the SIM

#QSS: 0

 unsolicited indication: SIM is extracted

Now, insert the SIM

#QSS: 1

 unsolicited indication: SIM is inserted

AT#SIMDET=0

 simulate SIM not inserted, but it is still physically inserted

OK

#QSS: 0

 unsolicited indication, but SIM is NOT physically extracted

AT#SIMDET?

1VV0301556 Rev. 10

Page 73 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

#SIMDET: 0,1

 0 = simulate the status SIM not inserted, 1 = SIM is

OK

physically inserted

AT#SIMPR?

#SIMPR: 0, 0, 1  0: Disable URC, 0: Local SIM, 1: SIM inserted

#SIMPR: 0, 1, 0  0: Disable URC, 1: Remote SIM, 0: Remote SIM not inserted

OK

Now, extract/insert the SIM, no unsolicited indication appears on DTE!

Extract the SIM again

AT#SIMDET=1

 simulate SIM inserted, but it is still physically extracted

OK

AT#SIMDET?

#SIMDET: 1,0

 1 = simulate the status SIM inserted, 0 = SIM is physically

OK

not inserted

AT#SIMPR?

#SIMPR: 0, 0, 0  0: Disable URC, 0: Local SIM, 0: SIM is physically not inserted

#SIMPR: 0, 1, 0  0: Disable URC, 1: Remote SIM, 1: Remote SIM not inserted

OK

Now, insert/extract the SIM, no unsolicited indication appears on DTE!

AT#SIMPR=1

 Enable URC

OK

Extract the SIM and set automatic SIM detection

#SIMPR: 0, 0

 0: Local SIM, 0: SIM is physically not inserted

#SIMPR: 1, 0

 1: Remote SIM, 0: Remote SIM is not connected from SAP

AT#SIMDET=2

OK

AT#SIMDET?

#SIMDET: 2,0

 2 = automatic SIM detection through SIMIN pin (Factory Setting),

OK

0 = SIM not inserted

Now, insert/extract the SIM, unsolicited indication appears again on DTE!

1VV0301556 Rev. 10

Page 74 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

#SIMPR: 0, 1 #SIMPR: 1, 0 #QSS: 1 #QSS: 0

 0: Local SIM, 0 SIM is physically inserted  1: Remote SIM, 0: Remote SIM is not connected from SAP  unsolicited indication: SIM is logically activated  unsolicited indication: SIM is logically deactivated

4.3.5.6. SIM/USIM Access File
AT+CSIM command is used to read/write SIM/USIM files. The format of the AT+CSIM parameters and the sequence of the AT+CSIM commands must be in accordance with the protocol card. The distinction between SIM and USIM <command> format is needed because the AT+CSIM command works directly on the card.
AT+CSIM=<length>,<command>
To read/write card files refer to "LE910Cx_AT_Command_Reference_Guide.doc".

4.3.5.7. MSISDN
MSISDN is a number uniquely identifying a subscription to a GSM or UMTS mobile network. MSISDN is defined by the ITU-U Recommendation which defines the numbering plan: a number uniquely identifies a public network termination point and typically consists of three fields, CC (Country Code), NDC (National Destination Code), and SN (Subscriber Number), up to 15 digits in total. Select the "ON" storage: AT+CPBS="ON" OK Write a new record on the selected storage: AT+CPBW=1,"+393912457",145,"MyNumber" OK Read the just entered number: AT+CPBF="MyNumber" +CPBF: 1," +393912457",145,"MyNumber" OK

1VV0301556 Rev. 10

Page 75 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.3.5.8. Preferred Operator List
Use the following AT command to manage the Preferred Operator List stored on SIM/USIM.

AT+CPOL=[<index>][,<format>[,<oper>[,<GSM_AcT>,<GSM_Compact_AcT>,<UTRAN_Ac T>,<EUTRAN_AcT>]]]

Examples Check the supported number of operators in the SIM Preferred Operator List and the format: AT+CPOL=? +CPOL: (1-16),(0-2) OK The used SIM supports 16 positions; the supported format (2) is numeric. In addition, format (0) is long format alphanumeric and (1) is short format alphanumeric. Reading the entire list: AT+CPOL? +CPOL: 1,2,"45005",1,1,1,1 +CPOL: 2,2,"45005",0,0,1,1 +CPOL: 3,2,"00102",1,1,1,1 +CPOL: 4,2,"00101",1,1,0,1 +CPOL: 5,2,"00101",1,1,1,1 +CPOL: 6,2,"111222",1,1,1,1 +CPOL: 7,2,"00102",1,1,1,1 +CPOL: 15,2,"45008",1,1,1,1 +CPOL: 16,2,"45007",0,0,0,1 OK The meaning of the string "XXXYY" is: - XXX = Mobile Country Code - YY = Mobile Network Code

1VV0301556 Rev. 10

Page 76 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
The last 4 digits is GSM, GSM compact, UTRA and EUTRAN access technology sequentially. Delete the first entry using a non-existent <format> value just to see the response when the Extended Error result code is enabled: AT+CPOL=1,3 +CME ERROR: operation not supported Now, delete the first entry using the right <format> value: AT+CPOL=1,2 OK AT+CPOL? +CPOL: 2,2,"20810",1,1,0,0 +CPOL: 3,2,"23205",1,0,1,0 ... +CPOL: 15,2,"23802",1,1,0,1 +CPOL: 16,2,"24201",1,0,1,1 OK The entry on first position is deleted AT+CPOL=1,2,20801,1,1,1,1 < Write a new entry in the first position OK Check if the new entry is written on first position: AT+CPOL? +CPOL: 1,2,"20801",1,1,1,1 < The new entry is written on first position +CPOL: 2,2,"20810",1,1,0,0 ... +CPOL: 16,2,"24201",1,0,1,1 OK

1VV0301556 Rev. 10

Page 77 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.3.6. Network Checking
4.3.6.1. Network Survey
Use the following AT command to perform a quick survey through channels belonging to the current band.
AT#CSURV[=[<s>,<e>]] Parameters: <s> - starting channel, <e> - ending channel Examples AT#CSURV Network survey started ... earfcn: 1350 rxLev: -59 mcc: 450 mnc: 05 cellId: 7323719 tac: 12556 phyCellId: 64 cellStatus: CELL_SUITABLE rsrp: -95 rsrq: -16 bw: 20 earfcn: 2500 rxLev: -66 mcc: 450 mnc: 05 cellId: 448779 tac: 12556 phyCellId: 87 cellStatus: CELL_SUITABLE rsrp: -97 rsrq: -11 bw: 20 earfcn: 100 rxLev: -43 mcc: 450 mnc: 06 cellId: 51999244 tac: 8471 phyCellId: 245 cellStatus: CELL_FORBIDDEN rsrp: -71 rsrq: -11 bw: 10 earfcn: 3743 rxLev: -54 mcc: 450 mnc: 08 cellId: 2486272 tac: 27 phyCellId: 245 cellStatus: CELL_FORBIDDEN rsrp: -85 rsrq: -11 bw: 20 earfcn: 1550 rxLev: -55 mcc: 450 mnc: 08 cellId: 2486275 tac: 27 phyCellId: 245 cellStatus: CELL_FORBIDDEN rsrp: -83 rsrq: -11 bw: 10 earfcn: 1694 rxLev: -59 mcc: 450 mnc: 08 cellId: 2486293 tac: 27 phyCellId: 29 cellStatus: CELL_FORBIDDEN rsrp: -87 rsrq: -11 bw: 10 earfcn: 2600 rxLev: -56 mcc: 450 mnc: 06 cellId: 51999242 tac: 8471 phyCellId: 245 cellStatus: CELL_FORBIDDEN rsrp: -84 rsrq: -11 bw: 10 earfcn: 3895 rxLev: -59 mcc: 450 mnc: 08 cellId: 2486293 tac: 27 phyCellId: 29 cellStatus: CELL_FORBIDDEN rsrp: -87 rsrq: -11 bw: 10 earfcn: 1350 rxLev: -72 phyCellId: 45 cellStatus: CELL_SUITABLE rsrp: -102 rsrq: -20 earfcn: 2500 rxLev: -47 phyCellId: 273 cellStatus: CELL_SUITABLE rsrp: -64 rsrq: -8 uarfcn: 10836 rxLev: -74 mcc: 450 mnc: 08 scr code: 1488 cellId: 14909569 lac: 7170 cellStatus: CELL_FORBIDDEN rscp: -75 ecio: -5.0

1VV0301556 Rev. 10

Page 78 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
uarfcn: 10737 rxLev: -52 mcc: 450 mnc: 05 scr code: 224 cellId: 63808804 lac: 8673 cellStatus: CELL_SUITABLE rscp: -56 ecio: -7.0 Network survey ended OK
4.3.6.2. BCCH Survey
Use the following AT command to perform a quick survey of the channels belonging to the current band. The survey stops as soon as <n> BCCH carriers are found. AT#CSURVB=[<n>] Parameters: <n> - number of desired BCCH carriers.

Examples AT#CSURVB=2
Network survey started ... uarfcn: 10737 rxLev: -90 mcc: 450 mnc: 05 scr code: 224 cellId: 63808804 lac: 8673 cellStatus: CELL_SUITABLE rscp: -91 ecio: -5.0 uarfcn: 10836 rxLev: -98 mcc: 450 mnc: 08 scr code: 1488 cellId: 14909569 lac: 7170 cellStatus: CELL_FORBIDDEN rscp: -101 ecio: -7.0 Network survey ended OK
Note: The #CSURVB command could not be executed on the module supports only 4G.
4.3.7. Network Information
4.3.7.1. Network Status
Enter the following AT command to verify if the module is registered on a network. AT+CREG?

1VV0301556 Rev. 10

Page 79 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Circuit Service Network Registration Status in UTRAN/EUTRAN
Send command AT+CREG?
Wait for response:

Response
+CREG: 0,0 or
+CREG: 1,0
+CREG: 0,1 or
+CREG: 1,1
+CREG: 0,2 or
+CREG: 1,2
+CREG: 0,3 or
+CREG: 1,3
+CREG: 0,4 or
+CREG: 1,4
+CREG: 0,5 or
+CREG: 1,5
Table 9: +CREG Status

Reason

Action

SIM not present or damaged or SIM is present, and PIN is required to continue operations

Check the inserted SIM/USIM status (Please refer to the "SIM/USIM management "contents)

Mobile is registered on its home network.

Proceed ahead. Ready to CS call

Mobile is currently not registered on any network but is looking for a suitable one to register.

Repeat procedure at "Fast Network Status Check" contents to see if it has found a suitable network to register in

Mobile has found some networks, but it is not allowed to register on any of them, no roaming was allowed.

Try in another place or reset, then repeat procedure at "Fast Network Status Check" contents

Mobile is in an unknown network status

Repeat procedure at "Fast Network Status Check" contents to see if it has found a suitable network to register in

Mobile has found some networks and is currently registered in roaming on one of them

Proceed ahead. Ready to CS call

Packet Service Network Registration Status in UTRAN
Send command AT+CGREG? Wait for response:

Response
+CGREG: 0,0 or
+CGREG: 1,0
+CGREG: 0,1 or
+CGREG: 1,1
+CGREG: 0,2 or
+CGREG: 1,2

Reason
SIM not present or damaged or SIM is present and PIN is required to continue operations
Mobile is registered on its home network.
Mobile is currently not registered on any network but is looking for a suitable one to register.

Action Check the inserted SIM/USIM status (Please refer to the "SIM/USIM management "contents)
Proceed ahead. Ready to PS call
Repeat procedure at "Fast Network Status Check" contents to see if it has found a suitable network to register in

1VV0301556 Rev. 10

Page 80 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Response

Reason

+CGREG: 0,3 or
+CGREG: 1,3

Mobile has found some networks, but it is not allowed to register on any of them, no roaming was allowed.

+CGREG: 0,4 or
+CGREG: 1,4

Mobile is in an unknown network status

+CGREG: 0,5 or
+CGREG: 1,5
Table 10: +CGREG Status

Mobile has found some networks and is currently registered in roaming on one of them

Action
Try in another place or reset, then repeat procedure at "Fast Network Status Check" contents
Repeat procedure at "Fast Network Status Check" contents to see if it has found a suitable network to register in
Proceed ahead. Ready to PS call

Packet Service Network Registration Status in E-UTRAN
Send command AT+CEREG?, Wait for response:

Response

Reason

+CEREG: 0,0 or
+CEREG: 1,0

SIM not present or damaged or SIM is present and PIN is required to continue operations

+CEREG: 0,1 or
+CEREG: 1,1

Mobile is registered on its home network.

+CEREG: 0,2 or
+CEREG: 1,2

Mobile is currently not registered on any network but is looking for a suitable one to register.

+CEREG: 0,3 or
+CEREG: 1,3

Mobile has found some networks, but it is not allowed to register on any of them, no roaming was allowed.

+CEREG: 0,4 or
+CEREG: 1,4

Mobile is in an unknown network status

+CEREG: 0,5 or
+CEREG: 1,5
Table 11: +CEREG Status

Mobile has found some networks and is currently registered in roaming on one of them

Action
Check the inserted SIM/USIM status (Please refer to the "SIM/USIM management "contents)
Proceed ahead. Ready to PS call
Repeat procedure at "Fast Network Status Check" contents to see if it has found a suitable network to register in Try in another place or reset, then repeat procedure at "Fast Network Status Check" contents Repeat procedure at "Fast Network Status Check" contents to see if it has found a suitable network to register in
Proceed ahead. Ready to PS call

Note/Tip: When a response +CREG/+CGREG/+CEREG: x,1 or + CREG/+CGREG/+CEREG: x,5 is received, then the device is ready to place and receive a call or SMS. It is possible to jump directly to call setup procedures or SMS sending procedures.

1VV0301556 Rev. 10

Page 81 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.3.8. Network Operator Identification
Use the following AT command to query the module for Network Operators Identifications Once the mobile has registered on some network (or even if it has returned +CREG/+CGREG/+CEREG:x,3), it is possible to query the mobile for network identifications, codes and names:
 send command AT+COPS=?  wait for response in the format: +COPS: [list of supported (<stat>,long alphanumeric <oper>,short alphanumeric <oper>,numeric <oper>,< AcT>)s] [,,(list of supported <mode>s),(list of supported <format>s)] where:

<stat> operator availability 0 - unknown 1 - Available 2 - current 3 - Forbidden <AcT> access technology selected 0 GSM 2 UTRAN 7 E-UTRA UTRAN
Note: Since with this command a network scan is done, this command may require some seconds before the output is given.
For example: AT Command AT+COPS=?

Answer:
+COPS: (2,"","SKTelecom","45005",7),(3,"KT","KT","45008",7),(3,"KOR LG Uplus","LG U+","45006",7),,(0-4),(0-2)

1VV0301556 Rev. 10

Page 82 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
OK In this case the mobile is registered on the network "SKTelecom" which is a network from Korea, code: 450 and Network ID: 05. The other network is not available for registration:
Note: This command issues a network request and may require quite a long time to respond, since the device has to wait the answer from the network (this can take up to 180 seconds). Do not use this command unless necessary.

4.3.9. Signal Strength & Quality
Assume that the mobile is registered on a Network that can be: GERAN or UTRAN. The
following AT command can be useful to know the strength & quality of the received signal to have an indication about the radio link reliability.

AT+CSQ

Examples Assume that the antenna is not connected to the Telit Module or Network coverage is not present at all. AT+CSQ +CSQ: 99,99 OK Now, the antenna is connected to the Telit Module and Network coverage is present. Enter again the previous AT command: AT+CSQ +CSQ: 17,0 OK 17 = <rssi> = Received Signal Strength Indication 0 = <ber> = Bit Error Rate Now, a wrong parameter is entered just to see the result format when Verbose Extended Error

1VV0301556 Rev. 10

Page 83 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
result is enabled AT+CSQ? +CME ERROR: operation not supported
4.3.10. Extended Signal Quality
Assume that the mobile is registered on a Network that can be: GERAN ,UTRAN and EUTRAN. The following AT command can be useful to know the strength & quality of the received signal to have an indication of the reliability of the radio link.

AT+CESQ

Examples
Assume that the antenna is not connected to the Telit Module or Network coverage is not
present at all.
AT+CESQ +CESQ: 99,99,255,255,255,255 OK
Now, the antenna is connected to the Telit Module and GERAN Network coverage is present.
Enter again the previous AT command:
AT+CESQ +CESQ: 61,5,255,255,255,255 OK
61 = <rxlev> = Received Signal Strength Level.
5 = <ber> = Bit error rate (in percent).
Now, the antenna is connected to the Telit Module and UTRAN Network coverage is present.
Enter again the previous AT command:
AT+CESQ +CESQ: 99,99,94,47,255,255 OK

1VV0301556 Rev. 10

Page 84 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
94 = <rscp> = Received Signal Code Power. 47 = <ecno> = Ratio of the received energy per PN chip to the total received power spectral density. Now, the antenna is connected to the Telit Module and EUTRAN Network coverage is present. Enter again the previous AT command: AT+CESQ +CESQ: 99,99,255,255,32,95 OK 32 = <rsrq> = Reference Signal Received Quality. 95 = <rsrp> = Reference Signal Received Power. Now, a wrong parameter is entered just to see the result format when Verbose Extended Error result is enabled. AT+CESQ? +CME ERROR: operation not supported

4.3.11. Fast Network Status Check

Once the module is registered on a network, regardless of the technology (3G or 4G), it is useful to know the strength of the received signal and the network on which the module is registered. This information is collected using the following standard AT commands: +CREG, +COPS and +CSQ. These commands are not fast in the response due to network response time, especially the +COPS command. If the user objective is to keep his application as general as possible, he can use the standard AT command mentioned above.

Telit modules provide proprietary AT commands to gather all the information in a faster and simpler way, they are:

�

AT#MONI

� AT#SERVINFO

Use the following AT command to select cells and collect their information:

UTRAN mode

AT#MONI #MONI: KOR SK Telecom PSC:15 RSCP:-102 LAC:21E1 Id:63809024 EcIo:0.0

1VV0301556 Rev. 10

Page 85 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
UARFCN:10713 PWR:-64dbm DRX:0 SCR:240 OK E-UTRAN mode AT#MONI #MONI: KOR SK Telecom RSRP:-91 RSRQ:-7 TAC:310F Id:135386691 EARFCN:200 PWR:-62dbm DRX:32 OK UTRAN mode Collect only the Serving Cell Network Information: AT#SERVINFO #SERVINFO: 10713,-64,"KOR SK Telecom","45005",15,21E1,0,3,-0,"I",01,12800 OK E-UTRAN mode Collect only the Serving Cell Network Information: AT#SERVINFO #SERVINFO: 200,-61,"KOR SK Telecom","45005",811D643,310F,32,3,-89 OK
Note: AT#MONI and AT#SERVINFO commands should be used only to collect network name and signal strength information. To check if the module is registered or it is looking for a suitable network to register on, use +CREG command. In fact, if the network signal is too weak and module loses the registration, until a new network is found the two commands report the last measured valid values and not the real ones. The TA (timing advance parameter) is valid only during a call.
Note: Check the network registration with +CREG command. When the module is registered, query the module for network operator name and signal strength with AT#MONI command.

1VV0301556 Rev. 10

Page 86 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.3.11.1. 3G Network
Suppose that the 3G Technology is present on the air. Use the command AT+WS46=22 to force the module in 3G mode.
Examples Check if the module is using 3G Technology: AT+COPS? +COPS: 0,0,"KOR SK Telecom",2 OK Yes, it is using 3G Technology. Select the Serving Cell: AT#MONI=0 OK Collect information: AT#MONI #MONI: KOR SK Telecom PSC:14 RSCP:-64 LAC:21E1 Id:3CDA520 EcIo:-2.5 UARFCN:10713 PWR:-59 dbm DRX:64 SCR:224 OK Use the following AT command to collect only the Serving Cell Information: AT#SERVINFO #SERVINFO: 10713,-61,"KOR SK Telecom","45005",14,21E1,64,3,-66,"I",01 OK Use this command to get the current network status. AT#RFSTS #RFSTS: "450 05",10713,14,-5.0,-68,-63,21E1,01,,64,19,0,1,001,3CDA520, "450050217220238","KOR SK Telecom",3,1 OK

1VV0301556 Rev. 10

Page 87 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.3.11.2. 4G Network
Suppose that the 4G Technology is present on the air. Use the command AT+WS46=28 to force the module in 4G mode.

Examples Check if the module is using 4G Technology: AT+COPS? +COPS: 0,0,"KOR SK Telecom",7 OK Yes, it is using 4G Technology. Select the Serving Cell: AT#MONI=0 OK Collect information: AT#MONI #MONI: KOR SK Telecom RSRP:-79 RSRQ:-9 TAC:310C Id: 06FC047 EARFCN:1350 PWR:53dbm DRX:128 OK Use the following AT command to collect only the Serving Cell Information: AT#SERVINFO #SERVINFO: 1350,-60,"KOR SK Telecom","45005",06FC047,310C,128,3,-94 OK Use this command to get the current network status. AT#RFSTS #RFSTS: "450 05",1350,-94,-59,13,310C,255,,128,19,0,06FC047,"450050217220238","KOR SK Telecom"3,3 OK

4.3.12. Voice Call Establishment � Originate
Before setting up the Voice Call, it is assumed that the Telit Module is registered on a network and the signal strength is sufficient to carry on a reliable radio link.

1VV0301556 Rev. 10

Page 88 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.3.12.1. Dialing a Phone Number
Use the following AT command to dial up a phone number.
ATD<number>;
Examples Call the national number 040-4X92XYX. ATD0404X92XYX; OK Now, call the national number 040-4X92XYX in international format +39-040-4X92XYX. ATD+390404X92XYX; OK
4.3.12.2. Disconnect a Call
Use the following AT command to hang up the current Voice Call: ATH OK
4.3.12.3. Answering an Incoming Call
When an Incoming Call is recognized, the module sends an Unsolicited Code to DTE. Use the following AT command to answer the call. ATA OK
4.3.12.4. Set Microphone Mute
The following AT command mutes the microphone of the active path: AT+CMUT=1 OK Check the microphone setting:

1VV0301556 Rev. 10

Page 89 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
AT+CMUT? +CMUT: 1 OK

Advanced Operations
4.4.1. Call Management
The modules provide the SMS Service to store, send, receive, and delete a SMS, which is a short text message up to 160 characters long. Before using the SMS messages, you need to configure the Short Message Service.

4.4.1.1. Identifying the Call Type
The module can identify the call type before answering. To accomplish this feature, the module provides different ring indications (URC) depending on the call type. It is up to the user to enable the extended format reporting of incoming calls using the following AT command. AT+CRC=[<mode>] OK Examples Disable extended format reporting, and then assume that the module receives a call. AT+CRC=?  Check the range value +CRC: (0,1) OK AT+CRC=0 Disable extended format reporting. OK AT+CRC? +CRC: 0 OK The module detects a call. Ring indications are displayed on DTE: RING RING Now, enable extended format reporting, and then assume the module receives a call.

1VV0301556 Rev. 10

Page 90 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

AT+CRC=1

 Enable extended format reporting

OK

AT+CRC?

 Check if extended format reporting is enabled

+CRC: 1

OK

The module detects a call. Ring indications in extended format are displayed on DTE:

+CRING: VOICE

+CRING: VOICE

4.4.1.2. Identify the Caller
The Telit Module is able to identify the caller's number and provide information about it before the call is answered. The Calling Line Indication is displyaed on DTE after each RING or +CRING indication. The following AT command is used to enable/disable the Calling Line Indication.

AT+CLIP=[<n>] OK
Examples Enable extended format reporting and caller number identification, and then assume to receive a call. Enable extended format reporting. AT+CRC=1 OK
Check if extended format reporting is enabled. AT+CRC? +CRC: 1 OK
Check the values range.

1VV0301556 Rev. 10

Page 91 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
AT+CLIP? +CLIP: 0,1 OK
Enable caller number identification. AT+CLIP=1 OK AT+CLIP? +CLIP: 1,1 OK The module detects a call; ring indications and Calling Line Identification of the calling party are displayed on DTE: +CRING: VOICE +CLIP: "+390404X92XYX",145,"",128,"",0 +CRING: VOICE +CLIP: "+390404X92XYX",145,"",128,"",0
4.4.1.3. Calling Line Indication
The Telit Module can send the Calling Line Indication (CLI) to the other party through the Network when an outgoing call is established. This indication can be restricted (CLIR) in various ways.
CLIR Service Status
Use the following AT command to query the CLIR Service status. AT+CLIR?
Examples
Check the current CLIR settings: AT+CLIR? +CLIR: 0,4 OK
<n> = 0 = CLIR module facility in accordance with CLIR Network Service

1VV0301556 Rev. 10

Page 92 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
<m>= 4 = CLIR temporary mode presentation allowed (it is the facility status on the Network) The <m> parameter reports the status of the service at the Network level. If the CLIR service is not provided by the Network, this service cannot be used and changing the first parameter <n> will not change the CLI presentation to the other party behavior of the Network.
Restrict/Allow Caller Line ID Indication
Use the following AT command to enable or disable the presentation of the CLI to the called party. AT+CLIR=[<n>] OK

Examples
Disable the CLI presentation to the other party permanently. Read the supported values.
AT+CLIR=? +CLIR: (0-2) OK
Read the current Module and Network status.
AT+CLIR? +CLIR: 0,4 OK
Set to 1 Module status, CLI not sent.
AT+CLIR=1 OK
Read the current Module and Network status.
AT+CLIR? +CLIR: 1,4 OK

4.4.1.4. Call Barring Control
The Call Barring Service enables the user to control the calls. The user can block all:

1VV0301556 Rev. 10

Page 93 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
 Outgoing calls  Outgoing international calls  Outgoing international calls except those for its Country  Incoming calls  Incoming calls while roaming. The User can activate or cancel Call Barring using the AT commands described below. Moreover, the user needs to enter a special access code (Call Barring Access Code) to modify the Call Barring options. Network Operator provides the Call Barring Code for each subscriber. Hereafter the Call Barring Code is indicated as "Network Password provided by the Network Operator". The network handles the Call Barring Service, so the module sends a network request and it may take several seconds to get the response from the network. Furthermore, all the Call Barring Service AT commands must be used when the module is registered on some network, otherwise an error code is returned.
Lock/Unlock the Module
Use the following AT command to lock/unlock the Module or a Network facility:
AT+CLCK=<fac>,<mode>[,<passwd>[,<class>]]
Read the supported facilities: AT+CLCK=? +CLCK: ("AB","AC","AG","AI","AO","IR","OI","OX","SC","FD","AL","PN","PU","PP","P C","PF") OK
Call Barring Service Status
Use the following AT command to require the status of the selected network facility. AT+CLCK=<fac>,2
Examples Check the status of SIM facility:

1VV0301556 Rev. 10

Page 94 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
AT+CLCK="SC",2 +CLCK: 1 OK
Check the status of a wrong facility just to see the format response. Before doing that verify the Extended Error result code. AT+CMEE? +CMEE: 2  verbose format OK AT+CLCK="S1",2 +CME ERROR: operation not supported Check "IR" network facility status (Bar Incoming Calls status when roaming outside the home country). AT+CLCK=IR,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"IR" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax. Check "OI" network facility status (Bar Outgoing (originated) International Calls). AT+CLCK=OI,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"OI" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax. Assume that the module is not registered. Try to check "OI" network facility status just to see the format response when Extended Error result code is enabled in numeric format. AT+CMEE=1 OK AT+CLCK=OI,2 +CME ERROR: 100

1VV0301556 Rev. 10

Page 95 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Bar/Unbar All Incoming Calls
Use the following AT command to change the status of the AI network facility (All Incoming Calls):
AT+CLCK=AI,<mode>,<passwd>
Examples Lock and unlock "AI" network facility. Assume that the Network Password provided by Network Operator is 2121. Check "AI" network facility status: AT+CLCK=AI,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"AI" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax. Lock "AI" network facility: AT+CLCK=AI,1,2121 OK Check "AI" facilities status: AT+CLCK=AI,2 +CLCK: 1,8 +CLCK: 1,4 +CLCK: 1,2 OK "AI" network facility is locked (1): 8 = short message service, 4 = fax, 2 = data. Unlock "AI" facilities: AT+CLCK=AI,0,2121 OK
Check "AI" facilities status:

1VV0301556 Rev. 10

Page 96 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
AT+CLCK=AI,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK "AI" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax.
Bar/Unbar Incoming Calls in International Roaming
Use the following AT command to change the status of the "IR" network facility (Incoming Calls when Roaming outside the home country).
AT+CLCK=IR,<mode>,<passwd>

Examples
Lock and unlock "IR" network facility. Assume that the network password provided by Network Operator is 2121.
Check "IR" network facilities status:

AT+CLCK=IR,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"IR" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax.
Lock "IR" network facility:
AT+CLCK=IR,1,2121 OK
Check "IR" facilities status:

AT+CLCK=IR,2 +CLCK: 1,1 +CLCK: 1,8
1VV0301556 Rev. 10

Page 97 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
+CLCK: 1,4 +CLCK: 1,2 OK "IR" network facility is locked (1): 8 = short message service, 4 = fax, 2 = data. Unlock "IR" network facility: AT+CLCK=IR,0,2121 OK
Read IR facilities status: AT+CLCK=IR,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"IR" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax.
Bar/Unbar All Outgoing Calls
Use the following AT command to change the status of the "AO" network facility (All Outgoing Calls).
AT+CLCK=AO,<mode>,<passwd>

Examples
Lock and unlock "AO" network facility. Assume the network password provided by Network Operator is 2121.
Check "AO" network facility status:
AT+CLCK=AO,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"AO" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax.
Lock "AO" network facility:

1VV0301556 Rev. 10

Page 98 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
AT+CLCK=AO,1,2121 OK
Check "AO" network facility status: AT+CLCK=AO,2 +CLCK: 1,8 +CLCK: 1,4 +CLCK: 1,2 OK
"AO" network facility is locked (1): 8 = short message service, 4 = fax, 2 = data. Unlock "AO" network facility: AT+CLCK=AO,0,2121 OK
Checking "AO" network facility status: AT+CLCK=AO,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"AO" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax.
Bar/Unbar All Outgoing International Calls
Use the following AT command to change the status of the "OI" network facility (Outgoing International Calls).
AT+CLCK=OI,<mode>,<passwd>
Examples Lock and unlock "OI" network facility. Assume the network password provided by Network Operator is 2121.

1VV0301556 Rev. 10

Page 99 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Checking "OI" network facility status:
AT+CLCK=OI,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"OI" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax.
Lock "OI" network facility:
AT+CLCK=OI,1,2121 OK
Check "OI" network facility status:
AT+CLCK=OI,2 +CLCK: 1,1 +CLCK: 1,8 +CLCK: 1,4 +CLCK: 1,2 OK
"OI" network facility is locked (1): 1 = voice, 8 = short message service, 4 = fax, 2 = data.
Unlock "OI" network facility:
AT+CLCK=OI,0,2121 OK
Check "OI" network facility status:
AT+CLCK=OI,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"OI" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax.

Bar/Unbar All Outgoing International Calls Except to Home Country
Use the following AT command to change the status of the "OX" network facility (Outgoing International Calls except to Home Country).

1VV0301556 Rev. 10

Page 100 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
AT+CLCK=OX,<mode>,<passwd>
Examples Lock and unlock "OX" network facility. Assume the network password provided by Network Operator is 2121. Check "OX" network facility status: AT+CLCK=OX,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"OX" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax. Lock "OX" network facility. It is a setting not supported by the network: AT+CLCK=OX,1,2121 ERROR
Enable extended error result codes in verbose format: AT+CMEE=2 OK
Try again to lock "OX" network facility: AT+CLCK=OX,1,2121 +CME ERROR: unknown
Check "OX" network facility status: AT+CLCK=OX,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"OX" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax.
Unbar All Calls
Use the following AT command to unlock "AB" network facility (All Barring services).

1VV0301556 Rev. 10

Page 101 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
AT+CLCK=AB,0,<passwd>
Examples Unlock "AB" network facility. Assume the Network Password provided by Network Operator is 2121. AT+CLCK=AB,0,2121 OK
Check "IR" network facility status: AT+CLCK=IR,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"IR" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax. Check "OI" network facility status: AT+CLCK=OI,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"OI" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax. Check "AI" network facility status: AT+CLCK=AI,2 +CLCK: 0,1 +CLCK: 0,2 +CLCK: 0,4 OK
"AI" network facility is unlocked (0): 1 = voice, 2 = data, 4 = fax.

1VV0301556 Rev. 10

Page 102 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.4.2. DTMF Tones
4.4.2.1. DTMF Transmission on Uplink
Using the following AT command, the module sends the suitable command to the network infrastructure to generate on the other audio party the correspondent DTMF tone. The module embeds the DTMF command in a network message and sends it during the voice call.

AT+VTS=<dtmf>[,duration]
Example
Check the range of supported values: AT+VTS=? (0-9,#,*,A-D),(0,10-255) OK Check the tone duration of the single character: AT+VTD? 1 OK Dialing the number in voice mode: ATD04x419x40y; OK Send the following sequence of tones: AT+VTS=123456789 OK Hang up the voice call: ATH
OK

4.4.3. SMS Management
The modules provide the SMS Service to store, send, receive, and delete a SMS, which is a short text message up to 160 characters long. Before using the SMS messages, you must configure the Short Message Service.

4.4.3.1. Select SMS Format Type
The Telit Module supports two SMS formats:

1VV0301556 Rev. 10

Page 103 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
 PDU mode  Text mode The module uses the PDU format to send a message on the air. The PDU mode enables the user to edit the message in PDU format. If the user is familiar with PDU encoding, he can operate with PDU by selecting that mode and using the appropriate commands. This document uses the Text mode to explain how to operate with SMS. Here is the AT command to select the mode. AT+CMGF=<mode> Examples Check the supported range of values: AT+CMGF=? +CMGF: (0,1) OK Set up Text Mode for the SMS: AT+CMGF=1 OK This setting is stored and remains active until the module is turned OFF.
Set Text Mode Parameters
When SMS format is Text mode, the SMS parameters that usually reside on the header of the PDU must be set apart with the +CSMP command.
AT+CSMP=<fo>,<vp>,<pid>,<dcs>
Example 1 Set the SMS parameters as follow:
 <fo> expressed in binary format, see table below. The binary number expressed in decimal format is 17.

1VV0301556 Rev. 10

Page 104 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

0

0

0

1

0

0

0 1

Module is not requesting a status report

Always 0

Replay Path not
requested

Validity period field present in relative format

Always 0

SMSSUBMIT

 <vp> validity period (in relative format) = 24 hours is coded into 167 decimal format.  <pid> protocol identifier.  <dcs> data coding scheme, default value 0.

AT+CSMP= 17,167,0,0 OK Example 2 Set the SMS parameters as follow:
 <fo> expressed in binary format, see table below. The binary number expressed in decimal format is 25.

0

0

0

1

1

0

0

1

Module is not requesting a status report

Always 0

Replay Path not requested

Validity period field present in absolute
format

Always 0 SMS-SUBMIT

 <vp> validity period in absolute format represents the expiration date of the message, for example:
date: 29/06/02; time: 02:20; in the time zone of Italy (+1) is formatted as follows: "29/06/02,02:20:00+1"
 <pid> protocol identifier.
 <dcs> data coding scheme:
o Default Alphabet o Class 0 (immediate display SMS) Data coding scheme is coded in the following binary format: 11110000, corresponding to 240 in decimal format.

AT+CSMP=25,"29/06/02,02:20:00+1",0,240 OK

1VV0301556 Rev. 10

Page 105 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Note/: Use dcs=0 if no particular data coding scheme is needed. Not all dcs combinations described in the 3GPP TS 23.038 are jointly supported by Networks and Telit Modules: some features may be not implemented on Networks or on Telit Modules. This mismatch generates an ERROR result code, use different dcs.

Character Sets
Use the following AT command to select the character set:

AT+CSCS=<chset> Here are the supported character sets:
 "GSM" default alphabet  "IRA" � ITU-T.50  "8859-1" � ISO 8859 Latin 1  "PCCP437" � PC character set Code Page 437.  "UCS2" � 16-bit universal multiple-octet coded character set (ISO/IEC10646)

Examples Check the supported character sets: AT+CSCS=? +CSCS: ("GSM", "IRA", "8859-1", "PCCP437", "UCS2") OK Check the current character set: AT+CSCS? +CSCS: "IRA" OK Select a non-existent character set, merely to see the response format: AT+CSCS="GSA" ERROR Enabling the Error report in verbose format:

1VV0301556 Rev. 10

Page 106 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
AT+CMEE=2 OK Select again a non-existent character set: AT+CSCS="GSA" +CME ERROR: operation not supported

4.4.3.1.2.1. IRA Character Set
The IRA character set is used in Text mode. IRA set defines each character as a 7-bit value: from 0x00 to 0x7F. The table below lists all the supported characters and their hexadecimal code.

Least Significant Nibble

Most Significant Nibble

0x 1x 2x 3x 4x 5x 6x 7x

x0

SP1 0 @ P

p

x1

! 1AQaq

x2

" 2BRb r

x3

#3CSc s

x4

$4DTd t

x5

%5 EUe u

x6

&6FV f v

x7

` 7 GWg w

x8

( 8HXhx

x9

) 9 I Y i y

xA LF2

* : JZ j z

xB

+ ; K

k

xC

, <L

l

xD CR3

- =M

m

xE

. >N

n

xF

/ ?O�o

1 � SP stands for space character

1VV0301556 Rev. 10

Page 107 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
2 � LF stands for Line Feed character 3 � CR stands for Carriage Return character

The following examples show how to use the IRA table:  Get the IRA code of the character `&': the most significant nibble is 2, the least significant nibble is 6, so the IRA code for the `&' character is the hexadecimal value: 0x26.  Translate IRA code 0x6B into the corresponding character: the most significant nibble is 6, the least significant nibble is B, the cell at the crossing of column 6 and row B holds the character: "k".
4.4.3.1.2.2. UCS2 Character Set
The UCS2 Character Set is used in Text mode.  Phone number 329 05 69 6... converted into "UCS2" format: 3=0033, 2=0032, 9=0039, 0=0030, 5=0035, 6=0036, 9=0039, 6=0036 ...  Text HELLO converted into UCS2 format: H=0048, E=0045, L=004C, O=004F
4.4.3.2. Read SMSC Number
The module sends the SMS to the SMSC where the message is dispatched towards its final destination or is kept until the delivery is possible. To ensure the correct funcioning of this service, the number of the SMSC needs to be configured on the module in accordance with the network operator used. To know the SMSC number stored on the module, use the following AT command.

AT+CSCA?

Check the stored SMSC number:

AT+CSCA? +CSCA: "+39X20XX58XX0",145 OK SMSC number is compliant with the international numbering scheme.

1VV0301556 Rev. 10

Page 108 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.4.3.3. Set SMSC Number
Use the following AT command to store a new SMSC number. The old number is overwritten.

AT+CSCA=<number>,<type> Set up the desired SMSC number in international format: AT+CSCA=+39X20XX58XX0,145 OK Enable extended result code in verbose format: AT+CMEE=2 OK Enter the command with no parameters: AT+CSCA= +CME ERROR: operation not supported
4.4.3.4. Send a SMS
Use the following AT command to send a SMS.

AT+CMGS

Note: To read and set the SMSC number see � 3.4.1.2 and 3.4.1.3.

Example 1 Send a SMS to the module itself and do not store it. Use the UCS2 character set. Select Text Mode.
AT+CMGF=1 OK Select the UCS2 character set.

1VV0301556 Rev. 10

Page 109 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
AT+CSCS="UCS2" OK Set SMS parameters: AT+CSMP=17,168,0,26 OK Select how the new received message event is notified by the DCE to the DTE. AT+CNMI=1,1,0,0,0 OK Send the message to the module itself. The UCS2 character set is used:
 Phone number 329 05 69 628 is converted into "UCS2" format: 3=0033, 2=0032, 9=0039, 0=0030, 5=0035, 6=0036, 9=0039, 6=0036, 2=0032, 8=0038
 Text CIAO is converted into UCS2 format: C=0043, I=0049, A=0041, O=004F AT+CMGS=0033003200390030003500360039003600320038 > 004300490041004F (close the message with Ctrl Z) +CMGS: 81 OK The module itself receives the SMS, the following unsolicited indication is shown on DTE: +CMTI: "SM",3

Note: The SMS was successfully sent to the SMSC and its network reference number is 81. Do not confuse message reference with the message index position: the first one indicates the network reference for identifying the sent message, the second one � reported by the unsolicited indication � indicates that the module receives the message and it is stored on the position 3 of the "SM" storage.

Select the "SM" storage as indicated by the unsolicited indication. AT+CPMS="SM" +CPMS: 3,50,3,50,3,50 OK

1VV0301556 Rev. 10

Page 110 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Read the message from the storage position indicated by the unsolicited indication. AT+CMGR=3 +CMGR: "REC UNREAD","002B003300390033003200390030003500360039003600320038", "00570049004E0044002000530049004D","08/05/13,12:22:08+08" 004300490041004F OK

Example 2 Send a SMS to the module itself and do not store it. Select Text Mode AT+CMGF=1 OK Select how the new received message event is notified by the DCE to the DTE. AT+CNMI=1,1,0,0,0 OK Send the message to the module itself. AT+CMGS="+39329X569YYY" > SEND THE SMS #1 TO ITSELF (close the message with Ctrl Z) +CMGS: 76 OK The module itself receives the SMS #1, the following unsolicited indication is shown on DTE: +CMTI: "SM",1 The SMS was successfully sent to the SMSC and its network reference number is 76. Do not confuse message reference with message index position: the first one indicates the network reference to identify the sent message, the second one � reported by the unsolicited indication � indicates that the module has received the message and it is stored on the position 1 of the "SM" storage. Use unsolicited indication parameter to read the SMS #1 for the first time.

1VV0301556 Rev. 10

Page 111 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
AT+CMGR=1 +CMGR: "REC UNREAD","+39329X569YYY","WIND SIM","08/04/18,13:58:04+08" SEND THE SMS #1 TO THE MODULE ITSELF OK
4.4.3.5. Select/Check SMS Storage Type
Telit Modules can provide two type of SMS storage, in agreement with the family of belonging:
 "SM" � SIM Card Memory  "ME" � Mobile Equipment Memory  "SR" � Status Report Message Memory. Use the following AT command to select memory storage: AT+CPMS=<memr>,<memw>,<mems> The SMS are usually stored (this is true for both the originated and the received SMS) in the SM/ME storage. The LE910Cx family allows the user to select a different storage for the read-delete, write-send, and reception-saving SMS operations.

Examples

AT+CPMS=?

 Check the supported SMS storage types

+CPMS: ("ME","SM","SR"),("SM","ME"),("SM","ME")

OK

AT+CPMS?

 Check the current active storage type

+CPMS: "SM",1,50,"SM",1,50,"SM",1,50

OK

AT+CPMS="ME"

 Select "ME" storage type

+CPMS: 0,50,1,50,1,50

OK

AT+CPMS?

 Check the current active storage types

+CPMS: "ME",0,50,"SM",1,50,"SM",1,50 Two SMS storage types are active: "ME"

1VV0301556 Rev. 10

Page 112 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

OK

and "SM"

4.4.3.6. Store a SMS
Use the following AT command to store a SMS. AT+CMGW="<da>"

Example

Store a SMS in the "SM" storage, send it to the module itself and read the message in the receiving storage.

AT+CMGF=1

 Select Text Mode

OK

AT+CSMP=17,168,0,240  Assume to send a SMS of Class 0

OK

Select how the new received message event is notified by the DCE to the DTE

AT+CNMI=1,1,0,0,0

OK

Store into "SM" the SMS message to be sent to the module itself.

AT+CMGW="+39329X569YYY"

> SEND THE STORED SMS #1 TO THE MODULE ITSELF (close with Ctrl Z or ESC to abort)

+CMGW: 5

OK

Use index 5 to read SMS #1 from "SM" storage type.

AT+CMGR=5

+CMGR: "STO SENT","+39329X569YYY","WIND SIM"

SEND THE STORED SMS # 1 TO MODULE ITSELF

OK

Send the stored SMS #1using the storage position 5 returned by the previous command.

AT+CMSS=5

+CMSS: 78

OK

1VV0301556 Rev. 10

Page 113 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
The module itself receives the SMS #1, the following unsolicited indication is shown on DTE: +CMTI: "SM",6 Check the current SMS storage type. AT+CPMS? +CPMS: "SM",6,30,"SM",6,30,"SM",6,30 OK Use index 6 to read received SMS #1 from "SM" storage memory. AT+CMGR=6 +CMGR: "REC UNREAD","+39329X569YYY","WIND SIM","08/04/21,09:56:38+08" SEND THE STORED SMS # 1 TO THE MODULE ITSELF OK Use index 6 to read again received SMS #1 from "SM" storage memory. AT+CMGR=6 +CMGR: "REC READ","+39329X569YYY","WIND SIM","08/04/21,09:56:38+08" SEND THE STORED SMS # 1 TO THE MODULE ITSELF OK
4.4.3.7. Send a Stored SMS
A SMS stored in the "SM" storage type is sent using the following AT command. Its storage location index is needed. AT+CMSS=<index>

Example Send the stored SMS to the module itself: Select Text Mode AT+CMGF=1 OK Select "SM" storage to read SMS AT+CPMS="SM"

1VV0301556 Rev. 10

Page 114 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
+CPMS: 1,50,1,50,1,50 OK Read the SMS stored on position 1. AT+CMGR=1 +CMGR: "STO SENT","+39329X569YYY","WIND SIM" SEND THE STORED SMS # 1 TO MODULE ITSELF OK Select how the new received message event is indicated by the DCE to the DTE. AT+CNMI=1,1,0,0,0 OK Send the stored SMS # 1 message to module itself. AT+CMSS=1 +CMSS: 79 OK The module itself receives the SMS #1, the following unsolicited indication is shown on DTE: +CMTI: "SM",2
4.4.3.8. Delete an SMS
Use the following AT command to delete an SMS stored on the "SM" storage type. AT+CMGD=<index>

Example

Deleting an SMS stored in "SM" storage type:

AT+CPMS="SM"

 Select memory storage

+CPMS: 13,50,13,50,13,50

OK

AT+CMGD=?

 Check the SMS

+CMGD: (1,2,3,4,5,6,7,8,9,10,11,12,13),(0-4)

OK

1VV0301556 Rev. 10

Page 115 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Delete SMS in memory position 1. AT+CMGD=1 OK Check if the SMS is deleted: AT+CMGD=? +CMGD: (2,3,4,5,6,7,8,9,10,11,12,13),(0-4) OK Delete all SMS. Disregard the first parameter of the +CMGD. AT+CMGD=1,4 OK AT+CMGD=? +CMGD: (),(0-4) OK
4.4.3.9. Read an SMS
An SMS is read with the following command: AT+CMGR=<index>

Example AT+CPMS? +CPMS: "SM",1,50,"SM",1,50,"SM",1,50 OK Read the SMS #1, for the first time, in storage memory "SM", position 1: AT+CMGR=1 +CMGR: "STO SENT","+39329X569YYY","WIND SIM" SEND THE STORED SMS # 1 TO MODULE ITSELT OK

4.4.3.10. SMS Status
SMSs can be gathered into 5 different groups depending on their Status:

1VV0301556 Rev. 10

Page 116 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

 REC UNREAD: received messages still not read

 REC READ: received messages already read

 STO UNSENT: written messages not yet sent

 STO SENT: written messages already sent

 ALL: all types of messages

Use the following AT command to query the SMS status:

AT+CMGL=<stat>

Check if Text Mode is active

AT+CMGF?

+CMGF: 1

 Text Mode is active

OK

Check the supported SMS status

AT+CMGL=?

+CMGL: ("REC UNREAD", "REC READ", "STO UNSENT", "STO SENT", "ALL")

OK

Check the available SMS storage type

AT+CPMS?

+CPMS: "SM",6,30, "SM",6,30, "SM",6,30

OK

List all the SMSs stored on "SM" storage with their Status.

AT+CMGL="ALL"

+CMGL: 1,"REC READ", ���� SMS body ����

+CMGL: 2,"REC READ", ���� SMS body ����

+CMGL: 3,"REC READ", ���� SMS body ����

+CMGL: 4,"STO SENT", ���� SMS body ����

+CMGL: 5,"STO SENT", ���� SMS body ����

+CMGL: 6,"REC READ", ���� SMS body ����

OK

List the SMSs stored on "SM" storage with their Status=STO SENT

1VV0301556 Rev. 10

Page 117 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
AT+CMGL="STO SENT" +CMGL: 4,"STO SENT", ���� SMS body ���� +CMGL: 5,"STO SENT", ���� SMS body ���� OK
4.4.3.11. Cell Broadcast Service
GSM Standard specifies two different types of SMS:  SMS Point to Point (SMS/PP),  SMS Cell Broadcast (SMS/CB).
The first type can send a text message up to 160 characters long from one module to another (as stated in the previous paragraphs), the second type allows the Network to send, at the same time, a message to the all modules contained in the defined area including one or more radio cells. The availability and the implementation of the Cell Broadcast Service are strictly connected with the Network Operator of the subscriber. Use the following AT command to enable the Cell Broadcast Service:

AT+CSCB=[<mode>[,<mids>[,<dcss>]]]

Select Text Mode. AT+CMGF=1 OK Select the District service. AT+CSCB=0,50,0 OK Select how the new received message event is indicated by the DCE to the DTE. AT+CNMI=2,0,2,0,0 OK After a while the "District" broadcast message is displayed on the DTE. +CBM: 24,50,1,1,1 TRIESTE +CBM: 4120,50,2,1,1

1VV0301556 Rev. 10

Page 118 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
TRIESTE
+CBM: 8216,50,1,1,1 TRIESTE +CBM: 12312,50,2,1,1 TRIESTE

<mids> 000 010 020 022 024 030 032 034 040 050 052 054 056 057 058 059
Table 12: Message Identifiers

Service name Index
Flashes Hospitals Doctors Pharmacy Long Distant Road Reports Local Road Reports
Taxis Weather District Network Information Operator Services Directory Inquiries (national) Directory Inquiries (international) Customer Care (national) Customer Care (international)

4.4.4. GNSS Management

4.4.4.1. Introduction
The LE910Cx module is equipped with IZatTM Gen 8C that can be controlled by the modem using a set of AT commands or dedicated NMEA sentences.

1VV0301556 Rev. 10

Page 119 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.4.4.2. LE910Cx Serial Ports
LE(Linux): 3 serial ports are available on the module:  MODEM #1 USB SERIAL PORT  MODEM #2 USB SERIAL PORT  NMEA USB SERIAL PORT
TX (ThreadX): 2 serial ports are available on the module:  MODEM #1 USB SERIAL PORT  MODEM #2 USB SERIAL PORT

4.4.4.3. WGS84
The GPS receivers perform initial position and velocity calculations using an earthcentered earth-fixed (ECEF) coordinate system. The Results may be converted to an earth model (geoid) defined by the selected datum. For LE910Cx, the default datum is WGS 84 (World Geodetic System 1984) which provides a worldwide common grid system that may be translated into local coordinate systems or map dates. (Local map dates are a best fit to the local shape of the earth and not valid worldwide)

4.4.4.4. NMEA 0183
The NMEA 0183 is a specification created by the National Marine Electronics Association (NMEA) that defines the interface between other marine electronic equipment. The standard permits marine electronics to send information to computers and to other marine equipment. GPS receiver communication is defined within this specification. The actually supported version is 4.10.
The provided NMEA sentences are:
GGA GPS Fix Data. Time, position and fix type data.
GLL Geographic Position - Latitude/Longitude
GSA GPS receiver operating mode, satellites used in the position solution and DOP values.
GSV The number of GPS satellites in view satellite ID numbers, elevation, azimuth, and SNR values.
RMC Time, date, position, course and speed data.
VTG Course and speed information relative to the ground
GNS GNSS fix data.

1VV0301556 Rev. 10

Page 120 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
GRS Range residuals. DTM Datum reference information.

Note/Tip: The NMEA (LE(Linux)) or Modem (TX(ThreadX)) USB port provides the following sentences with $GPSNMUN command: GGA, GLL, GSA, GSV, RMC, VTG.
The NMEA (LE(Linux)) or Modem (TX(ThreadX)) USB port provides the following sentences with $GPSNMUNEX command: GNS, GRS, DTM.

GGA � Global Position System Fixed Data
This sentence provides time, position, and fixes related data for a GPS Receiver. Table A contains the values for the following example:
$GPGGA,161229.480,3723.247522, N,12158.341622, W,1,07,1.0,72.1, M,18.0, M, ,*18
Table A: GGA Data Format

Name Message ID
UTC Time Latitude N/S Indicator Longitude E/W Indicator Position Fix Indicator

Example $GPGGA
161229.48 3723.247522
N 12158.341622
W 1

Units

Description GGA protocol header
GP: GPS Talker ID hhmmss.ss
ddmm.mmmmmm N=north or S=south dddmm.mmmmmm E=east or W=west
See Table B

Satellites Used HDOP
MSL Altitude
Units Geoid Separation
Units Age of Diff. Corr.

07

Range 0 to 12

1.0

Horizontal Dilution of Precision

72.1

meters

Antenna Altitude above/below mean-sea-level

(geoid).

M

meters

Units of antenna altitude

18.0

meters

The difference between the WGS-84 earth ellipsoid

and the mean-sea-level (geoid), "-" means mean-

sea-level below ellipsoid.

M

meters

Units of geoidal separation

second

Null fields when DGPS is not used

1VV0301556 Rev. 10

Page 121 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Name Diff. Ref. Station ID
Checksum <CR> <LF>
Value 0 1 2 3 4 5 6 7 8

Example

Units

Description

Null fields when DGPS is not used / 0000-1023

*18

End of message termination

Table B: Position Fix Indicator

Description Fix not available or invalid GPS SPS Mode, fix valid Differential GPS, SPS Mode, fix valid GPS PPS Mode, fix valid
Real Time Kinematic Float RTK
Estimated (dead reckoning) Mode Manual Input Mode Simulator Mode

GLL - Geographic Position - Latitude/Longitude
This sentence provides latitude and longitude of vessel position, time of position fix and status. Table C contains the values for the following example:
$GPGLL,3723.247522,N,12158.341622,W,161229.48,A,A*41
Table C: GLL Data Format

Name Message ID
Latitude N/S Indicator
Longitude E/W Indicator
UTC Time Status
Mode Indicator Checksum

Example $GPGLL
3723.247522 N
12158.341622 W
161229.48 A A *41

Units

Description GLL protocol header GP: GPS Talker ID ddmm.mmmmmm N=north or S=south dddmm.mmmmmm
E=east or W=west hhmmss.ss
A=data valid or V=data not valid See Table D

1VV0301556 Rev. 10

Page 122 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Name <CR> <LF>
Value N A D P R F E M S

Example

Units

Table D: Mode Indicator

Description End of message termination

Description Fix not available or invalid GPS SPS Mode, fix valid Differential GPS, SPS Mode, fix valid GPS PPS Mode, fix valid
Real Time Kinematic Float RTK
Estimated (dead reckoning) Mode Manual Input Mode Simulator Mode

GSA - GNSS DOP and Active Satellites
This sentence reports the GPS receiver's operating mode, satellites used in the navigation solution reported by the GGA sentence and DOP values. Table D contains the values for the following example:
$GPGSA, A,3,07,02,26,27,09,04,15,, , , , ,1.8,1.0,1.5,1*33
Table E: GSA Data Format

Name Message ID

Example $GPGSA

Units

Mode 1

A

Mode 2

3

Satellite Used1.

07

Satellite used in

solution.1

Satellite Used1

02

....

Description
GSA protocol header GP: GPS Talker ID GN: GNSS Talker ID
BD: Beidou Talker ID GA: GLILEO Talker ID
See Table F
See Table G
Sv on Channel 1 GPS: 1-32
SBAS: 33-64 (offset 87) GLONASS: 65-96.
GALILEO:1-36 (offset 300) BEIDOU:1-37 (offset 200)
Sv on Channel 2

1VV0301556 Rev. 10

Page 123 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Name Satellite Used1
PDOP HDOP VDOP GNSS System ID

Example
1.8 1.0 1.5 1

Units

Checksum

*33

<CR> <LF>

Description
Position Dilution Of Precision Horizontal Dilution Of Precision.
Vertical Dilution Of Precision. 1=GPS
2=GLONASS 3=GALILEO 4=BEIDOU
End of message termination

Value M A
Value 1 2 3

Table F: Mode 1
Description Manual--forced to operate in 2D or 3D mode 2D Automatic--allowed to automatically switch 2D/3D
Table G: Mode 2
Description Fix not available 2D (<4 SVs used) 3D (>3 SVs used)

GSV - GNSS Satellites in View
This sentence reports the number of satellites (SV) in view, satellite ID numbers, elevation, Azimuth, and SNR value. There could be four satellites information per transmission so; if the number of satellites in view is greater, separated GSV sentences will be generated. The number of sentences being transmitted and the total to be transmitted is shown in the first 2 fields of the sentence. Table G contains the values for the following example:
$GPGSV,2,1,07,07,79,048,42,02,51,062,43,26,36,256,42,27,27,138,42,1*71
$GPGSV,2,2,07,09,23,313,42,04,19,159,41,15,12,041,42,1*41
Table H: GSV Data Format

1VV0301556 Rev. 10

Page 124 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Name Message ID

Example $GPGSV

Units

Number of Messages

2

Message Number1

1

Satellites in View

07

Satellite ID

07

Elevation Azimuth SNR (C/No)
.... Satellite ID Elevation
Azimuth SNR (C/No)
Signal ID
Checksum <CR> <LF>

79

degrees

048

degrees

42

dBHz

....

....

27

27

degrees

138

degrees

42

dBHz

1

*71

Description GSV protocol header GP: GPS Talker ID GL: GLONASS Talker ID BD: BEIDOU Talker ID GA: GLILEO Talker ID
Range 1 to 3 Range 1 to 3
Channel 1 GPS: 1-32 SBAS: 33-64 (offset 87) GLONASS: 65-96. GALILEO :1-36 (offset 300) BEIDOU :1-37 (offset 200)
Channel 4 Channel 4 (Maximum 90) Channel 4 (True, Range 0 to 359) Range 0 to 99, null when not tracking GPS, SBAS: 1 (L1 C/A);
GLONASS: 1 (L1 C/A); GALILEO: 7(E1B/C);
BEIDOU: 1(B1I)
End of message termination

RMC - Recommended Minimum Specific GNSS Data
This sentence reports Time, date, position, and course and speed data. Table H contains the values for the following example:
$GPRMC,161229.48,A,3723.247533,N,12158.341633,W,0.13,309.62,281118,6.1,W,A,V*10
Table I: RMC Data Format

Name Message ID

Example $GPRMC

Units

Description
RMC protocol header GP: GPS Talker ID

1VV0301556 Rev. 10

Page 125 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Name UTC Time
Status Latitude N/S Indicator Longitude E/W Indicator Speed Over Ground Course Over Ground
Date Magnetic Variation Mag variation direction

Example 161229.48
A 3723.247533
N 12158.341633
W 0.13 309.62 281118 6.1 W

Mode Indicator

A

Navigational status

V

Indicator

Checksum

*10

<CR> <LF>

Units
knots degrees degrees

Description hhmmss.ss A=data valid or V=data not valid ddmm.mmmmmm N=north or S=south dddmm.mmmmmm E=east or W=west
True ddmmyy E=east or W=west E/W. E subtracts mag var from true, W adds mag var to true. See Table D V (equipment is not providing navigational status indication).

End of message termination

VTG - Course over Ground and Ground Speed
This sentence reports the actual course and speed relative to the ground. Table I contains the values for the following example: $GPVTG,309.62,T, ,M,0.13,N,0.2,K,A*23
Table J: VTG Data Format

Name Message ID
Course Reference
Course Reference
Speed Units Speed

Example $GPVTG
309.62 T
M 0.13
N 0.2

Units
degrees knots Knots km/hr

Description VTG protocol header GP: GPS Talker ID Measured heading
True Measured heading
Magnetic Measured horizontal speed
Measured horizontal speed

1VV0301556 Rev. 10

Page 126 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Name Units Mode Indicator Checksum <CR> <LF>

Example K A *23

Units

Description Kilometers per hour
See Table D
End of message termination

GNS - GNSS Fix Data
This sentence reports the GNSS fix data. Table I contains the values for the following example: $GNGNS,084509.00,3731.283789,N,12655.755481,E,ANNN,07,1.2,110.7,18.0,,,V*26

Name Message ID UTC Time
Latitude N/S Indicator
Longitude E/W Indicator Mode Indicator
Satellites Used HDOP
MSL Altitude Geoid Separation
Age of Diff. Corr. 1VV0301556 Rev. 10

Table K: GNS Data Format

Example $GNGNS
084509.00 3731.283789

Units

Description
GNS protocol header GN: GNSS Talker ID
hhmmss.ss
ddmm.mmmmmm

N 12655.755481
E ANNN
07 1.2 110.7 18.0

km/hr
meters second

N=north or S=south
dddmm.mmmmmm
E=east or W=west
Fixed length field; contains four characters, The first symbol relates to GPS The second one � to GLONASS The third one � to GALILEO The fourth one � to BEIDOU
See Table D
Number of satellites in use, (Gps+Glonass+Galileo+Beidou)
Horizontal Dilution of Precision.
Antenna Altitude above/below mean-sea-level (geoid)
The difference between the WGS-84 earth ellipsoid and the mean-sea-level (geoid), "-" means mean-
sea-level below ellipsoid.
Null fields when DGPS is not used

Page 127 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Name Diff. Ref. Station ID
Navigational Status
Checksum <CR> <LF>

Example
V *26

Units

Description
Null fields when DGPS is not used / 0000-1023
V (Equipment is not providing navigational status indication)

End of message termination

GRS - Range Residuals
The sentence is used to support the Receiver Autonomous Integrity Monitoring (RAIM).
Table I contains the values for the following example:
$GPGRS,085634.00,0,-7.468427,-4.436067,-8.816755,-4.297600,-5.622384,2.630362,,,,,,,1,1*49

Name Message ID UTC Time
Mode
Range residuals
.... Range residuals GNSS System ID
Signal ID
Checksum 1VV0301556 Rev. 10

Table L: GRS Data Format

Example $GPGRS 085634.00
0
-7.468427
.... 1
1
*49

Units
meters ....
meters

Description
GRS protocol header GP: GPS Talker ID
hhmmss.ss
Mode: 0 = residuals used to calculate the position given in
the GGA or GNSmessage 1 = residuals were recomputed after the GGA or
GNS message position was computed.
Range residuals, in meters, for satellites used in the navigation solution. Order must match order of satellite ID numbers in GSA message. When GRS message is used, the GSA and GSV messages are
generally required with this message.
1=GPS 2=GLONASS 3=GALILEO 4=BEIDOU
GPS, SBAS: 1 (L1 C/A); GLONASS: 1 (L1 C/A); GALILEO: 7(E1B/C);
BEIDOU: 1(B1I)

Page 128 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Name <CR> <LF>

Example

Units

Description End of message termination

DTM - Datum Reference Information
The sentence is used to identify the datum used. Table I contains the values for the following example: $GPDTM,P90,,0000.000025,S,00000.000001,W,0.982,W84*57
Table M: DTM Data Format

Name Message ID
Local datum code

Example $GPDTM
P90

Local datum sub code

Units

Description
DTM protocol header GP: GPS Talker ID
Local datum code W84 � WGS84 P90 � PZ90
Local datum sub code

Latitude offset Latitude offset mark

0000.000025 S

minutes

Latitude offset in minutes Latitude offset mark (N: +, S: -)

Longitude offset Longitude offset mark
Altitude offset

00000.000001 W
0.982

Reference Datum

W84

Code

Checksum

*57

<CR> <LF>

minutes

Longitude offset in minutes Longitude offset mark (E: +, W: -)
Altitude offset in meters.
Datum (xxx): W84 � WGS84
P90 � PZ90
End of message termination

4.4.4.5. Checking GNSS Device Functionality
After a proper power on, the device is ready to receive AT commands on the MODEM serial port.
When the $GPSP command is issued, The GNSS receiver also will be powered on and it will start the scan of the available GNSS signals.

1VV0301556 Rev. 10

Page 129 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
LE(Linux): On the NMEA USB Serial port (default 115200 bps, 8, n, 1), there must be presence of the NMEA sentences when the $GPSNMUN command is issued. TX (ThreadX): On the Modem USB serial port, there must be presence of the NMEA sentences when the $GPSNMUN command is issued.

4.4.4.6. Controlling GNSS Receiver
The LE910Cx module is provided by a set of AT commands that permits to configure and use it through the MODEM serial port.

Power Control of GNSS Receiver
The GNSS receiver is by default switched off at the first power on. If is necessary to switch it on or off is possible to use the AT$GPSP command. The GNSS receiver is usable if the module is switched on (or at least in power saving). This command also switches off the GNSS receiver supply. Syntax of the command AT$GPSP=<status> Where: <status> - 0 GPS controller is powered down(default), 1 GPS controller is powered up? Returns the range of values accepted AT$GPSP? will return the current status. Example 1: (to switch on the GNSS) AT$GPSP=1<CR> OK Example 2: (to know the status) AT$GPSP?<CR> The answer will be: $GPSP: 0 OK

GNSS Reset
With the command AT$GPSR=<reset_type> is possible to reset the GNSS module. Pa1rameter: <reset_type>

1VV0301556 Rev. 10

Page 130 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
0 - Factory reset: This option clears all GPS memory including clock drift. It is available in controlled mode only.
1 - Coldstart (No Almanac, No Ephemeris): this option clears all data currently stored in the internal memory of the GPS receiver including position, almanac, ephemeris, and time. However, the stored clock drift is retained. It is available in controlled mode only.
2 - Warmstart (No ephemeris): this option clears all initialization data in the GPS receiver and subsequently reloads the data that is currently displayed in the Receiver Initialization Setup screen. The almanac is retained but the ephemeris are cleared. It is available in controlled mode only.
3 - Hotstart (with stored Almanac and Ephemeris): the GPS receiver restarts by using the values stored in the internal memory of the GPS receiver; validated ephemeris and almanac. It is available in controlled mode only.

Example: It is available in controlled mode only. AT$GPSP=1<CR> OK Let's suppose to perform a cold start of the GNSS receiver. AT$GPSR=1<cr> OK The Receiver will clear all the parameters in its memory, and it will start a new scanning of the available satellites.

GNSS Parameters Save
This command allows saving the set parameters in the module's memory Syntax of the command AT$GPSSAV

Restore GNSS Parameters
This command allows restoring the factory default parameters for the GNSS module Syntax of the command: AT$GPSRST

1VV0301556 Rev. 10

Page 131 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide After this command should restart the module to update the modifications.

Note: If the GPS controller is powered up (see $GPSP), the GPS controller is powered down because the GPS parameters should be reset with factory default.

Read Acquired GNSS Position
This command allows reading the acquired position of the GNSS receiver Syntax of the command AT$GPSACP The response syntax is: $GPSACP:<UTC>,<latitude>,<longitude>,<hdop>,<altitude>,<fix>,<cog>, <spkm>,<spkn>,<date>,<nsat_gps>,<nsat_glonass> The fields contain the following information: <UTC> - UTC time (hhmmss.sss) referred to GGA sentence <latitude> - format is ddmm.mmmm N/S (referred to GGA sentence) where: dd � degrees - 00..90 mm.mmmm - minutes - 00.0000..59.9999 N/S: North / South <longitude> - format is dddmm.mmmm E/W (referred to GGA sentence) where: ddd - degrees - 000..180 mm.mmmm - minutes - 00.0000..59.9999 E/W: East / West <hdop> - x.x - Horizontal Diluition of Precision (referred to GGA sentence) <altitude> - xxxx.x Altitude - mean-sea-level (geoid) in meters (referred to GGA sentence) <fix> 0 or 1 -Invalid Fix 2 - 2D fix

1VV0301556 Rev. 10

Page 132 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
3 - 3D fix <cog> - ddd.mm - Course over Ground (degrees, True) (referred to VTG sentence) where: ddd - degrees - 000..360 mm � minutes - 00..59 <spkm> - xxxx.x Speed over ground (Km/hr) (referred to VTG sentence) <spkn> - xxxx.x- Speed over ground (knots) (referred to VTG sentence) <date> - ddmmyy Date of Fix (referred to RMC sentence) where: dd - day - 01..31 mm � month - 01..12 yy � year - 00..99 - 2000 to 2099 <nsat_gps> - nn - Total number of GPS satellites in use (referred to GGA sentence) - 00..12 <nsat_glonass> - nn - Total number of GLONASS satellites in use - 00..12
Example: $GPSACP: 050244.000,3731.3067N,12655.7837E,0.8,53.7,3,132.4,0.0,0.0,160320,07,05 OK
Packet Switched Data Operations
4.5.1. USB Tethering Connection
4.5.1.1. Dial-Up Networking
It is legacy method to access internet service using public switched telephone network. The DTE uses an attached modem to send and receive internet protocol packets. So, it is limited to support high speed data rate over LTE technology. It is not recommend to use this method for internet access

1VV0301556 Rev. 10

Page 133 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.5.1.2. Standard ECM/RNDIS
ECM stands for Ethernet Control Model and is an Ethernet emulation protocol defined by the USB Implementers Forum. RNDIS (Remote Network Driver Interface Specification) is a Microsoft proprietary protocol used mostly on top of USB. It provides a virtual Ethernet link to most versions of the Windows and Linux operating system. Most importantly, the USB is configured to support ECM or RNDIS by issuing AT#USBCFG command. AT#USBCFG=<composition> For ECM, <composition> is set 4. For RNDIS, <composition> is set 1. After executing the command, DUT reboots automatically and then Host reconfigures the USB composition accordingly. ECM session can be established by running AT#ECM command. AT#ECM=<Cid>,<Did>[,<UserId>,[<Pwd>,[<DhcpServerEnable>]]] On the other hand, RNDIS session can be set up by AT#RNDIS command AT#RNDIS=<Cid>,<Did>[,<UserId>,[<Pwd>,[<DhcpServerEnable>]]] Refer to AT command guide document for more information on ECM/RNDIS control commands ECM and RNDIS provide a private IP address to the tethered TE (Host PC) even if the module has a network-assigned IP address and communicates with WWAN N/W using NATing.
Note: Threadx variants do not support RNDIS
4.5.1.3. MBIM/RmNet
MBIM is the communication class subclass specification for the Mobile broadband interface model. It is a protocol by which USB hosts and mobile broadband devices can efficiently exchange control commands and data frames. MBIM extends the Network Control Model (NCM) as a protocol between the host and USB devices, with the difference that devices transfer raw IP packets instead of packets with 802.3 headers. The Mobile Broadband Interface Model (MBIM) class driver is an inbox driver provided my Microsoft; no third-party driver is required.

1VV0301556 Rev. 10

Page 134 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
RmNet is Qualcomm's proprietary mobile broadband network interface, which emulates the network interface for the connected TE and allows the module to behave as a network adapter. RmNet relies on a control interface for any control signal between TE and MS to initiate a data session on demand and send any notifications. The control interface is called as QMI (Qualcomm MSM Interface). USB needs to be configured to support these types of interfaces by issuing the AT#USBCFG command. AT#USBCFG=<composition> For RmNet, <composition> is set 0. For MBIM, <composition> is set 2. After executing the command, DUT reboots automatically and then Host reconfigures USB composition accordingly. There are no AT commands controlling data session over these N/W interfaces. Instead, the customer needs to prepare for their own connection manager or open source solution on Linux environment. MBIM/RmNet provides the IP address assigned by the network to the tethered TE (Host PC) and module just plays a role of data modem without NATing
Note: Threadx variants do not support MBIM

4.5.2. Socket AT Commands

4.5.2.1. Configuring Embedded TCP/IP Stack
Use the #SCFG command to configure a socket belonging to the Multi-socket environment, the <connId> parameter identifies the socket. The Multi-socket environment provides N sockets, the N value depends on the module you are using. The configuration is saved in NVM.
The command syntax is:
AT#SCFG=<connId>,<cid>,<pktSz>,<maxTo>,<connTo>,<txTo>
Example)Check the current PDP contexts configuration.
AT+CGDCONT?
+CGDCONT: 1,"IP"," Access_Point_Name ","",0,0
OK

1VV0301556 Rev. 10

Page 135 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Check the current Multi-sockets/PDP contexts configuration. AT#SCFG? #SCFG: 1,1,300,90,600,50 #SCFG: 2,1,300,90,600,50 #SCFG: 3,1,300,90,600,50 #SCFG: 4,1,300,90,600,50 #SCFG: 5,1,300,90,600,50 #SCFG: 6,1,300,90,600,50 ... OK Check if some PDP context is active. The following response shows that no PDP contexts are active. AT#SGACT? #SGACT: 1,0 OK
4.5.2.2. Activating PDP Context
The #SGACT command activates/deactivates one of the PDP contexts defined with +CGDCONT command. The command syntax is: AT#SGACT=<cid>,<stat>[,<userId>,<pwd>] Example We want to activate context number one defined with +CGDCONT. AT#SGACT=1,1 #SGACT: "212.195.45.65" OK

1VV0301556 Rev. 10

Page 136 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.5.2.3. Online Mode Operation
Open Socket Connection
The #SD command (Socket Dial) opens the TCP/UDP connection towards the host. If required, DNS query is performed to resolve the IP address. To open the remote connection, the PDP context to which the <connId> is associated must be active, otherwise the command returns an ERROR message. The command syntax is: AT#SD=<connId>,<txProt>,<rPort>,<IPaddr>[,<closureType>[,<lPort>[,<connMode>[,<tx Time>[,<userIpType>]]]]] Example)Open socket connection with <connId>=1 in ONLINE mode AT#SD=1,0,80,"www.telit.com" CONNECT If the command is successful, we'll have a CONNECT message and socket number 1 will be connected to the Telit webserver. From this moment the data incoming in the serial port is sent to the Internet host, while the data received from the host is serialized and flushed to the Terminal Equipment. The +++ sequence does not close the socket, but only suspends it.
Resume Suspended Connection
Use #SO command to resume a suspended connection. The command syntax is: AT#SO=<connId> Example) AT#SD=1,0,80, "www.telit.com" CONNECT ... (+++) OK SRING: 1 AT#SO=1

1VV0301556 Rev. 10

Page 137 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
CONNECT (+++)
Close the Connection
Use #SH command to close a socket connection. The command returns the OK message if the connection is closed. The command syntax is: AT#SH=<connId> Example)Open a socket connection. AT#SD=1,0,80,"www.telit.com" CONNECT ��� +++ OK Type in #SH command to close the socket connection. AT#SH = 1 OK
4.5.2.4. Command Mode Operation
Open Socket Connection
Use #SD command with <connMode>=1 to open a connection in COMMAND mode. <connMode> is the last parameter in the syntax command. AT#SD=<connId>,<txProt>,<rPort>,<IPaddr>[,<closureType>[,<lPort>[,<1>[,<txTime>[,<u serIpType>]]]]] Example)Open socket connection <connId>=1 in COMMAND mode AT#SD=1,0,80,"www.telit.com",0,0,1 OK

1VV0301556 Rev. 10

Page 138 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Send User Data
Use the #SSEND command to send data on connection when the module is in COMMAND mode. When the <CR> is entered to close the entering of the command, the ">" prompt appears to indicate that the command is ready to accept the data to be sent. Enter Ctrl-Z to close the data entering and send the data. Before using the command, the socket must be opened. The command syntax is: AT#SSEND=<connId> Example)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 Use #SSENDEXT command to include all bytes (0x00 to 0xFF) in the block of data to send. This command allows to include special characters as ESC (0x1B), Ctrl-Z (0x1A), BS (0x08) not accepted by #SSEND. The command syntax is: AT#SSENDEXT=<connId>,<bytestosend>
Receive User Data
The module is in COMMAND mode and assumes that it has received an unsolicited SRING indicator notifying that received data are pending in the socket. Use the #SRECV command to get the pending data in the socket buffer. The syntax of the command is: AT#SRECV=<connId>,<maxByte>[,<UDPInfo>] 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

1VV0301556 Rev. 10

Page 139 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Close the Connection
The #SH (Socket Shutdownl) command are introduced before
4.5.2.5. Server Mode(Socket Listen) Operation
Create Listen Socket
Use the #SL (Socket Listening) command to open a socket in listening mode for an incoming TCP connection. When a remote host tries to connect, the module sends to the DTE the +SRING: <connId> unsolicited indication. The user can accept (#SA) or refuse (#SH) the incoming connection. The syntax of the command is: AT#SL=<connId>,<listenState>,<listenPort>[,<lingerT>] Example)Open the <connId> = 1 socket in listening mode on <port> = 6543. AT#SL=1,1,6543 OK
Accept Incoming Connection
Use the #SA command without the <connMode> parameter to accept the incoming connection, notified by the SRING unsolicited indication, in ONLINE mode. The command syntax is: AT#SA=<connId>[,<connMode>] Example) Now, if a remote host tries to connect, the module receives a SRING unsolicited indication with the listening <connId>: SRING: 1 Accept the incoming connection <connId>=1 in ONLINE mode. AT#SA=1 CONNECT ... exchange data ...

1VV0301556 Rev. 10

Page 140 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
The module is in ONLINE mode, the connection is established, and the two hosts can exchange data. With the escape sequence (+++) the connection can be suspended, and the module returns to COMMAND mode.

Command Mode Operation
Use the #SA command with <connMode>=1 to accept the incoming connection in COMMAND mode. The command syntax is: AT#SA=<connId>[,<connMode>] Example) Now, if a remote host tries to connect, the module receives a SRING unsolicited indication with the listening <connId>: SRING: 1 Accept the incoming connection <connId>=1 in ONLINE mode. AT#SA=1,1 OK

4.5.3. SSL AT Commands
TLS and its predecessor SSL are cryptographic protocols used over the Internet to provide secure data communication in several applications. For TLS protocol, see standards:
 RFC 2246 - TLS Protocol Version 1.0  RFC 4346 - TLS Protocol Version 1.1  RFC 5246 - TLS Protocol Version 1.2

4.5.3.1. Configuration
To provide communication security over a channel, enable an SSL socket using the #SSLEN command. AT#SSLEN= <SSId>,<Enable> Ex) Enable SSL functionality, AT#SSLEN=1,1 OK

1VV0301556 Rev. 10

Page 141 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Use the following command to select the protocol. AT#SSLSECCFG2=<SSId>,<version> [,<unused_A>[,<unused_B>[,<unused_C>[,<unused_D>]]]] Ex) Select TLS1.2 protocol, AT#SSLSECCFG2=1,2 OK The cipher suite is the set of algorithms used to negotiate the security settings for a network connection using the SSL/TLS network protocol. AT#SSLSECCFG=<SSId>,<CipherSuite>,<auth_mode>[,<cert_format>] Ex) Set SSL configuration, AT#SSLSECCFG=1,0,1,1 OK The following types of security data can be stored in the modules:
 Certificates  CA Certificates  Private Key AT#SSLSECDATA=<SSId>,<Action>,<DataType>[,<Size>] Ex) Store CA certificate, AT#SSLSECDATA=1,1,1,<size> > -----BEGIN CERTIFICATE-----<LF> [...] -----END CERTIFICATE-----<LF> <ctrl>Z OK Use the following command to store CA Certificates more than 1 in the modules: AT#SSLSECDATAEXT=<SSId>,<Action>,<DataType>,<Index>[,<Size>] It can be saved up to 3 CA Certificates. Ex) Store CA Certificate to <Index> 1, AT#SSLSECDATAEXT=1,1,1,1,<size> > -----BEGIN CERTIFICATE-----<LF>

1VV0301556 Rev. 10

Page 142 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
[...] -----END CERTIFICATE-----<LF> <ctrl>Z OK Ex) Select CA Certificate to use for H/S AT#SSLSECDATAEXT=1,3,1,1 OK Use the following command to configure the SSL socket, before opening it. AT#SSLCFG=<SSId>,<cid>,<pktSz>,<maxTo>,<defTo>,<txTo>[<sslSRingMode>[<noCarri erMode>[,<skipHostMismatch >[,<UNUSED_4>]]]] Ex) Set SSL configuration, AT#SSLCFG=1,1,300,90,100,50,0,0,1,0 OK Refer to AT Commands Reference Guide for more details.

4.5.3.2. Online Mode Operation

Open Secure Socket Connection
Use the following command to open a SSL socket AT#SSLD=<SSId>,<rPort>,<IPAddress>,<ClosureType>[,<connMode>[,<Timeout>]] Ex) Open the SSL socket in ONLINE mode, AT#SSLD=1,443,"123.124.125.126",0,0 CONNECT ... [Bidirectional data exchange] ... +++ [suspend the connection] OK If successful, the CONNECT message is returned, and from this moment all bytes sent to the serial port are forwarded to the remote server. It is possible suspend the connection, without closing it, by sending the escape sequence (+++). After that, the module returns the OK response and can parse the AT commands again.

1VV0301556 Rev. 10

Page 143 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
ONLINE mode can be restored at any time by sending the following command. AT#SSLO=<SSId> Ex) Restore from Command Mode to Online Mode, AT#SSLO=1 CONNECT

Exchanging User Data
Refer to opening of the socket connection in online mode for AT command.
Open the SSL socket and wait for the CONNECT message. After receiving the CONNECT message, you can send/receive data to the module. The Data is encrypted and sent to the server through the secure socket as soon as the packet size has been reached or the <txTo> timeout expires
In ONLINE mode, AT commands cannot be entered on the serial port used.

Close the Connection
The following command closes the SSL socket.
AT#SSLH=<SSId>[,<ClosureType>]
If the secure socket has been opened in ONLINE mode, the user needs to send the escape sequence (+++) before closing it with #SSLH command, unless the communication is closed remotely or the idle inactivity timeout expires (NO CARRIER message).
If the secure socket has been opened in COMMAND mode, when communication is closed remotely and all data has been retrieved (#SSLRECV), you can also close on the client side and NO CARRIER message is displayed. At any moment, it is also possible to close the secure socket on the client side by means of #SSLH.
Ex) Close SSL connection,
AT#SSLH=1
OK

4.5.3.3. Command Mode Operation

Open Secure Socket Connection
In COMMAND mode, data can be exchanged through a SSL socket by means of the #SSLSEND, #SSLSENDEXT and #SSLRECV commands.

1VV0301556 Rev. 10

Page 144 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Use the following command to open a SSL socket AT#SSLD=<SSId>,<rPort>,<IPAddress>,<ClosureType>[,<connMode>[,<Timeout>]] Ex) Open with Command Mode, AT#SSLD=1,server_port,"server_address",0,1,100 OK Use the following command to query the status of SSL socket AT#SSLS=<SSId> Ex) Query the status of the Secure Socket Id = 1, AT#SSLS=1 #SSLS: 1,2,<cipher_suite> OK Use the following command to get information about SSL socket data traffic AT#SSLI[=<SSId>] Ex) Get SSL socket information AT#SSLD=1,server_port,"server_address",0,1 OK SSLSRING: 1,16384 AT#SSLI=1 #SSLI: 1,0,0,16384,0 OK
Send User Data
Use one of the following commands to send data: AT#SSLSEND=<SSId>[,< Timeout >] When the command is closed with a <CR>, the `>' prompt is displayed. Now you can enter the data to be sent. To close the data block, enter <ctrl>Z, then the data are forwarded to the remote server through the secure socket. Response: OK on success, ERROR on failure. Ex) Send data, AT#SSLSEND=1,100

1VV0301556 Rev. 10

Page 145 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
> (send data) <ctrl>Z OK AT#SSLSENDEXT=<SSId>,<bytestosend>[,<Timeout>] When the command is closed with <CR>, the `>' prompt is displayed. Now you can enter the data to be sent. When <bytestosend> bytes have been sent, the operation is automatically completed. Response: OK on success, ERROR on failure. Ex) Send data, AT#SSLSENDEXT=1,100,100 > (send data) OK

Receive User Data
Data can be received in two different ways:  Using the #SSLRECV command (the "standard" way),  Reading data from the SSLSRING: unsolicited message.
Use the following command to receive data. AT#SSLRECV=<SSId>,<MaxNumByte>[,<TimeOut>] On success, the data are displayed in the following format: #SSLRECV: <numBytesRead> ... received data .... OK If the timeout expires, the module displays the following response #SSLRECV: 0 TIMEOUT OK The ERROR message appears on failure. The SSLSRING: unsolicited message, if enabled, notifies the user of any new incoming data. Configuring <sslSRingMode>=2 by means of the #SSLCFG command data is displayed in the URC in this format:

1VV0301556 Rev. 10

Page 146 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
SSLSRING:<SSId>,<dataLen>,<data>
Close the Connection
Refer to closure operation on online mode.
4.5.4. HTTP AT Commands
4.5.4.1. Configuration
HTTP parameters should be configured using the following AT command before running HTTP operations. AT#HTTPCFG=<prof_id>,<server_address>,<server_port>,<auth_type>,<username>,<pa ssword>,<ssl_enabled>,<timeout>,<cid>,<pkt_size> Ex) Set HTTP configuration, AT#HTTPCFG=0,server_address,server_port,1,username,password,0,120,1,1 OK
4.5.4.2. Query
Using the following command, it is possible to send a HTTP GET, HEAD or DELETE operation to HTTP server. AT#HTTPQRY=<prof_id>,<command>,<resource>,<extra_header_line> Ex) Query, AT#HTTPQRY=0,0,/MOTDATA_N_LONG.txt OK AT#HTTPQRY=0,0,"/client_info.php","user-agent:LE910Cx" OK If sending is done successfully, the response is OK. Otherwise an error code is reported. When the HTTP server answer is received, this product sends the following URC through serial interface (USB or UART) #HTTPRING:<prof_id>,<http_status_code>,<content_type>,<data_size>

1VV0301556 Rev. 10

Page 147 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.5.4.3. Request
Using the following command, it is possible to send a HTTP POST or PUT operation to HTTP server. AT#HTTPSND=<prof_id>,<command>,<resource>,<data_len>,<post_param>,<extra_hea der_line> If sending is done successfully, the response is OK. Otherwise an error code is reported. When the HTTP server answer is received, the module sent the URC(refer to #HTTPRING URC)
Note: When using the AT#HTTPSND command, the HTTP header always includes the "Connection: close" line and cannot be removed.
Ex) Send data, AT#HTTPSND=1,0,"/upload/110_01.txt",110 >>> (send data) OK AT#HTTPSND=1,0,"/cgi-bin/upload.php",343,"3:boundary=---WebKitFormBoundarylejjShOaaqpRD1dO" >>> (send data) OK
4.5.4.4. Receive
When being notified with #HTTPRING URC, it is possible to read data from HTTP server using the AT#HTTPRCV command. AT#HTTPRCV=<prof_id>,<maxByte> Ex) Receive data, AT#HTTPRCV=0,0 .... OK

1VV0301556 Rev. 10

Page 148 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.5.5. FTP AT Commands

4.5.5.1. Configuration
FTP parameters can be configured using following AT command. Before running FTP, it is required that customer changes FTP parameters if it is needed. AT#FTPCFG=<tout>,<IPPignoring>,<FTPSEn>,<FTPext> AT#FTPTO=[=<tout>] Ex) Configure FTP parameters with non-security mode AT#FTPCFG=500,0,0,1 OK AT#FTPTO=1000 OK or Configure FTP parameters with security mode AT#FTPCFG=500,0,1,1 OK AT#FTPTO=1000 OK

4.5.5.2. Open Connection
To take advantage of FTP capability, it is required that FTP connection has to first of all be opened to the server. Afterwards, FTP commands could be available on the connected FTP channel.
Ex)
AT#FTPOPEN=<server:port>,<username>,<password>,<mode>
If it is failed to establish FTP connection within Time-out set by AT#FTPCFG, #FTPOPEN command stops and return error message to DTE.
Ex)Open FTP connection in active mode
AT#SGACT=1,1
#SGACT: 174,156,82,131

1VV0301556 Rev. 10

Page 149 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
OK AT#FTPOPEN="server","username","password",0 OK
4.5.5.3. Online Mode Operation
Uploading
This example shows how to upload a file to an FTP server when the module is in ONLINE mode. A terminal emulator is connected to the module. Ex) AT#SGACT=1,1 #SGACT: 193.199.234.255 OK Set the FTP time-out. AT#FTPTO=1000 OK FTP connection open and in active mode. AT#FTPOPEN="server","username","password",0 OK The following #FTPPUT command opens the data connection, and the module enters ONLINE mode. "filename.txt" is the name of the file where the data will be stored on the FTP server. If the file you are sending is a text file, the extension must be .txt. AT#FTPPUT="filename.txt",0 CONNECT

��� type in the data to write in the filename.txt file stored on the FTP server ���

+++ NOCARRIER Close FTP control connection. AT#FTPCLOSE

1VV0301556 Rev. 10

Page 150 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
OK Deactivate the PDP context. AT#SGACT=1,0 OK
Appending
If the file must be appended, use the AT#FTPAPP command (with <connMode> = 0) instead of #FTPPUT. Except for changing from #FTPPUT to #FTPAPP, the procedures are the same as "Uploading"
Downloading
The procedure up to #FTPOPEN is the same as in "Uploading" And then, Ex) Check the working directory. AT#FTPPWD #FTPPWD: 257 "/" OK Use #FTPLIST command to get the list of files on the working directory Use the #FTPGET command to open e data connection, and download a file from the FTP server. AT#FTPGET="filename.txt" CONNECT

��� the content of the file appears on terminal emulator ���

NO CARRIER Close FTP control connection. AT#FTPCLOSE OK

1VV0301556 Rev. 10

Page 151 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.5.5.4. Command Mode Operation
Uploading
This example shows how to upload data toward an FTP server when the module is in COMMAND mode. A terminal emulator is connected to the module. The procedure before #FTPOPEN is the same as "Uploading" Ex) AT#FTPOPEN="server","username","password",1 OK The #FTPPUT command opens the data connection, and the module remains in COMMAND mode. filename.txt is the file name where the data will be stored on the FTP server. AT#FTPPUT="filename.txt",1 OK Enter the #FTPAPPEXT command to upload data. After entering <CR>, the command returns the ">" prompt. Now, enter the data to be sent to the FTP server. As soon as <bytestosend> bytes are written, data are sent to the FTP server, and the #FTPAPPEXT message is returned. AT#FTPAPPEXT=bytestosend >��� type in data��� #FTPAPPEXT: <SentBytes> OK Use again the #FTPAPPEXT=bytestosend command to send a new data chunk. To send the last data chunk and close the FTP connection, use the following: AT#FTPAPPEXT=bytestosend,1
Appending
If the file must be appended, use the AT#FTPAPP command (with <connMode> = 1) instead of #FTPPUT. Except for changing from #FTPPUT to #FTPAPP, the procedure before and after is the same as "Uploading"

1VV0301556 Rev. 10

Page 152 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Downloading
Let's assume the FTP connection is open. Use the #FTPGETPKT command to open a data connection and download a file from the FTP server. The data is buffered on the socket; the module remains in COMMAND mode. Ex) AT#FTPGETPKT="filename.txt" OK The following command reports the number of bytes buffered on the socket. AT#FTPRECV? #FTPRECV: 600 OK Read the first 400 bytes of the available buffered data. AT#FTPRECV=400 #FTPRECV: 400 Text row number 1 * 1111111111111111111111111 * ... Text row number 8 * 88888888888888888888 OK Read 200 bytes � if available � starting from the position + 1 of the last byte read with the previous #FTPRECV command. AT#FTPRECV =200 #FTPRECV: 200 88888 * Text row number 9 * 9999999999999999999999999 * ... Text row number 12 * CCCCCCCCCCCCCCCC OK The #FTPGETPKT? read command reports the download state. AT#FTPGETPKT? #FTPGETPKT: filename.txt,0,1

1VV0301556 Rev. 10

Page 153 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
OK The first parameter is the file name, the second indicates text or hexadecimal mode. The third parameter indicates <EOF> (End of File): 0 file transfer is in progress; 1 file transfer is ended.

4.5.5.5. Close the Connection
If the FTP connection is no longer needed, it can be disconnected using the following command:
AT#FTPCLOSE
OK

4.5.6. Email AT Commands

4.5.6.1. Configuration
It is required that customer configures this module with Email parameters before sending email data using this product. Below is the sequence of the AT commands required in the configuration of the e-mail parameters Configure SMTP server address used for Email sending AT#ESMTP=<smtp> Configure a sender address to be seen as originator of this email AT#EADDR=<e-addr> Configure email user id authenticated by SMTP server AT#EUSER=<e-user> Configure email password authenticated by SMTP server AT#EPASSW=<e-pwd> If needed, save those parameters into the module permanently AT#ESAV

4.5.6.2. Sending an Email
With the assumption of the configured e-mail parameters and PDP cid 1 activated by #SGACT, it is ready to send email to a specified receiver.
AT#EMAILD=<da>,<subj>

1VV0301556 Rev. 10

Page 154 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
The device responds to the command with the prompt '>' and waits for the message body text. To complete the operation, send Ctrl-Z char (0x1A hex); to exit without writing the message, send the ESC character (0x1B hex) Ex) Send the e-mail to the recipient with recipient_address. AT#EMAILD="recipient_address","email subjext" > Hello<Ctrl-Z> OK
4.5.7. IOT Platform AT Commands
The LE910Cx module has been updated to include native support for interfacing applications to the M2M Service. These APIs allow you to use a new set of AT commands to easily expand the capabilities of any device built upon a LE910Cx module. Here is a basic interaction diagram

Figure 5: Basic Interaction Diagram of IOT Platform

1VV0301556 Rev. 10

Page 155 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
4.5.7.1. Connect to IOT Service

Figure 6: Connect to IOT Service
4.5.7.2. API and AT Commands

Figure 7: API and AT Commands

1VV0301556 Rev. 10

Page 156 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Figure 8: The property publish command
4.5.7.3. Disconnect from IOT Service

Figure 9: Disconnect from IOT Service
4.5.7.4. IOT Platform AT Commands List
AT#DWCFG � configure deviceWISE parameters AT#DWCONN � connect to deviceWISE server AT#DWSTATUS � query connection status AT#DWSEND � send data to deviceWISE server AT#DWSENDR � send raw data to deviceWISE server

1VV0301556 Rev. 10

Page 157 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
AT#DWRCV � receive data from deviceWISE server AT#DWRCVR � receive raw data from deviceWISE server AT#DWLRCV � List information on messages pending from deviceWISE server AT#DWEN - Set command permits to enable/disable up to 8 different deviceWISE features.
Note: Please refer to the AT Commands Reference Guide document for more details.

4.5.8. Data Concurrency
There are 2 kinds of data calls. One is tethered call from host side and the other in module embedded socket call. Some concurrencies can be supported and the others not depending on how to share PDN connection. In some cases, they may be supported through different multiple PDNs and not through the same PDN.
The Module has 2 processors. One is modem processor which is usually responsible for wireless processing and the other is application processor running based on Linux environment. The application can run over one of both processors. Nearly the AT commands required to access to Socket connection are on top of the modem processor which is named Modem application in the table. On the other hand, the AP application is indicated as the application running on the AP processor. The below tables describe how to support data concurrency between Embedded and Tethered call with Same PDN or Different PDNs

4.5.8.1. LE(Linux)

Same PDN
In this case, each data call shares the same PDN

Domains of App

USB Tethering

RmNet RNDIS DUN

Modem Application

AP Application

Modem Application
Not Support Not Support Not Support
Support Not Support

AP Application
Not Support Support
Not Support Not Support
Support

USB Tethering

RmNet

RNDIS

DUN

N/A

N/A*

Not Support

N/A*

N/A

Not Support

Not Support Not Support

N/A

Not Support Not Support Not Support

Not Support

Support

Not Support

1VV0301556 Rev. 10

Page 158 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Table 13: LE - Data Concurrency on the same PDN with Multiple Applications

Different PDNs
In this case, each data call takes up different PDN without sharing.

Domains of App

Modem Application

AP Application

RmNet

USB Tethering RNDIS

DUN

USB Tethering

RmNet RNDIS DUN

Support Support Support

Support Support Support

Support** N/A*
Support***

N/A* Not Support Support***

Support*** Support***
N/A

Modem Application

Support

Support

Support

Support

Support

AP Application

Support

Support

Support

Support

Table 14: LE -Data concurrency on the Different PDNs with Multiple Applications

Support

Note: * RmNet and RNDIS cannot be configured at the same time. Each one is configured by the AT#USBCFG command
** This product supports multiple PDNs over RmNet I/F using multiple logical interfaces nemed QMAP. The Host side must have a connection manager that supports the QMAP protocol.
*** Two N/W interfaces will be activated, but the Operating System over Host side should handle the multiple N/W interfaces

4.5.8.2. TX(ThreadX)

Same PDN
In this case, each data call shares the same PDN.

Domains of App

USB Tethering

RmNet RNDIS DUN

Modem Application

AP Application

Single PDN shared by both applications

Modem Application

AP Application

RmNet

USB Tethering RNDIS

DUN

Support

Not Support

N/A

N/A*

Not Support

N/A*

N/A*

N/A*

N/A*

N/A*

Not Support

Not Support Not Support

N/A*

N/A

Support

Support

Support

N/A*

Not Support

Support

Support

Not Support

N/A*

Not Support

1VV0301556 Rev. 10

Page 159 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Table 15: TX - Data Concurrency on the Same PDN with Multiple Applications

Different PDNs
In this case, each data call takes up different PDN without sharing.

Different PDNs for both applications

Domains of App

Modem Application

AP Application

RmNet

USB Tethering RNDIS

DUN

USB Tethering

RmNet RNDIS DUN

Support N/A*
Support

Support N/A*
Support

Support** N/A*
Support***

N/A* N/A* N/A*

Support*** N/A* N/A

Modem Application

Support

Support

Support

N/A*

Support

AP Application

Support

Support

Support

N/A*

Table 16: TX- Data Concurrency on the Different PDNs with Multiple Applications

Support

Note: * RNDIS is not supported ** Same as LE description *** Same as LE description

4.5.9. Maximum Number of PDN Contexts
As for the maximum number of PDN contexts that can be activated at the same time, it depends on the maximum number of bearers.
Maximum number of bearers supported = 8 (default + dedicated + emergency)
Maximum number of dedicated bearers supported = 6 (at least on default bearer and reserved one emergency bearer)
That is, the maximum number of PDN contexts activated simultaneously is 7 if no dedicated bearers are activated with one emergency bearer being reserved.
In case of activation of several dedicated bearers, the maximum number of PDN is decreased by as many as there are open dedicated bearers.

1VV0301556 Rev. 10

Page 160 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

5. PERFORMANCE MEASUREMENTS(LINUX)

Interrupt Latencies
Interrupt latency is considered in this example using the time from wakeup to the moment the context switch occurred.
The results were obtained on a performance build. The First table shows the results when the CPU governor is set to interactive (default settings) and the second table is while setting the governor to performance.

Task

Runtime ms

Switches

hwrng:50

0.071 ms

1

kworker/u2:3:22

0.428 ms

2

init:1

0.787 ms

2

kworker/u2:7:903

0.705 ms

3

msm_watchdog:13

0.000 ms

1

qmi_linux_clnt:1168

0.245 ms

1

kworker/0:13:2036

3.350 ms

15

fota_redbend:1808

1.096 ms

4

diagrebootapp:1543

2.303 ms

10

dlt-deamon:1167

3.987 ms

11

rcu_preempt:7

0.689 ms

6

ubifs_bgt0_4:362

2.176 ms

9

ksoftirqd/0:3

0.207 ms

3

sleep:2046

8.904 ms

2

cfinteractive:133

0.000 ms

2

perf:2045

1.406 ms

1

QCMAP_Connectio:817 0.799 ms

4

TOTAL

27.152 ms

77

Table 17: Results for Interactive Governor

Average delay ms avg: 6.756 ms avg: 0.131 ms avg: 0.121 ms avg: 0.100 ms avg: 0.088 ms avg: 0.084 ms avg: 0.079 ms avg: 0.075 ms avg: 0.074 ms avg: 0.073 ms avg: 0.065 ms avg: 0.059 ms avg: 0.058 ms avg: 0.049 ms avg: 0.029 ms avg: 0.029 ms avg: 0.024 ms

Maximum delay ms max: 6.756 ms max: 0.159 ms max: 0.160 ms max: 0.140 ms max: 0.088 ms max: 0.084 ms max: 0.254 ms max: 0.111 ms max: 0.094 ms max: 0.105 ms max: 0.092 ms max: 0.111 ms max: 0.080 ms max: 0.078 ms max: 0.032 ms max: 0.029 ms max: 0.033 ms

Maximum delay at
max at: 4760.939225 s max at: 4768.610426 s max at: 4765.410387 s max at: 4765.470639 s max at: 4769.700320 s max at: 4767.834634 s max at: 4769.850374 s max at: 4764.300343 s max at: 4768.601101 s max at: 4767.550464 s max at: 4760.960225 s max at: 4765.460356 s max at: 4767.550416 s max at: 4770.939396 s max at: 4760.990169 s max at: 4770.940515 s max at: 4767.520488 s

1VV0301556 Rev. 10

Page 161 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Task

Runtime ms

Switches

hwrng:50

0.038 ms

1

QCMAP_Connectio:817 0.086 ms

1

rcu_preempt:7

0.393 ms

4

dnsmasq:1518

0.205 ms

1

ksoftirqd/0:3

0.519 ms

4

diagrebootapp:1543

1.479 ms

10

init:1

0.409 ms

2

kworker/u2:3:22

0.201 ms

2

fota_redbend:1808

0.648 ms

4

qmi_linux_clnt:1168

0.137 ms

1

dlt-deamon:1167

1.594 ms

10

msm_watchdog:13

0.000 ms

1

kworker/u2:7:903

0.280 ms

3

sleep:2049

8.432 ms

2

kworker/0:13:2036

1.339 ms

13

ubifs_bgt0_4:362

1.314 ms

9

perf:2048

8.859 ms

1

TOTAL

25.933 ms

69

Table 18: Results for Performance Governor

Average delay ms avg: 0.492 ms avg: 0.170 ms avg: 0.107 ms avg: 0.071 ms avg: 0.065 ms avg: 0.058 ms avg: 0.056 ms avg: 0.053 ms avg: 0.052 ms avg: 0.050 ms avg: 0.049 ms avg: 0.044 ms avg: 0.043 ms avg: 0.037 ms avg: 0.034 ms avg: 0.033 ms avg: 0.017 ms

Maximum delay ms max: 0.492 ms max: 0.170 ms max: 0.260 ms max: 0.071 ms max: 0.111 ms max: 0.094 ms max: 0.062 ms max: 0.054 ms max: 0.062 ms max: 0.050 ms max: 0.049 ms max: 0.044 ms max: 0.045 ms max: 0.049 ms max: 0.050 ms max: 0.063 ms max: 0.017 ms

Maximum delay at
max at: 4845.200305 s max at: 4849.760414 s max at: 4845.220644 s max at: 4849.760289 s max at: 4845.200338 s max at: 4845.620221 s max at: 4845.490228 s max at: 4852.820223 s max at: 4845.370228 s max at: 4847.836400 s max at: 4854.549941 s max at: 4849.860205 s max at: 4854.760232 s max at: 4855.207040 s max at: 4849.943542 s max at: 4849.740229 s max at: 4855.207575 s

Memory Bandwidth & Latencies
The test was carried out using the tiny utility membench which tries to measure the maximum bandwidth of sequential memory accesses and the latency of random memory accesses. Bandwidth is measured by running different assembly code for the aligned memory blocks and attempting different prefetch strategies.
Bandwidth tests:
Results were obtained on a performance build.

Note: 1MB = 1000000 bytes.

1VV0301556 Rev. 10

Page 162 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Note: Results for 'copy' tests show how many bytes can be copied per second (adding together read and written bytes would have provided numbers twice as high).

Note: 2-pass copy means we are using a small temporary buffer to first fetch data into it, and only then write it to the destination (source -> L1 cache, L1 cache -> destination)

Test item C copy backwards C copy backwards (32 byte blocks) C copy backwards (64 byte blocks) C copy C copy prefetched (32 bytes step) C copy prefetched (64 bytes step) C 2-pass copy C 2-pass copy prefetched (32 bytes step) C 2-pass copy prefetched (64 bytes step) C fill C fill (shuffle within 16 byte blocks) C fill (shuffle within 32 byte blocks) C fill (shuffle within 64 byte blocks) standard memcpy standard memset NEON read NEON read prefetched (32 bytes step) NEON read prefetched (64 bytes step) NEON read 2 data streams NEON read 2 data streams prefetched (32 bytes step) NEON read 2 data streams prefetched (64 bytes step) NEON copy NEON copy prefetched (32 bytes step)

1VV0301556 Rev. 10

Page 163 of 179
Not Subject to NDA

Bandwidth 278.3 MB/s 814.5 MB/s 884.5 MB/s 847.1 MB/s 859.8 MB/s 884.9 MB/s 783.7 MB/s 809.1 MB/s 832.1 MB/s 2313.4 MB/s 2313.4 MB/s 532.2 MB/s 524.2 MB/s 649.4 MB/s 2314.6 MB/s 1551.0 MB/s 1683.8 MB/s 1773.6 MB/s 446.1 MB/s 840.9 MB/s 887.2 MB/s 875.3 MB/s 895.2 MB/s
2021-06-04

LE910Cx Software User Guide

Test item

Bandwidth

NEON copy prefetched (64 bytes step) NEON unrolled copy NEON unrolled copy prefetched (32 bytes step) NEON unrolled copy prefetched (64 bytes step) NEON copy backwards NEON copy backwards prefetched (32 bytes step) NEON copy backwards prefetched (64 bytes step) NEON 2-pass copy NEON 2-pass copy prefetched (32 bytes step) NEON 2-pass copy prefetched (64 bytes step) NEON unrolled 2-pass copy NEON unrolled 2-pass copy prefetched (32 bytes step) NEON unrolled 2-pass copy prefetched (64 bytes step) NEON fill NEON fill backwards VFP copy VFP 2-pass copy ARM fill (STRD) ARM fill (STM with 8 registers) ARM fill (STM with 4 registers) ARM copy prefetched (incr pld) ARM copy prefetched (wrap pld)
Table 19: Memory Bandwidth Test Results

962.1 MB/s 871.8 MB/s 913.2 MB/s 928.5 MB/s 882.0 MB/s 897.6 MB/s 972.1 MB/s 865.1 MB/s 909.6 MB/s 929.5 MB/s 769.5 MB/s 802.3 MB/s 837.3 MB/s 2313.5 MB/s 2313.5 MB/s 866.4 MB/s 788.6 MB/s 2313.0 MB/s 2314.2 MB/s 2314.0 MB/s 933.2 MB/s 907.6 MB/s

Memory latency test

The average time is measured for random memory accesses in buffers of different sizes. The larger the buffer, the more significant the relative contributions of TLB, L1/L2 cache misses and SDRAM accesses. For extremely large buffer sizes we expect to see the page table walk with several requests to SDRAM for almost all memory access (though 64MiB is not nearly large enough to experience this effect to the full).

Note: All numbers represent the extra time, which must be added to the L1 cache latency.

1VV0301556 Rev. 10

Page 164 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
Note: Dual random read means that we are simultaneously performing two independent memory accesses at a time. In the event that the memory subsystem cannot handle multiple outstanding requests, dual random read has the same timings as two single reads performed one after the other.

Block Size

Single Random Read / Dual Random Read

1024

0.0 ns

/ 0.0 ns

2048

0.0 ns

/ 0.0 ns

4096

0.0 ns

/ 0.0 ns

8192

0.0 ns

/ 0.0 ns

16384

0.0 ns

/ 0.0 ns

32768

0.0 ns

/ 0.0 ns

65536

4.8 ns

/ 8.3 ns

131072

7.5 ns

/ 11.7 ns

262144

9.9 ns

/ 14.6 ns

524288

76.8 ns

/ 122.8 ns

1048576

114.8 ns

/ 163.5 ns

2097152

139.0 ns

/ 184.0 ns

4194304

151.4 ns

/ 193.4 ns

8388608

159.2 ns

/ 200.5 ns

16777216

167.7 ns

/ 212.5 ns

33554432
Table 20: Memory Latency Test Results

180.6 ns

/ 235.5 ns

1VV0301556 Rev. 10

Page 165 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
6. SERVICE AND FIRMWARE UPDATE
Firmware Update
The Telit Modules firmware is updated through the USB Interface normally used for the AT Commands. It is recommended to provide a USB interface on the User's Printed Circuit Board (where the Telit Module is soldered) to perform the physical connection between the Telit module and a Windows-based PC. This simple circuitry makes the firmware updating easy when a new firmware version is released. During the User Application development or evaluation phase of the Telit module, the USB port implemented on the Telit Evaluation Board (Telit EVB) can be used to connect the Telit module to a Windows-based PC on which a dedicated tool for firmware updating is running. Telit provides the User with two tools to update the module firmware. The following paragraphs describe them.
6.1.1. TFI Update
The firmware update can be performed with a specific software tool supplied by Telit which runs on Windows based PCs. The program will erase the contents of the flash memory, and then the program will write on the flash memory. The "LE910_xxx_TFI.exe" file includes binary image. The binary image included in the TFI package will be checked with SHA256 hash prior to the start of the TFI firmware update procedure. The TFI will stop updating if data corruption has been detected. The following is procedure of TFI update. 1. Before updating with TFI, please check "Telit Serial Diagnostics Interface" in your Windows device manager.

2. If you run LE910_xxx_TFI.exe, Windows CMD prompt will be popped up.

1VV0301556 Rev. 10

Page 166 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
3. TFI downloader detects "Telit Serial Diagnostics" automatically and start download.

4. Wait for the end of programming completed message

5. Telit LE910Cx module is now programmed with the new firmware.
6.1.2. XFP Update
The module firmware update can be performed with the XFP Tool provided by Telit. It runs on Windows based PCs. It erases the flash memory content, then downloads the new firmware on the flash memory. The XFP firmware image has CRC for each block and this CRC value transferred to the module with the binary data. The update will be stopped if corrupted data is detected on the module.
The following is procedure of XFP update.

1VV0301556 Rev. 10

Page 167 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide 1. If you run "Xfp.exe", the following window will be displayed. Please press `OK' button after you have finished reading the notice.
2. If you want to download over USB, please select "USB" in port combo box.

1VV0301556 Rev. 10

Page 168 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide Or if you want to download over UART, please select main UART port in combo box.
UART download is supported from version 4.2.0 or higher. 3. Press the `Browse' button and select stream binary what you like to use for upgrade.
4. Press the `Program' button for start upgrade. The blue bar will be increased during upgrade.

1VV0301556 Rev. 10

Page 169 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
5. The following window is displayed on the screen when the module upgrade is success.

1VV0301556 Rev. 10

Page 170 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

7. PRODUCT AND SAFETY INFORMATION
Copyrights and Other Notices
SPECIFICATIONS ARE SUBJECT TO CHANGE WITHOUT NOTICE
Although reasonable efforts have been made to ensure the accuracy of this document, Telit assumes no liability resulting from any inaccuracies or omissions in this document, or from the use of the information contained herein. The information contained in this document has been carefully checked and is believed to be reliable. Telit reserves the right to make changes to any of the products described herein, to revise it and to make changes from time to time without any obligation to notify anyone of such revisions or changes. Telit does not assume any liability arising from 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.
This document may contain references or information about Telit's products (machines and programs), or services that are not announced in your country. Such references or information do not necessarily mean that Telit intends to announce such Telit products, programming, or services in your country.

7.1.1. Copyrights
This instruction manual and the Telit products described herein may include or describe Telit copyrighted material, such as computer programs stored in semiconductor memories or other media. The laws in Italy and in other countries reserve to 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 of Telit's or its licensors' copyrighted material contained herein or described in this instruction manual, shall not be copied, reproduced, distributed, merged or modified in any way without the express written permission of the owner. Furthermore, the purchase of Telit products shall not be deemed to grant in any way, neither directly nor by implication, or estoppel, any license.

7.1.2. Computer Software Copyrights
Telit and the Third Party supplied Software (SW) products, described in this instruction manual may include Telit's and other Third Party's copyrighted computer programs stored in semiconductor memories or other media. The laws in Italy and in other countries reserve to Telit and other Third Party, SW exclusive rights for copyrighted computer programs, including � but not limited to - the exclusive right to copy or

1VV0301556 Rev. 10

Page 171 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
reproduce in any form the copyrighted products. Accordingly, any copyrighted computer programs contained in Telit's products described in this instruction manual shall not be copied (reverse engineered) or reproduced in any manner without the express written permission of the copyright owner, being Telit or the Third Party software supplier. Furthermore, the purchase of Telit products shall not be deemed to grant either directly or by implication, estoppel, or in any other way, any license under the copyrights, patents or patent applications of Telit or other Third Party supplied SW, except for the normal non-exclusive, royalty free license to use arising by operation of law in the sale of a product.

Usage and Disclosure Restrictions

7.2.1. License Agreements
The software described in this document is owned by Telit and its licensors. It is furnished by express license agreement only and shall be used exclusively in accordance with the terms of such agreement.

7.2.2. Copyrighted Materials
The Software and the documentation are copyrighted materials. Making unauthorized copies is prohibited by the law. The software or the documentation shall not be reproduced, transmitted, transcribed, even partially, nor stored in a retrieval system, nor translated into any language or computer language, in any form or by any means, without prior written permission of Telit.

7.2.3. High Risk Materials
Components, units, or third-party goods used in the making of 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: operations 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 eligibility for such High Risk Activities.

7.2.4. Trademarks
TELIT and the Stylized T-Logo are registered in the Trademark Office. All other product or service names are property of their respective owners.

1VV0301556 Rev. 10

Page 172 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
7.2.5. Third Party Rights
The software may include Third Party's software Rights. In this case the user agrees to comply with all terms and conditions imposed in respect of such separate software rights. In addition to Third Party Terms, the disclaimer of warranty and limitation of liability provisions in this License, shall apply to the Third Party Rights software as well.
TELIT HEREBY DISCLAIMS ANY AND ALL WARRANTIES EXPRESSED OR IMPLIED FROM ANY THIRD PARTY REGARDING ANY SEPARATE FILES, ANY THIRD PARTY MATERIALS INCLUDED IN THE SOFTWARE, ANY THIRD PARTY MATERIALS FROM WHICH THE SOFTWARE IS DERIVED (COLLECTIVELY "OTHER CODES"), AND THE USE OF ANY OR ALL OTHER CODES IN CONNECTION WITH THE SOFTWARE, INCLUDING (WITHOUT LIMITATION) ANY WARRANTIES OF SATISFACTORY QUALITY OR FITNESS FOR A PARTICULAR PURPOSE.
NO THIRD PARTY LICENSORS OF OTHER CODES MUST BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST OF 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 CODES 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.
7.2.6. Waiwer of Liability
IN NO EVENT WILL TELIT AND ITS AFFILIATES BE LIABLE FOR AY DIRECT, INDIRECT, SPECIAL, GENERAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY INDIRECT DAMAGE OF ANY KIND WHATSOEVER, INCLUDING BUT NOT LIMITED TO REIMBURSEMENT OF COSTS, COMPENSATION OF ANY DAMAGE, LOSS OF PRODUCTION, LOSS OF PROFIT, LOSS OF USE, LOSS OF BUSINESS, LOSS OF DATA OR REVENUE, WHETHER OR NOT THE POSSIBILITY OF SUCH DAMAGES COULD HAVE BEEN REASONABLY FORESEEN, CONNECTD IN ANY WAY TO THE USE OF THE PRODUCT/S OR TO THE INFORMATION CONTAINED IN THE PRESENT DOCUMENTATION, EVEN IF TELIT AND/OR ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES OR THEY ARE FORESEEABLE OR FOR CLAIMS BY ANY THIRD PARTY.
Safety Recommendations
Make sure the use of this product is allowed in your country and in the environment required. The use of this product may be dangerous and has to be avoided in areas where:

1VV0301556 Rev. 10

Page 173 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide
 it can interfere with other electronic devices, particularly in environments such as hospitals, airports, aircrafts, etc.
 there is a risk of explosion such as gasoline stations, oil refineries, etc. It is the responsibility of the user to enforce the country regulation and the specific environment regulation.
Do not disassemble the product; any mark of tampering will compromise the warranty validity. We recommend following the instructions of the hardware user guides for correct wiring of the product. The product has to be supplied with a stabilized voltage source and the wiring has to be conformed to the security and fire prevention regulations. The product has to be handled with care, avoiding any contact with the pins because electrostatic discharges may damage the product itself. Same cautions have to be taken for the SIM, checking carefully the instruction for its use. Do not insert or remove the SIM when the product is in power saving mode.
The system integrator is responsible for the functioning of the final product. Therefore, the external components of the module, as well as any project or installation issue, have to be handled with care. Any interference may cause the risk of disturbing the GSM network or external devices or having an impact on the security system. Should there be any doubt, please refer to the technical documentation and the regulations in force. Every module has to be equipped with a proper antenna with specific characteristics. The antenna has to be installed carefully in order to avoid any interference with other electronic devices and has to guarantee a minimum distance from the body (20 cm). In case this requirement cannot be satisfied, the system integrator has to assess the final product against the SAR regulation.
The equipment is intended to be installed in a restricted area location.
The equipment must be supplied by an external specific limited power source in compliance with the standard EN 62368-1:2014.
The European Community provides some Directives for the electronic equipment introduced on the market. All of the relevant information is available on the European Community website:
https://ec.europa.eu/growth/sectors/electrical-engineering_en

1VV0301556 Rev. 10

Page 174 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

8. GLOSSARY

APN BCCH CSD CTM CTS DCE DRX DTE DTMF DTR GBR GERAN GPIO GUI HF HS HSPA IMS IRA ME MSISDN NMEA NVM PDN PDP PDU PIN PPP QoS SIM SMS

Access Point Name Broadcast Control Channel Circuit Switched Data Cellular Text Telephone Modems Clear To Send Data Circuit-Terminating Equipment (refer to [14]) Discontinuous Reception Data Terminal Equipment (refer to [14]) Dual Tone Multiple Frequency Data Terminal Ready Guaranteed Bit Rate GSM EDGE Radio Access Network General Purpose Input/Output Graphic User Interface Hands Free (old terminology) Hand Set (old terminology) High Speed Packet Access IP Multimedia Subsystem International Reference Alphabet Mobile Equipment Mobile Station International Subscriber Directory Number National Marine Electronics Association Non-Volatile Memory Public Data Network Packet Data Protocol Protocol Data Unit Personal Identification Number Point to Point Protocol Quality of Service Subscriber Identification Module Short Message Service

1VV0301556 Rev. 10

Page 175 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

SMSC TCP/IP TTY UART UE URC USIM UTRAN

Short Message Service Center Transmission Control Protocol / Internet Protocol Text Telephone Typewriter Universal Asynchronous Receiver Transmitter User Equipment Unsolicited Result Code Universal Subscriber Identification Module Universal Terrestrial Radio Access Network

1VV0301556 Rev. 10

Page 176 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

9. DOCUMENT HISTORY

Revision

Date

Changes

10

2021-06-04

Section 4.2.14.2. TX (ThreadX) updated

Section 4.2.12. GPIO updated

9

2021-04-28

Minor changes on the language

Minor changes on the layout

Legal Notices updated

Section 4.2.8. Application Development Environment updated

Section 4.2.14.2. TX (ThreadX) updated

8

2021-02-05

Section 4.2.12. GPIO added

Section 4.2.18. Ethernet Interface added

Section 4.1 General Functionality and Main Features updated

Section 4.2. Application system overview updated

Section 6.1.1. TFI updated

Section 6.1.2. XFP updated

Section 4.2.16. USB Interface updated

Section 4.2.13.1.2. Apps to Modem updated

Section 4.2.13.1.1. Apps to external MCU updated

Section 4.2.15.1. LE (Linux) updated

Section 4.2.12. GPIO-Keys deleted (moved to "80502NT11769A_LE910Cx_Linux_device_driver_Application_Note")

7

2020-09-25

Section 4.2.10 Wake up Events updated

Section 4.2.12. GPIO-Keys updated

Section 4.2.15 USB Interface updated

6

2020-06-04

Section 2. LE910Cx Variants added

Section 3.2. Architecture based on ThreadX added

Section 3.2.9 Wake up Events updated

Applicability table updated

Section 4.1 General Functionality and Main Features updated

Section 4.2 Application system overview updated

Section 4.2.10 SPI updated

Section 4.2.11. GPIO-Keys updated

Section 4.2.12 Serial Interfaces updated

Section 4.2.14 UART updated

Section 4.2.15 USB Interface updated

Section 4.2.16 HSIC Interface updated

Section 4.2.17. SD/MMC Interface updated

1VV0301556 Rev. 10

Page 177 of 179
Not Subject to NDA

2021-06-04

LE910Cx Software User Guide

Revision

Date

5

2020-01-31

4

2019-11-21

3

2019-09-27

2

2019-06-28

1

2019-01-31

Changes Section 4.2.18. RTC updated Section 4.2.22. Power Management updated Section 4.3.2. Command Response Timeout updated Section 4.4.4.4. NMEA 0183 updated Section 4.4.4.2. LE910Cx Serial Ports updated Section 4.4.4.5. Checking GNSS Device Functionality updated Section 4.5.1.2 Standard ECM/RNDIS updated Section 4.5.1.3 MBIM/RmNet updated Section 4.5.8 Data Concurrency updated Section 4.2.10 Wake up Events updated
Section 3.2.17. SD/MMC Interface added Section 3.2.11. GPIO-Keys updated Section 3.3.6. Network Checking updated Section 3.2.9. Wake up Events updated
Section 3.2.9. Wake up Events added Section 3.2.10. GPIO-Keys updated Section 3.3.6. Network Checking updated
Section 3.2.15. HSIC Interface added Section 3.2.14. USB Interface updated Section 3.2.9. SPI updated Section 3.3.2. Command Response Timeout updated
Section 3.3.5.8. Preferred Operator List, added Section 3.3.6. Network Checking added Section 3.2.14. USB Interface, updated Section 3.3.4.1. RAT selection updated Section 3.2.1.1 Added LE910C1-EU 4Gbit memory information updated
Initial version
From Mod.0818 rev.4

1VV0301556 Rev. 10

Page 178 of 179
Not Subject to NDA

2021-06-04