Quectel BC95 AT Commands Manual V2.0

Quectel_BC95_AT_Commands_Manual_V2.0

Quectel_BC95_AT_Commands_Manual_V2.0

Quectel_BC95_AT_Commands_Manual_V2.0

Quectel_BC95_AT_Commands_Manual_V2.0

User Manual: Pdf

Open the PDF directly: View PDF PDF.
Page Count: 131 [warning: Documents this large are best viewed by clicking the View PDF Link!]

BC95
AT Commands Manual
NB-IoT Module Series
Rev. BC95_AT_Commands_Manual_V2.0
Date: 2018-05-14
Status: Released
www.quectel.com
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 1 / 130
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 AT Commands Manual
BC95_AT_Commands_Manual 2 / 130
About the Document
History
Revision
Date
Author
Description
1.0
2016-11-16
Walker HAN/
Donald TANG
Initial
1.1
2016-12-14
Walker HAN
1. Added AT+NCONFIG command
2. Updated description of Neul Hi2110 implementation
for AT+COPS/CGATT/CGDCONT/NMGS/NRB/
NCDP/NTSETID
1.2
2017-01-04
Walker HAN
1. Updated description of Neul Hi2110 implementation
for AT+CEREG/COPS/CGAT/NCDP/NSOST/NPING
2. Updated description of parameters for AT+COPS/
NCDP/NUESTATS/NEARFCN
3. Updated example in Chapter 8.2
1.3
2017-01-13
Donald TANG
Updated examples in Chapter 8
1.4
2017-03-22
Hayden WANG/
Donald TANG
1. Updated description of parameters for
AT+NUESTATS/NEARFCN
2. Updated description of Neul Hi2110 implementation
for AT+NBAND/NLOGLEVEL
3. Updated examples in Chapter 8
1.5
2017-04-24
Hayden WANG
1. Added AT+CCLK/NSOSTF commands
2. Updated description of parameters for AT+NQMGS/
NEARFCN/NPING/NLOGLEVEL
3. Updated error values in Chapter 7
1.6
2017-07-03
Miles MA/
Serena SHEN
1. Added AT+NATSPEED command
2. Updated description of BC95 implementation for
AT+NSOCR/NBAND
3. Updated error values in Chapter 7
4. Updated examples in Chapter 8
1.7
2017-08-09
Hayden WANG
1. Added following new AT commands:
AT+CGACT/CPSMS/CEDRXS/CEER/CEDRXRDP/
CTZR/NMSTATUS/NCCID/NFWUPD
2. Added ETSI commands (127.005) in Chapter 4
3. Updated description of parameters for AT+CGSN/
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 3 / 130
CEREG/CGDCONT/NUESTATS/NEARFCN/
NCONFIG
4. Added unsolicited information of MCU update state in
Table 1
5. Updated error values in Chapter 7
Added reset reasons in Chapter 8
1.8
2017-09-18
Lebron LIU
1. Added following new AT commands: ATI/ATE/
AT+NPOWERCLASS/AT+NPSMR/AT+NPTWEDRXS
2. Updated description of parameters for following AT
commands: AT+NMSTATUS/AT+NUESTATS/
AT+NEARFCN/AT+NATSPEED
3. Deleted AT commands AT+NRDCTRL and
AT+NCHIPINFO
1.9
2017-12-14
Gary TANG/
Hayden WANG
1. Added following new AT commands:
AT+CIPCA/AT+CGAPNRC/AT+QSECSWT/
AT+QSETPSK/AT+QLWULDATAEX/
AT+QLWULDATASTATUS
2. Updated description of +NSONMI commands.
3. Deleted AT+NTSETID command
4. Added description of AT commands for Huawei’s IoT
platform
5. Added example of sending/receiving/reading
messages via Huawei’s IoT platform
6. Updated description of parameters for AT+CEREG/
AT+CPSMS/AT+CEDRXS/AT+CEDRXRDP/
AT+NPTWEDRXS
2.0
2018-05-14
Gary TANG
1. Added following new AT commands:
AT+CGAUTH/AT+NPIN/AT+NCSEARFCN
2. Updated description of parameters for AT+NPSMR/
AT+QSECSWT/AT+QSETPSK/AT+QLWULDATAEX
3. Added maximum response time for all AT commands
4. Added example for AT+NPING
5. Updated description of error responses
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 4 / 130
Contents
About the Document ................................................................................................................................... 2
Contents ....................................................................................................................................................... 4
Table Index ................................................................................................................................................... 7
1 Introduction .......................................................................................................................................... 8
1.1. Definitions .................................................................................................................................. 9
1.2. AT Command Syntax ................................................................................................................. 9
1.3. AT Command Responses ........................................................................................................ 10
1.4. 3GPP Compliance ................................................................................................................... 10
2 Implementation Status ...................................................................................................................... 11
3 3GPP Commands (27.007) ................................................................................................................ 15
3.1. ATI Display Product Identification Information ...................................................................... 15
3.2. ATE Set Command Echo Mode ............................................................................................ 16
3.3. AT+CGMI Request Manufacturer Identification .................................................................... 17
3.4. AT+CGMM Request Manufacturer Model ............................................................................ 17
3.5. AT+CGMR Request Manufacturer Revision ......................................................................... 18
3.6. AT+CGSN Request Product Serial Number ......................................................................... 20
3.7. AT+CEREG EPS Network Registration Status ..................................................................... 21
3.8. AT+CSCON Signalling Connection Status ........................................................................... 25
3.9. AT+CLAC List Available Commands .................................................................................... 27
3.10. AT+CSQ Get Signal Strength Indicator ................................................................................ 28
3.11. AT+CGPADDR Show PDP Addresses ................................................................................. 30
3.12. AT+COPS PLMN Selection .................................................................................................. 31
3.13. AT+CGATT PS Attach or Detach .......................................................................................... 35
3.14. AT+CGACT Activate or Deactivate a PDP Context .............................................................. 36
3.15. AT+CIMI Request International Mobile Subscriber Identity .................................................. 38
3.16. AT+CGDCONT Define a PDP Context ................................................................................. 39
3.17. AT+CFUN Set Phone Functionality ...................................................................................... 43
3.18. AT+CMEE Report Mobile Termination Error ......................................................................... 45
3.19. AT+CCLK Return Current Date & Time ................................................................................ 46
3.20. AT+CPSMS Power Saving Mode Setting ............................................................................. 47
3.21. AT+CEDRXS eDRX Setting .................................................................................................. 50
3.22. AT+CEER Extended Error Report ........................................................................................ 53
3.23. AT+CEDRXRDP eDRX Read Dynamic Parameters ............................................................ 54
3.24. AT+CTZR Time Zone Reporting ........................................................................................... 56
3.25. AT+CIPCA Initial PDP Context Activation ............................................................................. 58
3.26. AT+CGAPNRC APN Rate Control ........................................................................................ 60
3.27. AT+CGAUTH Define PDP Context Authentication Parameters ........................................... 62
4 ETSI Commands (27.005) .................................................................................................................. 64
4.1. AT+CSMS Select Messaging Service .................................................................................. 64
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 5 / 130
4.2. AT+CNMA New Message Acknowledgement to ME/TA ....................................................... 66
4.3. AT+CSCA Service Centre Address ....................................................................................... 67
4.4. AT+CMGS Send SMS Messages ......................................................................................... 68
4.5. AT+CMGC Send SMS Command ......................................................................................... 70
4.6. AT+CSODCP* Send Originating Data via Control Plane ..................................................... 71
4.7. AT+CRTDCP* Report Terminating Data via Control Plane .................................................. 73
5 General Commands ........................................................................................................................... 75
5.1. AT+NRB Reboot the Module ................................................................................................ 75
5.2. AT+NUESTATS Query UE Statistics ..................................................................................... 75
5.3. AT+NEARFCN Specify Search Frequencies ........................................................................ 80
5.4. AT+NSOCR Create a Socket ................................................................................................ 81
5.5. AT+NSOST SendTo Command (UDP Only) ......................................................................... 82
5.6. AT+NSOSTF SendTo Command with Flags (UDP Only) ..................................................... 83
5.7. AT+NSORF Receive Command (UDP Only) ........................................................................ 84
5.8. AT+NSOCL Close a Socket .................................................................................................. 86
5.9. +NSONMI Indicator of Arrived Socket Messages (Response Only) .................................... 87
5.10. AT+NPING Test IP Network Connectivity to a Remote Host ................................................ 87
5.11. AT+NBAND Set Supported Bands........................................................................................ 88
5.12. AT+NLOGLEVEL Set Debug Logging Level ........................................................................ 90
5.13. AT+NCONFIG Configure UE Behaviour ............................................................................... 91
5.14. AT+NATSPEED Configure UART Port Baud Rate ............................................................... 92
5.15. AT+NCCID Card Identification .............................................................................................. 94
5.16. AT+NFWUPD Firmware Update via UART .......................................................................... 95
5.17. AT+NPOWERCLASS Set the Mapping for Band and Power Class ..................................... 96
5.18. AT+NPSMR Power Saving Mode Status Report .................................................................. 97
5.19. AT+NPTWEDRXS Paging Time Window Value and eDRX Setting ..................................... 98
5.20. AT+NPIN PIN Operation ..................................................................................................... 101
5.21. AT+NCSEARFCN Clear Stored EARFCN .......................................................................... 103
6 Huawei's IoT Platform Commands ................................................................................................. 105
6.1. Description of Huawei's IoT Platform Commands ................................................................. 105
6.1.1. AT+NCDP Configure and Query CDP Server Settings ............................................ 105
6.1.2. AT+QSECSWT Set Data Encryption Mode .............................................................. 106
6.1.3. AT+QSETPSK Set PSK ID and PSK ........................................................................ 108
6.1.4. AT+NMGS Send Messages ...................................................................................... 109
6.1.5. AT+NMGR Get Messages ........................................................................................ 110
6.1.6. AT+NNMI New Message Indications ........................................................................ 110
6.1.7. AT+NSMI Sent Message Indications ........................................................................ 112
6.1.8. AT+NQMGR Query Received Messages ................................................................. 113
6.1.9. AT+NQMGS Query Sent Messages ......................................................................... 113
6.1.10. AT+NMSTATUS Message Registration Status ......................................................... 114
6.1.11. AT+QLWULDATAEX Send CON/NON Messages .................................................... 115
6.1.12. AT+QLWULDATASTATUS Query CON Messages Sending Status ......................... 116
7 Error Values ...................................................................................................................................... 118
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 6 / 130
8 Reset Reasons ................................................................................................................................. 121
9 Examples .......................................................................................................................................... 122
9.1. Attach Network ...................................................................................................................... 122
9.2. Send/Receive/Read UDP Messages .................................................................................... 126
9.3. Send/Receive/Read Messages via Huawei's IoT Platform ................................................... 127
10 Appendix A Reference ..................................................................................................................... 129
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 7 / 130
Table Index
TABLE 1: UNSOLICITED INFORMATION OF UE UPDATE STATE INDICATION ............................................. 8
TABLE 2: AT COMMAND SYNTAX ..................................................................................................................... 9
TABLE 3: TYPES OF AT COMMANDS AND IMPLEMENTATION STATUS ...................................................... 11
TABLE 4: GENERAL ERRORS (27.007).......................................................................................................... 118
TABLE 5: GENERAL ERRORS (127.005) ....................................................................................................... 118
TABLE 6: SPECIFIC ERROR CODES ............................................................................................................ 120
TABLE 7: POSSIBLE REBOOT MESSAGES DISPLAYED ............................................................................ 121
TABLE 8: TERMS AND ABBREVIATIONS ...................................................................................................... 129
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 8 / 130
1 Introduction
This document gives details of the AT Command Set supported by Quectel NB-IoT BC95 module.
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 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 8 for more details.
In case that an external MCU intervenes in the process of firmware update via DFOTA, unsolicited
information will inform the external MCU the current update state.
Table 1: Unsolicited Information of UE Update State Indication
Unsolicited Information
<CR><LF>FIRMWARE DOWNLOADING<CR><LF>
<CR><LF>FIRMWARE DOWNLOAD FAILED<CR><LF>
<CR><LF>FIRMWARE DOWNLOADED<CR><LF>
<CR><LF>FIRMWARE UPDATING<CR><LF>
<CR><LF>FIRMWARE UPDATE SUCCESS<CR><LF>
<CR><LF>FIRMWARE UPDATE FAILED<CR><LF>
<CR><LF>FIRMWARE UPDATE OVER<CR><LF>
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 9 / 130
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 are 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. For
B600, the AT command processor uses carriage return/line feed pairs (\r\n, 0x0D0A) to end lines on its
output.
Test Command
AT+<cmd>=?
Check possible sub-parameter values
Read
Command
AT+<cmd>?
Check current sub-parameter values
Set Command
AT+<cmd>=p1[,p2[,p3[.....]]]
Set command
Execution
Command
AT+<cmd>
Execution command
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 10 / 130
If no command is entered after the AT token, "OK" will be returned. If an invalid command is entered,
ERROR or “+CME ERROR:<err>” 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" or "ERROR" or
“+CME ERROR:<err> indicating that it is ready to accept a new command. Solicited informational
responses are sent before the final "OK" or "ERROR" or “+CME ERROR:<err>.
Responses will be of the format:
<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 AT Commands Manual
BC95_AT_Commands_Manual 11 / 130
2 Implementation Status
Table 3: Types of AT Commands and Implementation Status
AT Command
Description
Implementation Status1)
3GPP Commands (27.007)
ATI
Display Product Identification Information
B657SP2 or later
ATE
Set Command Echo Mode
B657SP2 or later
AT+CGMI
Request Manufacturer Identification
B350 or later
AT+CGMM
Request Manufacturer Model
B350 or later
AT +CGMR
Request Manufacturer Revision
B350 or later
AT+CGSN
Request Product Serial Number
B350 or later
AT+CEREG
EPS Network Registration Status
B350 or later
AT+CSCON
Signalling Connection Status
B350 or later
AT+CLAC
List Available Commands
B350 or later
AT+CSQ
Get Signal Strength Indicator
B350 or later
AT+CGPADDR
Show PDP Addresses
B350 or later
AT+COPS
PLMN Selection
B350 or later
AT+CGATT
PS Attach or Detach
B350 or later
AT+CGACT
Activate or Deactivate PDP Context
B657SP1 or later
AT+CIMI
Request International Mobile Subscriber
Identity
B350 or later
AT+CGDCONT
Define a PDP Context
B350 or later
AT+CFUN
Set Phone Functionality
B350 or later
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 12 / 130
AT+CMEE
Report Mobile Termination Error
B600 or later
AT+CCLK
Return Current Date & Time
B656 or later
AT+CPSMS
Power Saving Mode Setting
B657SP1 or later
AT+CEDRXS
eDRX Setting
B657SP1 or later
AT+CEER
Extended Error Report
B657SP1 or later
AT+CEDRXRDP
eDRX Read Dynamic Parameters
B657SP1 or later
AT+CTZR
Time Zone Reporting
B657SP1 or later
AT+CIPCA
Initial PDP Context Activation
B657SP3 or later
AT+CGAPNRC
APN Rate Control
B657SP3 or later
AT+CGAUTH
Define PDP Context Authentication
Parameters
B657SP5 or later
ETSI Commands (27.005)
AT+CSMS
Select Messaging Service
B657SP1 or later
AT+CNMA
New Message Acknowledgement to ME/TA
B657SP1 or later
AT+CSCA
Service Centre Address
B657SP1 or later
AT+CMGS
Send SMS Messages
B657SP1 or later
AT+CMGC
Send SMS Command
B657SP1 or later
AT+CSODCP*
Send Originating Data via the Control Plane
B657SP1 or later
AT+CRTDCP*
Report Terminating Data via the Control Plane
B657SP1 or later
General Commands
AT+NRB
Reboot the Terminal
B350 or later
AT+NUESTATS
Query UE Statistics
B350 or later
AT+NEARFCN
Specify Search Frequencies
B350 or later
AT+NSOCR
Create a Socket
B350 or later
AT+NSOST
SendTo Command (UDP Only)
B350 or later
AT+NSOSTF
SendTo Command with Flags (UDP Only)
B656 or later
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 13 / 130
AT+NSORF
Receive Command (UDP only)
B350 or later
AT+NSOCL
Close a Socket
B350 or later
+NSONMI
Indicator of Arrived Socket Message
(Response Only)
B350 or later
AT+NPING
Test IP Network Connectivity to a Remote
Host
B350 or later
AT+NBAND
Set Supported Bands
B600 or later
AT+NLOGLEVEL
Set Debug Logging Level
B600 or later
AT+NCONFIG
Configure UE Behaviour
B650 or later
AT+NATSPEED
Configure UART Port Baud Rate
B656 or later
AT+NCCID
Card Identification
B657SP1 or later
AT+NFWUPD
Firmware Update via UART
B657SP1 or later
AT+NPOWERCLASS
Set the Mapping for Band and Power Class
B657SP2 or later
AT+NPSMR
Power Saving Mode Status Report
B657SP2 or later
AT+NPTWEDRXS
Paging Time Window Value and eDRX
Setting
B657SP2 or later
AT+NPIN
PIN Operation
B657SP5 or later
AT+NCSEARFCN
Clear Stored EARFCN
B657SP5 or later
Huawei’s IoT Platform Commands
AT+NCDP
Configure and Query CDP Server Settings
B350 or later
AT+QSECSWT
Set Data Encryption Mode
B657SP3 or later
AT+QSETPSK
Set PSK ID and PSK
B657SP3 or later
AT+NMGS
Send Messages
B350 or later
AT+NMGR
Get Messages
B350 or later
AT+NNMI
New Message Indications
B350 or later
AT+NSMI
Sent message Indications
B350 or later
AT+NQMGR
Query Received Messages
B350 or later
AT+NQMGS
Query Sent Messages
B350 or later
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 14 / 130
1. "*" means the commands listed in this chapter are under development.
2. 1) "B657SPx" (in which "x" indicates 1, 2, 3 or 5) refers to the protocol core version of the module
which can be queried by AT+CGMR command.
AT+NMSTATUS
Message Registration Status
B657SP1 or later
AT+QLWULDATAEX
Send CON/NON Messages
B657SP3 or later
AT+QLWULDATASTATUS
Query CON Messages Sending Status
B657SP3 or later
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 15 / 130
3 3GPP Commands (27.007)
3.1. ATI Display Product Identification Information
The execution command returns product identification information. Please refer to Chapter 7 for possible
<err> values
Parameter
Example
ATI
Quectel
BC95-B5
Revision:BC95B5HBR01A02W16
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 models
<revision> Revision of software release
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 16 / 130
3.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 7 for possible <err> values.
Parameter
Example
ATE0
OK
ATI
Quectel
BC95-B5
Revision:BC95B5HBR01A02W16
OK
ATE1
OK
ATI
ATI
Quectel
BC95-B5
Revision:BC95B5HBR01A02W16
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 AT Commands Manual
BC95_AT_Commands_Manual 17 / 130
3.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 7 for possible <err> values.
Parameter
Example
AT+CGMI
Quectel
OK
3.4. AT+CGMM Request Manufacturer Model
The execution command returns manufacturer model information. Please refer to Chapter 7 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 AT Commands Manual
BC95_AT_Commands_Manual 18 / 130
Parameter
Example
AT+CGMM
BC95HB-02-STD_850
OK
3.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
7 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 AT Commands Manual
BC95_AT_Commands_Manual 19 / 130
Parameter
<revision> will change format over time. It should be treated as an opaque identifier.
Example
AT+CGMR
SECURITY,V100R100C10B657SP2
PROTOCOL,V100R100C10B657SP2
APPLICATION,V100R100C10B657SP2
SEC_UPDATER,V100R100C10B657SP2
APP_UPDATER,V100R100C10B657SP2
RADIO,BC95HB-02-STD_850
OK
AT+CGMR=?
OK
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>
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 20 / 130
3.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
7 for possible <err> values.
Parameter
AT+CGSN Request Product Serial Number
Execution Command
AT+CGSN[=<snt>]
Response
When <snt>=0(or omitted) and command is executed
successfully:
<sn>
When <snt>=1 and command is executed successfully:
+CGSN:<imei>
When <snt>=2 and command is executed successfully:
+CGSN:<imeisv>
When <snt>=3 and 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 command is executed
successfully:
+CGSN:(list of supported <snt>s)
OK
Maximum Response Time
300ms
<snt> Integer type; indicates 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
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 21 / 130
Example
AT+CGSN=1 //Request the IMEI number
+CGSN:490154203237511
OK
AT+CGSN is not supported and will return illegal HEX string. This will change in a future release.
3.7. AT+CEREG EPS Network Registration Status
The set 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 7 for possible <err> values.
If the UE requests PSM for reducing its power consumption, the set 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 MT is registered on the network.
3 Returns the SVN (Software Version Number)
<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 in decimal format; indicates the IMEI number
<imeisv> String type in decimal format; indicates the IMEISV
<svn> String type in decimal format; indicates the current SVN which is a part of IMEISV
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 22 / 130
The parameters [,<cause_type>,<reject_cause>], if available, are returned when <n>=3.
The test command returns supported parameter values.
Parameter
AT+CEREG EPS Network Registration Status
Set 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 command is executed
successfully:
+CEREG:<n>,<stat>[,[<tac>],[<ci>],[<AcT>[,<cause_type>
,<reject_ cause>]]]
When <n>=4 or 5 and command is executed successfully:
+CEREG:<n>,<stat>[,[<lac>],[<ci>],[<AcT>],[<rac>][,[<cau
se_type>],[<reject_cause>][,[<Active-Time>],[<Periodic-T
AU>]]]]
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Test Command
AT+CEREG=?
Response
+CEREG:(list of supported <n>s)
OK
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:
+CEREG:<stat>[,[<tac>],[<ci>],[<AcT>]]
3 Enable network registration, location information and EMM cause value information
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 23 / 130
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; indicates the EPS registration status
0 Not registered, MT is not currently searching an operator to register to
1 Registered, home network
2 Not registered, but MT 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
6 Registered for “SMS only”, home network (not applicable)
7 Registered for “SMS only”, roaming (not applicable)
8 Attached for emergency bearer services only
9 Registered for “CSFB not preferred”, home network (not applicable)
10 Registered for “CSFB not preferred”, roaming (not applicable)
<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; indicates the access technology of the serving cell
0 GSM (not applicable)
1 GSM Compact (not applicable)
2 UTRAN (not applicable)
3 GSM w/EGPRS (not applicable)
4 UTRAN w/HSDPA (not applicable)
5 UTRAN w/HSUPA (not applicable)
6 UTRAN w/HSDPA and HSUPA (not applicable)
7 E-UTRAN
8 EC-GSM-IoT (A/Gb mode) (see NOTES 5) (not applicable)
9 E-UTRAN (NB-S1 mode) (see NOTES 6)
<cause_type> Integer type; indicates 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. Requested Active Time value (T3324) to be
allocated to the UE. (e.g. "00100100" equals 4 minutes).
Bits 5 to 1 represent the binary coded timer value.
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 24 / 130
1. If the EPS MT in GERAN/UTRAN/E-UTRAN also supports circuit mode services and/or GPRS
services, the AT+CREG command and AT+CGREG command can be used to query the registration
status and location information for those services.
2. 3GPP TS 24.008 and 3GPP TS 24.301 specify the condition when the MS is considered as attached
for emergency bearer services.
3. 3GPP TS 44.060 specifies the system information messages which give the information about
whether the serving cell supports EGPRS.
4. 3GPP TS 25.331 specifies the system information blocks which give the information about whether
the serving cell supports HSDPA or HSUPA.
5. 3GPP TS 44.018 [156] specifies the EC-SCH INFORMATION message which, if present, indicates
that the serving cell supports EC-GSM-IoT.
6. 3GPP TS 36.331 [86] specifies the system information blocks which give the information about
whether the serving cell supports NB-IoT, which corresponds to E-UTRAN (NB-S1 mode).
Example
AT+CEREG=1 //Enable network registration URC.
OK
AT+CEREG?
+CEREG:1,1
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.
<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. (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
1 1 1 Value indicates that the timer is deactivated
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 25 / 130
OK
AT+CEREG=?
+CEREG:(0,1,2,3,4,5)
OK
3.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 set command controls the presentation of an unsolicited result code. If <n>=1, +CSCON:<mode> is
sent from the UE when the connection mode of the UE is changed. If <n>=2 and there is a state within the
current mode, +CSCON:<mode>[,<state>] is sent from the UE. If <n>=3,
+CSCON:<mode>[,<state>[,<access>]] is sent from the UE. If setting fails, an MT error, +CME
ERROR:<err> is returned. Please refer to Chapter 7 for possible <err> values.
When the UE is in UTRAN or E-UTRAN, the mode of the UE refers to idle when no PS signalling
connection and to connected mode when a PS signalling connection between UE and network is setup.
When the UE is in GERAN, the mode refers to idle when the UE is in either the idle state or the standby
state and to connected mode when the UE is in ready state.
The <state> value indicates the state of the UE when the UE is in GERAN, UTRAN connected mode or
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. State information <state> is returned only
when <n>=2. Radio access type information <access> is returned only when <n>=3.
The test command returns supported values as a compound value.
AT+CSCON Signalling Connection Status
Set Command
AT+CSCON=<n>
Response
OK
If there is any error, response:
ERROR
Or
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 26 / 130
Parameter
+CME ERROR:<err>
Read Command
AT+CSCON?
Response
+CSCON:<n>,<mode>[,<state>]
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Test Command
AT+CSCON=?
Response
+CSCON:(list of supported <n>s)
OK
Maximum Response Time
300ms
<n> Integer type; enable/disable unsolicited result code.
0 Disable unsolicited result code
1 Enable unsolicited result code: “+CSCON:<mode>”
2 Enable unsolicited result code: “+CSCON:<mode>[,<state>]”
3 Enable unsolicited result code: “+CSCON:<mode>[,<state>[,<access>]]”
<mode> Integer type; indicates the signalling connection status
0 Idle
1 Connected
2-255 <reserved for future use>
<state> Integer type; indicates the CS or PS state while in GERAN and the RRC state information if
the MT is in connected mode while in UTRAN and E-UTRAN
0 UTRAN URA_PCH state
1 UTRAN Cell_PCH state
2 UTRAN Cell_FACH state
3 UTRAN Cell_DCH state
4 GERAN CS connected state
5 GERAN PS connected state
6 GERAN CS and PS connected state
7 E-UTRAN connected state
<access> Integer type; indicates the current radio access type
0 Indicates usage of radio access type of GERAN
1 Indicates usage of radio access type of UTRAN TDD
2 Indicates usage of radio access type of UTRAN FDD
3 Indicates usage of radio access type of E-UTRAN TDD
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 27 / 130
1. Only <n>=0 and <n>=1 are supported.
2. Unsolicited notifications are not currently supported. This functionality will be added in a future
release.
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
3.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 7 for possible <err> values. Please note that this
command only returns the AT commands that are available for the user.
4 Indicates usage of radio access type of E-UTRAN FDD
AT+CLAC List Available Commands
Execution Command
AT+CLAC
Response
<AT Command>
[...]
OK
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 28 / 130
Parameter
Example
AT+CLAC
AT+COPS
AT+CGATT
...
AT+NQMGR
AT+NQMGS
OK
3.10. AT+CSQ Get Signal Strength Indicator
The UE will provide a current signal strength indicator of 0 to 255 where larger is generally better. This
information is based on a single measurement so can be expected to change greatly over short periods of
time and may never use all (or even the majority) of the entire possible range or codes.
The execution command returns received signal strength indication <rssi> and channel bit error rate
<ber> from the MT. Please refer to Chapter 7 for possible <err> values.
The test command returns values supported as compound values.
If there is any error, response:
ERROR
Or
+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>
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 29 / 130
Parameter
<ber> is currently not supported, and will always be 99.
Example
AT+CSQ
+CSQ:31,99
OK
AT+CSQ Get Signal Strength Indicator
Execution Command
AT+CSQ
Response
+CSQ:<rssi>,<ber>
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
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 AT Commands Manual
BC95_AT_Commands_Manual 30 / 130
3.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 7 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 Command
AT+CGPADDR[=<cid>[,<cid>[,...]]]
Response
[+CGPADDR:<cid>[,<PDP_addr_1>[,<PDP_addr_2>]]]
[...]]
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
IPv4: The string is given as dot-separated numeric (0-255)
parameter of the form:
a1.a2.a3.a4
IPv6: The string is given as colon-separated hexadecimal
parameter.
Test Command
AT+CGPADDR=?
Response
+CGPADDR:(list of defined <cid>s)
OK
Maximum Response Time
300ms
<cid> Integer type; specifies a particular PDP context definition (see the AT+CGDCONT and
AT+CGDSCONT commands).
<PDP_addr_1> and <PDP_addr_2> String type; identify the MT in the address space applicable to
the PDP. The address may be static or dynamic. For a static
address, it will be the one set by the AT+CGDCONT and
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 31 / 130
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. Only IPv4 is supported.
3. <cid> values between 0 & 10 are supported.
4. 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
3.12. AT+COPS PLMN Selection
The set command forces an attempt to select and register the GSM/UMTS/EPS network operator using
the USIM card installed in the currently selected card slot. <mode> is used to select whether the selection
AT+CGDSCONT commands 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. Both <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.
The string is given as dot-separated numeric (0-255) parameter
of the form: a1.a2.a3.a4 for IPv4 and
a1.a2.a3.a4.a5.a6.a7.a8.a9.a10.a11.a12.a13.a14.a15.a16 for
IPv6.
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 AT Commands Manual
BC95_AT_Commands_Manual 32 / 130
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 (except <mode>=4). 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 further read commands (AT+COPS?). <mode>=2 forces an attempt to
deregister from the network. The 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 7 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
order: home network, networks referenced in USIM or active application in the UICC (GSM or USIM) in
the following order: HPLMN selector, user controlled PLMN selector, operator controlled PLMN selector
and PLMN selector (in the USIM or GSM application), and other networks.
It is recommended (although optional) that after the operator list UE returns lists of supported <mode>s
and <format>s. These lists shall be delimited from the operator list by two commas.
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 phone may still re-select a cell in
another access technology.
AT+COPS PLMN Selection
Set 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
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 33 / 130
Parameter
Or
+CME ERROR:<err>
Test Command
AT+COPS=?
Response
+COPS:[list of supported (<stat>,long alphanumeric <ope
r>,short alphanumeric <oper>,numeric <oper>[,<AcT>])s]
[,,(list of supported <mode>s),(list of supported <format>
s)]
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Maximum Response Time
300ms
<mode> 0 Automatic (<oper> field is ignored)
1 Manual (<oper> field shall be present, and <AcT> is optional)
2 Deregister from network
3 Set only <format> (for read command AT+COPS?), do not attempt to
register/deregister (<oper> and <AcT> fields are ignored); this value is not
applicable in read command response
4 Manual/automatic (<oper> field shall be present); if manual selection fails,
automatic mode (<mode>=0) is entered
<format> 0 Long format alphanumeric <oper>
1 Short format alphanumeric <oper>
2 Numeric <oper>
<oper> String type; <format> indicates if the format is alphanumeric or numeric; long alphanumeric
format can be up to 16 characters long and short format up to 8 characters; numeric format
is the GSM 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.
<stat> 0 Unknown
1 Available
2 Current
3 Forbidden
<AcT> Integer type; access technology selected
0 GSM
1 GSM compact
2 UTRAN
3 GSM w/EGPRS
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 34 / 130
1. 3GPP TS 44.060 specifies the system information messages which give the information about
whether the serving cell supports EGPRS.
2. 3GPP TS 25.331 specifies the system information blocks which give the information about whether
the serving cell supports HSDPA or HSUPA.
3. 3GPP TS 44.018 [156] specifies the EC-SCH INFORMATION message which, if present, indicates
that the serving cell supports EC-GSM-IoT.
4. 3GPP TS 36.331 [86] specifies the system information blocks which give the information about
whether the serving cell supports NB-IoT, which corresponds to E-UTRAN (NB-S1 mode).
5. <Act>, if provided, must be set to 7.
6. Only <format>=2 is supported.
7. Only <mode>=0, <mode>=1 and <mode>=2 are supported.
8. When <mode>=1, the PLMN setting will not be retained after the UE is rebooted.
9. <mode>=1 is only for development use and <mode>=0 should be used in production when
AUTOCONNECT is enabled.
10. The test command currently returns the configured values rather than performs a PLMN search.
11. <ACT> will not be returned for AT+COPS?.
12. <oper> field could not be present when <mode>=0.
Example
AT+COPS=0
OK
AT+COPS?
+COPS:0,2,"46000"
OK
AT+COPS=?
+COPS:(2,,,"46000"),,(0-2),(2)
OK
4 UTRAN w/HSDPA
5 UTRAN w/HSUPA
6 UTRAN w/HSDPA and HSUPA
7 E-UTRAN
8 EC-GSM-IoT (A/Gb mode) (see NOTES 3)
9 E-UTRAN (NB-S1 mode) (see NOTES 4)
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 35 / 130
3.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 the requested state cannot
be achieved, an ERROR or +CME ERROR or “+CME ERROR:<err>” response is returned. Please
refer to Chapter 7 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.
Parameter
AT+CGATT PS Attach or Detach
Execution/Set 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
Test Command
AT+CGATT=?
Response
+CGATT:(list of supported <state>s)
OK
Maximum Response Time
1s, determined by network.
<state> Integer type; indicates the state of PDP context activation.
0 Detached
1 Attached
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 36 / 130
1. If the initial PDP context is supported, the context with <cid>=0 is automatically defined at startup.
2. This command has the characteristics of both the V.250 action and parameter commands. Hence it
has the read form in addition to the execution/set and test forms.
3. When <state>=1, AT+COPS=0 is automatically selected.
4. If AT+CGATT is in progress, further execution of this command before the finishing of attach or
detach procedure will return an error.
Example
AT+CGATT?
+CGATT:0
OK
AT+CGATT=1
OK
AT+CGATT=?
+CGATT:(0,1)
OK
3.14. AT+CGACT Activate or Deactivate a 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” “+CME ERROR:<err>” 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 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 Subclause 9.2 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.
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 37 / 130
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.
Parameter
1. If the initial PDP context is supported, the context with <cid>=0 is automatically defined at startup.
2. This command has the characteristics of both the V.250 action and parameter commands. Hence it
AT+CGACT Activate or Deactivate a PDP Context
Execution/Set Command
AT+CGACT=<state>[,<cid>[,<cid>[,...]
]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Read Command
AT+CGACT?
Response
+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
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.
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 38 / 130
has the read form in addition to the execution/set and test forms.
3. This command could not be executed during PLMN searching, attaching or detaching process.
Example
AT+CGACT=0,1
OK
AT+CGACT?
+CGACT:1,0
OK
AT+CGACT=?
+CGACT:(0,1)
OK
3.15. AT+CIMI Request International Mobile Subscriber Identity
The command returns International Mobile Subscriber Identity (string without double quotes).
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 (GSM or USIM) which is attached to MT.
Please refer to Chapter 7 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
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 39 / 130
Parameter
IMSI may not be displayed for a few seconds after power-on.
Example
AT+CIMI
460001357924680
OK
3.16. AT+CGDCONT Define a PDP Context
The set 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 7 for possible <err> values.
For EPS, the PDN connection and its associated EPS default bearer is identified herewith.
A special form of the set 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, please
refer to 3GPP TS 27.007 V13.5.0, subclause 10.1.0. As for all other contexts, 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 MT supports several PDP types,
the parameter value ranges for each <PDP_type> are returned on a separate line.
<IMSI> International Mobile Subscriber Identity (string without double quotes)
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 40 / 130
Parameter
AT+CGDCONT Define a PDP Context
Execution/Set Command
AT+CGDCONT=<cid>[,<PDP_type>[,<
APN>[,<PDP_addr>[,<d_comp>[,<h_c
omp>[,<IPv4AddrAlloc>[,<request_ty
pe>[,<P-CSCF_discovery>[,<IM_CN_
Signalling_Flag_Ind>[,<NSLPI>[,<sec
urePCO>[,<IPv4_MTU_discovery>]]]]]
]]]]]]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Read Command
AT+CGDCONT?
Response
[+CGDCONT:<cid>,<PDP_type>,<APN>,<PDP_addr>,<d_
comp>,<h_comp>[,<IPv4AddrAlloc>[,<request_type>[,<P
-CSCF_discovery>[,<IM_CN_Signalling_Flag_Ind>[,<NSL
PI>[,<securePCO>[,<IPv4_MTU_discovery>]]]]]]]]
[...]]
OK
Test Command
AT+CGDCONT=?
Response
+CGDCONT:(range of supported <cid>s),<PDP_type>,,,(list
of supported <d_comp>s),(list of supported <h_comp>s),(list
of supported <IPv4AddrAlloc>s),(list of supported
<request_type>s),(list of supported
<P-CSCF_discovery>s),(list of supported
<IM_CN_Signalling_Flag_Ind>s) ,(list of supported
<NSLPI>s),(list of supported <securePCO>s),(list of
supported <IPv4_MTU_discovery>s)
[...]]
OK
Maximum Response Time
300ms
<cid> Integer type; specifies a particular PDP context definition. The parameter is local to the
TE-MT 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 and AT+CGDSCONT commands.
<PDP_type> String type; specifies the type of packet data protocol.
X.25 ITU-T/CCITT X.25 layer 3 (Obsolete)
IP Internet Protocol (IETF STD 5 [103])
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 41 / 130
IPv6 Internet Protocol, version 6
IPv4v6 Virtual <PDP_type> introduced to handle dual IP stack UE capability
OSPIH Internet Hosted Octect Stream Protocol (Obsolete)
PPP Point to Point Protocol (IETF STD 51 [104])
Only IP, IPv6 and IPv4v6 values are supported for EPS services.
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. The
APN is a string of up to 82 characters.
<PDP_addr> String type; identifies the MT in the address space applicable to the PDP. This parameter
can be left blank.
When AT+CGPIAF is supported, its settings can influence the format of this parameter
returned with the read form of AT+CGDCONT.
The value of this parameter is ignored with the set command. The parameter is included in
the set command for backwards compatibility reasons only.
<d_comp> Integer type; controls PDP data compression
0 Off
1 On (manufacturer preferred compression)
2 V.42bis
3 V.44bis
<h_comp> Integer type; controls PDP header compression
0 Off
1 On (manufacturer preferred compression)
2 RFC 1144 [105] (applicable for SNDCP only)
3 RFC 2507 [107]
4 RFC 3095 [108] (applicable for PDCP only)
<IPv4AddrAlloc> Integer type; controls how the MT/TA requests to get the IPv4 address information
0 IPv4 address allocation through NAS signalling
1 IPv4 address allocated through DHCP
<request_type> Integer type; indicates the type of PDP context activation request for the PDP
context. Please refer to 3GPP TS 24.301 (subclause 6.5.1.2) and 3GPP TS
24.008 (subclause 10.5.6.17). If the initial PDP context is supported it is not
allowed to assign <cid>=0 for emergency bearer services. According to 3GPP TS
24.008 (subclause 4.2.4.2.2 and subclause 4.2.5.1.4) and 3GPP TS 24.301
(subclause 5.2.2.3.3 and subclause 5.2.3.2.2), a separate PDP context must be
established for emergency bearer services.
If the PDP context for emergency bearer services is the only activated context,
only emergency calls are allowed, refer to 3GPP TS 23.401 subclause 4.3.12.9.
0 PDP context is for new PDP context establishment or for handover from
a non-3GPP access network (how the MT decides whether the PDP
context is for new PDP context establishment or for handover is
implementation specific).
1 PDP context is for emergency bearer services
2 PDP context is for new PDP context establishment
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 42 / 130
1. Only <PDP_type>=“IP” is supported. <PDP_type>=“IPv6” will be supported in a future release.
2. Support AT+CGDCONT=<cid>,<PDP_type>,<APN> only.
3. <cid> values of 0-10 are supported.
4. <cid>=0 is read only and is only defined when AUTOCONNECT is enabled.
5. Only <hcomp> and <dcomp> values of 0 are supported.
6. <cid> value of 7 cannot be set when BIP is enabled.
7. For more details about AT+CGDSCONT command, please refer to 3GPP TS 27.007 subclause
10.1.2.
3 PDP context is for handover from a non-3GPP access network
<P-CSCF_discovery>Integer type; influences how the MT/UE requests to get the P-CSCF address,
refer to 3GPP TS 24.229 [89] annex B and annex L.
0 Preference of P-CSCF address discovery not influenced by
AT+CGDCONT
1 Preference of P-CSCF address discovery through NAS signalling
2 Preference of P-CSCF address discovery through DHCP
<IM_CN_Signalling_Flag_Ind>Integer type; indicates to the network whether the PDP context is for IM
CN subsystem related signalling only or not.
0 UE indicates that the PDP context is not for IM CN
subsystem-related signalling only
1 UE indicates that the PDP context is for IM CN
subsystem-related signalling only
<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 MT.
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 MT utilizes the provided NSLPI information as
specified in 3GPP TS 24.301 [83] and 3GPP TS 24.008.
<securePCO> Integer type; specifies if security protected transmission of PCO is
requested or not (applicable for EPS only).
0 Security protected transmission of PCO is not requested
1 Security protected transmission of PCO is requested
<IPv4_MTU_discovery> Integer type; influences how the MT/UE requests to get the IPv4 MTU
size, refer to 3GPP TS 24.008 subclause 10.5.6.3.
0 Preference of IPv4 MTU size discovery not influenced by
AT+CGDCONT
1 Preference of IPv4 MTU size discovery through NAS
signalling
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 43 / 130
Example
AT+CGDCONT=?
+CGDCONT:(0-10),("IP","NONIP"),,,(0),(0),,,,,(0,1)
OK
AT+CGDCONT=1,"IP","HUAWEI.COM"
OK
AT+CGDCONT?
+CGDCONT:1,"IP","HUAWEI.COM",,0,0,,,,,0
OK
3.17. AT+CFUN Set Phone Functionality
The set 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. Level of functionality
between these may also be specified by manufacturers. When supported by manufacturers, UE resetting
with <rst> parameter may be utilized. Please refer to Chapter 7 for possible <err> values.
The read command returns the current setting of <fun>.
The test command returns values supported by the UE as compound values.
AT+CFUN Set Phone Functionality
Set 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
Test Command
AT+CFUN=?
Response
+CFUN:(list of supported <fun>s), (list of supported <rst>s)
OK
Maximum Response Time
6s
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 44 / 130
Parameter
1. Only <fun>=0 and <fun>=1 are supported.
2. <rst> is not supported and will be ignored.
3. The module will enter deep sleep mode 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
<fun> 0 Minimum functionality
1 Full functionality. Enable MT to transmit and receive RF circuits for all
supported radio access technologies. For MTs 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.
2 Disable MT to transmit RF circuits only
3 Disable MT to receive RF circuits only
4 Disable MT to transmit and receive RF circuits
5...127 Reserved for manufacturers as intermediate states between full and minimum
functionality
128 Full functionality with radio access support according to the setting of
AT+CSRA. Enables MT to transmit and receive RF circuits if it not already
enabled. This <fun> setting is applicable for MTs supporting AT+CSRA.
129 Prepare for shutdown. This setting has its prime use when some of the MT’s
resources (e.g. file system) are located on a tightly integrated TE (host). The
MT will execute pending actions resulting in "permanent" changes, e.g.
execute pending file system operations. The MT will also make an orderly
network detachment.
After this action and AT+CFUN has returned “OK”, the MT can be shut down
with <fun>=0, or by other means.
After setting <fun>=129, only <fun>=0 is valid. All other values will make
AT+CFUN return “ERROR”.
<rst> Integer type; MT resetting
0 Do not reset the MT before setting it to <fun> power level. This shall always
be defaulted when <rst> is not given.
1 Reset the MT before setting it to <fun> power level
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 45 / 130
OK
AT+CFUN?
+CFUN:1
OK
3.18. AT+CMEE Report Mobile Termination Error
The set 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 MT. When enabled, MT 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 TA functionality.
The read command returns the current setting of <n>.
The test command returns values supported as a compound value.
Please refer to Chapter 7 for possible <err> values.
Parameter
AT+CMEE Report Mobile Termination Error
Set Command
AT+CMEE=<n>
Response
OK
Read Command
AT+CMEE?
Response
+CMEE:<n>
OK
Test Command
AT+CMEE=?
Response
+CMEE:(list of supported <n>s)
OK
Maximum Response Time
300ms
<n> Integer type
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 7 for possible <err> values)
2 Enable +CME ERROR:<err> result code and use verbose <err> values
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 46 / 130
Only <n>=0 & <n>=1 are supported.
3.19. AT+CCLK Return Current Date & 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 7 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. If the RTC has not been set by the network, no value is returned.
AT+CCLK Return Current Date & 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; format is "yy/MM/dd,hh:mm:szz", 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). E.g. 6th of May 1994, 22:10:00 GMT+2 hours equals
"94/05/06,22:10:00+08"
NOTES
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 47 / 130
Example
AT+CCLK?
OK
AT+CCLK=?
OK
3.20. AT+CPSMS Power Saving Mode Setting
The set command controls the setting of the UEs 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+CEREG 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 7 for possible <err> values.
AT+CPSMS Power Saving Mode Setting
Execution/Set Command
AT+CPSMS=<mode>[,<Requested_P
eriodic-RAU>[,<Requested_GPRS-RE
ADY-timer>[,<Requested_Periodic-TA
U>[,<Requested_Active-Time>]]]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Read Command
AT+CPSMS?
Response
+CPSMS:<mode>,[<Requested_Periodic-RAU>],[<Reque
sted_GPRS-READY-timer>],[<Requested_Periodic-TAU>]
,[<Requested_Active-Time>]
OK
Test Command
AT+CPSMS=?
Response
+CPSMS:(list of supported <mode>s),(list of supported <
Requested_Periodic-RAU>s),(list of supported <Request
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 48 / 130
Parameter
ed_GPRS-READY-timer>s),(list of supported <Requested
_Periodic-TAU>s),(list of supported <Requested_Active-T
ime>s)
OK
Maximum Response Time
300ms
<mode> Integer type; indicates to 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
manufacturer specific default values.
<Requested_Periodic-RAU> String type; one byte in an 8-bit format. Requested extended
periodic RAU value (T3312) to be allocated to the UE in
GERAN/UTRAN. (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
1 1 1 Value indicates that the timer is deactivated
<Requested_GPRS-READY-timer> String type; one byte in an 8-bit format. Requested GPRS
READY timer value (T3314) to be allocated to the UE in
GERAN/UTRAN. (e.g. "01000011" equals 3 decihours or 18
minutes).
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 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 AT Commands Manual
BC95_AT_Commands_Manual 49 / 130
1. <Requested_Periodic-RAU> and <Requested_GPRS-READY-timer> are not supported by NB-IoT.
No value will be output, and any input will be ignored.
2. The read command AT+CPSMS? could only get mode value 0 and 1.
3. The actual effect of the setting is decided by both of EPC configure and module configure.
Example
AT+CPSMS=1,,,01000011,01000011
OK
AT+CPSMS?
+CPSMS:1,,,01000011,01000011
OK
AT+CPSMS=?
<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. (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
1 1 1 Value indicates that the timer is deactivated
<Requested_Active-Time> String type; one byte in an 8-bit format. Requested Active Time
value (T3324) to be allocated to the UE.
(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
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 50 / 130
+CPSMS:(0,1,2),,,(00000000-11111111),(00000000-11111111)
OK
3.21. AT+CEDRXS eDRX Setting
The set command controls the setting of the UEs 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 set 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 or, if available, set to the manufacturer
specific default values.
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 7 for possible <err> values.
AT+CEDRXS eDRX Setting
Set 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
Test Command
AT+CEDRXS=?
Response
+CEDRXS:(list of supported <mode>s),(list of supported
<AcT-type>s),(list of supported <Requested_eDRX_valu
e>s)
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 51 / 130
Parameter
OK
Maximum Response Time
300ms
<mode> Integer type; indicates to 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
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 or, if available,
reset to the manufacturer specific default values.
<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.
1 EC-GSM-IoT (A/Gb mode)
2 GSM (A/Gb mode)
3 UTRAN (Iu mode)
4 E-UTRAN (WB-S1 mode)
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
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 52 / 130
1. <AcT-type> value 5 is supported.
2. When set <mode> to 0 and <Requested_eDRX_value> is omitted, it will set
<Requested_eDRX_value> to invalid value like 0.
3. The actual effect of the setting is decided by both of EPC configuration and module configuration.
Example
AT+CEDRXS=1,5,"0101"
OK
AT+CEDRXS?
+CEDRXS:5,"0101"
OK
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
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
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 53 / 130
AT+CEDRXS=?
+CEDRXS:(0,1,2,3),(5),("0000"-"1111")
OK
AT+CEDRXS=0,5
OK
3.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 MT manufacturer, which should offer the user of the UE an extended report of the
reason for the following errors:
The failure in the last unsuccessful call setup (originating or answering) or in call modification;
The failure in the last call release;
The failure in the last unsuccessful GPRS attach or unsuccessful PDP context activation;
The failure in the last GPRS detach or PDP context deactivation.
Typically, the text will consist of a single line containing the cause information given by GSM/UMTS
network in textual format.
Parameter
Example
AT+CEER
+CEER:EMM_CAUSE_EPS_AND_NON_EPS_SERVICES_NOT_ALLOWED
AT+CEER Extended Error Report
Execution Command
AT+CEER
Response
+CEER <report>
OK
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. Text shall not contain the sequence
0<CR> or OK<CR>.
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 54 / 130
OK
AT+CEER=?
OK
3.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 7 for possible <err> values.
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
Test Command
AT+CEDRXRDP=?
Response
OK
Maximum Response Time
300ms
<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
1 EC-GSM-IoT (A/Gb mode)
2 GSM (A/Gb mode)
3 UTRAN (Iu mode)
4 E-UTRAN (WB-S1 mode)
5 E-UTRAN (NB-S1 mode)
<Requested_eDRX_value> String type; half a byte in a 4-bit format.
bit
4 3 2 1 E-UTRAN eDRX cycle length duration
0 0 1 0 20.48 seconds
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 55 / 130
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.
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.
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 AT Commands Manual
BC95_AT_Commands_Manual 56 / 130
Example
AT+CEDRXRDP
+CEDRXRDP:5,"0010","1110","0101"
OK
AT+CEDRXRDP=?
OK
<AcT-type> value 5 is supported.
3.24. AT+CTZR Time Zone Reporting
The set command controls the time zone change event reporting. If reporting is enabled, the UE returns
an unsolicited result code +CTZV:<tz>, +CTZE:<tz>,<dst>,[<time>], or +CTZEU:<tz>,<dst>,[<utime>]
whenever the time zone is changed. The MT 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.
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 7 for possible <err> values.
AT+CTZR Time Zone Reporting
Execution/Set 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
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 57 / 130
Parameter
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Test Command
AT+CTZR=?
Response
+CZTR:(list of supported <reporting>s)
OK
Maximum Response Time
300ms
<reporting> Integer type; indicates 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
+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 digits 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 MT 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 AT Commands Manual
BC95_AT_Commands_Manual 58 / 130
The time zone reporting is not affected by the automatic time zone setting command after executing
AT+CTZU.
Example
AT+CTZR=0
OK
AT+CTZR?
+CTZR:0
OK
AT+CTZR=?
+CTZR:(0,1,2,3)
OK
3.25. AT+CIPCA Initial PDP Context Activation
The set command controls whether an initial PDP context (see subclause 10.1.0) shall be established
automatically following an attach procedure when the UE is attached to GERAN or UTRAN RATs and
whether the UE is attached to E-UTRAN with or without a PDN connection.
For <n>≠0, deactivating the last (active) PDP context can lead to a (re)establishment of the initial PDP
context. Changing setting of <n> from 0 to 1 will cause an immediate attempt to (re)establish the initial
PDP context if no PDP context is active. Changing <n> from 0 to 2 will, if not roaming, cause an
immediate attempt to (re)establish the initial PDP context if no other PDP context is active. The value of
<n>=3 applies to E-UTRAN RATs and does not change the setting of PDP context activation in GERAN or
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 7 for possible <err> values.
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 59 / 130
Parameter
1. For this command, the term roaming corresponds to being registered on a VPLMN which is not
equivalent to HPLMN or EHPLMN.
2. Only <n>=3 is supported.
3. If <AttachWithoutPDN> is omitted, default value 0 will be used.
AT+CIPCA Initial PDP Context Activation
Set 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 <Attac
hWithoutPDN>s)
OK
Maximum Response Time
300ms
<n> Integer type; activation of PDP context upon attaching
0 Do not activate
1 Always activate
2 Activate when not roaming
3 No change in current setting
<AttachWithoutPDN> Integer type; EPS attach with or without PDN connection.
0 EPS attach with PDN connection
1 EPS attach without PDN connection
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 60 / 130
Example
AT+CIPCA=3,1
OK
AT+CIPCA?
+CIPCA:3,1
OK
AT+CIPCA=?
+CIPCA:(3),(0,1)
OK
3.26. AT+CGAPNRC APN Rate Control
The 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 7 for possible <err> values.
AT+CGAPNRC APN Rate Control
Execution Command
AT+CGAPNRC[=<cid>]
Response
[+CGAPNRC:<cid>[,<Additional_exception_reports>[,<U
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:
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 61 / 130
Parameter
Example
AT+CGAPNRC
+CGAPNRC=1,0,2,2
+CGAPNRC=2,1,2,3
OK
AT+CGAPNRC=?
+CGAPNRC:(1,2)
OK
ERROR
Or
+CME ERROR:<err>
Maximum Response Time
300ms
<cid>
Integer type; specifies a particular PDP context definition (see the
AT+CGDCONT and AT+CGDSCONT commands).
<Additional_exception_reports>
Integer type; indicates whether or not additional exception reports
are allowed to be sent when the maximum uplink rate is reached.
This refers to bit 4 of octet 1 of the APN rate control parameters IE
as specified in 3GPP TS 24.008 [8] subclause 10.5.6.3.2.
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. This refers to bits 1 to 3 of octet 1 of the APN rate
control parameters IE as specified in 3GPP TS 24.008 [8]
subclause 10.5.6.3.2.
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. This refers to octet 2 to 4
of the APN rate control parameters IE as specified in 3GPP TS
24.008 [8] subclause 10.5.6.3.2.
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 62 / 130
3.27. AT+CGAUTH Define PDP Context Authentication Parameters
The set command allows the TE to specify authentication parameters for a PDP context identified through
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 these commands.
The read command returns the current settings for each defined context.
The test command returns values supported as compound values.
Please refer to Chapter 7 for possible <err> values.
AT+CGAUTH Define PDP Context Authentication Parameters
Set 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>]
[...]]
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
Or
+CME ERROR:<err>
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 63 / 130
Parameter
<userid> is needed when <auth_prot> is 1 or 2.
Example
AT+CGAUTH=1,2,"1234","1234"
OK
AT+CGAUTH?
+CGAUTH:1,1,"1234","1234"
+CGAUTH:2,1,"1234","1234"
OK
AT+CGAUTH=?
+CGAUTH:(0-10),(0,1,2),(0-60),(0-60)
OK
Maximum Response Time
300ms
<cid> Integer type; specifies a particular PDP context definition (refer to the
AT+CGDCONT command).
<auth_prot> Integer type; authentication protocol used for the PDP context.
0 None. Indicates 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. Maximum string length: 60
<password> String type. Password for access to the IP network. Maximum string length: 60
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 64 / 130
4 ETSI Commands (27.005)
4.1. AT+CSMS Select Messaging Service
The set command selects messaging service. It returns the types of messages supported by the ME:<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 (but is supported by the TA), 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 TA.
Please refer to Chapter 7 for possible <err> values.
AT+CSMS Select Messaging Service
Execution/Set 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
Test Command
AT+CSMS=?
Response
+CSMS:(list of supported <service>s)
OK
Maximum Response Time
300ms
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 65 / 130
Parameter
MT will report to the user if received SMS messages in PDU mode:
+CMT: [<alpha>],<length><CR><LF><pdu>.
Example
AT+CSMS=1
+CSMS:1,1,0
OK
AT+CSMS?
+CSMS:1,1,1,0
OK
AT+CSMS=?
+CSMS:(0,1)
OK
<service> Integer type; messaging service
0 3GPP TS 23.040 [3] and 3GPP TS 23.041 [4]
1 3GPP TS 23.040 [3] and 3GPP TS 23.041 [4] (the requirement of <service>
setting 1 is mentioned under corresponding command descriptions)
2...127 Reserved
128... Manufacturer specific
<mt> Integer type; mobile terminated messages
0 Mobile terminated messages not supported
1 Mobile terminated messages supported
<mo> Integer type; mobile originated messages
0 Mobile originated messages not supported
1 Nobile originated messages supported
<bm> Integer type; broadcast messages
0 Broadcast messages not supported
1 Broadcast messages supported
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 66 / 130
4.2. AT+CNMA New Message Acknowledgement to ME/TA
The execution command confirms reception of a new message (SMS-DELIVER or
SMS-STATUS-REPORT) which is routed directly to the TE. 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. TA shall not
send another +CMT or +CDS result code to TE before previous one is acknowledged.
If ME does not get acknowledgement within required time (network timeout), UE should respond as
specified in 3GPP TS 24.011 [6] to the network. UE or TA shall automatically disable routing to TE by
setting both <mt> and <ds> values of AT+CNMI to zero.
If 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 TA (possible when AT+CNMI parameter <mode> equals 0 or 2) 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 AT+CNMA
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 (AT+CNMA not received). Refer to command AT+CNMI
for more details about how to use <mode> parameter reliably.
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 7 for possible <err> values.
AT+CNMA New Message Acknowledgement to ME/TA
Execution/Set Command
AT+CNMA=<n>[,<length>[<CR>PDU
is given<ctrl-Z/ESC>]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Test Command
AT+CNMA=?
Response
+CNMA:(list of supported<n>s)
OK
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 67 / 130
Parameter
1. Only <n>=1 and <n>=2 are supported.
2. AT+CNMI is not supported currently.
Example
AT+CNMA=1
OK
AT+CNMA=?
+CNMA:(0-2)
OK
4.3. AT+CSCA Service Centre Address
The set 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 7 for possible <err> values.
Maximum Response Time
300ms
<n> Integer type
0 Command operates similarly as defined for the text mode (UE does not support text
mode for SMS currently)
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). The range is 0-232.
AT+CSCA Service Centre Address
Execution/Set Command
AT+CSCA=<sca>[,<tosca>]
Response
OK
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 68 / 130
Parameter
Example
AT+CSCA=358501234567,145
OK
AT+CSCA?
+CSCA:"358501234567",145
OK
AT+CSCA=?
OK
4.4. AT+CMGS Send SMS Messages
The execution command sends messages 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.
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Read Command
AT+CSCA?
Response
+CSCA:<sca>[,<tosca>]
OK
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 value is 145, otherwise default value is 129).
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 69 / 130
<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 TA 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 TA 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 7 for possible <err> values.
Parameter
AT+CMGS Send SMS Messages
Execution/Set 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>
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; 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.
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 70 / 130
1. <ackpdu> is not returned currently.
2. MT will report to the user if received SMS messages in PDU mode:
+CMT: [<alpha>],<length><CR><LF><pdu>.
4.5. AT+CMGC Send SMS Command
The execution command sends a command message from a 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 characters long hexadecimal numbers
which ME/TA 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 7 for possible <err> values.
Parameter
AT+CMGC Send SMS Command
Execution/Set Command
AT+CMGC=<length><CR>PDU is
given<ctrl-Z/ESC>
Response
+CMGC:<mr>[,<ackpdu>]]
OK
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
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 71 / 130
1. <ackpdu> is not returned currently.
2. MT will report to the user if received SMS messages in PDU mode:
“+CMT: [<alpha>],<length><CR><LF><pdu>”.
4.6. AT+CSODCP* Send Originating Data via Control Plane
Send a non-IP message.
The set 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 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 MT,
and returns supported <RAI>s and supported <type_of_user_data>s as a compound value.
Please refer to Chapter 7 for possible <err> values.
length). The range is 8-220.
<ackpdu> 3GPP TS 23.040 [3] RP-User-Data element of RP-ACK PDU; 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+CSODCP Send Originating Data via the Control Plane
Execution/Set Command
AT+CSODCP=<cid>,<cpdata_length>,
<cpdata>[,<RAI>[,<type_of_user_da
ta>]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Test Command
AT+CSODCP=?
Response
+CSODCP:(rane of supported <cid>s),(maximum number of
bytes of the <cpdata_length>),(list of supported <RAI>s),(list
of supported <type_of_user_data>s)
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 72 / 130
Parameter
1. "*" means under development.
2. There is a maximum data length of 512 bytes.
3. Only one message will be buffered at any one time.
Example
AT+CSODCP=?
+CSODCP:(0-10),(512),(0,1,2),(0,1)
OK
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 and AT+CGDSCONT
commands).
<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 (refer to 3GPP TS
24.301 [83] subclause 9.9.4.24). 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. The coding format of
the user data container and the maximum length of <cpdata> are
implementation specific.
<RAI>
Integer type; indicates the value of the release assistance indication, refer to
3GPP TS 24.301 [83] subclause 9.9.4.25.
0 No information available
1 The MT expects that exchange of data will be completed with the
transmission of the ESM DATA TRANSPORT message.
2 The MT 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
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 73 / 130
OK
4.7. AT+CRTDCP* Report Terminating Data via Control Plane
Receive a message from the CDP server.
The set 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 7 for possible <err> values.
Parameter
AT+CRTDCP Report Terminating Data via Control Plane
Execution/Set 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
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
Maximum Response Time
300ms
<reporting> Integer type; controls reporting of mobile terminated control plane data events
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 74 / 130
1. "*" means under development.
2. There is a maximum data length of 512 bytes.
3. Only one message will be buffered at any one time.
Example
AT+CRTDCP=1
OK
AT+CRTDCP?
+CRTDCP:1
OK
AT+CRTDCP=?
+CRTDCP:(0-1),(0-10),(512)
OK
+CRTDCP:0,2,"ab" //URC
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 commands (see AT+CGDCONT and AT+CGDSCONT commands)
<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 (refer to 3GPP TS
24.301 [83] slause 9.9.4.24). 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. The coding format of the user data
container and the maximum length of <cpdata> are implementation specific.
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 75 / 130
5 General Commands
5.1. AT+NRB Reboot the Module
The command reboots the module. There is a short delay after issuing this command before the terminal
reboots. No further AT commands will be processed. Please refer to Chapter 7 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
5.2. AT+NUESTATS Query UE Statistics
The command fetches the most recent operational statistics. Please refer to Chapter 7 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 Module
Execution Command
AT+NRB
Response
REBOOTING
Maximum Response Time
300ms
AT+NUESTATS Query UE Statistics
Set Command
AT+NUESTATS=RADIO
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 AT Commands Manual
BC95_AT_Commands_Manual 76 / 130
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>
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
AT+NUESTATS=CELL
NUESTATS:CELL,<earfcn>,<physical cell
id>,<primarycell>,<rsrp>,<rsrq>,<rssi>,<snr>
[...]
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
AT+NUESTATS=THP
NUESTATS:THP,<throughput_type>,<throughput>
[...]
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
AT+NUESTATS=APPSMEM
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>
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 77 / 130
Parameter
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
AT+NUESTATS=<type>
NUESTATS:<type>,<name/value>,<value>[,<value[,<valu
e>[...]]]
[...]
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Test Command
AT+NUESTATS=?
Response
NUESTATS:[<type>,…]
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
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 78 / 130
The variant of NUESTATS without an argument prints out the RADIO arguments without the command
<total RX time since last reboot in millisecond> Total Rx time since last reboot in millisecond
<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
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
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 79 / 130
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
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
NUESTATS:BLER,Total TX bytes,1080
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 80 / 130
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
5.3. AT+NEARFCN Specify Search Frequencies
The set command provides a mechanism to lock to a specific E-UTRA 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 7 for possible <err> values.
Parameter
AT+NEARFCN Specify Search Frequencies
Set Command
AT+NEARFCN=<search_mode>,<earf
cn>[,<pci>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Execution 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> A number in the range 1-65535 representing the EARFCN to search. An <earfcn>
value of 0 will remove the EARFCN restriction and any associated physical cell ID
lock.
<pci> String type; E-UTRAN physical cell ID in hexadecimal format.
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 81 / 130
Example
AT+NEARFCN=0,10,AB
OK
5.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 7 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
Valid range 0 -1F7.
AT+NSOCR Create a Socket
Set Command
AT+NSOCR=<type>,<protocol>,<liste
n port>[,<receive control>]
Response
<socket>
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Maximum Response Time
300ms
<type> Socket type; supported value is DGRAM
<protocol> Standard internet protocol definition. For example, UDP is 17
<listen port> A number in the range 0-65535. This is the local port that will be included in sent
messages and on which messages will be received.
<socket> This is a reference to the created socket. It is an integer greater than or equal to 0.
<receive control> Set to 1 if incoming messages should be received, 0 if incoming messages should
be ignored. Default is 1 (messages will be received).
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 82 / 130
1. A maximum of 7 sockets are supported, but other services may reduce this number.
2. Only UDP protocol 17 is supported.
3. <type>=RAW and <protocol>=6 are not supported
Example
AT+NSOCR=DGRAM,17,4587,1
0
OK
AT+NSOCR=DGRAM,17,1234,0
1
OK
5.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 7 for possible <err> values.
AT+NSOST SendTo Command (UDP Only)
Set Command
AT+NSOST=<socket>,<remote_addr>
,<remote_port>, <length>,<data>
Response
<socket>,<length>
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Maximum Response Time
300ms
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 83 / 130
Parameter
Example
AT+NSOST=0,192.158.5.1,1024,2,AB30
0,2
OK
1. Maximum length of received data is 512 bytes.
2. Only IPv4 is supported.
3. Only hex string format is supported for <data> currently.
4. IP addresses can be specified in decimal, octal or hexadecimal notation.
5.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 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 7 for possible <err> values.
<socket> Socket number returned by AT+NSOCR
<remote_addr> IPv4 A dot notation IP address
<remote_port> A number in the range 0-65535. This is the remote port on which messages will be
received
<length> Decimal length of data to be sent
<data> Data received in hex string format, or quoted string format
AT+NSOSTF SendTo Command with Flags (UDP Only)
Set Command
AT+NSOSTF=<socket>,<remote_addr
>,<remote_port>,<flag>,<length>,<dat
a>
Response
<socket>,<length>
OK
If there is any error, response:
ERROR
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 84 / 130
Parameter
1. There is a maximum data length of 512 bytes.
2. Only IPv4 is supported.
3. Only hex string format is supported for <data> currently.
4. IP addresses can be specified in decimal, octal or hexadecimal notation.
5. <flag>=0x100 could only work when USIM supports exception data.
Example
AT+NSOSTF=1,192.158.5.1,1024,0x100,2,AB30
1,2
OK
5.7. AT+NSORF Receive Command (UDP Only)
Read the maximally returned data from socket, and returned length is the actual number of characters
returned.
Or
+CME ERROR:<err>
Maximum Response Time
300ms
<socket> Socket number returned by AT+NSOCR
<remote_addr> IPv4 A dot notation IP address
<remote_port> A number in the range 0-65535. This is the remote port on which messages will be
received
<flag> 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> Decimal length of data to be sent
<data> Data received in hex string format, or quoted string format
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 85 / 130
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 7 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.
Parameter
1. Maximum length of received data is 512 bytes.
2. Only IPv4 is supported.
AT+NSORF Receive Command (UDP Only)
Set 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>
Maximum Response Time
300ms
<socket> Socket number returned by AT+NSOCR
<req_length> Maximum amount of data to be returned as a decimal byte length
<ip_addr> Address of system sending the message
IPv4 A dot notation IP address
<port> A number in the range 0-65535. This is the remote port that messages was 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
<data> Data received in hex string format
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 86 / 130
3. Remaining length is always 0. The remaining data is readable.
Example
AT+NSORF=0,10
0,192.168.5.1,1024,2,ABAB,0
OK
5.8. 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.
Parameter
Example
AT+NSOCL=0
OK
AT+NSOCL Close a Socket
Set Command
AT+NSOCL=<socket>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Maximum Response Time
300ms
<socket> Socket number returned by AT+NSOCR
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 87 / 130
5.9. +NSONMI Indicator of Arrived Socket Messages (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. Please refer to Chapter 7 for possible <err> values.
Parameter
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.
5.10. 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 7 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.
+NSONMI Indicator of Arrived Socket Messages (Response Only)
URC
+NSONMI:
Response
<socket>,<length>
<socket> Socket on which data is received. Decimal number returned by AT+NSOCR
<length> Number of bytes of data in the first message
AT+NPING Test IP Network Connectivity to a Remote Host
Set Command
AT+NPING=<remote_address>[,<p_si
ze>[,<timeout>]]
Response
OK
If there is any error, response:
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 88 / 130
Parameter
IP addresses can be specified in decimal, octal or hexadecimal notation.
Example
AT+NPING=180.101.147.115
OK
+NPING:180.101.147.115,123,638
5.11. AT+NBAND Set Supported Bands
The command sets the bands to be used. Please refer to Chapter 7 for possible <err> values.
ERROR
Or
+CME ERROR:<err>
If a response is received from the remote host:
+NPING:<remote_address>,<ttl>,<rtt>
If there is no response from remote host:
+NPINGERR:<err>
Maximum Response Time
300ms
<remote_address> Address of system sending the message
IPv4 A dot notation IP address
<p_size> Size of echo packet payload. Range is 8-1460, and default value is 8. Unit:
byte.
<timeout> Maximum time to wait for an echo reply response. Range is 10-60000, and
default value is 10000. Unit: ms.
<ttl> TTL received in the response packet
<rtt> Elapsed time from packet sent to response received. Unit: msec.
<err> 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
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 89 / 130
Parameter
AT+NBAND=? returns the list of bands supported by the hardware.
AT+NBAND Set Supported Bands
Set Command
AT+NBAND=n[,n[,n[…]]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Read Command
AT+NBAND?
Response
+NBAND:n[,n[,n[…]]]
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Execution Command
AT+NBAND=?
Response
+NBAND:(n[,n[,n[…]]])
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Maximum Response Time
300ms
<n> Band in a decimal number
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 90 / 130
5.12. AT+NLOGLEVEL Set Debug Logging Level
The command sets the logging level. It can take one of the following values.
Parameter
1. Logging levels for application core and security core are not persistent.
2. Default logging level is NORMAL.
AT+NLOGLEVEL Set Debug Logging Level
Set 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
Execution Command
AT+NLOGLEVEL=?
Response
+NLOGLEVEL:(<core>,…),(<level>,<level>,…)
OK
Maximum Response Time
300ms
<core> PROTOCOL
APPLICATION
SECURITY
<level> Logging level required
VERBOSE
NORMAL
WARNING
ERROR
NONE
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 91 / 130
5.13. 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.
Parameter
Example
AT+NCONFIG?
+NCONFIG:AUTOCONNECT,TRUE
+NCONFIG:CR_0354_0338_SCRAMBLING,TRUE
AT+NCONFIG Configure UE Behaviour
Set 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>
[…]]
OK
Test Command
AT+NCONFIG=?
Response
+NCONFIG:(<function>,(<value1>,<value2>[,<value3>[,
]]))
[,…]]
OK
Maximum Response Time
300ms
<function> UE function to configure
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
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 92 / 130
+NCONFIG:CR_0859_SI_AVOID,TRUE
+NCONFIG:COMBINE_ATTACH,FALSE
+NCONFIG:CELL_RESELECTION,FALSE
+NCONFIG:ENABLE_BIP,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))
+NCONFIG:(CELL_RESELECTION,(FALSE,TRUE))
+NCONFIG:(ENABLE_BIP,(FALSE,TRUE))
OK
CR_ function is temporary and will be discarded when no longer required.
5.14. AT+NATSPEED Configure UART Port Baud Rate
The command is used to configure UART port baud rate. Please refer to Chapter 7 for possible <err>
values.
AT+NATSPEED Configure UART Port Baud Rate
Set Command
AT+NATSPEED=<baud_rate>[,<timeo
ut>[,<store>[,<sync_mode>[,<stopbit
s>]]]]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Read Command
AT+NATSPEED?
Response
+NATSPEED:<baud_rate>,<sync_mode>,<stopbits>
OK
Test Command
AT+NATSPEED=?
Response
+NATSPEED:(list of supported <baud rate>s),(list of
supported <timeout>s),(list of supported <store>s),(list of
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 93 / 130
Parameter
1. <baud_rate> value higher than the fastest speed supported by the low power UART will disable deep
sleep low power operation.
2. <sync_mode> does not support 3 when <baud rate> is 4800bps, and it may be removed in a future
release.
3. <sync_mode> is defaulted as 2 for B657SP2 version or later.
4. When <store>=1, UE will store new baud rate value to NV immediately after received AT+NRB
command.
Example
AT+NATSPEED=9600,3,1,2,1
OK
AT+NATSPEED?
+NATSPEED:9600,2,1
supported <sync_mode>s),(list of supported <stopbits>s)
OK
Maximum Response Time
300ms
<baud_rate> Integer type; indicates the baud rate of UART port that has been requested
<timeout> Integer type; indicates the time to wait for communication before switching back to
the original speed. Unit: second. Default value is 3 second. Maximum value is
30s. 0 means using default value.
<store> Integer type; indicates 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> 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
0 Sample normally
1 Sample later
2 Sample earlier
3 Sample even earlier
<stopbits> The LP UART stop bits
1 1 stop bit
2 2 stop bits
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 94 / 130
OK
AT+NATSPEED=?
+NATSPEED:(4800,9600,57600,115200),(0-30),(0,1),(0-3),(1,2)
OK
5.15. AT+NCCID 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 7 for possible <err> values.
Parameter
AT+NCCID Card Identification
Set 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
<ICCID> USIM card identification number
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 95 / 130
Example
AT+NCCID
+NCCID:44123456789012345678
OK
AT+NCCID?
+NCCID:44123456789012345678
OK
5.16. AT+NFWUPD Firmware Update via UART
This command enables firmware updating. It allows package downloading, package validation, package
name and version querying and firmware upgrading. Package needs to be downloaded first before
upgrading the firmware. After downloading is finished, it sends package validity command. If package is
legal, “OK” will be returned, otherwise return error and print reason. When validation is ongoing, it refuses
to execute other commands with error return. After validation is finished, it sends firmware upgrade
command. It refuses to execute firmware upgrade command without package validity.
Please refer to Chapter 7 for possible <err> values.
Parameter
AT+NFWUPD Firmware Update via UART
Set 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
Maximum Response Time
300ms
<cmd> Package process command
1 <sn>,<len>,<data>,<crc>. Download a package segment. Download a delta firmware
package. Package segments are continuous segments of the delta firmware
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 96 / 130
<cmd>=3 and <cmd>=4 are not supported currently.
5.17. AT+NPOWERCLASS Set the Mapping for Band and Power Class
This command sets the mapping for band and power class. The read command list all mapping of bands
and power classes.
Please refer to Chapter 7 for possible <err> values.
package. Segments can be of any length, but must be provided in order.
2 Validate package
3 Get package name
4 Get package version
5 Upgrade firmware
<sn> Sequence number. It starts with 0, and increments by one for each package segment
<len> Data length. Unit: byte.
<data> Hex string format
<crc> CRC of the package segment binary data. CRC is sent as a hex string, and it is an XOR8 of
each byte in the package segment
AT+NPOWERCLASS Set the Mapping for Band and Power Class
Set Command
AT+NPOWERCLASS=<band>,<power
class>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Read Command
AT+NPOWERCLASS?
Response
+NPOWERCLASS:<band>,<power class>
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)
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 97 / 130
Parameter
<power class> only supports 3 and 5 currently.
5.18. AT+NPSMR Power Saving Mode Status Report
The set 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.
Please refer to Chapter 7 for possible <err> values.
The read command returns +NPSMR:<n> when <n> is 0, and return +NPSMR:<n>,<mode> when <n> is
1.
The test command returns supported values as a compound value.
OK
Maximum Response Time
300ms
<band> Band as key to map
<power class> Power class value for band
AT+NPSMR Power Saving Mode Status Report
Set 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
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 98 / 130
Parameter
5.19. AT+NPTWEDRXS Paging Time Window Value and eDRX Setting
The set command controls the setting of the UEs 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 set 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 AT+NPTWEDRXS will be
removed or, if available, set to the manufacturer specific default values.
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 7 for possible <err> values.
+CME ERROR:<err>
Test Command
AT+NPSMR=?
Response
+NPSMR:(list of supported <n>s)
OK
Maximum Response Time
300ms
<n> 0 Disable unsolicited result code
1 Enable unsolicited result code +NPSMR:<mode> and enable querying PSM
mode.
<mode > Integer type; indicates the power mode of UE
0 Normal mode
1 Power saving mode
AT+NPTWEDRXS Paging Time Window Value and EDRX Setting
Set Command
AT+NPTWEDRXS=<mode>[,<Act-type
>[,<Requested_Paging_time_window
Response
OK
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 99 / 130
Parameter
>[,<Requested_eDRX_value>]]]
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),(list of supported
<Requested_Paging_time_window>s),(list of supported
<Requested_eDRX_value>s)
OK
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>.
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>[,<Reques
ted_eDRX_value>[,<NW_provided_eDRX_value>[,<Paging_time_window>]]
]]”
3 Disable the use of eDRX and discard all parameters for eDRX or, if available,
reset to the manufacturer specific default values.
<Act-type> Integer type; indicates the type of access technology. This AT command 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
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 100 / 130
the unsolicited result code.
1 EC-GSM-IoT (A/Gb mode)
2 GSM (A/Gb mode)
3 UTRAN (Iu mode)
4 E-UTRAN (WB-S1 mode)
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
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
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 101 / 130
1. <AcT-type> value 5 is supported.
2. When set <mode> to 0 and <Requested_Paging_time_window> or <Requested_eDRX_value> is
omitted, it will set omitted value to invalid value like 0x00.
5.20. AT+NPIN PIN Operation
The set command is used to verify, change, enable, disable or unblock a PIN. An unsolicited result will be
received when execution of the command is completed .
USIM PIN and 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
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
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
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 102 / 130
application selection of the UICC.
Please refer to Chapter 7 for possible <err> values.
Parameter
AT+NPIN PIN Operation
Set Command
AT+NPIN=<command>,<parameter1>[
,<parameter2>]
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
If PIN operation is successful, response:
+NPIN:<npin result>
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
<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 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 length is 8.
<npin result> String type. PIN configuration result.
“OK”
“ERROR PIN disabled”
“ERROR PIN blocked”
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 103 / 130
1. This command must be executed when the radio is active (AT+CFUN=1 will force the module to enter
into this state).
2. When PIN is enabled, executing AT+CFUN=1 will return string “ENTER PIN”.
Example
AT+NPIN=0,29102394
OK
+NPIN: OK
5.21. AT+NCSEARFCN Clear Stored EARFCN
This command is used to clear the stored E-UTRA Absolute Radio Frequency Channel Number
(EARFCN).
Please refer to Chapter 7 for possible <err> values.
“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.
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
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 104 / 130
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
NOTE
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 105 / 130
6 Huawei's IoT Platform Commands
This chapter describes the AT command related to the Huaweis IoT platform.
6.1. Description of Huawei's IoT Platform Commands
6.1.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 (Connected Device
Platform) server. It is used when there is a HiSilicon CDP or Huawei’s IoT platform acting as gateway to
network server applications. Please refer to Chapter 7 for possible <err> values.
AT+NCDP Configure and Query CDP Server Settings
Set 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>
Test 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 AT Commands Manual
BC95_AT_Commands_Manual 106 / 130
Parameter
1. Only IPv4 is supported.
2. The values assigned are persistent across reboots.
3. This command is available after the IMEI number has been set.
4. The command must be executed when the radio is inactive (AT+CFUN=0 will force the module to
enter into this state).
5. IP addresses can be specified in decimal, octal or hexadecimal notation.
6. The changes will take effect before successful network attachment.
7. The CDP server settings are suggested to be saved through AT+NRB command.
Example
AT+NCDP=192.168.5.1
OK
AT+NCDP?
+NCDP:192.168.5.1,5683
OK
6.1.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 7 for possible <err> values.
<ip_addr> IPv4 address, IP address is a dot-separated numeric (0-255) parameter of the form:
a1.a2.a3.a4
<port> 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
Set Command
AT+QSECSWT=<type>[,<renegotiatio
n time>]
Response
OK
If there is any error, response:
ERROR
Or
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 107 / 130
Parameter
1. When <type> is set to 2, the fixed renegotiation time is 1 month.
2. The <renegotiation time> can be configured only when <type> is set to 1, and it must be set to a
value less than the network's NAT change time.
3. The DTLS function may cause response delay of other AT commands in the negotiation process.
Example
AT+QSECSWT=0
OK
AT+QSECSWT=1,100
OK
AT+QSECSWT=2
OK
AT+QSECSWT?
+QSECSWT:0
OK
+CME ERROR:<err>
Read Command
AT+QSECSWT?
Response
+QSECSWT:<type>[,<renegotiation time>]
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Maximum Response Time
300ms
<type>
Indicates the encryption mode
0 No encryption
1 Encryption using standard DTLS
2 Encryption using DTLS+
<renegotiation time>
Standard DTLS session timeout renegotiation interval. Unit: minute. The
value range is 1~525600. Valid only for the standard DTLS.
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 108 / 130
6.1.3. AT+QSETPSK Set PSK ID and PSK
This command is used to configure PSK ID and PSK.
Please refer to Chapter 7 for possible <err> values.
Parameter
1. When <pskid> is set to 0, the IMEI number is used as the PSK ID.
2. This command must be executed when the radio is inactive (AT+CFUN=0 will force the module to
enter this state).
AT+QSETPSK Set PSK ID and PSK
Set Command
AT+QSETPSK=<pskid>,<psk>
Response
OK
If there is any error, response:
ERROR
Or
+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
300ms
<pskid> Indicates the PSK index. The fixed length is 15 decimal digits. The value must be the same
as the IMEI number of the module. In addition, this parameter must also be set to the
same value on the IoT platform.
<psk> Indicates the PSK. This parameter must be set to a 16-digit hexadecimal number. In
addition, this parameter must also be set to the same value on the IoT platform.
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 109 / 130
Example
AT+QSETPSK=867724030000225,E8E19CC16CE1F388E8E19CC16CE1F388
OK
AT+QSETPSK?
+QSETPSK: 867724030000225,***
OK
6.1.4. AT+NMGS Send Messages
The command is used to send messages from the terminal to the network via the CDP server. It will give
an <err> code and description as an intermediate message if the message cannot be sent.
Please refer to Chapter 7 for possible <err> values.
Parameter
1. There is a maximum data length of 512 bytes.
2. Only one message will be buffered at any one time.
Example
AT+NMGS=3,AA11BB
OK
AT+NMGS Send Messages
Set Command
AT+NMGS=<length>,<data>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Maximum Response Time
300ms
<length> Decimal length of a message
<data> Data to be transmitted in hex string format
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 110 / 130
6.1.5. AT+NMGR Get Messages
Receive a message from the CDP server.
The command returns the oldest buffered messages and deletes them 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
1. There is a maximum data length of 512 bytes.
2. Only one message will be buffered at any one time.
Example
AT+NMGR
5,48656C6C6F
OK
6.1.6. 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 terminal from the CDP server. Please refer to Chapter 7
AT+NMGR Get Messages
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 a message
<data> Data received in hex string format
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 111 / 130
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 to use the unsolicited informational response. The buffered messages can be
collected using AT+NMGR. The format of response is: “+NNMI”. The default setting is 0, which indicates
no indications are sent.
Parameter
Example
AT+NNMI=1
OK
AT+NNMI?
+NNMI:1
OK
AT+NNMI New Message Indications
Set 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
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 AT Commands Manual
BC95_AT_Commands_Manual 112 / 130
6.1.7. AT+NSMI Sent Message Indications
The command sets or gets indications that are sent when an upstream message is sent to the CDP
server.
If sent message indications are turned on, the unsolicited informational response: “+NSMI:<status>” (e.g.
“+NSMI:SENT”) will be issued when a new message is sent into NB-IoT stack. Please refer to Chapter 7
for possible <err> values.
The default setting is 0, which indicates no indications are sent.
Parameter
Example
AT+NSMI=1
OK
AT+NSMI?
+NSMI:1
OK
AT+NSMI Sent Message Indications
Set Command
AT+NSMI=<indications>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Read Command
AT+NSMI?
Response
+NSMI:<indications>
OK
Maximum Response Time
300ms
<indications> 0 No indications
1 Indications will be sent
<status> SENT
DISCARDED
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 113 / 130
6.1.8. AT+NQMGR Query Received Messages
The command queries the status of the downstream messages received from the CDP server. Please
refer to Chapter 7 for possible <err> values.
Parameter
Example
AT+NQMGR
BUFFERED=0,RECEIVED=34,DROPPED=2
OK
6.1.9. AT+NQMGS Query Sent Messages
The command queries the status of the upstream messages sent to the CDP server. Please refer to
Chapter 7 for possible <err> values.
AT+NQMGR Query Received Messages
Execution Command
AT+NQMGR
Response
BUFFERED=<buffered>,RECEIVED=<received>,DROPPE
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 terminal since terminal boot
<dropped> The number of messages dropped by the terminal since terminal boot
AT+NQMGS Query Sent Messages
Execution Command
AT+NQMGS
Response
PENDING=<pending>,SENT=<sent>,ERROR=<error>
OK
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 114 / 130
Parameter
Example
AT+NQMGS
PENDING=1,SENT=34,ERROR=0
OK
6.1.10. AT+NMSTATUS Message Registration Status
Report the current registration status when connected to the CDP server. Please refer to Chapter 7 for
possible <err> values.
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Maximum Response Time
300ms
<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 terminal
boot
<error> The number of messages that could not be sent by the terminal due to an error
since terminal 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>
Read Command
AT+NMSTATUS?
Response
+NMSTATUS:<registration_status>
OK
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 115 / 130
Parameter
6.1.11. AT+QLWULDATAEX Send CON/NON Messages
This command is used to send confirmable (CON) or non-confirmable (NON) messages to the IoT
platform. After sending a CON message, the sending result will be automatically notified to the terminal.
Terminal can also use the command AT+QLWULDATASTATUS? to query the status of the CON message
that has been sent.
Please refer to Chapter 7 for possible <err> values.
Maximum Response Time
300ms
<registration_status>
Current registration status:
"UNINITIALISED",
"MISSING_CONFIG",
"INIT_FAILED",
"INIITIALISED",
"REGISTERING",
"REREGISTERING",
"REGISTERED",
"REREGISTERED",
"MO_DATA_ENABLED",
"NO_UE_IP",
"MEMORY_ERROR",
"COAP_ERROR",
"MSG_SEND_FAILED",
"REJECTED_BY_SERVER",
"TIMEOUT_AND_RETRYING",
"TIMEOUT_AND_FAILED"
AT+QLWULDATAEX Send CON/NON Messages
Set Command
AT+QLWULDATAEX=<length>,<data>
,<mode>
Response
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Maximum Response Time
300ms
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 116 / 130
Parameter
1. There is a maximum data length of 512 bytes.
2. If sending a CON message, it must acquire the status of sending the CON message before sending
the next CON or NON message.
3. <mode>=0x0001 and <mode>=0x0101 are only supported in B657SP5 or later versions.
Example
AT+QLWULDATAEX=3,AA34BB,0x0100
OK
6.1.12. AT+QLWULDATASTATUS Query CON Messages Sending Status
This command queries the status of sending CON message to NB-IoT platform.
Please refer to Chapter 7 for possible <err> values.
<length> Decimal length of message
<data> Data in hex string format
<mode> Mode of sending CON/NON messages
0x0000: Send a NON message
0x0100: Send a CON message
0x0001: Send a NON message, with RELEASE marking
0x0101: Send a CON message, with RELEASE_AFTER_REPLY marking
AT+QLWULDATASTATUS Query CON Messages Sending Status
Read Command
AT+QLWULDATASTATUS?
Response
+ QLWULDATASTATUS :<status>
OK
If there is any error, response:
ERROR
Or
+CME ERROR:<err>
Maximum Response Time
300ms
NOTES
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 117 / 130
Parameter
Example
AT+QLWULDATASTATUS?
+QLWULDATASTATUS :4
OK
<status>
Status of the sent CON messages
0 Have not sent
1 Sent, waiting response of IoT platform
2 Sent failed
3 Timeout
4 Success
5 Got reset message
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 118 / 130
7 Error Values
The <err> error codes listed below are not implemented, and only a subset will be implemented.
In B600 version and later, AT+CMEE command is implemented and it supports modes 0 & 1. In mode 1, a
limited set of error codes are returned.
The error codes listed in the following two tables are compliant with the 3GPP specifications. Please refer
to 3GPP TS 27.007 V13.5.0, sub-clause 9.2 for all possible <err> values. The error codes listed are those
returned for the Quectel module.
Error codes 0-255 are reserved and defined in 3GPP TS 27.007 and may be used in future releases.
Table 4: General Errors (27.007)
Table 5: General Errors (127.005)
Code of <err>
Description
3
Operation not allowed
4
Operation not supported
23
Memory failure
30
No network service
50
Incorrect parameters
51
Command implemented but currently disabled
52
Command aborted by user
159
Uplink busy/flow control
Code of <err>
Description
300
ME failure
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 119 / 130
Specific error codes are in the range 512 onwards. Error codes 256 & 257 are listed in the following table
for compatibility reasons.
301
SMS service of ME reserved
302
Operation not allowed
303
Operation not supported
304
Invalid PDU mode parameter
305
Invalid text mode parameter
310
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 AT Commands Manual
BC95_AT_Commands_Manual 120 / 130
Table 6: Specific Error Codes
Code of <err>
Description
256
Required parameter not configured
257
TUP not registered
512
Required parameter not configured
513
TUP not registered
514
AT internal error
515
CID is active
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 121 / 130
8 Reset 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 that indicates the
reason for the reboot. The possible reboot reasons listed below are for reference only.
Table 7: Possible Reboot Messages Displayed
No.
Possible 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_REGIONS_UPDATED
7
REBOOT_CAUSE_PROTOCOL_UNKNOWN
8
REBOOT_CAUSE_PROTOCOL_SYSRESETREQ
9
REBOOT_CAUSE_PROTOCOL_WATCHDOG
10
REBOOT_CAUSE_PROTOCOL_MONITOR_REBOOT_REQ
11
REBOOT_CAUSE_APPLICATION_UNKNOWN
12
REBOOT_CAUSE_APPLICATION_SYSRESETREQ
13
REBOOT_CAUSE_APPLICATION_WATCHDOG
14
REBOOT_CAUSE_APPLICATION_AT
15
REBOOT_CAUSE_UNKNOWN
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 122 / 130
9 Examples
9.1. Attach Network
The module can automatically attach network by default on B650 version or later, which is controlled by
AT+NCONFIG=AUTOCONNECT,TRUE command. If customers want to manually attach the network,
please execute AT+NCONFIG=AUTOCONNECT,FALSE to disable automatic attachment. This value will
be saved to NV and take effect after restarting the module by using AT+NRB.
Customers need to make sure the module type corresponds to the frequency band (AT+NBAND?
command can be used to query the band) before attaching network.
The module types and corresponding frequency bands are shown as follows:
Module Type
BC95-B8
BC95-B5
BC95-B20
BC95-B28
Frequency band
900MHz
850MHz
800MHz
700MHz
The following shows a simple example to automatically attach the network. Customers only need to query
whether the module has attached network by the following commands:
AT+NBAND? //Query the band
+NBAND:8
OK
AT+CFUN? //Value is 1.
+CFUN:1
OK
AT+CIMI //Query the IMSI number.
460012345678969
OK
AT+CSQ //Query the signal strength.
+CSQ:21,99
OK
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 123 / 130
AT+NUESTATS //Query the module status.
Signal power:-663
Total power:-632
TX power:-35
TX time:1572
RX time:17847
Cell ID:27447553
DL MCS:0
UL MCS:0
DCI MCS:2
ECL:0
SNR:290
EARFCN:3701
PCI:37
RSRQ:-108
OK
AT+CGATT? //Query whether network is activated, +CGATT:1 means activated successfully,
sometimes customers need to wait for 30s.
+CGATT:1
OK
AT+CEREG? //Query the network registration status, 1 means registered on network, 2 means
searching the network.
+CEREG:0,1
OK
AT+CSCON? //Query the signal connection status, 1 means “Connected”, 0 means “Idle”.
+CSCON:0,1
OK
The following shows two ways of manual network attachment process.
1. Do not specify PLMN.
AT+CFUN=1 //Configure the level of functionality in the MT.
OK
AT+CIMI //Query the IMSI number and wait for 4 seconds after executing AT+CFUN=1. If
IMSI number is returned, it means the card has been identified; if not returned,
please check whether it is a USIM card and whether the card is properly inserted.
460012345678966
OK
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 124 / 130
AT+NBAND? //Query the band information. Set BC95-B8 to band 8, BC95-B5 to band 5,
BC95-B20 to band 20 and BC95-B28 to band 28 by AT+NBAND=n. It will take
effect after restart.
+NBAND:8
OK
AT+CGDCONT=1,"IP","APN" //APN is a local access point. This step is optional. If needed, please
configure it accordingly.
OK
AT+CEREG=1 //Set to automatically report network registration status, when the module is
registered on the network, a URC will be reported.
OK
AT+CSCON=1 //Set to automatically report network registration status, when the module is
registered on the network, a URC will be reported.
OK
AT+CGATT=1 //Activate the network.
OK
+CEREG:2 //Report the URC, the MT is currently trying to attach or searching an operator to
register to.
+CSCON:1 //Report the URC, the MT is connected.
+CEREG:1 //Report the URC, the MT is registered.
AT+CSQ //Query current signal quality.
+CSQ:31,99
OK
AT+NUESTATS //Query the module status.
Signal power:-663
Total power:-632
TX power:-35
TX time:1572
RX time:17847
Cell ID:27447553
DL MCS:0
UL MCS:0
DCI MCS:2
ECL:0
SNR:290
EARFCN:3701
PCI:37
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 125 / 130
RSRQ:-108
OK
AT+CGATT? //Query whether network is activated, +CGATT:1 means activated successfully
sometimes customers need to wait for 30s
+CGATT:1
OK
AT+CEREG? //Query current EPS network registration status: Registered.
+CEREG:1,1
OK
AT+CSCON? //Query the signaling connection status, 1 means Connected”, 0 means “Idle”.
+CSCON:1,1
OK
2. Specify PLMN.
AT+CFUN=1 //Configure the level of functionality in the MT.
OK
AT+CIMI //Query the IMSI number and wait for 4 seconds after executing AT+CFUN=1. If
IMSI number is returned, it means the card has been identified; if not returned,
please check whether it is a USIM card and whether the card is properly inserted.
460012345678966
OK
AT+NBAND? //Query the band information. Set BC95-B8 to band 8, BC95-B5 to band 5,
BC95-B20 to band 20 and BC95-B28 to band 28 by AT+NBAND=n. It will take
effect after restart.
+NBAND:8
OK
AT+CGDCONT=1,"IP","APN" //APN is a local access point. This step is optional. If needed, please
configure it accordingly.
OK
AT+CEREG=1 //Set to automatically report network registration status, when the
module is registered on the network, a URC will be reported.
OK
AT+CSCON=1 //Set to automatically report network registration status, when the
module is registered on the network, a URC will be reported.
OK
AT+COPS=1,2,"46000" //Specify the PLMN searching or automatic searching, PLMN needs to
be configured by customers.
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 126 / 130
OK
AT+CSQ //Query current signal quality.
+CSQ:31,99
OK
AT+NUESTATS //Query the module status.
Signal power:-663
Total power:-632
TX power:-35
TX time:1572
RX time:17847
Cell ID:27447553
DL MCS:0
UL MCS:0
DCI MCS:2
ECL:0
SNR:290
EARFCN:3701
PCI:37
RSRQ:-108
OK
AT+CGATT? //Query whether network is activated, +CGATT:1 means activated successfully,
sometimes customers need to wait for 30s
+CGATT:1
OK
AT+CEREG? //Query current EPS network registration status: registered.
+CEREG:1,1
OK
AT+CSCON? //Query the signaling connection status, 1 means “Connected”, 0 means “Idle”.
+CSCON:1,1
OK
9.2. Send/Receive/Read UDP Messages
The following shows a simple example of sending, receiving and reading a UDP message. Once the
socket is closed, no replies will be received.
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 127 / 130
AT+NSOCR=DGRAM,17,4587,1 //Create a socket
0
OK
AT+NSOST=0,192.53.100.53,5683,25,400241C7B17401724D0265703D323031363038323331363438
//Send a message
0,25
OK
+NSONMI:0,4 //Receive the message
AT+NSORF=0,4 //Read the messages
0,192.53.100.53,5683,4,60A041C7,0
OK
AT+NSOCL=0 //Close the socket
OK
9.3. Send/Receive/Read Messages via Huawei's IoT Platform
The following is a simple example of sending, receiving and reading a message via the Huawei’s IoT
platform.
AT+CGSN=1 //Query the IMEI number. If only “ERROR” is returned,
then customers need to write the IMEI number.
+CGSN:863703030104298
OK
AT+NCDP=192.53.100.53 //Configuration CDP server, the value will be saved and
can only be configured once. For versions earlier than
B657SP1, this command must be executed after
executing AT+CFUN=0. (The server can be configured
before attaching the network)
OK
AT+NCDP? //Query CDP server
+NCDP:192.53.100.53,5683
OK
AT+NSMI=1 //Sending message indications is enabled.
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 128 / 130
OK
AT+NNMI=2 //Enable new message indications when a downstream
message is received by the terminal from the CDP
server.
OK
AT+NMGS=10, AA7232088D0320623399 //Send a message.
OK
+NSMI:SENT //Message is sent.
AT+NQMGS //Query whether the messages is sent successfully.
PENDING=0,SENT=1,ERROR=0
OK
+NNMI //Receive a downstream message.
AT+NQMGR //Query whether the messages is received.
BUFFERED=1,RECEIVED=1,DROPPED=0
OK
AT+NMGR //Get the message.
2,AABB
OK
AT+NQMGR //Query whether the messages is received.
BUFFERED=0,RECEIVED=1,DROPPED=0
OK
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 129 / 130
10 Appendix A Reference
Table 8: Terms and Abbreviations
Abbreviation
Description
APN
Access Point Name
CDP
Connected Device Platform
CS
Circuit Switched
DCE
Data Communication Equipment
EARFCN
E-UTRA Absolute Radio Frequency Channel Number
eDRX
Extended Discontinuous Reception
EGPRS
Enhanced General Packet Radio Service
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
IMEISV
International Mobile Equipment Identity and Software Version
MS
Mobile Station
NB-IoT
Narrow Band Internet of Thing
PDP
Packet Data Protocol
NB-IoT Module Series
BC95 AT Commands Manual
BC95_AT_Commands_Manual 130 / 130
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

Navigation menu