Quectel BC95 G BC68 AT Commands Manual V1.2
User Manual:
Open the PDF directly: View PDF .
Page Count: 155 [warning: Documents this large are best viewed by clicking the View PDF Link!]
- About the Document
- Contents
- Table Index
- 1 Introduction
- 2 3GPP Commands (27.007)
- 2.1. ATI Display Product Identification Information
- 2.2. ATE Set Command Echo Mode
- 2.3. AT+CGMI Request Manufacturer Identification
- 2.4. AT+CGMM Request Manufacturer Model
- 2.5. AT+CGMR Request Manufacturer Revision
- 2.6. AT+CGSN Request Product Serial Number
- 2.7. AT+CEREG EPS Network Registration Status
- 2.8. AT+CSCON Signalling Connection Status
- 2.9. AT+CLAC List Available Commands
- 2.10. AT+CSQ Get Signal Strength Indicator
- 2.11. AT+CGPADDR Show PDP Addresses
- 2.12. AT+COPS PLMN Selection
- 2.13. AT+CGATT PS Attach or Detach
- 2.14. AT+CGACT Activate or Deactivate PDP Context
- 2.15. AT+CIMI Request International Mobile Subscriber Identity
- 2.16. AT+CGDCONT Define a PDP Context
- 2.17. AT+CFUN Set UE Functionality
- 2.18. AT+CMEE Report UE Error
- 2.19. AT+CCLK Return Current Date and Time
- 2.20. AT+CPSMS Power Saving Mode Setting
- 2.21. AT+CEDRXS eDRX Setting
- 2.22. AT+CEER Extended Error Report
- 2.23. AT+CEDRXRDP eDRX Read Dynamic Parameters
- 2.24. AT+CTZR Time Zone Reporting
- 2.25. AT+CIPCA Initial PDP Context Activation
- 2.26. AT+CGAPNRC APN Rate Control
- 2.27. AT+CSODCP* Sending Originating Data via the Control Plane
- 2.28. AT+CRTDCP* Reporting Terminating Data via the Control Plane
- 2.29. AT+CGCONTRDP Read PDP Context Dynamic Parameters
- 2.30. AT+CGAUTH Define PDP Context Authentication Parameters
- 2.31. AT+CNMPSD No More PS Data
- 3 3GPP Commands (27.005)
- 4 General Commands
- 4.1. AT+NRB Reboot the UE
- 4.2. AT+NUESTATS Query UE Statistics
- 4.3. AT+NEARFCN Specify Search Frequencies
- 4.4. AT+NSOCR Create a Socket
- 4.5. AT+NSOST SendTo Command (UDP Only)
- 4.6. AT+NSOSTF SendTo Command with Flags (UDP Only)
- 4.7. AT+NQSOS Query the List of Pending Socket Message
- 4.8. AT+NSORF Receive Command
- 4.9. AT+NSOCO Connect Command (TCP Only)
- 4.10. AT+NSOSD Send Command (TCP Only)
- 4.11. AT+NSOCL Close a Socket
- 4.12. +NSONMI Indicator of Arrived Socket Message (Response Only)
- 4.13. +NSOCLI Socket Close Indicator (Response Only)
- 4.14. AT+NPING Test IP Network Connectivity to a Remote Host
- 4.15. AT+NBAND Set Supported Bands
- 4.16. AT+NLOGLEVEL Set Debug Logging Level
- 4.17. AT+NCONFIG Configure UE Behaviour
- 4.18. AT+NATSPEED Configure UART Port Baud Rate
- 4.19. AT+NCCID USIM Card Identification
- 4.20. AT+NFWUPD Firmware Update via UART
- 4.21. AT+NPOWERCLASS Set the Mapping for Band and Power Class
- 4.22. AT+NPSMR Power Saving Mode Status Report
- 4.23. AT+NPTWEDRXS Paging Time Window Value and eDRX Setting
- 4.24. AT+NPIN* PIN Operator
- 4.25. AT+NCSEARFCN Clear Stored EARFCN
- 4.26. AT+NIPINFO IP Address Information Report
- 4.27. AT+NCPCDPR Configure PDP Context Dynamic Parameters to be Read
- 4.28. AT+NQPODCP Query Pending Originating Data List via the Control Plane
- 4.29. AT+QLEDMODE Set NETLIGHT LED Function Mode
- 4.30. AT+QDNS Trigger DNS Domain Name Resolution
- 5 Huawei’s IoT Platform Commands
- 5.1. AT+NCDP Configure and Query CDP Server Settings
- 5.2. AT+QSECSWT Set Data Encryption Mode
- 5.3. AT+QSETPSK Set PSK ID and PSK
- 5.4. AT+QLWSREGIND Register Control
- 5.5. AT+QLWULDATA Send Data
- 5.6. AT+QLWULDATAEX Send CON/NON Message
- 5.7. AT+QLWULDATASTATUS Query CON Messages Sent Status
- 5.8. AT+QLWFOTAIND Set DFOTA Update Mode
- 5.9. AT+QREGSWT Set Registration Mode
- 5.10. AT+NMGS Send a Message
- 5.11. AT+NMGR Get a Message
- 5.12. AT+NNMI New Message Indications
- 5.13. AT+NSMI Send Message Indications
- 5.14. AT+NQMGR Query the Status of Messages Received
- 5.15. AT+NQMGS Query the Status of Messages Sent
- 5.16. AT+NMSTATUS Message Registration Status
- 5.17. +QLWEVTIND LwM2M Event Report (Response Only)
- 5.18. AT+QRESETDTLS Reset DTLS Mode
- 5.19. AT+QDTLSSTAT Query the State of DTLS
- 5.20. AT+QBOOTSTRAPHOLDOFF* Bootstrap Hold off Time
- 5.21. AT+QLWSERVERIP Set/Delete Bootstrap/LwM2M Server IP
- 5.22. AT+QSETBSPSK* Configure PSK ID and PSK to Bootstrap
- 5.23. AT+QBSSECSWT* Configure Bootstrap Server Connection Switches
- 6 Error Values
- 7 Reboot Reasons
- 8 Examples
- 8.1. Network Attachment
- 8.2. Send/Receive/Read a UDP Message
- 8.3. Send/Receive/Read a TCP Message
- 8.4. Examples Relating to Huawei’s IoT Platform
- 9 Appendix A Reference
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 1 / 154
Our aim is to provide customers with timely and comprehensive service. For any
assistance, please contact our company headquarters:
Quectel Wireless Solutions Co., Ltd.
7th Floor, Hongye Building, No.1801 Hongmei Road, Xuhui District, Shanghai 200233, China
Tel: +86 21 5108 6236
Email: info@quectel.com
Or our local office. For more information, please visit:
http://quectel.com/support/sales.htm
For technical support, or to report documentation errors, please visit:
http://quectel.com/support/technical.htm
Or email to: support@quectel.com
GENERAL NOTES
QUECTEL OFFERS THE INFORMATION AS A SERVICE TO ITS CUSTOMERS. THE INFORMATION
PROVIDED IS BASED UPON CUSTOMERS‟ REQUIREMENTS. QUECTEL MAKES EVERY EFFORT
TO ENSURE THE QUALITY OF THE INFORMATION IT MAKES AVAILABLE. QUECTEL DOES NOT
MAKE ANY WARRANTY AS TO THE INFORMATION CONTAINED HEREIN, AND DOES NOT ACCEPT
ANY LIABILITY FOR ANY INJURY, LOSS OR DAMAGE OF ANY KIND INCURRED BY USE OF OR
RELIANCE UPON THE INFORMATION. ALL INFORMATION SUPPLIED HEREIN IS SUBJECT TO
CHANGE WITHOUT PRIOR NOTICE.
COPYRIGHT
THE INFORMATION CONTAINED HERE IS PROPRIETARY TECHNICAL INFORMATION OF
QUECTEL WIRELESS SOLUTIONS CO., LTD. TRANSMITTING, REPRODUCTION, DISSEMINATION
AND EDITING OF THIS DOCUMENT AS WELL AS UTILIZATION OF THE CONTENT ARE
FORBIDDEN WITHOUT PERMISSION. OFFENDERS WILL BE HELD LIABLE FOR PAYMENT OF
DAMAGES. ALL RIGHTS ARE RESERVED IN THE EVENT OF A PATENT GRANT OR
REGISTRATION OF A UTILITY MODEL OR DESIGN.
Copyright © Quectel Wireless Solutions Co., Ltd. 2018. All rights reserved.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 2 / 154
About the Document
History
Revision
Date
Author
Description
1.0
2017-12-28
Hayden WANG/
Gary TANG/
Arnold ZHAO
Initial
1.1
2018-03-15
Oven TAO/
Waner PAN/
Hayden WANG/
Donald TANG
1. Added the following AT commands: AT+NQSOS/
+NSOCO/+NSOSD/+NMGS/+NMGR/+NNMI/
+NSMI/+NQMGR/+NQMGS/+NMSTATUS
2. Updated parameter and/or example description for
the following AT commands: AT+CGMR/
+CGDCONT/+CNMA/+NUESTATS/+NSOCR/
+NSOST/+NSOSTF/+NCONFIG/+NPTWEDRXS/+
QLWSREGIND/+QLEDMODE/+QLWSREGIND/+QL
WULDATA/+QLWULDATAEX/
+QLWULDATASTATUS/+QLWFOTAIND/
3. Added examples in Chapter 9.2.
4. Deleted URC +QLWULDATAEXIND.
1.2
2018-07-04
Hayden WANG/
Evan WU/
Donald TANG
1. Added the following AT commands: AT+
+CGCONTRDP/CGAUTH/CNMPSD/+NCSEARFCN
/+NIPINFO/+NCPCDPR/+NQPODCP/+QDNS/+QR
ESETDTLS/+QDTLSSTAT/+QBOOTSTRAPHOLDO
FF/+QLWSERVERIP/+QSETBSPSK/
+QBSSECSWT.
2. Added the following URC: +NSOCLI.
3. Updated the parameter and example description for
the following AT commands: AT +NSOCR/
+NBAND/+NFWUPD/+NPOWERCLASS.
4. Updated error values in Chapter 6.
5. Updated the display of reboot message.
6. Deleted the original Chapter 2.
7. Updated/added examples in Chapter 8.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 3 / 154
Contents
About the Document ................................................................................................................................... 2
Contents ....................................................................................................................................................... 3
Table Index ................................................................................................................................................... 6
1 Introduction .......................................................................................................................................... 7
1.1. Definitions .................................................................................................................................. 8
1.2. AT Command Syntax ................................................................................................................. 8
1.3. AT Command Responses .......................................................................................................... 9
1.4. 3GPP Compliance ..................................................................................................................... 9
2 3GPP Commands (27.007) ................................................................................................................ 10
2.1. ATI Display Product Identification Information ...................................................................... 10
2.2. ATE Set Command Echo Mode ............................................................................................ 11
2.3. AT+CGMI Request Manufacturer Identification .................................................................... 12
2.4. AT+CGMM Request Manufacturer Model ............................................................................ 12
2.5. AT+CGMR Request Manufacturer Revision ......................................................................... 13
2.6. AT+CGSN Request Product Serial Number ......................................................................... 14
2.7. AT+CEREG EPS Network Registration Status .................................................................... 16
2.8. AT+CSCON Signalling Connection Status ........................................................................... 19
2.9. AT+CLAC List Available Commands .................................................................................... 21
2.10. AT+CSQ Get Signal Strength Indicator ................................................................................ 22
2.11. AT+CGPADDR Show PDP Addresses ................................................................................. 24
2.12. AT+COPS PLMN Selection .................................................................................................. 25
2.13. AT+CGATT PS Attach or Detach .......................................................................................... 28
2.14. AT+CGACT Activate or Deactivate PDP Context ................................................................. 29
2.15. AT+CIMI Request International Mobile Subscriber Identity .................................................. 31
2.16. AT+CGDCONT Define a PDP Context ................................................................................. 32
2.17. AT+CFUN Set UE Functionality ............................................................................................ 35
2.18. AT+CMEE Report UE Error .................................................................................................. 36
2.19. AT+CCLK Return Current Date and Time ............................................................................ 38
2.20. AT+CPSMS Power Saving Mode Setting ............................................................................. 39
2.21. AT+CEDRXS eDRX Setting .................................................................................................. 41
2.22. AT+CEER Extended Error Report ........................................................................................ 44
2.23. AT+CEDRXRDP eDRX Read Dynamic Parameters ............................................................ 45
2.24. AT+CTZR Time Zone Reporting ........................................................................................... 47
2.25. AT+CIPCA Initial PDP Context Activation ............................................................................. 49
2.26. AT+CGAPNRC APN Rate Control ........................................................................................ 51
2.27. AT+CSODCP* Sending Originating Data via the Control Plane .......................................... 53
2.28. AT+CRTDCP* Reporting Terminating Data via the Control Plane ....................................... 55
2.29. AT+CGCONTRDP Read PDP Context Dynamic Parameters .............................................. 57
2.30. AT+CGAUTH Define PDP Context Authentication Parameters ........................................... 59
2.31. AT+CNMPSD No More PS Data ........................................................................................... 60
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 4 / 154
3 3GPP Commands (27.005) ................................................................................................................ 62
3.1. AT+CSMS Select Message Service ..................................................................................... 62
3.2. AT+CNMA New Message Acknowledgement to UE ............................................................. 64
3.3. AT+CSCA Service Centre Address ....................................................................................... 66
3.4. AT+CMGS Send SMS Message ........................................................................................... 67
3.5. AT+CMGC Send SMS Command ......................................................................................... 68
4 General Commands ........................................................................................................................... 70
4.1. AT+NRB Reboot the UE ....................................................................................................... 70
4.2. AT+NUESTATS Query UE Statistics .................................................................................... 70
4.3. AT+NEARFCN Specify Search Frequencies ........................................................................ 76
4.4. AT+NSOCR Create a Socket ................................................................................................ 77
4.5. AT+NSOST SendTo Command (UDP Only) ......................................................................... 78
4.6. AT+NSOSTF SendTo Command with Flags (UDP Only) ..................................................... 79
4.7. AT+NQSOS Query the List of Pending Socket Message ..................................................... 81
4.8. AT+NSORF Receive Command ........................................................................................... 82
4.9. AT+NSOCO Connect Command (TCP Only) ....................................................................... 83
4.10. AT+NSOSD Send Command (TCP Only) ............................................................................ 84
4.11. AT+NSOCL Close a Socket .................................................................................................. 85
4.12. +NSONMI Indicator of Arrived Socket Message (Response Only) ...................................... 86
4.13. +NSOCLI Socket Close Indicator (Response Only) ............................................................. 87
4.14. AT+NPING Test IP Network Connectivity to a Remote Host ................................................ 87
4.15. AT+NBAND Set Supported Bands........................................................................................ 88
4.16. AT+NLOGLEVEL Set Debug Logging Level ........................................................................ 90
4.17. AT+NCONFIG Configure UE Behaviour ............................................................................... 91
4.18. AT+NATSPEED Configure UART Port Baud Rate ............................................................... 94
4.19. AT+NCCID USIM Card Identification .................................................................................... 96
4.20. AT+NFWUPD Firmware Update via UART .......................................................................... 97
4.21. AT+NPOWERCLASS Set the Mapping for Band and Power Class ..................................... 98
4.22. AT+NPSMR Power Saving Mode Status Report .................................................................. 99
4.23. AT+NPTWEDRXS Paging Time Window Value and eDRX Setting ................................... 101
4.24. AT+NPIN* PIN Operator ..................................................................................................... 104
4.25. AT+NCSEARFCN Clear Stored EARFCN .......................................................................... 105
4.26. AT+NIPINFO IP Address Information Report ..................................................................... 106
4.27. AT+NCPCDPR Configure PDP Context Dynamic Parameters to be Read ....................... 108
4.28. AT+NQPODCP Query Pending Originating Data List via the Control Plane ..................... 110
4.29. AT+QLEDMODE Set NETLIGHT LED Function Mode .......................................................111
4.30. AT+QDNS Trigger DNS Domain Name Resolution ............................................................ 112
5 Huawei’s IoT Platform Commands................................................................................................. 114
5.1. AT+NCDP Configure and Query CDP Server Settings ...................................................... 114
5.2. AT+QSECSWT Set Data Encryption Mode ........................................................................ 115
5.3. AT+QSETPSK Set PSK ID and PSK .................................................................................. 116
5.4. AT+QLWSREGIND Register Control .................................................................................. 117
5.5. AT+QLWULDATA Send Data .............................................................................................. 118
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 5 / 154
5.6. AT+QLWULDATAEX Send CON/NON Message ................................................................ 119
5.7. AT+QLWULDATASTATUS Query CON Messages Sent Status ......................................... 120
5.8. AT+QLWFOTAIND Set DFOTA Update Mode .................................................................... 121
5.9. AT+QREGSWT Set Registration Mode .............................................................................. 122
5.10. AT+NMGS Send a Message ............................................................................................... 123
5.11. AT+NMGR Get a Message ................................................................................................. 124
5.12. AT+NNMI New Message Indications .................................................................................. 125
5.13. AT+NSMI Send Message Indications ................................................................................. 126
5.14. AT+NQMGR Query the Status of Messages Received ...................................................... 127
5.15. AT+NQMGS Query the Status of Messages Sent .............................................................. 128
5.16. AT+NMSTATUS Message Registration Status ................................................................... 129
5.17. +QLWEVTIND LwM2M Event Report (Response Only) .................................................... 130
5.18. AT+QRESETDTLS Reset DTLS Mode ............................................................................... 131
5.19. AT+QDTLSSTAT Query the State of DTLS ........................................................................ 132
5.20. AT+QBOOTSTRAPHOLDOFF* Bootstrap Hold off Time ................................................... 133
5.21. AT+QLWSERVERIP Set/Delete Bootstrap/LwM2M Server IP ........................................... 134
5.22. AT+QSETBSPSK* Configure PSK ID and PSK to Bootstrap ............................................. 135
5.23. AT+QBSSECSWT* Configure Bootstrap Server Connection Switches ............................. 137
6 Error Values ...................................................................................................................................... 139
7 Reboot Reasons ............................................................................................................................... 142
8 Examples .......................................................................................................................................... 144
8.1. Network Attachment .............................................................................................................. 144
8.1.1. Automatic Network Attachment ................................................................................... 144
8.1.2. Manual Network Attachment ........................................................................................ 145
8.2. Send/Receive/Read a UDP Message ................................................................................... 146
8.3. Send/Receive/Read a TCP Message .................................................................................... 147
8.4. Examples Relating to Huawei‟s IoT Platform ........................................................................ 148
8.4.1. Register to Huawei‟s IoT Platform ............................................................................... 148
8.4.2. Send/Receive Data with Huawei‟s IoT Platform .......................................................... 149
8.4.3. Upgrade Firmware on Huawei‟s IoT Platform ............................................................. 150
8.4.4. Register to Huawei‟s IoT Platform with DTLS ............................................................. 152
9 Appendix A Reference ..................................................................................................................... 153
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 6 / 154
Table Index
TABLE 1: UNSOLICITED INFORMATION FOR UE UPDATE STATE INDICATION .......................................... 7
TABLE 2: AT COMMAND SYNTAX ..................................................................................................................... 8
TABLE 3: GENERAL ERRORS (27.007)......................................................................................................... 139
TABLE 4: GENERAL ERRORS (27.005)......................................................................................................... 139
TABLE 5: SPECIFIC ERROR CODES ............................................................................................................ 141
TABLE 6: REBOOT MESSAGES DISPLAYED ............................................................................................... 142
TABLE 7: TERMS AND ABBREVIATIONS ...................................................................................................... 153
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 7 / 154
1 Introduction
This document gives details of the AT Command Set supported by Quectel NB-IoT BC95-G and BC68
modules.
The following string will be output after booting the module:
<CR><LF>Neul<CR><LF>OK<CR><LF>
After this string has been received, the AT command processor is ready to accept AT commands.
If BC95-G/BC68 module is rebooted or restarted for any reason that is not a normal power-on sequence,
a message that indicates the reason for the reboot would be output before the
<CR><LF>Neul<CR><LF>OK<CR><LF> string. Please refer to Chapter 7 for more details.
In case that an external MCU intervenes in the process of firmware update via DFOTA, unsolicited
information will be output to inform the external MCU the current update state.
Table 1: Unsolicited Information for UE Update State Indication
Unsolicited Information
Description
<CR><LF>FIRMWARE DOWNLOADING<CR><LF>
Indicates that UE is downloading update
package.
<CR><LF>FIRMWARE DOWNLOAD FAILED<CR><LF>
Indicates that the download failed.
<CR><LF>FIRMWARE DOWNLOADED<CR><LF>
Indicates that the download finished.
<CR><LF>FIRMWARE UPDATING<CR><LF>
Indicates that the UE is updating.
<CR><LF>FIRMWARE UPDATE SUCCESS<CR><LF>
Indicates that the update is successful, but
update state has not been reported to
firmware package server yet.
<CR><LF>FIRMWARE UPDATE FAILED<CR><LF>
Indicates that the update failed.
<CR><LF>FIRMWARE UPDATE OVER<CR><LF>
Indicates that the update has been
completed, and the update state has been
reported to firmware package server.
Update is done after this information.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 8 / 154
During updating procedure, the module should not be operated until "FIRMWARE UPDATE OVER" is
reported. For instance, executing AT+NRB to power off the module is not permitted, otherwise an error
will occur.
1.1. Definitions
- <CR>: Carriage return character;
- <LF>: Line feed character;
- <..>: Parameter name. Angle brackets do not appear on command line;
- [..]: Optional parameter. Square brackets do not appear on the command line.
1.2. AT Command Syntax
Table 2: AT Command Syntax
Multiple commands can be placed on a single line using a semi-colon (“;”) between commands. Only the
first command should have AT prefix. Commands can be in upper or lower case.
When entering AT commands spaces are ignored except in the following cases:
- Within quoted strings, where they are preserved;
- Within an unquoted string or numeric parameter;
- Within an IP address;
- Within the AT command name up to and including a „=‟, „?‟ or „=?‟.
They can be used to make the input more human-readable. On input, at least a carriage return is required.
A newline character is ignored so it is permissible to use carriage return/line feed pairs on the input.
If no command is entered after the AT token, "OK" will be returned. If an invalid command is entered,
Test Command
AT+<cmd>=?
Check possible sub-parameter values
Read Command
AT+<cmd>?
Check current sub-parameter values
Write Command
AT+<cmd>=p1[,p2[,p3[.....
]]]
Write command
Execution
Command
AT+<cmd>
Execution command
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 9 / 154
“ERROR” will be returned.
Optional parameters, unless explicitly stated, need to be provided up to the last parameter being entered.
1.3. AT Command Responses
When the AT command processor has finished processing a line, it will output "OK", "ERROR" or “+CME
ERROR:<err>” to indicate that it is ready to accept a new command. Solicited informational responses
are sent before the final "OK", "ERROR" or “+CME ERROR:<err>”.
Responses will be in the format of:
<CR><LF>+CMD1:<parameters><CR><LF>
<CR><LF>OK<CR><LF>
Or
<CR><LF><parameters><CR><LF>
<CR><LF>OK<CR><LF>
1.4. 3GPP Compliance
3GPP commands are complied with the 3GPP TS 27.007 v14.3.0 (2017-03).
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 10 / 154
2 3GPP Commands (27.007)
2.1. ATI Display Product Identification Information
The execution command returns product identification information. Please refer to Chapter 6 for possible
<err> values.
Parameter
Example
ATI
Quectel
BC95-G
Revision:BC95GJBR01A01
OK
ATI Display Product Identification Information
Execution Command
ATI
Response
Quectel
<Object Id>
Revision:<revision>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<Object Id> Identifier of device type
<revision> Revision of software release
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 11 / 154
2.2. ATE Set Command Echo Mode
The execution command determines whether or not the UE echoes characters received from external
MCU during command state. Please refer to Chapter 6 for possible <err> values.
Parameter
Example
ATE0
OK
ATI
Quectel
BC95-G
Revision:BC95GJBR01A01
OK
ATE1
OK
ATI
ATI
Quectel
BC95-G
Revision:BC95GJBR01A01
OK
ATE Set Command Echo Mode
Execution Command
ATE<value>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<value> 0 Echo mode OFF
1 Echo mode ON
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 12 / 154
2.3. AT+CGMI Request Manufacturer Identification
The execution command returns manufacturer information. By default, it will return “Quectel” on the
standard platform. Please refer to Chapter 6 for possible <err> values.
Parameter
Example
AT+CGMI
Quectel
OK
2.4. AT+CGMM Request Manufacturer Model
The execution command returns manufacturer model information. Please refer to Chapter 6 for possible
<err> values.
AT+CGMI Request Manufacturer Identification
Execution Command
AT+CGMI
Response
<manufacturer>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CGMI=?
Response
OK
Maximum Response Time
300ms
<manufacturer> Manufacturer information. The total number of characters, including line
terminators, in the information text shall not exceed 2048 characters, and shall not
contain the sequence 0<CR> or OK<CR>.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 13 / 154
Parameter
Example
AT+CGMM
BC95GJB-02-STD
OK
2.5. AT+CGMR Request Manufacturer Revision
The execution command returns the manufacturer revision. The text is human-readable and is not
intended for microcontroller parsing. By default, it will return the firmware revision - release and build.
The execution command returns one or more lines of information text <revision>. Please refer to Chapter
6 for possible <err> values.
AT+CGMM Request Manufacturer Model
Execution Command
AT+CGMM
Response
<model>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CGMM=?
Response
OK
Maximum Response Time
300ms
<model> Manufacturer model information. The total number of characters, including line
terminators, in the information text shall not exceed 2048 characters, and shall
not contain the sequence 0<CR> or OK<CR>.
AT+CGMR Request Manufacturer Revision
Execution Command
AT+CGMR
Response
<Revision>
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 14 / 154
Parameter
Example
AT+CGMR
SSB,V150R100C10B200SP1
SECURITY_A,V150R100C20B300
PROTOCOL_A,V150R100C20B300
APPLICATION_A,V150R100C20B300
SECURITY_B,V150R100C20B300
RADIO,Hi2115_RF0
OK
AT+CGMR=?
OK
2.6. AT+CGSN Request Product Serial Number
The execution command returns the IMEI (International Mobile station Equipment Identity) number and
related information. For UE which does not support <snt>, only "OK" is returned. Please refer to Chapter
6 for possible <err> values.
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CGMR=?
Response
OK
Maximum Response Time
300ms
<revision>
Manufacturer revision. The total number of characters, including line terminators, in
the information text shall not exceed 2048 characters, and shall not contain the
sequence 0<CR> or OK<CR>. The <revision> may change format over time. It
should be treated as an opaque identifier.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 15 / 154
Parameter
AT+CGSN Request Product Serial Number
Execution/Write Command
AT+CGSN[=<snt>]
Response
When <snt>=0 (or omitted) and the command is executed
successfully:
<sn>
When <snt>=1 and the command is executed successfully:
+CGSN:<imei>
When <snt>=2 and the command is executed successfully:
+CGSN:<imeisv>
When <snt>=3 and the command is executed successfully:
+CGSN:<svn>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CGSN=?
Response
When UE supports <snt> and the command is executed
successfully:
+CGSN:(list of supported <snt>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<snt> Integer type. The serial number type that has been requested.
0 Returns <sn>
1 Returns the IMEI number
2 Returns the IMEISV (International Mobile station Equipment Identity and Software
Version) number
3 Returns the SVN (Software Version Number)
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 16 / 154
Example
AT+CGSN=1 //Request the IMEI number
+CGSN:490154203237511
OK
2.7. AT+CEREG EPS Network Registration Status
The write command controls the presentation of an unsolicited result code (URC) “+CEREG:<stat>” when
<n>=1 and there is a change in the UE's EPS network registration status in E-UTRAN, or unsolicited
result code “+CEREG:<stat>[,[<tac>],[<ci>],[<AcT>]]” when <n>=2 and there is a change of the network
cell in E-UTRAN. The parameters <AcT>, <tac> and <ci> are provided only if available. The value <n>=3
further extends the unsolicited result code with [,<cause_type>,<reject_cause>], when available, when
the value of <stat> changes. Please refer to Chapter 6 for possible <err> values.
If the UE requests PSM for reducing its power consumption, the write command controls the presentation
of an unsolicited result code: “+CEREG:<stat>[,[<tac>],[<ci>],[<AcT>][,[<cause_type>],[<reject_cause>][,
[<Active-Time>],[<Periodic-TAU>]]]]”.
When <n>=4, the unsolicited result code will provide the UE with additional information for the active time
value and the extended periodic TAU value if there is a change of the network cell in E-UTRAN. The value
<n>=5 further enhances the unsolicited result code with <cause_type> and <reject_cause> when the
value of <stat> changes. The parameters <AcT>, <tac>, <ci>, <cause_type>, <reject_cause>,
<Active-Time> and <Periodic-TAU> are provided only if available.
The read command returns the status of result code presentation and an integer <stat> which shows
whether the network has currently indicated the registration of the UE. Location information elements
<tac>, <ci> and <AcT>, if available, are returned only when <n>=2 and UE is registered on the network.
The parameters [,<cause_type>,<reject_cause>], if available, are returned when <n>=3.
The test command returns supported parameter values.
<sn> The 128-bit UUID of the UE. The total number of characters, including line terminators, in
the information text shall not exceed 2048 characters, and shall not contain the sequence 0
<CR> or OK<CR>.
<imei> String type indecimal format indicating the IMEI number
<imeisv> String type indecimal format indicating the IMEISV number
<svn> String type indecimal format indicating the current SVN which is a part of IMEISV
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 17 / 154
Parameter
AT+CEREG EPS Network Registration Status
Write Command
AT+CEREG=<n>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CEREG?
Response
When <n>=0, 1, 2 or 3 and the command is executed
successfully:
+CEREG:<n>,<stat>[,[<tac>],[<ci>],[<AcT>[,<cause_type
>,<reject_ cause>]]]
When <n>=4 or 5 and the command is executed successfully:
+CEREG:<n>,<stat>[,[<tac>],[<ci>],[<AcT>],[<rac>][,[<ca
use_type>],[<reject_cause>][,[<Active-Time>],[<Periodic-
TAU>]]]]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CEREG=?
Response
+CEREG:(list of supported <n>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<n> Integer type
0 Disable network registration unsolicited result code
1 Enable network registration unsolicited result code: “+CEREG:<stat>”
2 Enable network registration and location information unsolicited result code:
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 18 / 154
“+CEREG:<stat>[,[<tac>],[<ci>],[<AcT>]]”
3 Enable network registration, location information and EMM cause value information
unsolicited result code:
“+CEREG:<stat>[,[<tac>],[<ci>],[<AcT>][,<cause_type>,<reject_cause>]]”
4 For a UE that requests PSM, enable network registration and location information
unsolicited result code:
“+CEREG:<stat>[,[<tac>],[<ci>],[<AcT>][,,[,[<Active-Time>],[<Periodic-TAU>]]]]”
5 For a UE that requests PSM, enable network registration, location information and
EMM cause value information unsolicited result code:
“+CEREG:<stat>[,[<tac>],[<ci>],[<AcT>][,[<cause_type>],[<reject_cause>][,[<Active-
Time>],[<Periodic-TAU>]]]]”
<stat> Integer type. The EPS registration status.
0 Not registered, UE is not currently searching an operator to register to
1 Registered, home network
2 Not registered, but UE is currently trying to attach or searching an operator to register
to
3 Registration denied
4 Unknown (e.g. out of E-UTRAN coverage)
5 Registered, roaming
<tac> String type. Two bytes tracking area code in hexadecimal format (e.g. “00C3” equals 195 in
decimal).
<ci> String type. Four bytes E-UTRAN cell ID in hexadecimal format.
<AcT> Integer type. The access technology of the serving cell.
7 E-UTRAN
9 E-UTRAN (NB-S1 mode)
<cause_type> Integer type. The type of <reject_cause>.
0 Indicates that <reject_cause> contains an EMM cause value
1 Indicates that <reject_cause> contains a manufacturer-specific cause value
<reject_cause> Integer type. Contains the cause of the failed registration. The value is of type as
defined by <cause_type>.
<Active-Time> String type. One byte in an 8-bit format. Indicates the active time value (T3324)
allocated to the UE in E-UTRAN. The active time value is coded as one byte (octet 3)
of the GPRS Timer 2 information element coded as bit format (e.g. “00100100” equals
4 minutes).
Bits 5 to 1 represent the binary coded timer value.
Bits 6 to 8 defines the timer value unit for the GPRS timer as follows:
Bits
8 7 6
0 0 0 value is incremented in multiples of 2 seconds
0 0 1 value is incremented in multiples of 1 minute
0 1 0 value is incremented in multiples of decihours
1 1 1 value indicates that the timer is deactivated.
Other values shall be interpreted as multiples of 1 minute in this version of the
protocol.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 19 / 154
Example
AT+CEREG=1 //Enable network registration URC.
OK
AT+CEREG?
+CEREG:1,1
OK
AT+CEREG=?
+CEREG:(0,1,2,3,4,5)
OK
2.8. AT+CSCON Signalling Connection Status
The command gives details of the UE‟s perceived radio connection status (i.e. to the base station). It
returns an indication of the current state. Please note that this state is only updated when radio events,
such as sending and receiving, take place. This means that the current state may be out of date. The
terminal may think it is "Connected" yet cannot currently use a base station due to a change in the link
quality.
The write command controls the presentation of an unsolicited result code. If setting fails, an UE error,
“+CME ERROR:<err>” is returned. Please refer to Chapter 6 for possible <err> values.
When the UE is in E-UTRAN, the mode of the UE refers to idle when no PS signalling connection and to
<Periodic-TAU> String type. One byte in an 8-bit format. Indicates the extended periodic TAU value
(T3412) allocated to the UE in E-UTRAN. The extended periodic TAU value is coded
as one byte (octet 3) of the GPRS Timer 3 information element coded as bit format
(e.g. “01000111” equals 70 hours).
Bits 5 to 1 represent the binary coded timer value.
Bits 6 to 8 defines the timer value unit for the GPRS timer as follows:
Bits
8 7 6
0 0 0 value is incremented in multiples of 10 minutes
0 0 1 value is incremented in multiples of 1 hour
0 1 0 value is incremented in multiples of 10 hours
0 1 1 value is incremented in multiples of 2 seconds
1 0 0 value is incremented in multiples of 30 seconds
1 0 1 value is incremented in multiples of 1 minute
1 1 0 value is incremented in multiples of 320 hours
1 1 1 value indicates that the timer is deactivated
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 20 / 154
connected mode when a PS signalling connection between UE and network is set up.
The <state> value indicates the state of the UE when the UE is in E-UTRAN.
The read command returns the status of result code presentation and an integer <mode> which shows
whether the UE is currently in idle mode or connected mode.
The test command returns supported values as a compound value.
Parameter
AT+CSCON Signalling Connection Status
Write Command
AT+CSCON=<n>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CSCON?
Response
+CSCON:<n>,<mode>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CSCON=?
Response
+CSCON:(list of supported <n>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<n> Integer type. Enable/disable unsolicited result code.
0 Disable unsolicited result code
1 Enable unsolicited result code: “+CSCON:<mode>”
<mode> Integer type. The signalling connection status.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 21 / 154
Example
AT+CSCON=0
OK
AT+CSCON?
+CSCON:0,1
OK
AT+CSCON=?
+CSCON:(0,1)
OK
AT+CSCON=1
OK
AT+CSCON?
+CSCON:1,1
OK
2.9. AT+CLAC List Available Commands
The command lists the available AT commands. The execution command causes the UE to return one or
more lines of AT commands. Please refer to Chapter 6 for possible <err> values. Please note that this
command only returns the AT commands that are available for the user.
0 Idle
1 Connected
2-255 <reserved for future use>
AT+CLAC List Available Commands
Execution Command
AT+CLAC
Response
<AT Command>
[<AT Command>]
[...]
OK
If there is any error, response:
ERROR
Or
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 22 / 154
Parameter
Example
AT+CLAC
AT+COPS
AT+CGATT
...
AT+NSOCR
AT+NSOST
…
OK
2.10. AT+CSQ Get Signal Strength Indicator
The execution command returns received signal strength indication <rssi> and channel bit error rate <ber>
from the UE. Please refer to Chapter 6 for possible <err> values.
The test command returns values supported as compound values.
+CME ERROR: <err>
Test Command
AT+CLAC=?
Response
OK
Maximum Response Time
300ms
<AT Command> Defines the AT command including the prefix AT. Text shall not contain the
sequence 0<CR> or OK<CR>.
AT+CSQ Get Signal Strength Indicator
Execution Command
AT+CSQ
Response
+CSQ:<rssi>,<ber>
OK
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 23 / 154
Parameter
<ber> is currently not supported, and thus will always be 99.
Example
AT+CSQ
+CSQ:31,99
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CSQ=?
Response
+CSQ:(list of supported <rssi>s),(list of supported <ber>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<rssi> Integer type. Received signal strength. Unit: dBm.
0 -113dBm or less
1 -111dBm
2...30 -109dBm... -53dBm
31 -51dBm or greater
99 Not known or not detectable
<ber>* Integer type. Channel bit error rate (in percent).
0...7 As RXQUAL values (please refer to 3GPP specifications)
99 Not known or not detectable
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 24 / 154
2.11. AT+CGPADDR Show PDP Addresses
The command returns the IP address of the device.
The execution command returns a list of PDP addresses for the specified context identifiers. If no <cid> is
specified, the addresses for all defined contexts are returned. Please refer to Chapter 6 for possible <err>
values.
The test command returns a list of defined <cid>s. These are <cid>s that have been activated and may or
may not have an IP address associated with them.
Parameter
AT+CGPADDR Show PDP Addresses
Execution/Write Command
AT+CGPADDR[=<cid>[,<cid>[,...]]]
Response
+CGPADDR:<cid>[,<PDP_addr_1>[,<PDP_addr_2>]]
[+CGPADDR:<cid>,[<PDP_addr_1>[,<PDP_addr_2>]]]
[...]]]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CGPADDR=?
Response
+CGPADDR:(list of defined <cid>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<cid> Integer type. Specifies a particular PDP context definition (see the AT+CGDCONT command).
<cid> values between 0 and 10 are supported.
<PDP_addr_1> and <PDP_addr_2> String type. Identify the UE in the address space applicable to
the PDP. The address may be static or dynamic. For a static
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 25 / 154
1. In dual-stack terminals (<PDP_type>=IPv4v6), the IPv6 address will be provided in <PDP_addr_2>.
For terminals with a single IPv6 stack (<PDP_type>=IPv6) or due to backwards compatibility, the
IPv6 address can be provided in parameter <PDP_addr_1>.
2. With AUTOCONNECT enabled, <cid>=0 will not be listed until an IP address is acquired.
Example
AT+CGPADDR=0
+CGPADDR:0,101.43.5.1
OK
AT+CGPADDR=?
+CGPADDR:(0)
OK
2.12. AT+COPS PLMN Selection
The write command forces an attempt to select and register the EPS network operator using the USIM
card installed in the currently selected card slot. <mode> is used to select whether the selection is done
automatically by the UE or is forced by this command to operator <oper> (it shall be given in format
<format>) to a certain access technology, indicated in <AcT>. If the selected operator is not available, no
other operator shall be selected. If the selected access technology is not available, then the same
operator shall be selected in other access technology. The selected operator name format shall also apply
to the read command (AT+COPS?). <mode>=2 forces an attempt to deregister from the network. The
address, it will be the one set by the AT+CGDCONT command
when the context was defined. For a dynamic address it will be
the one assigned during the last PDP context activation that
used the context definition referred to by <cid>. Both
<PDP_addr_1> and <PDP_addr_2> are omitted if none is
available. <PDP_addr_1> and <PDP_addr_2> are included
when both IPv4 and IPv6 addresses are assigned, with
<PDP_addr_1> containing the IPv4 address and
<PDP_addr_2> containing the IPv6 address.
When AT+CGPIAF is supported, its settings can influence the
format of the IPv6 address in parameter <PDP_addr_1> or
<PDP_addr_2> returned with the execute form of
AT+CGPADDR.
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 26 / 154
selected mode affects all further network registration (e.g. after <mode>=2, UE shall be unregistered until
<mode>=0 or 1 is selected). This command should be abortable when registration/deregistration attempt
is made. Please refer to Chapter 6 for possible <err> values.
The read command returns the current mode, the currently selected operator and the current access
technology. If no operator is selected, <format>, <oper> and <AcT> are omitted.
The test command returns a set of five parameters, each representing an operator present in the network.
A set consists of an integer indicating the availability of the operator <stat>, long and short alphanumeric
format of the operator‟s name, numeric format representation of the operator and access technology. Any
of the formats may be unavailable and should then be an empty field. The list of operators shall be in the
order of: home network, networks referenced in USIM or active application in the UICC (USIM) in the
following order: HPLMN selector, user controlled PLMN selector, operator controlled PLMN selector and
PLMN selector (in the USIM), and other networks.
The <AcT> access technology selected parameters should only be used in terminals capable to register
to more than one access technology. Selection of <AcT> does not limit the capability to cell reselections,
even though an attempt is made to select an access technology, the UE may still re-select a cell in
another access technology.
AT+COPS PLMN Selection
Write Command
AT+COPS=<mode>[,<format>[,<oper
>[,<AcT>]]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+COPS?
Response
+COPS:<mode>[,<format>,<oper>][,<AcT>]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+COPS=?
Response
+COPS:[list of supported (<stat>,numeric <oper>[,<Ac
T>])s][,,(list of supported <mode>s),(list of supported <for
mat>s)]
OK
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 27 / 154
Parameter
1. The test command currently returns the configured values rather than performing a PLMN search.
2. The test command can only be executed in idle state, otherwise an error will be returned.
Example
AT+COPS=0
OK
AT+COPS?
+COPS:0,2,"46000"
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
630s
<mode> Integer type
0 Automatic (<oper> field is ignored)
1 Manual (<oper> field shall be present, and <AcT> is optional)
2 Deregister from network.
When <mode>=1, the PLMN setting will not be retained after the UE is rebooted.
<mode>=1 is only for development use and <mode>=0 should be used in production when
AUTOCONNECT is enabled.
<format> Integer type
2 Numeric <oper>
<oper> String type. <format> indicates if the format is numeric; numeric format is the NB-IoT
network location area identification number which consists of a three BCD digit ITU-T
country code coded, plus a two or three BCD digit network code, which is administration
specific. <oper> field could not be present when <mode>=0.
<stat> Integer type
0 Unknown
1 Available
2 Current
3 Forbidden
<AcT> Integer type. Access technology selected. No <Act> returned for AT+COPS?.
7 E-UTRAN
9 E-UTRAN (NB-S1 mode)
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 28 / 154
OK
AT+COPS=?
+COPS:(2,,,"46000"),,(0-2),(2)
OK
2.13. AT+CGATT PS Attach or Detach
The execution command is used to attach the UE to, or detach the UE from, the packet domain service.
After the command has completed, the UE remains in V.250 command state. If the UE is already in the
requested state, the command is ignored and the “OK” response is returned. If AT+CGATT is in progress,
further execution of this command before the finishing of attach or detach procedure will return an error. If
the requested state cannot be achieved, an “ERROR” or “+CME ERROR” response is returned. Please
refer to Chapter 6 for possible <err> values.
Any active PDP contexts will be automatically deactivated when the attachment state changes to
detached.
The read command returns the current packet domain service state.
The test command is used for requesting information on the supported packet domain service states.
AT+CGATT PS Attach or Detach
Write Command
AT+CGATT=<state>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CGATT?
Response
+CGATT:<state>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CGATT=?
Response
+CGATT:(list of supported <state>s)
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 29 / 154
Parameter
If the initial PDP context is supported, the context with <cid>=0 is automatically defined at startup.
Example
AT+CGATT?
+CGATT:0
OK
AT+CGATT=1
OK
AT+CGATT=?
+CGATT:(0,1)
OK
2.14. AT+CGACT Activate or Deactivate PDP Context
The execution command is used to activate or deactivate the specified PDP context(s). After the
command has completed, the UE remains in V.250 command state. If any PDP context is already in the
requested state, the state for that context remains unchanged. If the requested state for any specified
context cannot be achieved, an “ERROR” or “+CME ERROR” response is returned. Extended error
responses are enabled by the AT+CMEE command. If the UE is not PS attached when the activation form
of the command is executed, the UE first performs a PS attach and then attempts to activate the specified
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
1s, determined by network.
<state> Integer type. Indicates the state of PDP context activation.
0 Detached
1 Attached
When <state>=1, AT+COPS=0 is automatically selected.
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 30 / 154
contexts. If the attach fails then the UE responds with error or, if extended error responses are enabled,
with the appropriate failure-to-attach error message. Please refer to Chapter 6 for possible <err> values.
For EPS, if an attempt is made to disconnect the last PDN connection, then the UE responds with
“ERROR” or, if extended error responses are enabled, a “+CME ERROR”.
For EPS, the activation request for an EPS bearer resource will be answered by the network by either an
EPS dedicated bearer activation or EPS bearer modification request. The request must be accepted by
the UE before the PDP context can be set into established state.
If no <cid>s are specified, the activation form of the command activates all defined non-emergency
contexts, and the deactivation form of the command deactivates all active contexts.
The read command returns the current activation states for all the defined PDP contexts.
The test command is used for requesting information on the supported PDP context activation states.
AT+CGACT Activate or Deactivate PDP Context
Write Command
AT+CGACT=<state>,<cid>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CGACT?
Response
+CGACT:<cid>,<state>
[+ CGACT:<cid>,<state>]
[...]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CGACT=?
Response
+CGACT:(list of supported <state>s)
OK
If there is any error, response:
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 31 / 154
Parameter
If the initial PDP context is supported, the context with <cid>=0 is automatically defined at startup.
Example
AT+CGACT=0,1
OK
AT+CGACT?
+CGACT:1,0
OK
AT+CGACT=?
+CGACT:(0,1)
OK
2.15. AT+CIMI Request International Mobile Subscriber Identity
The command returns International Mobile Subscriber Identity (string without double quotes).
The execution command causes the UE to return <IMSI>, which is intended to permit the TE to identify
the individual USIM card or active application in the UICC (USIM) which is attached to UE.
Please refer to Chapter 6 for possible <err> values.
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
1s, determined by network.
<state> Integer type. Indicates the activation state of PDP context.
0 Deactivated
1 Activated
<cid> Integer type. Specifies a particular PDP context definition (see the AT+CGDCONT). Only
one <cid> can be activated or deactivated at a time.
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 32 / 154
Parameter
IMSI may not be displayed for a few seconds after power-on.
Example
AT+CIMI
460001357924680
OK
2.16. AT+CGDCONT Define a PDP Context
The write command specifies PDP context parameter values for a PDP context identified by <cid>, and
the (local) context identification parameter. It also allows the TE to specify whether security protected
transmission of ESM information is requested, because the PCO can include information that requires
ciphering. There can be other reasons for the UE to use security protected transmission of ESM
information, e.g. if the UE needs to transfer an APN. The number of PDP contexts that may be in a
defined state at the same time is given by the range returned by the test command. Please refer to
Chapter 6 for possible <err> values.
AT+CIMI Request International Mobile Subscriber Identity
Execution Command
AT+CIMI
Response
<IMSI>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CIMI=?
Response
OK
Maximum Response Time
300ms
<IMSI> International Mobile Subscriber Identity (string without double quotes).
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 33 / 154
For EPS, the PDN connection and its associated EPS default bearer is identified herewith.
A special form of the write command, AT+CGDCONT=<cid> causes the values for context number <cid>
to become undefined.
If the initial PDP context is supported, the context with <cid>=0 is automatically defined at startup, the
parameters for <cid>=0 can be modified with AT+CGDCONT. If the initial PDP context is supported,
AT+CGDCONT=0 resets context number 0 to its particular default settings.
The read command returns the current settings for each defined context.
The test command returns values supported as compound values. If the UE supports several PDP types,
the parameter value ranges for each <PDP_type> are returned on a separate line.
AT+CGDCONT Define a PDP Context
Write Command
AT+CGDCONT=<cid>[,<PDP_type>[,<
APN>[,,,,,,,,<NSLPI>]]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CGDCONT?
Response
+CGDCONT:<cid>,<PDP_type>,<APN>[,,,,,,,,<NSLPI>]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CGDCONT=?
Response
+CGDCONT:(range of supported <cid>s),<PDP_typ
e>,,,,,,,,,(list of supported <NSLPI>s)
[...]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 34 / 154
Parameter
Example
AT+CGDCONT=?
+CGDCONT:(0-10),("IP","NONIP","IPV6","IPV4V6"),,,(0),(0),,,,,(0,1)
OK
AT+CGDCONT=1,"IP","HUAWEI.COM"
OK
AT+CGDCONT?
+CGDCONT:0,"IPV4V6",,,0,0,,,,,0
+CGDCONT:1,"IP","HUAWEI.COM",,0,0,,,,,0
OK
Maximum Response Time
300ms
<cid> Integer type. Specifies a particular PDP context definition. The parameter is local to
the TE-UE interface and is used in other PDP context-related commands. The range
of permitted values (minimum value=1 or if the initial PDP context is supported,
minimum value=0) is returned by the test form of the command.
The <cid>s for network-initiated PDP contexts will have values outside the ranges
indicated for the <cid> in the test form of the AT+CGDCONT command.
<cid> values of 0-10 are supported.
<cid>=0 is read only and is only defined when AUTOCONNECT is enabled.
<cid> value of 7 cannot be set when BIP is enabled.
<PDP_type> String type. Specifies the type of packet data protocol.
IP Internet Protocol (IETF STD 5 [103])
IPv6 Internet Protocol, version 6
IPv4v6 Virtual <PDP_type> introduced to handle dual IP stack UE capability
NONIP None IP
<APN> String type. A logical name that is used to select the GGSN or the external packet data
network. If the value is null or omitted, then the subscription value will be requested.
Maximum number of <APN> string is 63 characters.
<NSLPI> Integer type. Indicates the NAS signalling priority requested for this PDP context.
0 Indicates that this PDP context is to be activated with the value for the
low priority indicator configured in the UE.
1 Indicates that this PDP context is to be activated with the value for the
low priority indicator set to "MS is not configured for NAS signalling low
priority".
The UE utilizes the provided NSLPI information as specified in 3GPP TS
24.301 [83] and 3GPP TS 24.008.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 35 / 154
2.17. AT+CFUN Set UE Functionality
The write command selects the level of functionality in the UE. Level "full functionality" is where the
highest level of power is drawn. "Minimum functionality" is where minimum power is drawn.
The read command returns the current setting of <fun>.
The test command returns values supported by the UE as compound values.
Please refer to Chapter 6 for possible <err> values.
AT+CFUN Set UE Functionality
Write Command
AT+CFUN=<fun>[,<rst>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CFUN?
Response
+CFUN:<fun>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CFUN=?
Response
+CFUN:(list of supported <fun>s),(list of supported <rst>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
6s
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 36 / 154
Parameter
Deep sleep mode will be entered when the system is quiescent, but only if it has been enabled by the
network.
Example
AT+CFUN=?
+CFUN:(0,1),(0,1)
OK
AT+CFUN=1
OK
AT+CFUN?
+CFUN:1
OK
2.18. AT+CMEE Report UE Error
The write command disables or enables the use of final result code “+CME ERROR:<err>” as an
indication of an error relating to the functionality of the UE. When enabled, UE related errors cause
“+CME ERROR:<err>” final result code instead of the regular “ERROR” final result code. “ERROR” is
returned normally when error is related to syntax, invalid parameters or UE functionality.
<fun> Integer type. UE functionality level
0 Minimum functionality
1 Full functionality. Enable UE to transmit and receive RF circuits for all
supported radio access technologies. For UE supporting AT+CSRA, this
equals the RATs indicated by the response of AT+CSRA=?. Currently
AT+CSRA setting is ignored. It is not required that the transmitting and
receiving RF circuits are in a disabled state when this setting takes effect.
After this action and AT+CFUN has returned “OK”, the UE can be shut down
with <fun>=0, or by other means.
<rst> Integer type. UE resetting
0 Do not reset the UE before setting it to <fun> power level. This shall always
be defaulted when <rst> is not given.
1 Reset the UE before setting it to <fun> power level (not supported and will be
ignored)
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 37 / 154
The read command returns the current setting of <n>.
The test command returns values supported as a compound value.
Please refer to Chapter 6 for possible <err> values.
Parameter
AT+CMEE Report UE Error
Write Command
AT+CMEE=<n>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CMEE?
Response
+CMEE:<n>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CMEE=?
Response
+CMEE:(list of supported <n>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<n> Integer type. Error mode.
0 Disable “+CME ERROR:<err>” result code and use “ERROR” instead
1 Enable “+CME ERROR:<err>” result code and use numeric <err> values (Please
refer to Chapter 6 for possible <err> values)
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 38 / 154
2.19. AT+CCLK Return Current Date and Time
The clock will be set automatically once the UE has connected to the network.
The read command returns the current setting of the clock.
Please refer to Chapter 6 for possible <err> values.
Parameter
1. If UE does not support time zone information, then the three last characters of <time> are not
returned by AT+CCLK? command.
2. No value will be returned before the core network sends "EMM INFORMATION".
Example
AT+CCLK?
+CCLK:18/06/21,11:39:20+32
OK
AT+CCLK Return Current Date and Time
Read Command
AT+CCLK?
Response
+CCLK:<time>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CCLK=?
Response
OK
Maximum Response Time
300ms
<time> String type. The format is "yy/MM/dd,hh:mm:ss±zz", where characters indicate
year (two last digits), month, day, hour, minute, second and time zone (indicates
the difference, expressed in quarters of an hour, between the local time and GMT;
and range is -96 ~ +96). For instance, 6th of May 1994, 22:10:00 GMT+2 hours
equals "94/05/06,22:10:00+08"
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 39 / 154
AT+CCLK=?
OK
2.20. AT+CPSMS Power Saving Mode Setting
The write command controls the setting of the UE‟s power saving mode (PSM) parameters. It can be used
to control whether the UE wants to apply PSM or not. Please refer to the unsolicited result codes provided
by AT+CGREG for the active time value, and the extended periodic TAU value that are allocated to the
UE by the network in E-UTRAN.
A special form of the command can be given as AT+CPSMS=2. In this form, the use of PSM will be
disabled and data for all parameters in AT+CPSMS command will be removed or, if available, set to the
default values.
The read command returns the current parameter values.
The test command returns the supported <mode>s and the value ranges for the requested extended
periodic TAU value in E-UTRAN and the requested active time value as compound values.
Please refer to Chapter 6 for possible <err> values.
AT+CPSMS Power Saving Mode Setting
Write Command
AT+CPSMS=<mode>[,,,<Requested_
Periodic-TAU>[,<Requested_Active-T
ime>]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CPSMS?
Response
+CPSMS:<mode>[,,,<Requested_Periodic-TAU>],[<Reque
sted_Active-Time>]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CPSMS=?
Response
+CPSMS:(list of supported <mode>s),,,(range of supported
<Requested_Periodic-TAU>s),(range of supported
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 40 / 154
Parameter
<Requested_Active-Time>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<mode> Integer type. Disable or enable the use of PSM in the UE
0 Disable the use of PSM
1 Enable the use of PSM
2 Disable the use of PSM and discard all parameters for PSM or, if available, reset to the
default values.
<Requested_Periodic-TAU> String type. One byte in an 8 bit format. Requested extended
periodic TAU value (T3412) to be allocated to the UE in
E-UTRAN. The requested extended periodic TAU value is
coded as one byte (octet 3) of the GPRS Timer 3 information
element coded as bit format (e.g. "01000111" equals 70 hours).
Bits 5 to 1 represent the binary coded timer value
Bits 6 to 8 define the timer value unit as follows:
Bits
8 7 6
0 0 0 value is incremented in multiples of 10 minutes
0 0 1 value is incremented in multiples of 1 hour
0 1 0 value is incremented in multiples of 10 hours
0 1 1 value is incremented in multiples of 2 seconds
1 0 0 value is incremented in multiples of 30 seconds
1 0 1 value is incremented in multiples of 1 minute
1 1 0 value is incremented in multiples of 320 hours(note)
1 1 1 value indicates that the timer is deactivated.
The default value is 10 hours.
<Requested_Active-Time> String type. One byte in an 8 bit format. Requested Active Time
value (T3324) to be allocated to the UE. The requested Active
Time value is coded as one byte (octet 3) of the GPRS Timer 2
information element coded as bit format (e.g. "00100100"
equals 4 minutes).
Bits 5 to 1 represent the binary coded timer value.
Bits 6 to 8 defines the timer value unit for the GPRS timer as
follows:
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 41 / 154
1. This timer value unit is only applicable to the T3412 extended value IE. If it is received in an integrity
protected message, value shall be interpreted as multiples of 320 hours. Otherwise value shall be
interpreted as multiples of 1 hour.
2. AT+CPSMS? read command could only get mode value 0 and 1.
Example
AT+CPSMS=1,,,01000011,01000011
OK
AT+CPSMS?
+CPSMS:1,,,01000011,01000011
OK
AT+CPSMS=?
+CPSMS:(0,1,2),,,( 00000000-11111111), (00000000-11111111)
OK
2.21. AT+CEDRXS eDRX Setting
The write command controls the setting of the UE‟s eDRX parameters. It can be used to control whether
the UE wants to apply eDRX or not, as well as the requested eDRX value for each specified type of
access technology.
The write command also controls the presentation of an unsolicited result code
“+CEDRXP:<AcT-type>[,<Requested_eDRX_value>[,<NW-provided_eDRX_value>[,<Paging_time_wind
ow>]]]” when <n>=2 and there is a change in the eDRX parameters provided by the network.
A special form of the command can be given as AT+CEDRXS=3. In this form, eDRX will be disabled and
data for all parameters in AT+CEDRXS command will be removed.
Bits
8 7 6
0 0 0 value is incremented in multiples of 2 seconds
0 0 1 value is incremented in multiples of 1 minute
0 1 0 value is incremented in multiples of decihours
1 1 1 value indicates that the timer is deactivated.
The default value is 10 seconds.
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 42 / 154
The read command returns the current settings for each defined value of <AcT-type>.
The test command returns the supported <mode>s and the value ranges for the access technology and
the requested eDRX value as compound values.
Please refer to Chapter 6 for possible <err> values.
Parameter
AT+CEDRXS eDRX Setting
Write Command
AT+CEDRXS=<mode>,<AcT-type>[,<
Requested_eDRX_value>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CEDRXS?
Response
+CEDRXS:<AcT-type>,<Requested_eDRX_value>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CEDRXS=?
Response
+CEDRXS:(list of supported <mode>s),(list of supported
<AcT-type>s),(range of supported <Requested_eDRX_val
ue>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<mode> Integer type. Disable or enable the use of eDRX in the UE. This parameter is
applicable to all specified types of access technology, i.e. the most recent setting of
<mode> will take effect for all specified values of <AcT-type>.
0 Disable the use of eDRX
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 43 / 154
1 Enable the use of eDRX
2 Enable the use of eDRX and enable the unsolicited result code
“+CEDRXP:<AcT-type>[,<Requested_eDRX_value>[,<NW-provided_eDRX_
value>[,<Paging_time_window>]]]”
3 Disable the use of eDRX and discard all parameters for eDRX.
<AcT-type> Integer type. Indicates the type of access technology. AT+CEDRXS? is used to specify
the relationship between the type of access technology and the requested eDRX
value.
0 Access technology is not using eDRX. This parameter value is only used in
the unsolicited result code.
5 E-UTRAN (NB-S1 mode)
<Requested_eDRX_value> String type. Half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 E-UTRAN eDRX cycle length duration
0 0 1 0 20.48 seconds
0 0 1 1 40.96 seconds
0 1 0 1 81.92 seconds
1 0 0 1 163.84 seconds
1 0 1 0 327.68 seconds
1 0 1 1 655.36 seconds
1 1 0 0 1310.72 seconds
1 1 0 1 2621.44 seconds
1 1 1 0 5242.88 seconds
1 1 1 1 10485.76 seconds
<NW-provided_eDRX_value> String type. Half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 E-UTRAN eDRX cycle length duration
0 0 1 0 20.48 seconds
0 0 1 1 40.96 seconds
0 1 0 1 81.92 seconds
1 0 0 1 163.84 seconds
1 0 1 0 327.68 seconds
1 0 1 1 655.36 seconds
1 1 0 0 1310.72 seconds
1 1 0 1 2621.44 seconds
1 1 1 0 5242.88 seconds
1 1 1 1 10485.76 seconds
<Paging_time_window> String type. Half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 Paging Time Window length
0 0 0 0 2.56 seconds
0 0 0 1 5.12 seconds
0 0 1 0 7.68 seconds
0 0 1 1 10.24 seconds
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 44 / 154
Example
AT+CEDRXS=1,5,"0101"
OK
AT+CEDRXS?
+CEDRXS:5,"0101"
OK
AT+CEDRXS=?
+CEDRXS:(0,1,2,3),(5),("0000"-"1111")
OK
AT+CEDRXS=0,5
OK
2.22. AT+CEER Extended Error Report
The execution command causes the UE to return one or more lines of information text <report>,
determined by the UE manufacturer, which should offer the user of the UE an extended report of the
reason for the following errors:
- The failure in the last call release;
- The failure in the last unsuccessful PDP context activation;
- The failure in the PDP context deactivation.
Typically, the text will consist of a single line containing the cause information given by network in textual
format.
0 1 0 0 12.8 seconds
0 1 0 1 15.36 seconds
0 1 1 0 17.92 seconds
0 1 1 1 20.48 seconds
1 0 0 0 23.04 seconds
1 0 0 1 25.6 seconds
1 0 1 0 28.16 seconds
1 0 1 1 30.72 seconds
1 1 0 0 33.28 seconds
1 1 0 1 35.84 seconds
1 1 1 0 38.4 seconds
1 1 1 1 40.96 seconds
1 1 1 1 40.96 seconds
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 45 / 154
Parameter
Example
AT+CEER
+CEER:EMM_CAUSE_EPS_AND_NON_EPS_SERVICES_NOT_ALLOWED
OK
AT+CEER=?
OK
2.23. AT+CEDRXRDP eDRX Read Dynamic Parameters
The execution command returns <AcT-type>, <Requested_eDRX_value>, <NW-provided_eDRX_value>
and <Paging_time_window> if eDRX is used for the cell that the UE is currently registered to.
If the cell that the UE is currently registered to is not using eDRX, <AcT-type>=0 is returned.
Please refer to Chapter 6 for possible <err> values.
AT+CEER Extended Error Report
Execution Command
AT+CEER
Response
+CEER:<report>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CEER=?
Response
OK
Maximum Response Time
300ms
<report> Extended error report. The total number of characters, including line terminators, in the
information text shall not exceed 2041 characters. The text shall not contain the sequence
0<CR> or OK<CR>.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 46 / 154
Parameter
AT+CEDRXRDP eDRX Read Dynamic Parameters
Execution Command
AT+CEDRXRDP
Response
+CEDRXRDP:<AcT-type>[,<Requested_eDRX_value>[,<N
W-provided_eDRX_value>[,<Paging_time_window>]]]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CEDRXRDP=?
Response
OK
Maximum Response Time
300ms
<AcT-type> Integer type. The type of access technology. AT+CEDRXS? is used to specify the
relationship between the type of access technology and the requested eDRX value.
0 Access technology is not using eDRX. This parameter value is only used in
the unsolicited result code
5 E-UTRAN (NB-S1 mode)
<Requested_eDRX_value> String type. Half a byte in a 4-bit format. NB-S1 mode.
bit
4 3 2 1 E-UTRAN eDRX cycle length duration
0 0 1 0 20.48 seconds
0 0 1 1 40.96 seconds
0 1 0 1 81.92 seconds
1 0 0 1 163.84 seconds
1 0 1 0 327.68 seconds
1 0 1 1 655.36 seconds
1 1 0 0 1310.72 seconds
1 1 0 1 2621.44 seconds
1 1 1 0 5242.88 seconds
1 1 1 1 10485.76 seconds
<NW-provided_eDRX_value> String type. Half a byte in a 4-bit format. NB-S1 mode.
bit
4 3 2 1 E-UTRAN eDRX cycle length duration
0 0 1 0 20.48 seconds
0 0 1 1 40.96 seconds
0 1 0 1 81.92 seconds
1 0 0 1 163.84 seconds
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 47 / 154
Example
AT+CEDRXRDP
+CEDRXRDP:5,"0010","1110","0101"
OK
AT+CEDRXRDP=?
OK
2.24. AT+CTZR Time Zone Reporting
The write command controls the time zone change event reporting. If reporting is enabled the UE returns
the unsolicited result code “+CTZV:<tz>, +CTZE:<tz>,<dst>,[<time>]”, or “+CTZEU:<tz>,<dst>,[<utime>]”
whenever the time zone is changed. The UE also provides the time zone upon network registration if
provided by the network. If setting fails in an UE error, “+CME ERROR:<err>” is returned.
1 0 1 0 327.68 seconds
1 0 1 1 655.36 seconds
1 1 0 0 1310.72 seconds
1 1 0 1 2621.44 seconds
1 1 1 0 5242.88 seconds
1 1 1 1 10485.76 seconds
<Paging_time_window> String type. Half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 Paging Time Window length
0 0 0 0 2.56 seconds
0 0 0 1 5.12 seconds
0 0 1 0 7.68 seconds
0 0 1 1 10.24 seconds
0 1 0 0 12.8 seconds
0 1 0 1 15.36 seconds
0 1 1 0 17.92 seconds
0 1 1 1 20.48 seconds
1 0 0 0 23.04 seconds
1 0 0 1 25.6 seconds
1 0 1 0 28.16 seconds
1 0 1 1 30.72 seconds
1 1 0 0 33.28 seconds
1 1 0 1 35.84 seconds
1 1 1 0 38.4 seconds
1 1 1 1 40.96 seconds
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 48 / 154
The read command returns the current reporting settings in the UE.
The test command returns supported <reporting> values as a compound value.
Please refer to Chapter 6 for possible <err> values.
Parameter
AT+CTZR Time Zone Reporting
Write Command
AT+CTZR=<reporting>
Response
+CTZR:<reporting>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CTZR?
Response
+CTZR:<reporting>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CTZR=?
Response
+CZTR:(list of supported <reporting>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<reporting> Integer type. Reporting status
0 Disable time zone change event reporting
1 Enable time zone change event reporting by unsolicited result code
"+CTZV:<tz>"
2 Enable extended time zone and local time reporting by unsolicited result code
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 49 / 154
Example
AT+CTZR=0
OK
AT+CTZR?
+CTZR:0
OK
AT+CTZR=?
+CTZR:(0,1,2,3)
OK
2.25. AT+CIPCA Initial PDP Context Activation
The write command controls whether the UE is attached to E-UTRAN with or without a PDN connection.
"+CTZE:<tz>,<dst>,[<time>]"
3 Enable extended time zone and universal time reporting by unsolicited result
code "+CTZEU:<tz>,<dst>,[<utime>]"
<tz> String type. Represents the sum of the local time zone (difference between the local
time and GMT expressed in quarters of an hour) plus daylight saving time. The format
is "±zz", expressed as a fixed width, two digit integer with the range -48 ~ +56. To
maintain a fixed width, numbers in the range -9 ~ +9 are expressed with a leading
zero, e.g. "-09", "+00" and "+09".
<dst> Integer type. Indicates whether <tz> includes daylight savings adjustment
0 <tz> includes no adjustment for daylight saving time
1 <tz> includes +1 hour (equals 4 quarters in <tz>) adjustment for daylight saving
time
2 <tz> includes +2 hours (equals 8 quarters in <tz>) adjustment for daylight saving
time
<time> String type. Represents the local time. The format is "YYYY/MM/DD,hh:mm:ss",
expressed as integers representing year (YYYY), month (MM), date (DD), hour (hh),
minute (mm) and second (ss). The local time can be derived by the UE from
information provided by the network at the time of delivering time zone information and
will be present in the unsolicited result code for extended time zone and local time
reporting if the universal time is provided by the network.
<utime> String type. Represents the universal time. The format is "YYYY/MM/DD,hh:mm:ss",
expressed as integers representing year (YYYY), month (MM), date (DD), hour (hh),
minute (mm) and second (ss). The universal time can be provided by the network at
the time of delivering time zone information and will be present in the unsolicited result
code for extended time zone and universal time reporting if provided by the network.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 50 / 154
The value of <n>=3 applies to E-UTRAN RATs. Changing <n> will never cause a PDP context
deactivation.
For <AttachWithoutPDN>=1, the EPS attach is performed without a PDN connection.
The read command returns the current setting of the command.
The test command returns values supported as a compound value.
Please refer to Chapter 6 for possible <err> values.
AT+CIPCA Initial PDP Context Activation
Write Command
AT+CIPCA=<n>[,<AttachWithoutPDN
>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CIPCA?
Response
+CIPCA:<n>[,<AttachWithoutPDN>]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CIPCA=?
Response
+CIPCA:(list of supported <n>s),(list of supported
<AttachWithoutPDN>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 51 / 154
Parameter
For this command, the term roaming corresponds to being registered to a VPLMN which is not equivalent
to HPLMN or EHPLMN.
Example
AT+CIPCA=3
OK
AT+CIPCA=?
+CIPCA:(3),(0,1)
OK
2.26. AT+CGAPNRC APN Rate Control
This execution command returns the APN rate control parameters (see 3GPP TS 24.008 [8]) associated
to the provided context identifier <cid>. If the parameter <cid> is omitted, the APN rate control parameters
for all active PDP contexts are returned.
The test command returns a list of <cid>s associated with secondary and non-secondary active PDP
contexts.
Please refer to Chapter 6 for possible <err> values.
<n> Integer type. Activation of PDP context upon attachment.
3 No change in current setting
<AttachWithoutPDN> Integer type. EPS attach with or without PDN connection. If
<AttachWithoutPDN> is omitted, will use the default value 0.
0 EPS attach with PDN connection
1 EPS attach without PDN connection
AT+CGAPNRC APN Rate Control
Execution/Write Command
AT+CGAPNRC[=<cid>]
Response
[+CGAPNRC:<cid>[,<Additional_exception_reports>[,<U
plink_time_unit>[,<Maximum_uplink_rate>]]]]
[+CGAPNRC:<cid>[,<Additional_exception_reports>[,<U
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 52 / 154
Parameter
plink_time_unit>[,<Maximum_uplink_rate>]]]]
[...]]]]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CGAPNRC=?
Response
+CGAPNRC:(list of <cid>s associated with active contexts)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<cid> Integer type. Specifies a particular PDP context definition (see
the AT+CGDCONT command).
<Additional_exception_reports> Integer type. Indicates whether or not additional exception
reports are allowed to be sent when the maximum uplink rate is
reached.
0 <Additional_exception_reports> at maximum rate reached
are not allowed to be sent.
1 <Additional_exception_reports> at maximum rate reached
are allowed to be sent.
<Uplink_time_unit> Integer type. Specifies the time unit to be used for the
maximum uplink rate.
0 Unrestricted
1 Minute
2 Hour
3 Day
4 Week
<Maximum_uplink_rate> Integer type. Specifies the maximum number of messages the
UE is restricted to send per uplink time unit. The time unit is
indicated in the uplink time unit. If the uplink time unit is set to
"unrestricted", the maximum uplink data volume the UE can
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 53 / 154
Example
AT+CGAPNRC
+CGAPNRC:0,0,0
OK
AT+CGAPNRC=?
+CGAPNRC:(0)
OK
2.27. AT+CSODCP* Sending Originating Data via the Control Plane
Send a non-IP message.
The write command is used by the TE to transmit data over control plane to network via UE. Context
identifier <cid> is used to link the data to a particular context.
This command optionally indicates that the application on the UE expects that the exchange of data will
be completed with this uplink data transfer; or will be completed with the next received downlink data.
This command also optionally indicates whether or not the data to be transmitted is an exception data. It
causes transmission of an “ESM DATA TRANSPORT” message, as defined in 3GPP TS 24.301 [83].
The test command returns the maximum number of bytes of the user data container supported by the UE,
supported <RAI>s and supported <type_of_user_data>s as a compound value.
Please refer to Chapter 6 for possible <err> values.
send is not restricted.
AT+CSODCP* Sending Originating Data via the Control Plane
Write Command
AT+CSODCP=<cid>,<cpdata_length>,
<cpdata>[,<RAI>[,<type_of_user_da
ta>[,<sequence>]]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CSODCP=?
Response
+CSODCP:(range of supported <cid>s),(maximum number
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 54 / 154
Parameter
1. "*" means under development.
of bytes of the <cpdata_length>),(list of supported
<RAI>s),(list of supported <type_of_user_data>s),(range of
supported <sequence>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<cid> Integer type. A numeric parameter which specifies a particular PDP context or
EPS bearer context definition. The <cid> parameter is local to the TE-UE interface
and identifies the PDP or EPS bearer contexts which have been setup via AT
commands (see the AT+CGDCONT command).
<cpdata_length> Integer type. Indicates the number of bytes of the <cpdata> information element.
When there is no data to transmit, the value shall be set to zero.
<cpdata> String of octets. Contains the user data container contents. When there is no data
to transmit, the <cpdata> shall be an empty string (""). This parameter shall not be
subject to conventional character conversion as per AT+CSCS (refer to 3GPP TS
27.007 [9]). The coding format of the user data container and the maximum length
of <cpdata> are implementation specific. Maximum data length will be 1358 bytes
when non-IP is used, otherwise will be 0.
<RAI> Integer type. Indicates the value of the release assistance indication.
0 No information available
1 The UE expects that exchange of data will be completed with the
transmission of the “ESM DATA TRANSPORT” message.
2 The UE expects that exchange of data will be completed with the receipt
of an “ESM DATA TRANSPORT” message.
<type_of_user_data> Integer type. Indicates whether the user data that is transmitted is regular
or exceptional.
0 Regular data
1 Exception data
<sequence> Sequence of data. The range is 1-255. If it is omitted, data sent status will not be
reported.
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 55 / 154
2. Only one message will be buffered at any one time.
Example
AT+CSODCP=?
+CSODCP:(0-10),(0),(0,1,2),(0,1),(1-255)
OK
2.28. AT+CRTDCP* Reporting Terminating Data via the Control Plane
Receive a message from the CDP server.
The write command is used to enable and disable reporting of data from the network to the UE that is
transmitted via the control plane in downlink direction. If reporting is enabled, the UE returns the
unsolicited result code "+CRTDCP:<cid>,<cpdata_length>,<cpdata>" when data is received from the
network.
The read command returns the current settings.
The test command returns supported values as compound values.
Please refer to Chapter 6 for possible <err> values.
AT+CRTDCP* Reporting Terminating Data via the Control Plane
Write Command
AT+CRTDCP=<reporting>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CRTDCP?
Response
+CRTDCP:<reporting>
OK
If there is any error, response:
ERROR
Or
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 56 / 154
Parameter
"*" means under development.
Example
AT+CRTDCP=1
OK
+CME ERROR: <err>
Test Command
AT+CRTDCP=?
Response
+CRTDCP:(list of supported <reporting>s),(range of
supported <cid>s),(maximum number of octets of user data
indicated by <cpdata_length>)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<reporting> Integer type. Controls reporting of mobile terminated control plane data events
0 Disable reporting of UE control plane data
1 Enable reporting of UE control plane data by the unsolicited result code
"+CRTDCP:<cid>,<cpdata_length>,<cpdata>"
<cid> Integer type. A numeric parameter which specifies a particular PDP context or
EPS bearer context definition. The <cid> parameter is local to the TE-UE
interface and identifies the PDP or EPS bearer contexts which have been setup
via AT command (see AT+CGDCONT command).
<cpdata_length> Integer type. Indicates the number of bytes of the <cpdata> information element.
When there is no data to transmit, the value shall be set to zero.
<cpdata> String of octets. Contains the user data container contents. When there is no data
to transmit, the <cpdata> shall be an empty string (""). This parameter shall not be
subject to conventional character conversion as per AT+CSCS (refer to 3GPP TS
27.007 [9]). The coding format of the user data container and the maximum
length of <cpdata> are implementation specific. Maximum received data length
will be 1358 bytes when non-IP is set by AT+CGDCONT, otherwise will be 0.
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 57 / 154
AT+CRTDCP?
+CRTDCP:1
OK
AT+CRTDCP=?
+CRTDCP:(0-1),(0-10),(0)
OK
+CRTDCP:0,2,"ab" //URC
2.29. AT+CGCONTRDP Read PDP Context Dynamic Parameters
The execution command returns the relevant information <DNS_prim_addr> and <DNS_sec_addr> for an
active non secondary PDP context with the context identifier <cid>.
- If the UE indicates more than two IP addresses of P-CSCF servers or more than two IP addresses of
DNS servers, multiple lines of information per <cid> will be returned.
- If the UE has dual stack capabilities, at least one pair of lines with information is returned per <cid>:
one line with IPv4 parameters followed by one line with IPv6 parameters. If this UE with dual stack
capabilities indicates more than two IP addresses of P-CSCF servers or more than two IP addresses
of DNS servers, multiple of such pairs of lines will be returned.
- If the parameter <cid> is omitted, the relevant information for all active non secondary PDP contexts
is returned.
The test command returns a list of <cid>s associated with active non secondary contexts.
Please refer to Chapter 6 for possible <err> values.
AT+CGCONTRDP Read PDP Context Dynamic Parameters
Execution/Write Command
AT+CGCONTRDP[=<cid>]
Response
+CGCONTRDP:<cid>[,,,,,<DNS_prim_addr>[,<DNS_sec_a
ddr>]]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CGCONTRDP=?
Response
+CGCONTRDP:(list of <cid>s associated with active
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 58 / 154
Parameter
1. <DNS_prim_addr> and <DNS_sec_addr> could display only when <PDP_type> (see the
AT+CGDCONT command) is “IP” or “IPv6”.
2. PDP context dynamic parameters to be read can be configured by AT+NCPCDPR.
Example
AT+CGCONTRDP
+CGCONTRDP:0
OK
AT+CGCONTRDP=?
+CGCONTRDP:(0)
OK
contexts)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<cid> Integer type. Specifies a particular non secondary PDP context definition.
The parameter is local to the TE-MT interface and is used in other PDP
context-related commands (see the AT+CGDCONT command).
<DNS_prim_addr> String type. Shows the IP address of the primary DNS server.
When AT+CGPIAF is supported, its settings can influence the format of this
parameter returned with the execute form of AT+CGCONTRDP.
<DNS_sec_addr> String type. Shows the IP address of the secondary DNS server.
When AT+CGPIAF is supported, its settings can influence the format of this
parameter returned with the execute form of AT+CGCONTRDP.
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 59 / 154
2.30. AT+CGAUTH Define PDP Context Authentication Parameters
The write command allows the TE to specify authentication parameters for a PDP context identified by the
(local) context identification parameter <cid> used during the PDP context activation and the PDP context
modification procedures. Since the <cid> is the same parameter that is used in the AT+CGDCONT
command, AT+CGAUTH is effectively as an extension to the command.
The read command returns the current settings for each defined context.
The test command returns values supported as compound values.
Please refer to Chapter 6 for possible <err> values.
AT+CGAUTH Define PDP Context Authentication Parameters
Write Command
AT+CGAUTH=<cid>[,<auth_prot>[,<u
serid>[,<password>]]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CGAUTH?
Response
[+CGAUTH:<cid>,<auth_prot>,<userid>,<password>]
[+CGAUTH:<cid>,<auth_prot>,<userid>,<password>]
[...]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CGAUTH=?
Response
+CGAUTH:(range of supported <cid>s),(list of supported
<auth_prot>s),(range of supported <userid>s),(range of
supported <password>s)
OK
If there is any error, response:
ERROR
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 60 / 154
Parameter
Example
AT+CGAUTH=1,2,"1234","1234"
OK
AT+CGAUTH?
+CGAUTH:0,1,"1234","1234"
OK
AT+CGAUTH=?
+CGAUTH:(0-10),(0,1,2),(0-60),(0-60)
OK
2.31. AT+CNMPSD No More PS Data
The execution command indicates that no application on the UE is expected to exchange data. This
command may be used in both normal and modem compatibility modes.
Please refer to Chapter 6 for possible <err> values.
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<cid> Integer type. Specifies a particular PDP context definition (see the AT+CGDCONT
command).
<auth_prot> Integer type. Authentication protocol used for this PDP context.
0 None. Used to indicate that no authentication protocol is used for this
PDP context. Username and password are removed if previously
specified.
1 PAP
2 CHAP
<userid> String type. User name for access to the IP network. <userid> is needed when
<auth_prot> is 1 or 2. The maximum <userid> string length is 60 bytes.
<password> String type. Password for access to the IP network. The string length is
60 bytes.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 61 / 154
Example
AT+CNMPSD
OK
AT+CNMPSD=?
OK
AT+CNMPSD No More PS Data
Execution Command
AT+CNMPSD
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CNMPSD=?
Response
OK
Maximum Response Time
300ms
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 62 / 154
3 3GPP Commands (27.005)
3.1. AT+CSMS Select Message Service
The write command selects messaging service. It returns the types of messages supported by the UE:
<mt> for mobile terminated messages, <mo> for mobile originated messages and <bm> for broadcast
type messages. If chosen service is not supported by the ME, final result code "+CME ERROR:<err>" will
be returned.
The read command returns supported message types along the current service setting.
The test command returns a list of all services supported by the UE.
Please refer to Chapter 6 for possible <err> values.
AT+CSMS Select Message Service
Write Command
AT+CSMS=<service>
Response
+CSMS:<mt>,<mo>,<bm>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CSMS?
Response
+CSMS:<service>,<mt>,<mo>,<bm>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CSMS=?
Response
+CSMS:(list of supported <service>s)
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 63 / 154
Parameter
1. UE will report the following URC if received SMS messages:
+CMT:[<alpha>],<length><CR><LF><pdu> (PDU mode enabled)
2. <alpha> in the above URC will always be 0. For more details about the URC, please refer to
AT+CNMI in 3GPP TS 27005.
Example
AT+CSMS=1
+CSMS:2,3,4
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<service> Integer type. Messaging service
0 3GPP TS 23.040 [3] and 3GPP TS 23.041 [4] (the syntax of SMS AT
commands is compatible with 3GPP TS 27.005 Phase 2 version 4.7.0; Phase
2+ features which do not require new command syntax may be supported,
e.g. correct routing of messages with new Phase 2+ data coding schemes).
1 3GPP TS 23.040 [3] and 3GPP TS 23.041 [4] (the syntax of SMS AT
commands is compatible with 3GPP TS 27.005 Phase 2+ version; the
requirement of <service> setting 1 is mentioned under corresponding
command descriptions)
2...128 Reserved
<mt> Mobile terminated messages
0 Type not supported
1 Type supported
<mo> Mobile originated messages
0 Type not supported
1 Type supported
<bm> Broadcast type messages
0 Type not supported
1 Type supported
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 64 / 154
OK
AT+CSMS?
+CSMS:1,2,3,4
OK
AT+CSMS=?
+CSMS:(0,1)
OK
3.2. AT+CNMA New Message Acknowledgement to UE
The execution command confirms reception of a new message (SMS-DELIVER or
SMS-STATUS-REPORT) which is routed directly to the UE. This acknowledgement command shall be
used when AT+CSMS parameter <service> equals 1. In PDU mode, it is possible to send either positive
(RPACK) or negative (RP-ERROR) acknowledgement to the network. Parameter <n> defines which one
will be sent. Optionally (when <length> is greater than zero) an acknowledgement TPDU
(SMS-DELIVER-REPORT for RPACK or RP-ERROR) may be sent to the network. The entering of PDU is
done similarly as specified in command AT+CMGS, except that the format of <ackpdu> is used instead of
<pdu> (i.e. SMSC address field is not present). PDU shall not be bounded by double quotes. UE shall not
send another "+CMT" or "+CDS" result code to TE before previous one is acknowledged.
If UE does not get acknowledgement within required time (network timeout), UE should respond as
specified in 3GPP TS 24.011 [6] to the network.
If the command is executed, but no acknowledgement is expected, or some other UE related error occurs,
final result code "+CME ERROR:<err>" is returned. In case that a directly routed message must be
buffered in UE or AT interpreter remains too long in a state where result codes cannot be sent to TE (e.g.
user is entering a message using AT+CMGS), acknowledgement (RP-ACK) must be sent to the network
without waiting AT+CNMA command from TE. Later, when buffered result codes are flushed to TE, TE
must send +CNMA[=0] acknowledgement for each result code. In this way, UE can determine if message
should be placed in non-volatile memory and routing to TE disabled (+CNMA[=0] not received).
The test command returns a list of supported <n> values. If the only value supported is 0, the device does
not support sending of TPDU.
Please refer to Chapter 6 for possible <err> values.
AT+CNMA New Message Acknowledgement to UE
Execution/Write Command
AT+CNMA=[<n>[,<length>[<CR>PDU
Response
OK
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 65 / 154
Parameter
1. UE will report the following URC if received SMS messages:
“+CMT:[<alpha>],<length><CR><LF><pdu>” (PDU mode enabled)
2. <alpha> in the above URC will always be 0. For more details about the URC, please refer to
AT+CNMI in 3GPP TS 27005.
Example
AT+CNMA=1
OK
AT+CNMA=?
+CNMA:(1,2)
OK
is given<ctrl-Z/ESC>]]]
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CNMA=?
Response
+CNMA:(list of supported<n>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<n> Integer type
1 Send RP-ACK (or buffered result code received correctly)
2 Send RP-ERROR (if PDU is not given, ME/TA shall send SMS-DELIVER-REPORT
with 3GPP TS 23.040 [3] TP-FCS value set to 'FF' (unspecified error cause))
<length> Integer type. Indicates in the text mode (AT+CMGF=1) the length of the message body
<data> > (or <cdata>) in characters; or in PDU mode (AT+CMGF=0), the length of the
actual TP data unit in octets (i.e. the RP layer SMSC address octets are not counted in the
length). <length> range is 0-232.
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 66 / 154
3.3. AT+CSCA Service Centre Address
The write command updates the SMSC address, through which mobile originated SMS are transmitted. In
text mode, setting is used by send and write commands. In PDU mode, setting is used by the same
commands, but only when the length of the SMSC address coded into <pdu> parameter equals zero.
Please refer to Chapter 6 for possible <err> values.
Parameter
Example
AT+CSCA=358501234567,145
OK
AT+CSCA Service Centre Address
Write Command
AT+CSCA=<sca>[,<tosca>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+CSCA?
Response
+CSCA:<sca>[,<tosca>]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CSCA=?
Response
OK
Maximum Response Time
300ms
<sca> 3GPP TS 24.011 [6] RP SC address Address-Value field in string format. BCD numbers (or
GSM 7 bit default alphabet characters) are converted to characters of the currently selected
TE character set (refer to AT+CSCS command in 3GPP TS 27.007 [9]); type of address
given by <tosca>.
<tosca> 3GPP TS 24.011 [6] RP SC address Type-of-Address octet in integer format (when first
character of <da> is + (IRA 43) default is 145, otherwise default is 129).
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 67 / 154
AT+CSCA?
+CSCA:"358501234567",145
OK
AT+CSCA=?
OK
3.4. AT+CMGS Send SMS Message
The execution command sends message from a TE to the network (SMS-SUBMIT). Message reference
value <mr> is returned to the TE on successful message delivery. Optionally (when AT+CSMS <service>
value is 1 and network supports) <ackpdu> is returned. Values can be used to identify message upon
unsolicited delivery status report result code. If sending fails in a network or an UE error, final result code
"+CME ERROR:<err>" is returned. This command should be abortable.
- <length> must indicate the number of octets coded in the TP layer data unit to be given (i.e. SMSC
address octets are excluded).
- The UE shall send a four character sequence <CR><LF><greater_than><space> (IRA 13, 10, 62, 32)
after command line is terminated with <CR>; after that PDU can be given from TE to UE.
- The DCD signal shall be in ON state while PDU is given.
- The echoing of given characters back from the UE is controlled by V.25ter echo command E.
- The PDU shall be hexadecimal format (similarly as specified for <pdu>) and given in one line; UE
converts this coding into the actual octets of PDU.
- When the length octet of the SMSC address (given in the PDU) equals zero, the SMSC address set
with AT+CSCA command is used; in this case the SMSC Type-of-Address octet shall not be present
in the PDU, i.e. TPDU starts right after SMSC length octet.
- Sending can be cancelled by giving <ESC> character (IRA 27).
- <ctrl-Z> (IRA 26) must be used to indicate the ending of PDU.
Please refer to Chapter 6 for possible <err> values.
AT+CMGS Send SMS Message
Write Command
AT+CMGS=<length><CR>PDU is
given<ctrl-Z/ESC>
Response
+CMGS:<mr>[,<ackpdu>]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 68 / 154
Parameter
1. <ackpdu> is not returned currently.
2. For address field in PDU (3GPP TS 24.011), the country code should be added at the beginning of it,
i.e., 86 for China.
3.5. AT+CMGC Send SMS Command
The execution command sends a command message from TE to the network (SMS-COMMAND). The
entering of text (3GPP TS 23.040 [3] TP-Command-Data) is done similarly as specified in AT+CMGS
command, but the format is fixed to be a sequence of two IRA character long hexadecimal numbers which
UE converts into 8-bit octets (refer to AT+CMGS). Message reference value <mr> is returned to the TE on
successful message delivery. Optionally (when AT+CSMS <service> value is 1 and network supports)
<scts> is returned. Values can be used to identify message upon unsolicited delivery status report result
code. If sending fails in a network or an UE error, final result code “+CME ERROR:<err>” is returned. This
command should be abortable.
Please refer to Chapter 6 for possible <err> values.
Test Command
AT+CMGS=?
Response
OK
Maximum Response Time
300ms
<mr> 3GPP TS 23.040 [3] TP-Message-Reference in integer format
<length> Integer type. Indicates in the text mode (AT+CMGF=1) the length of the message body
<data> > (or <cdata>) in characters; or in PDU mode (AT+CMGF=0), the length of the
actual TP data unit in octets (i.e. the RP layer SMSC address octets are not counted in the
length). The range is 7-220.
<ackpdu> 3GPP TS 23.040 [3] RP-User-Data element of RP-ACK PDU. The format is same as for
<pdu> in case of SMS, but without 3GPP TS 24.011 [6] SC address field and parameter
shall be bounded by double quote characters like a normal string type parameter.
AT+CMGC Send SMS Command
Write Command
AT+CMGC=<length><CR>PDU is
given<ctrl-Z/ESC>
Response
+CMGC:<mr>[,<ackpdu>]
OK
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 69 / 154
Parameter
1. <ackpdu> is not returned currently.
2. For address field in PDU (3GPP TS 24.011), the country code should be added at the beginning of it,
i.e., 86 for China.
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+CMGC=?
Response
OK
Maximum Response Time
300ms
<mr> 3GPP TS 23.040 [3] TP-Message-Reference in integer format
<length> Integer type. Indicates in the text mode (AT+CMGF=1) the length of the message body
<data> > (or <cdata>) in characters; or in PDU mode (AT+CMGF=0), the length of the
actual TP data unit in octets (i.e. the RP layer SMSC address octets are not counted in the
length). The range is 8-220.
<ackpdu> 3GPP TS 23.040 [3] RP-User-Data element of RP-ACK PDU. The format is same as for
<pdu> in case of SMS, but without 3GPP TS 24.011 [6] SC address field and parameter
shall be bounded by double quote characters like a normal string type parameter.
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 70 / 154
4 General Commands
4.1. AT+NRB Reboot the UE
The command reboots the UE. There is a short delay after issuing this command before the UE reboots.
No further AT commands will be processed. Please refer to Chapter 6 for possible <err> values.
Please note that there is no final “OK” to signal that the command line has finished processing as AT
command processing terminates with this command. No confirmation messages are expected until the
reboot.
Example
AT+NRB
REBOOTING
4.2. AT+NUESTATS Query UE Statistics
The command fetches the most recent operational statistics. Please refer to Chapter 6 for possible <err>
values. It can take an optional parameter that allows different sets of statistics to be displayed. The
<type>=RADIO provides the default set of values, and <type>=ALL will print all data.
AT+NRB Reboot the UE
Execution Command
AT+NRB
Response
REBOOTING
Maximum Response Time
300ms
AT+NUESTATS Query UE Statistics
Execution Command
AT+NUESTATS
Response
Signal power:<signal power in centibels>
Total power:<total power in centibels>
TX power:<current Tx power level in centibels>
TX time:<total Tx time since last reboot in millisecond>
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 71 / 154
RX time:<total Rx time since last reboot in millisecond>
Cell ID:<last cell ID>
ECL:<last ECL value>
SNR:<last snr value>
EARFCN:<last earfcn value>
PCI:<last pci value>
RSRQ:<rsrq in centibels>
OPERATOR MODE:<operator mode>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Write Command
AT+NUESTATS=RADIO
Response
NUESTATS:RADIO,Signal power:<signal power in
centibels>
NUESTATS:RADIO,Total power:<total power in centibels>
NUESTATS:RADIO,TX power:<current Tx power level in
centibels>
NUESTATS:RADIO,TX time:<total Tx time since last
reboot in millisecond>
NUESTATS:RADIO,RX time:<total Rx time since last
reboot in millisecond>
NUESTATS:RADIO,Cell ID:<last cell ID>
NUESTATS:RADIO,ECL:<last ECL value>
NUESTATS:RADIO,SNR:< last snr value>
NUESTATS:RADIO,EARFCN:<last earfcn value>
NUESTATS:RADIO,PCI:<last pci value>
NUESTATS:RADIO,RSRQ:<rsrq in centibels>
NUESTATS:RADIO,OPERATOR MODE:<operator mode>
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 72 / 154
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Write Command
AT+NUESTATS=CELL
Response
NUESTATS:CELL,<earfcn>,<physical cell id>,<primaryc
ell>,<rsrp>,<rsrq>,<rssi>,<snr>
[...NUESTATS:CELL,<earfcn>,<physical cell id>,<primar
ycell>,<rsrp>,<rsrq>,<rssi>,<snr>]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Write Command
AT+NUESTATS=THP
Response
NUESTATS:THP,<throughput_type>,<throughput>
[...NUESTATS:THP,<throughput_type>,<throughput>]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Write Command
AT+NUESTATS=APPSMEM
Response
NUESTATS:APPSMEM,Current Allocated:<allocated>
NUESTATS:APPSMEM,Total Free:<free>
NUESTATS:APPSMEM,Max Free:<max free>
NUESTATS:APPSMEM,Num Allocs:<num allocs>
NUESTATS:APPSMEM,Num Frees:<num frees>
OK
If there is any error, response:
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 73 / 154
Parameter
ERROR
Or
+CME ERROR: <err>
Write Command
AT+NUESTATS=<type>
Response
NUESTATS:<type>,<name/value>,<value>[,<value[,<valu
e>[...]]]
[...NUESTATS:<type>,<name/value>,<value>[,<value[,<va
lue>[...]]]]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+NUESTATS=?
Response
NUESTATS:(list of supported <type>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<type> Type of data to be displayed as an unquoted string. Supported values of <type> are:
RADIO Radio specific information
CELL Per-cell information for the top 8 cells
BLER Block error rate information
THP Throughput
APPSMEM Dynamic memory usage
ALL All information. The value of <type> output is the correct one for each
data type.
If <type>=RADIO, return the default set of values:
<signal power in centibels> Signal power in centibels
<total power in centibels> Total power in centibels
<current TX power level in centibels> Current Tx power level in centibels
<total TX time since last reboot in millisecond> Total Tx time since last reboot in millisecond
<total RX time since last reboot in millisecond> Total Rx time since last reboot in millisecond
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 74 / 154
<last SIB1 cell ID> Last SIB1 cell ID
<last ECL value> Last ECL value
<last snr value> Last SNR value
<last earfcn value> Last EARFCN value
<last pci value> Last PCI value
<rsrq in centibels> Reference signal received quality in centibels
<operator mode> Operator mode for SIB1:
0 Unknown mode
1 Inband different PCI mode
2 Inband same PCI mode
3 Guardband mode
4 Standalone mode
If <type>=CELL, per-cell information for the top 5 cells. Returned entries are of the form:
<earfcn>,<physical cell id>,<primary cell>,<rsrp>,<rsrq>,<rssi>
<earfcn> Absolute radio-frequency channel number
<physical cell id> Physical ID of the cell
<primary cell> 1 indicates the current serving cell
<rsrp> Reference signal received power
<rsrq> Reference signal received quality
<rssi> Received signal strength indicator
<snr> Signal to noise ratio
If <type>=BLER, returned entries are:
<rlc_ul_bler> RLC layer block error rate (uplink). Integer %
<rlc_dl_bler> RLC layer block error rate (downlink). Integer %
<mac_ul_bler> Physical layer block error rate (uplink). Integer %
<mac_dl_bler> Physical layer block error rate (downlink).
Integer %
<total bytes transmitted> Total bytes transmitted
<total bytes received> Total bytes received
<transport blocks sent> Transport blocks sent
<transport blocks received> Transport blocks received
<transport blocks retransmitted> Transport blocks retransmitted
<total ack/nack messages received> Total ACK/NACK messages received
If <type>=THP, returned entries are:
<rlc_ul> RLC layer throughput (uplink). Integer bps
<rlc_dl> RLC layer throughput (downlink). Integer bps
<mac_ul> Physical layer throughput (uplink). Integer bps
<mac_dl> Physical layer throughput (downlink). Integer bps
If <type>=APPSMEM, dynamic memory usage, returned entries are:
<allocated> Current allocated size
<free> Total free size
<max free> Max free size
<num allocs> Number of times to allocate memory
<num frees> Number of times to free memory
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 75 / 154
The variant of NUESTATS without an argument prints out the RADIO arguments without the command
and variant prefixes. This will be removed in a future release.
Example
AT+NUESTATS
Signal power:-663
Total power:-632
TX power:-35
TX time:1572
RX time:17847
Cell ID:27447553
ECL:0
SNR:290
EARFCN:3701
PCI:37
RSRQ:-108
OPERATOR MODE:4
OK
AT+NUESTATS=CELL
NUESTATS:CELL,3569,69,1,23,-1073,-1145,286
OK
AT+NUESTATS=THP
NUESTATS:THP,RLC UL,100
NUESTATS:THP,RLC DL,98
NUESTATS:THP,MAC UL,103
NUESTATS:THP,MAC DL,100
OK
AT+NUESTATS=BLER
NUESTATS:BLER,RLC UL BLER,10
NUESTATS:BLER,RLC DL BLER,5
NUESTATS:BLER,MAC UL BLER,8
NUESTATS:BLER,MAC DL BLER,3
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 76 / 154
NUESTATS:BLER,Total TX bytes,1080
NUESTATS:BLER,Total RX bytes,900
NUESTATS:BLER,Total TX blocks,80
NUESTATS:BLER,Total RX blocks,80
NUESTATS:BLER,Total RTX blocks,100
NUESTATS:BLER,Total ACK/NACK RX,100
OK
4.3. AT+NEARFCN Specify Search Frequencies
The write command provides a mechanism to lock to a specific E-UTRAN Absolute Radio Frequency
Channel Number (EARFCN) and, if desired, Physical Cell ID. All actions will be locked to this carrier until
either the lock is removed or the UE is rebooted. It is not persistent over reboots. If the specified EARFCN
is not present, the UE will enter out of service mode. If the specified PCI is not present, the UE will enter
out of service mode. Please refer to Chapter 6 for possible <err> values.
Parameter
AT+NEARFCN Specify Search Frequencies
Write Command
AT+NEARFCN=<search_mode>,<earf
cn>[,<pci>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+NEARFCN=?
Response
OK
Maximum Response Time
300ms
<search_mode> Integer type. Specifies the type of search and defines the supplied parameters
0 Lock to a specific EARFCN
<earfcn> Integer type. A number in the range of 1-65535 representing the EARFCN to
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 77 / 154
Example
AT+NEARFCN=0,2506,AB
OK
4.4. AT+NSOCR Create a Socket
The command creates a socket on the UE and associates with specified protocol. If the port is set,
receiving is enabled and “+NSONMI” unsolicited messages will appear for any message that is received
on that port. Please refer to Chapter 6 for possible <err> values.
If a socket has already been created for a protocol or port combination, then AT+NSOCR will fail if
requested a second time.
Parameter
search.
<pci> Integer type. E-UTRAN physical cell ID in hexadecimal format.
Valid range 0-1F7.
AT+NSOCR Create a Socket
Write Command
AT+NSOCR=<type>,<protocol>,<liste
nport>[,<receive control>[,<af_type>
[,<ip address>]]]
Response
<socket>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<type> Socket type.
DGRAM UDP
STREAM TCP
<protocol> Integer type. Standard internet protocol definition. For example, UDP is 17, and
TCP is 6.
<listen port> Integer type. A number in the range of 0-65535 except 5683. This is the local port
that will be included in sent messages and on which messages will be received. If
it is 0 or omitted, the module will assign a random <listen port> for this socket.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 78 / 154
1. When BIP (Bearer Independent Protocol) is enabled, <listen port> cannot be set into 20000 for TCP.
2. A maximum of 7 sockets are supported, but other services such as MQTT, CoAP, etc. may reduce
this number.
Example
AT+NSOCR=DGRAM,17,4587,1,AF_INET
1
OK
AT+NSOCR=DGRAM,17,1234,0
1
OK
4.5. AT+NSOST SendTo Command (UDP Only)
Send a UDP datagram containing length bytes of data to <remote_port> on <remote_addr>.
The command sends a UDP datagram containing length bytes of data to the specified host:port. It will
return with the socket that it was sent on, and the number of bytes of data sent. If the amount of data is
larger than the largest datagram that can be sent, return value of AT+NSOST will indicate how much of
the data was successfully sent. Please refer to Chapter 6 for possible <err> values.
<socket> This is a reference to the created socket. It is an integer greater than or equal to 0.
A maximum of 7 sockets are supported, but other services may reduce this
number.
<receive control> Set to 1 if incoming messages should be received, 0 if incoming messages should
be ignored. The default value is 1 (messages will be received).
<af_type> String type, “AF_INET” for IPv4 and “AF_INET6” for IPv6. The default value is
"AF_INET”.
<ip address> IP address. The IP address of the network assigned to UE.
AT+NSOST SendTo Command (UDP Only)
Write Command
AT+NSOST=<socket>,<remote_addr>
,<remote_port>,<length>,<data>[,<se
quence>]
Response
<socket>,<length>
OK
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 79 / 154
Parameter
Example
AT+NSOST=1,192.158.5.1,1024,2,AB30,1
1,2
OK
4.6. AT+NSOSTF SendTo Command with Flags (UDP Only)
Send a UDP datagram containing length bytes of data to <remote_port> on <remote_addr> and allows
meta-data flags to be set.
The command sends a UDP datagram to the specified host:port. It will return with the socket that it was
sent on, and the number of bytes of data sent. If the amount of data is larger than the largest datagram
that can be sent, the AT+NSOSTF return value will indicate how much of the data was successfully sent.
Please refer to Chapter 6 for possible <err> values.
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<socket> Integer type. Socket number returned by AT+NSOCR.
<remote_addr> IP address which can be specified in decimal, octal or hexadecimal notation.
<remote_port> Integer type. A number in the range of 0-65535. This is the remote port on which
messages will be received
<length> Integer type. Decimal length of data to be sent.
<data> Data received in hex string format. Maximum length of received data is 1358
bytes.
<sequence> Sequence of data. Range: 1-255. If it is omitted, data sent status will not be
reported.
If not omitted, when datagram is sent by RF or is discarded, then the result will
be reported:
+NSOSTR:<socket>,<sequence>,<status>
<status> The status of datagram.
0 Error
1 Sent
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 80 / 154
Parameter
Example
AT+NSOSTF=1,192.158.5.1,1024,0x100,2,AB30,1
1,2
AT+NSOSTF SendTo Command with Flags (UDP Only)
Write Command
AT+NSOSTF=<socket>,<remote_addr
>,<remote_port>,<flag>,<length>,<da
ta>[,<sequence>]
Response
<socket>,<length>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<socket> Integer type. Socket number returned by AT+NSOCR.
<remote_addr> A dot notation IPv4 address. IP addresses can be specified in decimal, octal or
hexadecimal notation.
<remote_port> Integer type. A number in the range of 0-65535. This is the remote port on which
messages will be received.
<flag> Integer type. Specifies the type of message transmission. Values of this argument
are in hex format and are formed by logically OR'ing zero or more of the following
flags:
0x100 Exception Message: Send message with high priority
0x200 Release Indicator: indicate release after next message
0x400 Release Indicator: indicate release after next message has been replied
to
If no flags are set, a value of 0 should be provided.
<length> Integer type. Decimal length of data to be sent. Maximum data size is 1358 bytes.
<data> Data to be transmitted in hex string format.
<sequence> Sequence of data. Range 1-255. If it is omitted, data sent status will not be
reported.
If not omitted, when datagram is sent by RF or is discard, then the result will be
reported:
+NSOSTR:<socket>,<sequence>,<status>
<status> The status of datagram.
0 Error
1 Sent
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 81 / 154
OK
4.7. AT+NQSOS Query the List of Pending Socket Message
This command queries the list of the pending upstream message by UE.
Please refer to Chapter 6 for possible <err> values.
Parameter
AT+NQSOS Query the List of Pending Socket Message
Write Command
AT+NQSOS=<socket>[,<socket>[,<so
cket>[…]]]
Response
[+NQSOS:<socket>,<sequence>]
[+NQSOS:<socket>,<sequence>]
[…]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+NQSOS?
Response
[+NQSOS:<socket>,<sequence>]
[+NQSOS:<socket>,<sequence>]
[…]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<socket> Socket number.
<sequence> The sequence of pending upstream message. Range: 1-255.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 82 / 154
Example
AT+NQSOS=1,2
+NQSOS:1,2
+NQSOS:2,3
OK
AT+NQSOS?
+NQSOS:1,2
+NQSOS:2,3
OK
4.8. AT+NSORF Receive Command
The command can read up to <req_length> characters of data from <socket>, and returned length is the
actual number of characters returned.
The command is use to receive data on a socket. When data arrives, a “+NSONMI” response will be
generated to indicate the socket the message was received on and also the amount of data. The
AT+NSORF command takes a length, which is the maximum amount of data that will be returned.
If the requested length is larger than the actual size of the returned data, only the length of returned data
is provided, and the remaining length is returned as 0. If the requested length is less than the amount of
data returned, only the requested amount of data will be returned, plus an indication of the number of
bytes remaining. Once a message has been fully read, a new “+NSONMI” notification will be sent if there
is another message to process. Please refer to Chapter 6 for possible <err> values.
If messages arrive faster than they are read, and the internal message buffer is full, the most recent
message will be discarded.
AT+NSORF Receive Command
Write Command
AT+NSORF=<socket>,<req_length>
Response
<socket>,<ip_addr>,<port>,<length>,<data>,<remaining_
length>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 83 / 154
Parameter
Example
AT+NSORF=1,10
1,192.168.5.1,1024,2,ABAB,0
OK
4.9. AT+NSOCO Connect Command (TCP Only)
The command connect a TCP server to the specified host:port.
Please refer to Chapter 6 for possible <err> values.
Maximum Response Time
300ms
<socket> Integer type. Socket number returned by AT+NSOCR.
<req_length> Maximum amount of data to be returned as a decimal byte length. The maximum
request data length is 1358 bytes.
<ip_addr> Address of system sending the message
A dot notation IPv4 address. IP addresses can be specified in decimal, octal or
hexadecimal notation. Only IPv4 is supported.
<port> A number in the range of 0-65535. This is the remote port that messages were
sent from.
<length> Amount of data returned as a decimal byte length.
<remaining_length> Amount of data left to read for this message as a decimal byte length. Remaining
length is always 0. The remaining data is readable.
<data> Data received in hex string format. Maximum length of received data is 1358
bytes.
AT+NSOCO Connect Command (TCP Only)
Write Command
AT+NSOCO=<socket>,<remote_addr
>,<remote_port>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 84 / 154
Parameter
Example
AT+NSOCO=1,192.158.5.1,1024
OK
4.10. AT+NSOSD Send Command (TCP Only)
The command sends a TCP datagram to the TCP server. It will return with the socket that it was sent on,
and the number of bytes of data sent. If the amount of data is larger than the largest datagram that can be
sent, then AT+NSOSD return value will indicate how much the data was successfully sent.
If <sequence>is not omitted, when datagram is acked by server or discarded by UE, the result will be
reported.
Please refer to Chapter 6 for possible <err> values.
Parameter
<socket> Integer type. Socket number returned by AT+NSOCR.
<remote_addr> Address of system sending the message. IP addresses can be specified in
decimal, octal or hexadecimal notation.
<remote port> A number in the range of 0-65535. This is the remote port to be connected to.
AT+NSOSD Send Command (TCP Only)
Write Command
AT+NSOSD=<socket>,<length>,<data
>[,<flag>[,<sequence>]]
Response
<socket>,<length>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<socket> Integer type. Socket number returned by AT+NSOCR.
<length> Integer type. Decimal length of data to be sent.
<data> Data to be transmitted in hex string format. The maximum data size is 1358 bytes.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 85 / 154
<flag> could not work currently.
Example
AT+NSOSD=1,2,AB30
1,2
OK
AT+NSOSD=1,2,AB30,0x100
1,2
OK
AT+NSOSD=1,2,AB30,0x100,255
1,2
OK
4.11. AT+NSOCL Close a Socket
The command is used to close the specified socket. If there are pending messages to be read, they will
be dropped. No further unsolicited “+NSONMI” notifications will be generated. If the socket has already
been closed, or was never created, an error will be returned.
<flag> Integer type. Specifies the type of message transmission. Values of this argument
are in hex format and are formed by logically OR'ing zero or more of the following
flags:
0x100 Exception Message: Send message with high priority
0x200 Release Indicator: indicate release after next message
0x400 Release Indicator: indicate release after next message has been replied
to
If no flags are set, a value of 0 should be provided.
<sequence> Sequence of data. Range 1-255. If it is omitted, data sent status will not be
reported.
If not omitted, when datagram is acked by server or discarded by UE, the result
will be reported:
+NSOSTR:<socket>,<sequence>,<status>
<status> The status of datagram.
0 Error
1 Sent
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 86 / 154
Parameter
Example
AT+NSOCL=1
OK
4.12. +NSONMI Indicator of Arrived Socket Message (Response Only)
This is an unsolicited message to notify that data has been received on a socket and is ready to be read.
It returns socket number and number of bytes of data available to read for the first message that is
queued. If another message is received on the same socket, it will only be notified when the preceding
message has been completely read.
Parameter
AT+NSOCL Close a Socket
Write Command
AT+NSOCL=<socket>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<socket> Integer type. Socket number returned by AT+NSOCR.
+NSONMI Indicator or Arrived Socket Message (Response Only)
URC Format:
+NSONMI:<socket>,<length>
<socket> Integer type. Socket on which data is received. Decimal number returned by
AT+NSOCR.
<length> Integer type. Number of bytes of data in the first message.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 87 / 154
This message can occur at any point if it is indicating a new message with no messages buffered. If there
are buffered messages, it will occur in the AT+NSORF command before the data is returned.
4.13. +NSOCLI Socket Close Indicator (Response Only)
This is an unsolicited message to notify that a socket has been closed by LwIP internally. It returns the
socket number.
Parameter
The URC will be reported under TCP only.
4.14. AT+NPING Test IP Network Connectivity to a Remote Host
The command sends an ICMP packet to the specified host address. Please refer to Chapter 6 for
possible <err> values.
AT+NPING initiates the sending of a PING packet to the specified address. This will either cause a packet
to be returned if the remote system is connected and responding to PING packets or no response will be
received. A maximum of 1 ping attempts will be tried. If none of the packets receive a response within the
timeout period, an error will be raised.
If a response is received, the unsolicited “+NPING” message will be returned. If no response is received
the “+NPINGERR” unsolicited response will be returned with an error value.
+NSOCLI Socket Close Indicator (Response Only)
URC Format:
+NSOCLI: <socket>
<socket> Integer type. The socket on which data is received. It is a decimal number returned by
AT+NSOCR.
NOTE
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 88 / 154
Parameter
4.15. AT+NBAND Set Supported Bands
The command sets the bands to be used. Please refer to Chapter 6 for possible <err> values.
AT+NPING Test IP Network Connectivity to a Remote Host
Write Command
AT+NPING=<remote_address>[,<p_si
ze>[,<timeout>]]
Response
OK
+NPING:<remote_address>,<ttl>,<rtt>
If there is any error, response:
ERROR
Or
+NPINGERR:<err>
Maximum Response Time
300ms
<remote_address> Address of system sending the message
A dot notation IPv4 address. IP addresses can be specified in decimal, octal
or hexadecimal notation. Only IPv4 is supported.
<p_size> Integer type. Size in bytes of echo packet payload. The range is 12-1500, and
the default value is 12.
<timeout> Integer type. Maximum time in ms to wait for an echo reply response. The
range is 10-600000, and the default value is 10000.
<ttl> Integer type. TTL received in the response packet.
<rtt> Integer type. Elapsed time in msec from packet sent to response received.
<err> Integer type. An integer value to provide some information on why the ping
request failed.
1 No response from remote host within timeout period
2 Failed to send ping request
AT+NBAND Set Supported Bands
Write Command
AT+NBAND=<n>[,<n>[,<n>[…]]]
Response
OK
If there is any error, response:
ERROR
Or
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 89 / 154
Parameter
AT+NBAND=<n> must be executed when the radio is inactive (AT+CFUN=0 will force the module to enter
into this state).
Example
AT+NBAND=?
+NBAND:(1,3,5,8,20,28)
OK
+CME ERROR: <err>
Read Command
AT+NBAND?
Response
+NBAND:<n>[,<n>[,<n>[…]]]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+NBAND=?
Response
Returns the list of bands supported by the hardware.
+NBAND:(list of supported <n>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<n> Integer type. Band in a decimal number.
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 90 / 154
4.16. AT+NLOGLEVEL Set Debug Logging Level
The command sets the logging level. Logging level is not persistent. It can take one of the following
values. This value is persistent across reboots. Please refer to Chapter 6 for possible <err> values.
Parameter
AT+NLOGLEVEL Set Debug Logging Level
Write Command
AT+NLOGLEVEL=<core>,<level>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+NLOGLEVEL?
Response
+NLOGLEVEL:<core>,<level>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+NLOGLEVEL=?
Response
+NLOGLEVEL:(list of supported <core>s),(list of supported
<level>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<core> String type. Core required.
PROTOCOL
APPLICATION
SECURITY
<level> String type. Logging level required
VERBOSE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 91 / 154
Example
AT+NLOGLEVEL?
+NLOGLEVEL:SECURITY,NORMAL
+NLOGLEVEL:PROTOCOL,NORMAL
+NLOGLEVEL:APPLICATION,NORMAL
OK
4.17. AT+NCONFIG Configure UE Behaviour
The command allows configuring certain aspects of UE behavior. It takes a function and a value that
controls operation of that function.
NORMAL
WARNING
ERROR
NONE
AT+NCONFIG Configure UE Behaviour
Write Command
AT+NCONFIG=<function>,<value>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+NCONFIG?
Response
+NCONFIG:<function>,<value>
[+NCONFIG:<function>,<value>]
[…]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
Response
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 92 / 154
Parameter
AT+NCONFIG=?
+NCONFIG:(<function>,(<value1>,<value2>[,<value3>[,…
]]))
[+NCONFIG:(<function>,(<value1>,<value2>[,<value3>[,
…]]))]
[…]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<function> UE function to be configured
AUTOCONNECT Control whether the platform will automatically attempt to
connect to the network after power-on or reboot. When
enabled, it will set AT+CFUN=1 and read the PLMN from the
USIM. And it will use the APN provided by the network.
COMBINE_ATTACH Enable/disable combine attach
CELL_RESELECTION Enable support for RRC cell reselection
ENABLE_BIP Enable/disable BIP
MULTITONE Enable/disable multitone
NAS_SIM_POWER_SAVING_ENABLE
Enable/disable USIM card power saving mode.
BARRING_RELEASE_DELAY
Time (in seconds) to delay release from barring. Range:
0-1800.
RELEASE_VERSION Release version, only release 13 and 14 are supported. Could
be set to 13 only when UE does not use power class 6.
RPM Enable/disable RPM. If RPM files present on USIM, the USIM
settings will have precedence.
SYNC_TIME_PERIOD The synchronization time period from eNB. Unit: hour. Range
0-65535. 0 means close time sync synchronization.
IPV6_GET_PREFIX_TIME
Set the maximum time of getting IPv6 prefix. Unit: second.
Range 0-65535. 0 means to get IPv6 prefix immediately, and
65535 means not to get IPv6 prefix.
NB_CATEGORY Configure the NB-IoT category. Only support 1 and 2 now.
RAI Enable/Disable RAI.
HEAD_COMPRESS Enable/Disable head compress.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 93 / 154
-
1. “CR_” function is temporary and will be retired when no longer required.
2. MULTITONE, RELEASE_VERSION, SYNC_TIME_PERIOD, NB_CATEGORY, HEAD_COMPRESS
and NAS_SIM_POWER_SAVING_ENABLE can be set only when the radio is inactive (AT+CFUN=0
will force the module to enter into this state).
Example
AT+NCONFIG?
+NCONFIG:AUTOCONNECT,TRUE
+NCONFIG:CR_0354_0338_SCRAMBLING,TRUE
+NCONFIG:CR_0859_SI_AVOID,TRUE
+NCONFIG:COMBINE_ATTACH,FALSE
+NCONFIG:CELL_RESELECTION,TRUE
+NCONFIG:ENABLE_BIP,FALSE
+NCONFIG:MULTITONE,TRUE
+NCONFIG:NAS_SIM_POWER_SAVING_ENABLE,TRUE
+NCONFIG:BARRING_RELEASE_DELAY,64
+NCONFIG:RELEASE_VERSION,13
+NCONFIG:RPM,FALSE
+NCONFIG:SYNC_TIME_PERIOD,0
+NCONFIG:IPV6_GET_PREFIX_TIME,15
+NCONFIG:NB_CATEGORY,1
+NCONFIG:RAI,FALSE
+NCONFIG:HEAD_COMPRESS,FALSE
+NCONFIG:RLF_UPDATE,FALSE
+NCONFIG:CONNECTION_REESTABLISHMENT,FALSE
OK
AT+NCONFIG=?
+NCONFIG:(AUTOCONNECT,(FALSE,TRUE))
+NCONFIG:(CR_0354_0338_SCRAMBLING,(FALSE,TRUE))
+NCONFIG:(CR_0859_SI_AVOID,(FALSE,TRUE))
+NCONFIG:(COMBINE_ATTACH,(FALSE,TRUE))
RLF_UPDATE “FALSE” represents the occurrence of radio link failure, and
NAS will TAU immediately. And “TRUE” representative when
occurred radio link failure, ACK is expected before TAU.
CONNECTION_REESTABLISHMENT
Enable/Disable connection re-establishment.
<value> Bool type
TRUE
FALSE
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 94 / 154
+NCONFIG:(CELL_RESELECTION,(FALSE,TRUE))
+NCONFIG:(ENABLE_BIP,(FALSE,TRUE))
+NCONFIG:(MULTITONE,(FALSE,TRUE))
+NCONFIG:(NAS_SIM_POWER_SAVING_ENABLE,(FALSE,TRUE))
+NCONFIG:(BARRING_RELEASE_DELAY,(0-1800))
+NCONFIG:(RELEASE_VERSION,(13,14))
+NCONFIG:(RPM,(FALSE,TRUE))
+NCONFIG:(SYNC_TIME_PERIOD,(0-65535))
+NCONFIG:(IPV6_GET_PREFIX_TIME,(0-65535))
+NCONFIG:(NB_CATEGORY,(1,2))
+NCONFIG:(RAI,(FALSE,TRUE))
+NCONFIG:(HEAD_COMPRESS,(FALSE,TRUE))
+NCONFIG:(RLF_UPDATE,(FALSE,TRUE))
+NCONFIG:(CONNECTION_REESTABLISHMENT,(FALSE,TRUE))
OK
4.18. AT+NATSPEED Configure UART Port Baud Rate
The command is used to configure UART port baud rate. Please refer to Chapter 6 for possible <err>
values.
AT+NATSPEED Configure UART Port Baud Rate
Write Command
AT+NATSPEED=<baud_rate>,<timeo
ut>,<store>,<sync_mode>[,<stopbits
>[,<parity>[,<xonxoff>]]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+NATSPEED?
Response
+NATSPEED:<baud_rate>,<sync_mode>,<stopbits>,<par
ity>[,<xonxoff>]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+NATSPEED=?
Response
+NATSPEED:(list of supported <baud_rate>s),(list of
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 95 / 154
Parameter
supported <timeout>s),(list of supported <store>s),(list of
supported <sync_mode>s),(list of supported <stopbits>s),
(list of supported <parity>s),(list of supported <xonxoff>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<baud_rate> Integer type indicating the baud rate of UART port that has been requested.
<baud_rate> value higher than the fastest speed supported by the low power
UART will disable deep sleep low power operation.
<timeout> Integer type indicating the time to wait for communication before switching back to
the original speed. Unit: second. Default value: 3. Maximum value: 30. 0 means
using default value.
<store> Integer type indicating whether to store <baud_rate> and <sync_mode> to NV or
not.
0 Do not store to NV, need to configure again after reboot
1 Store to NV, while there is interaction before timeout
<sync_mode> Integer type. The LP UART synchronizes to each start bit that it detects and uses
this to configure its optimum sampling point for each subsequent bit in a data
word. The Sync Mode field allows this sampling point to be modified if required.
<sync mode> do not support 3 when <baud rate> is 4800bps and 57600bps. This
parameter may be removed in a future release.
0 Sample normally
1 Sample later
2 Sample earlier
3 Sample even earlier
<stopbits> Integer type. The LP UART stop bits.
1 1 stop bit
2 2 stop bits
<parity> Integer type. The AT UART parity.
0 No parity enabled (default value)
1 Odd parity
2 Even parity
<xonxoff> AT UART Software (XON/XOFF) Flow Control
0 Software flow control disabled
1 Software flow control enabled
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 96 / 154
Example
AT+NATSPEED=9600,3,1,2,1
OK
AT+NATSPEED?
+NATSPEED:9600,2,1,0,0
OK
AT+NATSPEED=?
+NATSPEED:(4800,9600,57600,115200,230400,460800),(0-30),(0,1),(0-3),(1,2),(0-2),(0,1)
OK
4.19. AT+NCCID USIM Card Identification
Both the execution and read commands read the ICCID off the USIM card. If no USIM card is present, or
the USIM card is unreadable, no data is returned. Please refer to Chapter 6 for possible <err> values.
AT+NCCID USIM Card Identification
Execution Command
AT+NCCID
Response
+NCCID:<ICCID>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+NCCID?
Response
+NCCID:<ICCID>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+NCCID=?
Response
OK
Maximum Response Time
300ms
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 97 / 154
Parameter
Example
AT+NCCID
+NCCID:44123456789012345678
OK
AT+NCCID?
+NCCID:44123456789012345678
OK
4.20. AT+NFWUPD Firmware Update via UART
This command supports firmware updating. It allows package zone erasing, package downloading,
package‟s last validation result checking, package name and version querying, and firmware upgrading.
Before upgrading firmware, it needs to erase package zone and download package first. After
downloading finished, it sends firmware upgrading command. Then the system will reboot and validate
the package, and if the package is legal, it will start to upgrade the firmware to a new version, otherwise it
will reboot and not to upgrade, then the user can check the package validation error information with
corresponding AT command.
Please refer to Chapter 6 for possible <err> values.
<ICCID> USIM Card Identification Number
AT+NFWUPD Firmware Update via UART
Write Command
AT+NFWUPD=<cmd>[,<sn>,<len>,<d
ata>,<crc>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+NFWUPD=?
Response
+NFWUPD:(list of supported <cmd>s)
OK
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 98 / 154
Parameter
<cmd>=3 and <cmd>=4 are supported in B300 or later versions.
4.21. AT+NPOWERCLASS Set the Mapping for Band and Power Class
This command sets the mapping for band and power class. The read command lists all mapping of bands
and power classes.
Please refer to Chapter 6 for possible <err> values.
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<cmd> Integer type. Package process command
0 Erase package zone in internal flash
1 <sn>,<len>,<data>,<crc>. Download a package segment. Download a DFOTA
package. Package segments are continuous segments of the DFOTA package.
Segments can be of any length, but must be provided in order.
2 Get the package validation result of last updating
3 Get the package name
4 Get the package version
5 Upgrade firmware
<sn> Integer type. Sequence number. It starts with 0, and increments by one for each package
segment.
<len> Integer type. Data length in bytes of data.
<data> Data to be transmitted in hex string format.
<crc> Integer type. An XOR8 of each byte in the package segment. It is sent as hex string.
AT+NPOWERCLASS Set the Mapping for Band and Power Class
Write Command
AT+NPOWERCLASS=<band>,<power
class>
Response
OK
If there is any error, response:
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 99 / 154
Parameter
<power class> can be set to 6 only when <function> “RELEASE_VERSION” in AT+NCONFIG is 14.
4.22. AT+NPSMR Power Saving Mode Status Report
The write command controls the presentation of an unsolicited result code “+NPSMR”. If <n>=1,
"+NPSMR:<mode>" is sent from the UE when the power mode of the UE is changed.
ERROR
Or
+CME ERROR: <err>
Read Command
AT+NPOWERCLASS?
Response
+NPOWERCLASS:<band>,<power class>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+NPOWERCLASS=?
Response
+NPOWERCLASS:(list of supported <band>s),(list of
supported <power class>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<band> Integer type. Band as key to map
<power class> Integer type. Power class value for band, only 3, 5 and 6 are supported
currently. The parameter can be set only when the radio is inactive
(AT+CFUN=0 will force the module to enter into this state).
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 100 / 154
The read command returns the status of result code presentation and an integer <mode> which shows
whether the UE is currently in power saving mode or normal mode.
The test command returns supported values as a compound value.
Please refer to Chapter 6 for possible <err> values.
Parameter
AT+NPSMR Power Saving Mode Status Report
Write Command
AT+NPSMR=<n>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+NPSMR?
Response
+NPSMR:<n>[,<mode>]
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+NPSMR=?
Response
+NPSMR:(list of supported <n>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<n> Integer type. Enable/disable unsolicited result code.
0 Disable unsolicited result code
1 Enable unsolicited result code “+NPSMR:<mode>”
<mode> Integer type. Indicates the power mode of UE.
0 Normal mode
1 Power saving mode
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 101 / 154
4.23. AT+NPTWEDRXS Paging Time Window Value and eDRX Setting
The write command controls the setting of the UE paging time window value and eDRX parameters. The
command controls whether the UE wants to apply paging time window and eDRX or not, as well as the
requested paging time window and eDRX value for each specified type of access technology.
The write command also controls the presentation of an unsolicited result code
“+NPTWEDRXP:<AcT-type>[,<Requested_Paging_time_window>[,<Requested_eDRX_value>[,<NW_pr
ovided_eDRX_value>[,<Paging_time_window>]]]]” when <n>=2 and there is a change in the paging time
window and eDRX parameters provided by the network.
A special form of the command can be given as AT+NPTWEDRXS=3. In this form, paging time window
and eDRX will be disabled and data for all parameters in the command will be removed.
The read command returns the current settings for each defined value of <AcT-type>. The test command
returns the supported <mode>s and the value ranges for the access technology and the requested paging
time window and requested eDRX value as compound values.
Please refer to Chapter 6 for possible <err> values.
AT+NPTWEDRXS Paging Time Window Value and EDRX Setting
Write Command
AT+NPTWEDRXS=<mode>,<Act-type
>[,<Requested_Paging_time_window
>[,<Requested_eDRX_value>]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+NPTWEDRXS?
Response
+NPTWEDRXS:<Act-type>,<Requested_Paging_time_wi
ndow>,<Requested_eDRX_value>[,<NW_provided_eDRX
_value>[,<Paging_time_window>]]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+NPTWEDRXS=?
Response
+NPTWEDRXS:(list of supported <mode>s),(list of
supported <Act-type>s),(range of supported
<Requested_Paging_time_window>s),(range of supported
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 102 / 154
Parameter
<Requested_eDRX_value>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<mode> Integer type. Indicates to disable or enable the use of requested paging time window
and eDRX in the UE. This parameter is applicable to all specified types of access
technology, i.e. the most recent setting of <mode> will take effect for all specified
values of <AcT>. When set <mode> to 0 and do not have parameter
<Requested_Paging_time_window> or <Requested_eDRX_value>, it will set omit
value to invalid value like 0x00.
0 Disable the use of requested paging time window and eDRX
1 Enable the use of requested paging time window and eDRX
2 Enable the use of requested paging time window and eDRX, and enable the
unsolicited result code:
“+NPTWEDRXP:<AcT-type>[,<Requested_Paging_time_window>[,<Requested
_eDRX_value>[,<NW_provided_eDRX_value>[,<Paging_time_window>]]]]”
3 Disable the use of eDRX and discard all parameters for eDRX.
<Act-type> Integer type. Indicates the type of access technology. This parameter is used to
specify the relationship between the type of access technology and the requested
eDRX value.
5 E-UTRAN (NB-S1 mode)
<Requested_Paging_time_window> String type. Half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 Paging Time Window length
0 0 0 0 2.56 seconds
0 0 0 1 5.12 seconds
0 0 1 0 7.68 seconds
0 0 1 1 10.24 seconds
0 1 0 0 12.8 seconds
0 1 0 1 15.36 seconds
0 1 1 0 17.92 seconds
0 1 1 1 20.48 seconds
1 0 0 0 23.04 seconds
1 0 0 1 25.6 seconds
1 0 1 0 28.16 seconds
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 103 / 154
1 0 1 1 30.72 seconds
1 1 0 0 33.28 seconds
1 1 0 1 35.84 seconds
1 1 1 0 38.4 seconds
1 1 1 1 40.96 seconds
<Requested_eDRX_value> String type. Half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 E-UTRAN eDRX cycle length duration
0 0 1 0 20.48 seconds
0 0 1 1 40.96 seconds
0 1 0 1 81.92 seconds
1 0 0 1 163.84 seconds
1 0 1 0 327.68 seconds
1 0 1 1 655.36 seconds
1 1 0 0 1310.72 seconds
1 1 0 1 2621.44 seconds
1 1 1 0 5242.88 seconds
1 1 1 1 10485.76 seconds
<NW_Provided_eDRX_value> String type; half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 E-UTRAN eDRX cycle length duration
0 0 1 0 20.48 seconds
0 0 1 1 40.96 seconds
0 1 0 1 81.92 seconds
1 0 0 1 163.84 seconds
1 0 1 0 327.68 seconds
1 0 1 1 655.36 seconds
1 1 0 0 1310.72 seconds
1 1 0 1 2621.44 seconds
1 1 1 0 5242.88 seconds
1 1 1 1 10485.76 seconds
<Paging_time_window> String type; half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 Paging Time Window length
0 0 0 0 2.56 seconds
0 0 0 1 5.12 seconds
0 0 1 0 7.68 seconds
0 0 1 1 10.24 seconds
0 1 0 0 12.8 seconds
0 1 0 1 15.36 seconds
0 1 1 0 17.92 seconds
0 1 1 1 20.48 seconds
1 0 0 0 23.04 seconds
1 0 0 1 25.6 seconds
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 104 / 154
4.24. AT+NPIN* PIN Operator
The write command is used to verify, change, enable, disable, or unblock PIN. An unsolicited result will be
received when execute pin command is completed.
USIM PIN, USIM PUK refer to the PIN of the selected application on the UICC. For example, in an
E-UTRAN context, the selected application on the currently selected UICC should be a USIM and the
USIM PIN then represents the PIN of the selected USIM. See 3GPP TS 31.101 [65] for further details on
application selection on the UICC.
Please refer to Chapter 6 for possible <err> values.
Parameter
1 0 1 0 28.16 seconds
1 0 1 1 30.72 seconds
1 1 0 0 33.28 seconds
1 1 0 1 35.84 seconds
1 1 1 0 38.4 seconds
1 1 1 1 40.96 seconds
AT+NPIN* PIN Operator
Write Command
AT+NPIN=<command>,<parameter1>
[,<parameter2>]
Response
OK
+NPIN:<npin result>
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<command> Integer type. PIN operation mode.
<command> <parameter1> <parameter2> PIN Operation Mode
0 <pin> Verify PIN
1 <old pin> <new pin> Change PIN
2 <pin> Enable PIN
3 <pin> Disable PIN
4 <puk> <pin> Unblock PIN
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 105 / 154
"*" means under development.
Example
AT+NPIN=0,29102394
OK
+NPIN:OK
4.25. AT+NCSEARFCN Clear Stored EARFCN
This command is used to clear stored EARFCN. Please refer to Chapter 6 for possible <err> values.
<parameter1> A parameter varies with the setting of <command>.
When <command>=0, 2, and 3, it is <pin>.
When <command>=1, it is <old pin>.
When <command>=4, it is <puk>.
<parameter2> A parameter varies with the setting of <command>.
When <command>=0, 2, and 3, it is omitted.
When <command>=1, it is <new pin>.
When <command>=4, it is <pin>.
<pin>,<old pin>,<new pin> Decimal string format. <old pin> shall be the same as password
specified for the facility from the MT user interface or with command
AT+NPIN=1,<old pin>,<new pin>. <new pin> is the new password. The
minimum length is 4, and the maximum length is 8. Unit: byte.
<puk> Decimal string format. The string size is 8.
<npin result> String type. Result.
“OK”
“ERROR PIN disabled”
“ERROR PIN blocked”
“ERROR wrong PIN <pin retries remaining>”
“ERROR wrong format”
“ERROR”
<pin retries remaining> Decimal type. Remained PIN retries. If no retries left then PIN is
blocked. AT+NPIN=4,<puk>,<pin> needs to be entered before the PIN
can be used again.
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 106 / 154
This command must be executed when the radio is inactive (AT+CFUN=0 will force the module to enter
into this state).
Example
AT+NCSEARFCN
OK
4.26. AT+NIPINFO IP Address Information Report
This command is used to report IP address information. The write command controls the presentation of
an unsolicited result code:
- If the IP address is obtained successfully, <failure_cause> will be omitted. The URC will be reported
in the format of “+NIPINFO:<cid>,<IP_type>,<IP_addr>”.
- If it fails to obtain an IP address, <IP_addr> will be omitted. The URC will be reported in the format of
“+NIPINFO:<cid>,<IP_type>,,<failure_cause>”.
The read command returns the status of the current setting <n>.
The test command returns supported parameter values.
Please refer to Chapter 6 for possible <err> values.
AT+NCSEARFCN Clear Stored EARFCN
Execution Command
AT+NCSEARFCN
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 107 / 154
Parameter
AT+NIPINFO IP Address Information Report
Write Command
AT+NIPINFO=<n>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+NIPINFO?
Response
+NIPINFO:<n>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+NIPINFO=?
Response
+NIPINFO:(list of supported <n>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<n> Integer type.
0 Disable unsolicited result code (default value)
1 Enable unsolicited result code “+NIPINFO:<cid>,<IP_type>,[<IP_addr>][,<f
ailure_cause>]”
<cid> Integer type. Specifies a particular PDP context definition (see AT+CGDCONT).
<IP_type> Integer type. Specifies the type of IP address.
IP Internet Protocol (IETF STD 5 [103])
IPV6 Internet Protocol, version 6
IPV4V6 Virtual <PDP_type> introduced to handle dual IP stack UE capability.
<IP_addr> String type. IP address. The IPv4 address is expressed in decimal numbers and dots,
such as 100.1.0.26. The IPV6 address is expressed in hexadecimal numbers and
colon, such as 108F: 0: 0: 0: 8: 800: 200C: 417A. This parameter is not displayed
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 108 / 154
Example
AT+NIPINFO=1
OK
AT+NIPINFO?
+NIPINFO:1
OK
AT+NIPINFO=?
+NIPINFO:(0,1)
OK
4.27. AT+NCPCDPR Configure PDP Context Dynamic Parameters to be
Read
This command allows the configuration of PDP context dynamic parameters to be read.
Please refer to Chapter 6 for possible <err> values.
when the address acquisition failed.
<failure_cause> Integer type. Causes for the failure to get an IP address.
1 PDN type IPv4 only allowed
2 PDN type IPv6 only allowed
3 Single address bearers only allowed
4 IPv6 RA timeout
5 Unspecified
AT+NCPCDPR Configure PDP Context Dynamic Parameters to be Read
Write Command
AT+NCPCDPR=<parameter>,<state>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+NCPCDPR?
Response
+NCPCDPR:<parameter>,<state>
[+NCPCDPR:<parameter>,<state>]
[...]
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 109 / 154
Parameter
The command can be set only when the radio is inactive (AT+CFUN=0 will force the module to enter into
this state).
Example
AT+NCPCDPR=1,1
OK
AT+NCPCDPR?
+NCPCDPR:0,1
+NCPCDPR:1,1
OK
AT+NCPCDPR=?
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+NCPCDPR=?
Response
+NCPCDPR:(list of supported <parameter>s),( list of
supported <state>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<parameter> Unsigned char format. Dynamic parameters to be read.
0 Get DNS Server IPv4 Address request
1 Get DNS Server IPv6 Address request
<state> Integer type. PDP context dynamic parameters read state.
0 Disable to get
1 Enable to get
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 110 / 154
+NCPCDPR:(0,1),(0,1)
OK
4.28. AT+NQPODCP Query Pending Originating Data List via the Control
Plane
This command queries the pending originating data list via the control plane by UE.
Please refer to Chapter 6 for possible <err> values.
Parameter
Example
AT+NQPODCP
+NQPODCP:1,2,3
OK
AT+NQPODCP=?
OK
AT+NQPODCP Query Pending Originating Data List via the Control Plane
Execution Command
AT+NQPODCP
Response
[+NQPODCP:[<sequence>[<sequence>…]]]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+NQPODCP=?
Response
OK
Maximum Response Time
300ms
<sequence> Integer type. The sequence number of pending originating message. Range:
1-255.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 111 / 154
4.29. AT+QLEDMODE Set NETLIGHT LED Function Mode
The write command is used to set the function mode of NETLIGHT LED.
Please refer to Chapter 6 for possible <err> values.
Parameter
AT+QLEDMODE Set NETLIGHT LED Function Mode
Write Command
AT+QLEDMODE=<ledmode>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+QLEDMODE?
Response
+QLEDMODE:<ledmode>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Test Command
AT+QLEDMODE=?
Response
+QLEDMODE:(list of supported <ledmode>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<ledmode>
Integer type. Function mode of NETLIGHT LED.
0 Disable NETLIGHT LED function, and the NETLIGHT pin outputs a low level.
1 Enable NETLIGHT LED function, and the NETLIGHT pin outputs PWM
signal, different high-level duration and low-level duration of which indicate
different network status.
High-level duration Low-level duration Network Status
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 112 / 154
If NETLIGHT LED is enabled, it may cause the module to consume more power.
Example
AT+QLEDMODE=1
OK
4.30. AT+QDNS Trigger DNS Domain Name Resolution
This command is used to trigger the DNS domain name resolution. Please refer to Chapter 6 for possible
<err> values.
Parameter
Example
AT+QDNS=0,www.baidu.com
64ms 800ms Network searching
64ms 2000ms Connected status
AT+QDNS Trigger DNS Domain Name Resolution
Write Command
AT+QDNS=<mode>[,<hostname>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<mode> Integer type.
0 DNS domain name resolution, hostname cannot be NULL.
1 If the hostname is not NULL, then clear the hostname parsing data in
memory and KV. If the hostname is NULL, all parsing data will be
cleared.
<hostname> Domain name.
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 113 / 154
OK
+QDNS:111.13.100.91
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 114 / 154
5 Huawei’s IoT Platform Commands
This chapter describes the AT command related to the Huawei‟s IoT platform.
5.1. AT+NCDP Configure and Query CDP Server Settings
The command is used to set and query the server IP address and port for the CDP server. It is used when
there is a HiSilicon CDP or Huawei‟s IoT platform acting as gateway to network server applications.
This command is available after the IMEI number has been set.
Please refer to Chapter 6 for possible <err> values.
AT+NCDP Configure and Query CDP Server Settings
Write Command
AT+NCDP=<ip_addr>[,<port>]
Response
Update the CDP server configuration from the supplied
parameters.
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+NCDP?
Response
Return the current CDP server IP address and port.
+NCDP:<ip_addr>,<port>
OK
If CDP server is not set, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 115 / 154
Parameter
1. The write command is available after the IMEI number has been set.
2. The changes will take effect before successful network attachment.
Example
AT+NCDP=192.168.5.1,5683
OK
AT+NCDP?
+NCDP:192.168.5.1,5683
OK
5.2. AT+QSECSWT Set Data Encryption Mode
This command is used to set the encryption mode of the data and standard DTLS session timeout
renegotiation interval.
Please refer to Chapter 6 for possible <err> values.
<ip_addr> IoT platform address. Support IPv4, IPv6 and domain name.
<port> Integer type. Unsigned integer. The range is 0-65535. If port 0 is provided, the default
port (5683) will be used. If no port is specified, the previously set port will be used. If
no port is specified, and no port was previously set, the default port will be used.
AT+QSECSWT Set Data Encryption Mode
Write Command
AT+QSECSWT=<type>[,<NAT type>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+QSECSWT?
Response
+QSECSWT:<type>[,<NAT type>]
OK
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 116 / 154
Parameter
Example
AT+QSECSWT=0
OK
AT+QSECSWT=1,1
OK
AT+QSECSWT?
+NSECSWT:1,1
OK
5.3. AT+QSETPSK Set PSK ID and PSK
This command is used to configure PSK ID and PSK. The command will take effect after rebooting the
module. Please refer to Chapter 6 for possible <err> values.
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<type>
Encryption mode type.
0 None encryption
1 Standard DTLS encryption mode
2 DTLS+ encryption mode
<NAT type>
Standard DTLS NAT network.
0 The DTLS link is rebuilt every time when the data is sent
1 Every time when the module is powered on or when the module IP
address changes, the DTLS encryption mode will be triggered
AT+QSETPSK Set PSK ID and PSK
Write Command
AT+QSETPSK=<pskid>,<psk>
Response
OK
If there is any error, response:
ERROR
Or
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 117 / 154
Parameter
Example
AT+QSETPSK= 867724030000225,E8E19CC16CE1F388E8E19CC16CE1F388
OK
AT+QSETPSK?
+QSETPSK: 867724030000225,***
OK
5.4. AT+QLWSREGIND Register Control
The command is used to control module to launch register, deregister or update to the IoT platform. It will
give an <err> code and description as an intermediate message if the message cannot be sent. Please
refer to Chapter 6 for possible <err> values.
+CME ERROR:<err>
Read Command
AT+QSETPSK?
Response
+QSETPSK: <pskid>,<psk>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
2s
<pskid>
Indicates the PSK index. The fixed length is 15 decimal digits, The value
must be the same as the device IMEI. In addition, this parameter must also
be set to the same value on the IoT platform. When <pskid> is set to 0, the
IMEI is used as the PSKID.
<psk>
Indicates the PSK. This parameter must be set to a 16-digit hexadecimal
number. In addition, it must also be set to the same value on Huawei‟s IoT
platform.
AT+QLWSREGIND Register Control
Write Command
AT+QLWSREGIND=<type>
Response
OK
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 118 / 154
Parameter
Example
AT+QLWSREGIND=0
OK
5.5. AT+QLWULDATA Send Data
The command is used to send data to Huawei‟s IoT platform with LWM2M protocol. It will give an <err>
code and description as an intermediate message if the message cannot be sent. Before the module
registered to the IoT platform, executing the command will trigger register operation and discard the data.
Please refer to Chapter 6 for possible <err> values.
Parameter
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<type> Integer type. Action type.
0 Trigger register operation
1 Trigger deregister operation
AT+QLWULDATA Send Data
Write Command
AT+QLWULDATA=<length>,<data>[,<
seq_num>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<length> Integer type. Length of data sent.
<data> Hexadecimal format string. Maximum length of data to be sent is 512 bytes.
<seq_num> Sequence number. Range: 1-255. If non-zero <seq_num> is used to send CoAP
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 119 / 154
Example
AT+QLWULDATA=3,AA34BB
OK
5.6. AT+QLWULDATAEX Send CON/NON Message
This command is used to send confirmable (CON) or non-confirmable (NON) message with the identifier
of RAI (Release Assistant Indication) to Huawei‟s IoT platform with the LWM2M protocol. After sending
CON data, the sending result will be automatically notified to the TE. TE can also use the command
AT+QLWULDATASTATUS? to query the status of the CON data that has been sent. If sending CON data,
it must acquire the state (fail/timeout/success/got reset message) of sending CON data before sending
the next CON or NON data. If the module is not registered to NB-IoT platform, this command will get the
module to initiate registration only, and the module will discard the sent data.
Please refer to Chapter 6 for possible <err> values.
Parameter
data and there is CON or NON CoAP data with the same <seq_num> which has
not been sent completely, the data to be sent will be discarded and an error will be
returned.
AT+QLWULDATAEX Send CON/NON Message
Write Command
AT+QLWULDATAEX=<length>,<data>
,<mode>[,<seq_num>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<length> Integer type. Length of data sent.
<data> Hexadecimal format string. Maximum length of data to be sent is 512 bytes.
<mode> 0x0000 Send NON message
0x0001 Send NON message and carry out the RELEASE auxiliary instructions
0x0100 Send CON message
0x0101 Send CON message and carry out the RELEASE_AFTER_REPLY
auxiliary instructions
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 120 / 154
Example
AT+QLWULDATAEX=3,AA34BB,0x0001
OK
5.7. AT+QLWULDATASTATUS Query CON Messages Sent Status
This command queries the status of the sending CON data to NB-IoT platform. This command only
queries the status of the CON data that has been sent.
When non-zero <seq_num> is used to send CON CoAP data, the response of this command is:
+QLWULDATASTATUS: <status>,<seq_num>. When there is no <seq_num> in the AT command to send
CON CoAP data or the <seq_num> is zero, the response of this command is +QLWULDATASTATUS:
<status>.
Please refer to Chapter 6 for possible <err> values.
Parameter
<seq_num> Sequence number. Range: 0-255. If non-zero <seq_num> is used to send CoAP
data and there is CON or NON CoAP data with the same <seq_num> which has
not been sent completely, the data to be sent will be discarded and an error will be
returned. If <seq_num> is 0 it will be ignored.
AT+QLWULDATASTATUS Query CON Messages Sent Status
Read Command
AT+QLWULDATASTATUS?
Response
+QLWULDATASTATUS:<status>[,<seq_num>]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<status>
Integer type. Status of CON data sending.
0 Have not sent
1 Sent, waiting response of IoT platform
2 Sent failed
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 121 / 154
Example
AT+QLWULDATASTATUS?
+QLWULDATASTATUS:4
OK
5.8. AT+QLWFOTAIND Set DFOTA Update Mode
This command is used to set the DFOTA upgrade mode to either of the following modes:
- Automatic mode: DFOTA-based download and upgrade are automatically completed without
command instruction from the MCU.
- Controlled mode: the MCU uses this command to control whether to download or upgrade firmware.
In controlled mode, when URC “+QLWEVTIND:6” (received “put package URI” message) or URC
“+QLWEVTIND:7” (received “update” message) has been received, the MCU uses this command to
control whether to download or upgrade firmware.
Please refer to Chapter 6 for possible <err> values.
Parameter
3 Timeout
4 Success
5 Got reset message
<seq_num>
Sequence number. Range: 0-255. If <seq_num> is 0 it will be ignored.
AT+QLWFOTAIND Set DFOTA Update Mode
Write Command
AT+QLWFOTAIND=<type>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<type>
Integer type. DFOTA update mode
0 The automatic FOTA upgrade mode is used.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 122 / 154
Example
AT+QLWFOTAIND=1
OK
5.9. AT+QREGSWT Set Registration Mode
The command is used to set registration mode after the module reboot.
- If set <type> to 1, after reboot and attached to network, the module will trigger automatic registration.
- If set <type> to 0, after reboot and attached to network, the module will send REGISTERNOTIFY
message to the device, then the device triggers registration by command AT+QLWSREGIND.
It will give an <err> code and description as an intermediate message if the message cannot be sent.
Please refer to Chapter 6 for possible <err> values.
1 The controlled FOTA upgrade mode is used
2 MCU notify module to start downloading the version file.
3 MCU notify module to cancel version file download.
4 MCU notify module to start update.
5 MCU notify module to cancel update .
AT+QREGSWT Set Registration Mode
Write Command
AT+QREGSWT=<type>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+QREGSWT?
Response
+QREGSWT:<type>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 123 / 154
Parameter
Example
AT+QREGSWT=1
OK
AT+QREGSWT?
+QREGSWT:1
OK
5.10. AT+NMGS Send a Message
The command is used to send data to Huawei‟s IoT platform. It will give an <err> code and description as
an intermediate message if the message cannot be sent. Before the module is registered to the IoT
platform, executing the command will trigger registration operation and discard the data.
Please refer to Chapter 6 for possible <err> values.
Parameter
<type>
Integer type. Registration mode.
0 Manual registration mode
1 Automatic registration mode
2 Disable registration
AT+NMGS Send a Message
Write Command
AT+NMGS=<length>,<data>[,<seq_nu
m>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<length> Decimal length of message.
<data> Data to be transmitted in hex string format. The maximum length of data to be sent is
512 bytes.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 124 / 154
Example
AT+NMGS=3,AA11BB
OK
5.11. AT+NMGR Get a Message
The command is used to receive a message from the Huawei‟s IoT platform with LWM2M protocol.
The command returns the oldest buffered message and deletes it from the buffer. If there are no
messages, then no command response will be given. If new message indications (AT+NNMI) are turned
on then received messages will not be available via this command.
Parameter
Example
AT+NMGR
5,48656C6C6F
OK
<seq_num> Sequence number. Range: 1-255. If non-zero <seq_num> is used to send CoAP data
and there is CON or NON CoAP data with the same <seq_num> which has not been
sent completely, the data to be sent will be discarded and an error will be returned.
AT+NMGR Get a Message
Execution Command
AT+NMGR
Response
<length>,<data>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<length> Decimal length of message.
<data> Data received in hex string format. The maximum length of received data is 512 bytes.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 125 / 154
5.12. AT+NNMI New Message Indications
The command sets or gets new message indications that are sent. New message indications can be sent
when a downstream message is received by the UE from the Huawei‟s IoT platform. Please refer to
Chapter 6 for possible <err> values.
When new message indications and messages are enabled (AT+NNMI=1), all currently buffered
messages will be returned in the format of “+NNMI:<length>,<data>”. For example:
“+NNMI:5,48656C6C6F”.
If indications alone are turned on (AT+NNMI=2), each newly received message triggers an indication that
a new datagram is waiting using the unsolicited informational response. The buffered messages can be
collected using AT+NMGR. The format of response is: “+NNMI”. The default setting is 1, which indicates
no indications are sent. The <status> will restore to the default value (1 by default) after reboot.
Parameter
AT+NNMI New Message Indications
Write Command
AT+NNMI=<status>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+NNMI?
Response
+NNMI:<status>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<status> 0 No indications
1 Indications and message
2 Indications only
<length> Decimal length of message.
<data> Data to be transmitted in hex string format.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 126 / 154
Example
AT+NNMI=1
OK
AT+NNMI?
+NNMI:1
OK
5.13. AT+NSMI Send Message Indications
The command sets or gets indications that are sent when an upstream message is sent to the Huawei‟s
IoT platform.
If sent message indications are turned on, the unsolicited informational response:
“+NSMI:<status>[,<seq_num>]” (e.g. “+NSMI:SENT”) will be issued when a new message is sent into
NB-IoT stack. Please refer to Chapter 6 for possible <err> values.
Only when there is non-zero <seq_num> in the AT command to send data, the notification message sent
by the module to the MCU contains <seq_num>, and the value of <seq_num> is the same as the value of
<seq_num> carried by the AT command.
When there is non-zero <seq_num> in the AT command to send CoAP data and the CoAP data is sent to
NB-IoT platform successfully, the value of <status> in notification message sent by the module to the
MCU is SENT_TO_AIR_INTERFACE. When there is no <seq_num> or the value of the <seq_num> is
zero in the AT command to send CoAP data and the CoAP data is sent to NB-IoT platform successfully,
the value of <status> in notification message sent by the module to the MCU is SENT.
For CON data, SENT and SENT_TO_AIR_INTERFACE indicate the results of sending data to the NB-IoT
platform.
For NON data, SENT indicates that data is sent to the C core. SENT_TO_AIR_INTERFACE indicates that
data is sent to the air interface of the base station.
The default setting is 0, which indicates no indications are sent.
AT+NSMI Sent Message Indications
Write Command
AT+NSMI=<indications>
Response
OK
If there is any error, response:
ERROR
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 127 / 154
Parameter
Example
AT+NSMI=1
OK
AT+NSMI?
+NSMI:1
OK
5.14. AT+NQMGR Query the Status of Messages Received
The command queries the status of the downstream messages received from the Huawei‟s IoT platform.
Please refer to Chapter 6 for possible <err> values.
Or
+CME ERROR: <err>
Read Command
AT+NSMI?
Response
+NSMI:<indications>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<indications> 0 No indications
1 Indications will be sent
<status> SENT
SENT_TO_AIR_INTERFACE
DISCARDED
<seq_num> Sequence number. Range: 1-255. Indicates the non-zero <seq_num> carried in
the AT command to send data to IoT platform.
AT+NQMGR Query the Status of Messages Received
Execution Command
AT+NQMGR
Response
BUFFERED=<buffered>,RECEIVED=<received>,DROPPE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 128 / 154
Parameter
Example
AT+NQMGR
BUFFERED=0,RECEIVED=34,DROPPED=2
OK
5.15. AT+NQMGS Query the Status of Messages Sent
The command queries the status of the upstream messages sent to the Huawei‟s IoT platform. Please
refer to Chapter 6 for possible <err> values.
D=<dropped>
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Maximum Response Time
300ms
<buffered> The number of messages waiting to be read in the downstream buffer.
<received> The total number of messages received by the UE since UE boots.
<dropped> The number of messages dropped by the UE since UE boots.
AT+NQMGS Query the Status of Messages Sent
Execution Command
AT+NQMGS
Response
PENDING=<pending>,SENT=<sent>,ERROR=<error>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 129 / 154
Parameter
1. For CON CoAP data, the statistics are modified only after timeout, RST, sent_fail, or sent_success.
2. For NON CoAP data, if a non-zero <seq_num> is carried during data transmission, the statistics are
modified only when the data is sent to the air interface. If the sent data does not carry <seq_num> or
the <seq_num> is zero, the statistics are modified when the data is sent to the C core.
Example
AT+NQMGS
PENDING=1,SENT=34,ERROR=0
OK
5.16. AT+NMSTATUS Message Registration Status
The command reports the current registration status when connected to the CDP server. When LWM2M is
in the status of "MO_DATA_ENABLED", the UE can send data. Please refer to Chapter 6 for possible
<err> values.
<pending> The number of messages waiting to be sent in the upstream buffer, if Layer 3 is
registered and activated.
<sent> The total number of uplink messages sent into the NB-IoT stack since UE
boot.
<error> The number of messages that could not be sent by the UE due to an error since
UE boot.
AT+NMSTATUS Message Registration Status
Test Command
AT+NMSTATUS=?
Response
(list of supported <registration_status>s)
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
NOTES
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 130 / 154
Parameter
5.17. +QLWEVTIND LwM2M Event Report (Response Only)
The module reports the LwM2M event to the device.
Read Command
AT+NMSTATUS?
Response
+NMSTATUS:<registration_status>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<registration_status>
Current registration status:
UNINITIALISED
MISSING_CONFIG
INIITIALISING
INIITIALISED
INIT_FAILED
REGISTERING
REGISTERED
DEREGISTERED
MO_DATA_ENABLED
NO_UE_IP
REJECTED_BY_SERVER
TIMEOUT_AND_RETRYING
REG_FAILED
DEREG_FAILED
+QLWEVTIND LwM2M Event Report (Response Only)
URC Format
+QLWEVTIND:<type>
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 131 / 154
Parameter
5.18. AT+QRESETDTLS Reset DTLS Mode
The command is used to reset DTLS mode.
- If DTLS has completed the handshake or re-negotiation, the DTLS state can be set to INIT state
through this AT command, and the handshake process will run when the data is sent next time.
- If the current state of DTLS is shaking hands or during re-negotiation, the command will return “OK”
directly. The next data sending will not trigger a handshake.
Please refer to Chapter 6 for possible <err> values.
Example
AT+QRESETDTLS
OK
<type>
0 Register completed
1 Deregister completed
2 Registration status updated
3 Object 19/0/0 observe completed
4 Bootstrap completed
5 5/0/3 resource observe completed
6 Notify the device to receive update package URL
7 Notify the device download has been completed
9 Cancel object 19/0/0 observe
AT+QRESETDTLS Reset DTLS Mode
Execution Command
AT+QRESETDTLS
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 132 / 154
5.19. AT+QDTLSSTAT Query the State of DTLS
This command is used to query the current link state of DTLS. In every 8 seconds of sending uplink data,
if DTLS is not negotiated, then the DTLS state will not be able to be queried.
- If DTLS negotiation can be completed within 8 seconds, DTLS status can be queried after completion
of negotiation.
- Whether it is register by the module power on or manually register by the AT command, the IoT
platform registration process is triggered by LwM2M and will not block any AT command.
After DTLS negotiation or handshaking is completed, the module initiatively sends the “+MDTLSSTAT:0/3”
message to the terminal. Please refer to Chapter 6 for possible <err> values.
Parameter
Example
AT+QDTLSSTAT?
+QDTLSSTAT:0
OK
AT+QDTLSSTAT Query the State of DTLS
Read Command
AT+QDTLSSTAT?
Response
+QDTLSSTAT:<type>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<type>
0 DTLS negotiation or handshake completed
1 Not start negotiation or handshake
2 In the negotiation or handshake state
3 Negotiation or handshake failed
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 133 / 154
5.20. AT+QBOOTSTRAPHOLDOFF* Bootstrap Hold off Time
The command is used to set and query client hold off time (relevant only for bootstrap server). The default
value is 600 seconds, and the maximum time is recommended not exceeding 3000 seconds.
- If the time is configured too long (>3000s), the terminal‟s Bootstrap Sequence time will be delayed,
then affecting the power consumption of terminal access.
- If the time is configured too short (<600s), the time of Factory Bootstrap and Server Initiated
Bootstrap is too short, which will affect the success rate of Factory Bootstrap and Server Initiated
bootstrap. Therefore, if the module needs to execute the Server Initiated bootstrap process (without
configuring Bootstrap Server and LwM2M server addresses), or the LwM2M server address has
been configured, the client hold off time value is not recommended to be less than 600s.
When the Bootstrap Server address is configured, the client hold off time can be set as 0. In such case,
the module will go directly into the Client Initiated Bootstrap, thus shortening the Client Initiated Bootstrap
time.
- If the Bootstrap Server address is not configured, AT+QBOOTSTRAPHOLDOFF=0 will return
“ERROR”.
- If Bootstrap Server does not exist, the client hold off time cannot be set to 0. If the client hold off time
is 0, the Bootstrap Server IP cannot be erased.
Please refer to Chapter 6 for possible <err> values.
AT+QBOOTSTRAPHOLDOFF* Bootstrap Hold off Time
Write Command
AT+QBOOTSTRAPHOLDOFF=<Client
HoldOffTime>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+QBOOTSTRAPHOLDOFF?
Response
+QBOOTSTRAPHOLDOFF:<ClientHoldOffTime>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 134 / 154
Parameter
"*" means under development.
Example
AT+QBOOTSTRAPHOLDOFF=600
OK
AT+QBOOTSTRAPHOLDOFF?
+QBOOTSTRAPHOLDOFF:600
OK
5.21. AT+QLWSERVERIP Set/Delete Bootstrap/LwM2M Server IP
The command is used to set or delete the IP address of Bootstrap/IoT server. The KV used in
AT+QLWSERVERIP and AT+NCDP command is the same.
- AT+QLWSERVERIP=DEL,<ip_addr>,<port> will delete the IP information when the IP address and
the port can match the KV.
- AT+QLWSERVERIP=DEL,<ip_addr> will delete the IP information when the IP address can match
the KV.
Please refer to Chapter 6 for possible <err> values.
<ClientHoldOffTime> Integer type. Client hold off time. Default set to 600 seconds.
Recommended not exceeding 3000 seconds.
AT+QLWSERVERIP Set/Delete Bootstrap/LwM2M Server IP
Write Command
AT+QLWSERVERIP=<type>,<ip_add
r>[,<port>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 135 / 154
Parameter
Example
AT+QLWSERVERIP=BS,180.101.147.115,5683
OK
AT+QLWSERVERIP=LWM2M,180.101.147.115,5683
OK
AT+QLWSERVERIP?
+QLWSERVERIP:BS,180.101.147.115,5683
+QLWSERVERIP:LWM2M,180.101.147.115,5683
OK
AT+QLWSERVERIP=DEL,180.101.147.115,5683
OK
5.22. AT+QSETBSPSK* Configure PSK ID and PSK to Bootstrap
This command is used to configure the PSK ID and PSK which are used to set DTLS connection with
Bootstrap Server. The command will take effect after rebooting the module
Please refer to Chapter 6 for possible <err> values.
Read Command
AT+QLWSERVERIP?
Response
+QLWSERVERIP: <type>,<ip_addr>,<port>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<type> Bootstrap/LwM2M Server IP type.
LWM2M IoT Server IP
BS Bootstrap Server IP
DEL Delete the IP information
<ip_addr> Domain name or IP address. IP address format: decimal format. IPv4 address
is a1.a2.a3.a4. The range is 0-255.
<port> Integer type. Port number. The range is 0-65535.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 136 / 154
Parameter
"*" means under development.
Example
AT+QSETBSPSK=201703230000024,0123456789ABCDEF0123456789ABCDEF
OK
AT+QSETBSPSK?
+QSETBSPSK:201703230000024,***
OK
AT+QSETBSPSK* Configure PSK ID and PSK to Bootstrap
Write Command
AT+QSETBSPSK=<pskid>,<psk>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+QSETBSPSK?
Response
+QSETBSPSK:<pskid>,<psk>
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
2s
<pskid> Key index. Fixed length of 15-bit decimal digits number for indexing PSK. The
value needs to be the same with the IMEI number of device, and it needs to be
consistent with Huawei‟s IoT platform. When <pskid> is set to 0, the IMEI number
is used as the PSK ID.
<psk> Preset key. Fixed length of 16 bytes hexadecimal number, which need to be
consistent with the IoT platform.
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 137 / 154
5.23. AT+QBSSECSWT* Configure Bootstrap Server Connection
Switches
This command is used to configure DTLS connection switches with Bootstrap Server and standard DTLS
negotiation time. Start the timer when the DTLS negotiated at the first time, and restart the timer when
received the DTLS message from Bootstrap Server. When the uplink message is sent and the timer has
expired, it is necessary to trigger a re-negotiation.
Please refer to Chapter 6 for possible <err> values.
Parameter
AT+QBSSECSWT* Configure Bootstrap Server Connection Switches
Write Command
AT+QBSSECSWT=<type>[,<NAT
type>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Read Command
AT+QBSSECSWT?
Response
+QBSSECSWT:<type>[,<NAT type>]
OK
If there is any error, response:
ERROR
Or
+CME ERROR: <err>
Maximum Response Time
300ms
<type> Encryption mode type.
0 None encryption
1 Standard DTLS encryption mode
<NAT type> Standard DTLS NAT network.
0 The DTLS link is rebuilt every time when the data is send
1 Every time when the module is powered on or when the module IP address
changes, the DTLS encryption mode will be triggered
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 138 / 154
"*" means under development.
Example
AT+QBSSECSWT=1,1
OK
AT+QBSSECSWT?
+QBSSECSWT:1,1
OK
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 139 / 154
6 Error Values
This chapter introduces the error values related to BC95-G and BC68 modules.
The error codes listed in the following two tables are compliant with the 3GPP specifications. Customers
can refer to 3GPP TS 27.007 V13.5.0, sub-clause 9.2 for all possible <err> values.
Table 3: General Errors (27.007)
Table 4: General Errors (27.005)
Code of <err>
Description
3
Operation not allowed
4
Operation not supported
5
Need to enter PIN
23
Memory failure
30
No network service
50
Incorrect parameters
51
Command implemented but currently disabled
52
Command aborted by user
100
Unknown
159
Uplink busy/flow control
Code of <err>
Description
300
ME failure
301
SMS service of ME reserved
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 140 / 154
The following error codes are specific ones for BC95-G and BC68 modules. Error code 512 was
previously error code 256. Error code 513 was previously error code 257.
302
Operation not allowed
303
Operation not supported
304
Invalid PDU mode parameter
305
Invalid text mode parameter
310
USIM not inserted
311
USIM PIN required
312
PH-USIM PIN required
313
USIM failure
314
USIM busy
315
USIM wrong
316
USIM PUK required
317
USIM PIN2 required
318
USIM PUK2 required
320
Memory failure
321
Invalid memory index
322
Memory full
330
SMSC address unknown
331
No network service
332
Network timeout
340
No +CNMA acknowledgement expected
500
Unknown error
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 141 / 154
Table 5: Specific Error Codes
AT+CMEE=<n> command disables (<n>=0) or enables (<n>=1) the use of final result code “+CME
ERROR:<err>”. When <n>=1, a limited set of error codes will be returned.
Code of <err>
Description
512
Required parameter not configured
513
TUP not registered
514
AT internal error
515
CID is active
516
Incorrect state for command
517
CID is invalid
518
CID is not active
520
Deactive the last active CID
521
CID is not defined
522
UART parity error
523
UART frame error
524
MT not powered on
525
AT command aborted: in processing
526
AT command aborted: error
527
Command interrupted
528
Configuration conflicts
529
During FOTA updating
530
Not the AT allocated socket
NOTE
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 142 / 154
7 Reboot Reasons
If the module is rebooted for any reason apart from either being power cycled or being externally reset, it
will return a message before the <CR><LF>Neul<CR><LF>OK<CR><LF> message to indicate the
reboot reason.
Table 6: Reboot Messages Displayed
No.
Reboot Message Displayed
1
REBOOT_CAUSE_SECURITY_RESET_UNKNOWN
2
REBOOT_CAUSE_SECURITY_SYSRESETREQ
3
REBOOT_CAUSE_SECURITY_WATCHDOG
4
REBOOT_CAUSE_SECURITY_SELF
5
REBOOT_CAUSE_SECURITY_ALTBOOT
6
REBOOT_CAUSE_SECURITY_REG_0
7
REBOOT_CAUSE_SECURITY_REG_3
8
REBOOT_CAUSE_SECURITY_STANDARD_CHIP_WATCHDOG
9
REBOOT_CAUSE_SECURITY_UPDATER_CHIP_WATCHDOG
10
REBOOT_CAUSE_SEUCRITY_SCAN_ENTER_EXIT
11
REBOOT_CAUSE_SECURITY_PMU_POWER_ON_RESET
12
REBOOT_CAUSE_SECURITY_RESET_PIN
13
REBOOT_CAUSE_SECURITY_REGIONS_UPDATED
14
REBOOT_CAUSE_SECURITY_FOTA_UPGRADE
15
REBOOT_CAUSE_PROTOCOL_SYSRESETREQ
16
REBOOT_CAUSE_PROTOCOL_WATCHDOG
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 143 / 154
17
REBOOT_CAUSE_PROTOCOL_MONITOR_REBOOT_REQ
18
REBOOT_CAUSE_PROTOCOL_RPC_TIMEOUT
19
REBOOT_CAUSE_APPLICATION_SYSRESETREQ
20
REBOOT_CAUSE_APPLICATION_WATCHDOG
21
REBOOT_CAUSE_APPLICATION_AT
22
REBOOT_CAUSE_APPLICATION_RPC_TIMEOUT
23
REBOOT_CAUSE_PROTOCOL_IMSI_UPDATE
24
REBOOT_CAUSE_UNKNOWN
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 144 / 154
8 Examples
8.1. Network Attachment
- Through AT+NCONFIG=AUTOCONNECT,TRUE command, the module supports automatic network
attachment.
- If manual network attachment is desired, then please disable automatic network attachment through
AT+NCONFIG=AUTOCONNECT,FALSE. The setting will be saved to NV and take effect after
rebooting the module by AT+NRB.
8.1.1. Automatic Network Attachment
The following shows a simple example for automatic network attachment. Customers only need to query
whether the module has attached on network by the following commands:
REBOOT_CAUSE_SECURITY_PMU_POWER_ON_RESET
Neul
OK //Power on the module
AT+CFUN?
+CFUN:1
OK
AT+CIMI //Query the IMSI number.
460111174590523
OK
AT+CEREG? //Query the network registration status: 1 means registered on network,
while 2 means searching the network.
+CEREG:0,1
OK
AT+CGATT? //Query whether the network has been activated.
+CGATT:1 //The network has been activated successfully. Sometimes, there might
be a need to wait for 30s.
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 145 / 154
OK
AT+CGPADDR // Query the IP address of the module
+CGPADDR:0,10.169.241.248
OK
8.1.2. Manual Network Attachment
Full-band search may take more time. Therefore, it is recommended to specify the band(s) to be
searched when manual network attachment is selected.
AT+NCONFIG=AUTOCONNECT,FALSE //Disable automatic network attachment
OK
AT+NRB //Reboot the module
REBOOTING
REBOOT_CAUSE_APPLICATION_AT //Reboot cause
Neul
OK
AT+NBAND=5 //Specify the band to be searched
OK
AT+CFUN=1 //Set the UE into full functionality mode
OK
AT+CIMI //Query the IMSI number
460111174590523
OK
AT+CGATT=1 //Trigger network attachment
OK
AT+NUESTATS //Query the module status
Signal power:-827
Total power:-684
TX power:230
TX time:2272
RX time:9354
Cell ID:110258001
ECL:1
SNR:-30
EARFCN:2506
PCI:100
RSRQ:-157
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 146 / 154
OPERATOR MODE:4
OK
AT+CEREG? //Query the network registration status: 1 means registered on
network, while 2 means searching the network.
+CEREG:0,1
OK
AT+CGATT? //Query whether the network has been activated.
+CGATT:1 //The network has been activated successfully. Sometimes, there
might be a need to wait for 30s.
OK
AT+CGPADDR //Query the IP address of the module
+CGPADDR:0,10.3.42.109
OK
8.2. Send/Receive/Read a UDP Message
The following shows a simple example for sending, receiving and reading a UDP message. Once the
socket is closed, no replies will be received.
AT+QREGSWT=2 //Disable registration function of Huawei‟s IoT platform
OK
… //Attach on network
AT+CGPADDR //Query the IP address of the module
+CGPADDR:0,10.3.42.109
OK
AT+NSOCR=DGRAM,17,0,1 //Create a socket
1
OK
AT+NSOST=1,220.180.239.212,8012,5,1245783132,100 //Send a message
1,5
OK
+NSOSTR:1,100,1 //Datagram is sent by RF
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 147 / 154
+NSONMI:1,5 //Received the message
AT+NSORF=1,5 //Read the message
1,220.180.239.212,8012,5,1245783132,0
OK
AT+NSOCL=1 //Close the socket
OK
8.3. Send/Receive/Read a TCP Message
The following shows a simple example for sending, receiving and reading a TCP message. Once the
socket is closed, no replies will be received.
AT+QREGSWT=2 //Disable registration function of Huawei‟s IoT platform
OK
… //Attach on network
AT+CGPADDR //Query the IP address of the module
+CGPADDR:0,10.3.42.79
OK
AT+NSOCR=STREAM,6,0,1 //Create a socket
1
OK
AT+NSOCO=1,220.180.239.212,8009 //Connect to the server
OK
AT+NSOSD=1,4,01020304,0x100,101 //Send the messages
1,4
OK
+NSOSTR:1,101,1 //Datagram has been confirmed to be received by the server
+NSONMI:1,4 //Received the message
AT+NSORF=1,4 //Read the message
1,220.180.239.212,8009,4,01020304,0
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 148 / 154
OK
AT+NSOCL=1 //Close the socket
OK
8.4. Examples Relating to Huawei’s IoT Platform
8.4.1. Register to Huawei’s IoT Platform
8.4.1.1. Automatic Registration Mode
AT+QREGSWT?
+QREGSWT:1 //Automatic registration mode (default mode)
OK
AT+NCDP=180.101.147.115,5683 //Set IP address and port for the IoT platform
OK
AT+NRB //Reboot the module
REBOOTING
REBOOT_CAUSE_APPLICATION_AT //Reboot cause
Neul
OK
AT+CGPADDR //Query the IP address of the module
+CGPADDR:0,10.3.42.109
OK
+QLWEVTIND:0 //Successful registration indication.
+QLWEVTIND:3 //IoT platform has observed the data object 19. When the
module reports this message, the data can be sent to the
IoT platform.
8.4.1.2. Manual Registration Mode
AT+CGATT? //Query the PS service attachment status
+CGATT:1 //Attached to the PS service
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 149 / 154
OK
AT+NCDP=180.101.147.115,5683 //Set IP address and port for the IoT platform
OK
AT+QREGSWT? //Query the registration mode
+QREGSWT:0 //Manual registration mode
OK
AT+QLWSREGIND=0 //Start to register to the IoT platform
OK
+QLWEVTIND:0 //Successful registration indication
+QLWEVTIND:3 //IoT platform has observed the data object 19. When
the module reports this message, the data can be sent
to the IoT platform.
AT+QLWSREGIND=1 //Deregister from the IoT platform
OK
+QLWEVTIND:1 //Successful deregistration indication
8.4.2. Send/Receive Data with Huawei’s IoT Platform
+QLWEVTIND:0 //Successful registration indication
+QLWEVTIND:3 //IoT platform has observed the data object 19. When
the module reports this message, the data can be sent
to the IoT platform.
AT+QLWULDATA=3,313233 //Send data with NON mode. It does not need the IoT
platform to ACK this data message.
OK
+NNMI:4,AAAA0000 //The module has received data from the IoT platform
AT+QLWULDATAEX=3,313233,0X0100 //Send CON message. The IoT platform needs to
ACK this data message.
OK
+QLWULDATASTATUS:4 //Successful message sending
+NNMI:4,AAAA0000 //The module has received data from the IoT platform
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 150 / 154
AT+QLWULDATASTATUS? //Query the data sending status
+QLWULDATASTATUS:4 //Successful message sending
OK
8.4.3. Upgrade Firmware on Huawei’s IoT Platform
8.4.3.1. Automatic Firmware Upgrade via DFOTA
//Create a firmware upgrade task on the IoT platform.
+QLWEVTIND:0 //Successful registration indication
+QLWEVTIND:3 //IoT platform has observed the data object 19
AT+QLWULDATA=3,313233 //Send any packet of upstream data and trigger an
online firmware upgrade
OK
+QLWEVTIND:5 //IoT platform has observed the firmware object 5
FIRMWARE DOWNLOADING
FIRMWARE DOWNLOADED
FIRMWARE UPDATING
//The module is undergoing local updates, which can result in multiple reboots and thus will take some
time.
REBOOT_CAUSE_SECURITY_FOTA_UPGRADE //The module reboots
Neul
OK
FIRMWARE UPDATE SUCCESS
+QLWEVTIND:0 //Successful registration indication
+QLWEVTIND:3 //IoT platform has observed the data object 19
FIRMWARE UPDATE OVER
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 151 / 154
8.4.3.2. Controlled Firmware Upgrade via DFOTA
//Create a firmware upgrade task on the IoT platform.
AT+QLWFOTAIND? //Query the firmware upgrade mode
+QLWFOTAIND:1 //Manual mode
OK
AT+QLWSREGIND=0 //Start to register to the IoT platform
OK
+QLWEVTIND:0 //Successful registration indication
+QLWEVTIND:3 //IoT platform has observed the data object 19
+QLWEVTIND:5 //IoT platform has observed the firmware object 5
FIRMWARE DOWNLOADING
+QLWEVTIND:6 //Notify the device to receive update package URL
AT+QLWFOTAIND=2 //Device notifies the module to start downloading
OK
FIRMWARE DOWNLOADED
+QLWEVTIND:7 //Notify the device that download has been completed
AT+QLWFOTAIND=4 //Device notifies the module to start updating
OK
FIRMWARE UPDATING
REBOOT_CAUSE_SECURITY_FOTA_UPGRADE //The module reboots
Neul
OK
FIRMWARE UPDATE SUCCESS
+QLWEVTIND:0 //Successful registration indication
+QLWEVTIND:3 //IoT platform has observed the data object 19
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 152 / 154
FIRMWARE UPDATE OVER
8.4.4. Register to Huawei’s IoT Platform with DTLS
AT+CGATT? //Query the PS service attach status
+CGATT:1 //Attached to the PS service
OK
AT+NCDP= 180.101.147.115,5684 //Set IoT platform IP address and port. The port is 5684.
OK
AT+QSECSWT=1 //Encryption using standard DTLS
OK
AT+QSETPSK=201703230000024,0123456789ABCDEF0123456789ABCDEF
OK //Set PSK ID and PSK
AT+QREGSWT? //Query the registration mode
+QREGSWT:0 //Manual registration mode
OK
AT+QLWSREGIND=0 //Start to register to the IoT platform
OK
+QLWEVTIND:0 //Successful registration indication
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 153 / 154
9 Appendix A Reference
Table 7: Terms and Abbreviations
Abbreviation
Description
APN
Access Point Name
BS
Bootstrap
CDP
Connected Device Platform
CS
Circuit Switched
DCE
Data Communication Equipment
DTLS
Datagram Transport Layer Security
EARFCN
E-UTRA Absolute Radio Frequency Channel Number
eDRX
Extended Discontinuous Reception
EGPRS
Enhanced General Packet Radio Service
eNB
Evolved Node B
GERAN
GSM/EDGE Radio Access Network
GMT
Greenwich Mean Time
GPRS
General Packet Radio Service
HPLMN
Home Public Land Mobile Network
HSDPA
High Speed Downlink Packet Access
HSUPA
High-Speed Uplink Packet Access
ICMP
Internet Control Messages Protocol
IMEI
International Mobile Equipment Identity
NB-IoT Module Series
BC95-G&BC68 AT Commands Manual
BC95-G&BC68_AT_Commands_Manual 154 / 154
IMEISV
International Mobile Equipment Identity and Software Version
KV
Key Value
LwIP
Lightweight IP
MS
Mobile Station
NAT
Network Address Translation
NB-IoT
Narrow Band Internet of Thing
PDP
Packet Data Protocol
PSK
Pre-shared Key
RRC
Radio Resource Control
RTC
Real Time Clock
SVN
Software Version Number
TA
Terminal Adapter
TCP
Transmission Control Protocol
TE
Terminal Equipment
TTL
Time To Live
UDP
User Datagram Protocol
UE
User Equipment
UICC
Universal Integrated Circuit Card
URC
Unsolicited Result Code
UUID
Universally Unique Identifier
XOFF
Transmit off
XON
Transmit on