BC35-G&BC28: AT Commands Manual
BC35-G&BC28: AT Commands Manual
AT Commands Manual
Rev. BC35-G&BC28_AT_Commands_Manual_V1.0
Date: 2017-12-28
Status: Released
www.quectel.com
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Our aim is to provide customers with timely and comprehensive service. For any
assistance, please contact our company headquarters:
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. 2017. All rights reserved.
BC35-G&BC28_AT_Commands_Manual 1 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
History
Revision Date Author Description
Hayden WANG/
1.0 2017-12-28 Gary TANG/ Initial
Arnold ZHAO
BC35-G&BC28_AT_Commands_Manual 2 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Contents
1 Introduction .......................................................................................................................................... 7
1.1. Definitions .................................................................................................................................. 8
1.2. AT Command Syntax ................................................................................................................. 8
1.3. AT Command Responses .......................................................................................................... 9
1.4. 3GPP Compliance ..................................................................................................................... 9
BC35-G&BC28_AT_Commands_Manual 3 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
BC35-G&BC28_AT_Commands_Manual 4 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
BC35-G&BC28_AT_Commands_Manual 5 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Table Index
BC35-G&BC28_AT_Commands_Manual 6 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
1 Introduction
This document gives details of the AT Command Set supported by Quectel NB-IoT BC35-G and BC28
modules.
<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 BC35-G/BC28 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 be output to inform the external MCU the current update state.
BC35-G&BC28_AT_Commands_Manual 7 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
NOTE
During updating procedure, the module should not be operated until "FIRMWARE UPDATE OVER" is
reported. For instance, executing AT+NRB to power off the module is not permitted, otherwise an error
will occur.
1.1. Definitions
AT+<cmd>=p1[,p2[,p3[.....
Write Command Write command
]]]
Execution
AT+<cmd> Execution command
Command
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:
They can be used to make the input more human-readable. On input, at least a carriage return is required.
A newline character is ignored so it is permissible to use carriage return/line feed pairs on the input.
If no command is entered after the AT token, "OK" will be returned. If an invalid command is entered,
BC35-G&BC28_AT_Commands_Manual 8 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Optional parameters, unless explicitly stated, need to be provided up to the last parameter being entered.
When the AT Command processor has finished processing a line, it will output either "OK" or "ERROR"
indicating that it is ready to accept a new command. Solicited informational responses are sent before the
final "OK" or "ERROR". Unsolicited information responses will never occur between a solicited
informational response and the final “OK” or “ERROR”.
<CR><LF>+CMD1:<parameters><CR><LF>
<CR><LF>OK<CR><LF>
Or
<CR><LF><parameters><CR><LF>
<CR><LF>OK<CR><LF>
3GPP commands are complied with the 3GPP TS 27.007 v14.3.0 (2017-03).
BC35-G&BC28_AT_Commands_Manual 9 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
2 Implementation Status
Implementation
AT Command Description
Status
BC35-G&BC28_AT_Commands_Manual 10 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
General Commands
BC35-G&BC28_AT_Commands_Manual 11 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
AT+NPOWERCLASS Set the Mapping for Band and Power Class B150SP1
NOTE
BC35-G&BC28_AT_Commands_Manual 12 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
The execution command returns product identification information. Please refer to Chapter 7 for possible
<err> values.
OK
Parameter
Example
ATI
Quectel
BC35-G
Revision:BC35GJAR01A01
OK
BC35-G&BC28_AT_Commands_Manual 13 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
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
BC35-G
Revision:BC35GJAR01A01
OK
ATE1
OK
ATI
ATI
Quectel
BC35-G
Revision:BC35GJAR01A01
OK
BC35-G&BC28_AT_Commands_Manual 14 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
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.
OK
Parameter
Example
AT+CGMI
Quectel
OK
The execution command returns manufacturer model information. Please refer to Chapter 7 for possible
<err> values.
OK
BC35-G&BC28_AT_Commands_Manual 15 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Parameter
<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>.
Example
AT+CGMM
BC35GJA-02-STD
OK
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.
OK
Parameter
<revision> Manufacturer revision. The total number of characters, including line terminators, in
BC35-G&BC28_AT_Commands_Manual 16 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
the information text shall not exceed 2048 characters, and shall not contain the
sequence 0<CR> or OK<CR>.The <revision> may change format over time. It should
be treated as an opaque identifier.
Example
AT+CGMR
SECURITY_A,V150R100C10B180
PROTOCOL_A,V150R100C10B180
APPLICATION_A,V150R100C10B180
SECURITY_B,V150R100C10B180
OK
AT+CGMR=?
OK
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.
OK
BC35-G&BC28_AT_Commands_Manual 17 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
Parameter
<snt> Integer type. The serial number type that has been requested.
0 Returns <sn>
1 Returns the IMEI number
2 Returns the IMEISV (International Mobile station Equipment Identity and Software
Version) number
3 Returns the SVN (Software Version Number)
<sn> The 128-bit UUID of the UE. The total number of characters, including line terminators, in
the information text shall not exceed 2048 characters, and shall not contain the sequence 0
<CR> or OK<CR>.
<imei> String type indecimal format indicating the IMEI number
<imeisv> String type indecimal format indicating the IMEISV number
<svn> String type indecimal format indicating the current SVN which is a part of IMEISV
Example
AT+CGSN=1 //Request the IMEI number
+CGSN:490154203237511
OK
The write command controls the presentation of an unsolicited result code (URC) “+CEREG:<stat>” when
<n>=1 and there is a change in the UE's EPS network registration status in E-UTRAN, or unsolicited
result code “+CEREG:<stat>[,[<tac>],[<ci>],[<AcT>]]” when <n>=2 and there is a change of the network
cell in E-UTRAN. The parameters <AcT>, <tac> and <ci> are provided only if available. The value <n>=3
further extends the unsolicited result code with [,<cause_type>,<reject_cause>], when available, when
the value of <stat> changes. Please refer to Chapter 7 for possible <err> values.
If the UE requests PSM for reducing its power consumption, the write command controls the presentation
BC35-G&BC28_AT_Commands_Manual 18 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
When <n>=4, the unsolicited result code will provide the UE with additional information for the active time
value and the extended periodic TAU value if there is a change of the network cell in E-UTRAN. The value
<n>=5 further enhances the unsolicited result code with <cause_type> and <reject_cause> when the
value of <stat> changes. The parameters <AcT>, <tac>, <ci>, <cause_type>, <reject_cause>,
<Active-Time> and <Periodic-TAU> are provided only if available.
The read command returns the status of result code presentation and an integer <stat> which shows
whether the network has currently indicated the registration of the UE. Location information elements
<tac>, <ci> and <AcT>, if available, are returned only when <n>=2 and UE is registered on the network.
The parameters [,<cause_type>,<reject_cause>], if available, are returned when <n>=3.
OK
Test Command Response
AT+CEREG=? +CEREG:(list of supported <n>s)
OK
Parameter
BC35-G&BC28_AT_Commands_Manual 19 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
BC35-G&BC28_AT_Commands_Manual 20 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Example
AT+CEREG=1 //Enable network registration URC.
OK
AT+CEREG?
+CEREG:1,1
OK
AT+CEREG=?
+CEREG:(0,1,2,3,4,5)
OK
The command gives details of the UE’s perceived radio connection status (i.e. to the base station). It
returns an indication of the current state. Please note that this state is only updated when radio events,
such as sending and receiving, take place. This means that the current state may be out of date. The
terminal may think it is "Connected" yet cannot currently use a base station due to a change in the link
quality.
The write command controls the presentation of an unsolicited result code. If setting fails, an UE error,
“+CME ERROR:<err>” is returned. Please refer to Chapter 7 for possible <err> values.
BC35-G&BC28_AT_Commands_Manual 21 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
When the UE is in 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 set up.
The <state> value indicates the state of the UE when the UE is in E-UTRAN.
The read command returns the status of result code presentation and an integer <mode> which shows
whether the UE is currently in idle mode or connected mode.
OK
OK
Parameter
Example
AT+CSCON=0
OK
AT+CSCON?
BC35-G&BC28_AT_Commands_Manual 22 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
+CSCON:0,1
OK
AT+CSCON=?
+CSCON:(0,1)
OK
AT+CSCON=1
OK
AT+CSCON?
+CSCON:1,1
OK
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.
OK
Parameter
<AT Command> Defines the AT command including the prefix AT. Text shall not contain the
sequence 0<CR> or OK<CR>.
BC35-G&BC28_AT_Commands_Manual 23 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Example
AT+CLAC
AT+COPS
AT+CGATT
...
AT+NSOCR
AT+NSOST
OK
The execution command returns received signal strength indication <rssi> and channel bit error rate
<ber> from the UE. Please refer to Chapter 7 for possible <err> values.
OK
OK
Parameter
BC35-G&BC28_AT_Commands_Manual 24 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
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
Example
AT+CSQ
+CSQ:31,99
OK
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.
OK
Test Command Response
AT+CGPADDR=? +CGPADDR:(list of defined <cid>s)
BC35-G&BC28_AT_Commands_Manual 25 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
Parameter
<cid> Integer type. Specifies a particular PDP context definition (see the AT+CGDCONT command).
<cid> values between 0 and 10 are supported.
<PDP_addr_1> and <PDP_addr_2> String type. Identify the UE in the address space applicable to
the PDP. The address may be static or dynamic. For a static
address, it will be the one set by the AT+CGDCONT command
when the context was defined. For a dynamic address it will be
the one assigned during the last PDP context activation that
used the context definition referred to by <cid>. Both
<PDP_addr_1> and <PDP_addr_2> are omitted if none is
available. <PDP_addr_1> and <PDP_addr_2> are included
when both IPv4 and IPv6 addresses are assigned, with
<PDP_addr_1> containing the IPv4 address and
<PDP_addr_2> containing the IPv6 address.
When AT+CGPIAF is supported, its settings can influence the
format of the IPv6 address in parameter <PDP_addr_1> or
<PDP_addr_2> returned with the execute form of
AT+CGPADDR.
NOTES
Example
AT+CGPADDR=0
+CGPADDR:0,101.43.5.1
OK
AT+CGPADDR=?
+CGPADDR:(0)
OK
BC35-G&BC28_AT_Commands_Manual 26 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
The write command forces an attempt to select and register the EPS network operator using the USIM
card installed in the currently selected card slot. <mode> is used to select whether the selection is done
automatically by the UE or is forced by this command to operator <oper> (it shall be given in format
<format>) to a certain access technology, indicated in <AcT>. If the selected operator is not available, no
other operator shall be selected. If the selected access technology is not available, then the same
operator shall be selected in other access technology. The selected operator name format shall also apply
to the read command (AT+COPS?). <mode>=2 forces an attempt to deregister from the network. The
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 the
order of: home network, networks referenced in USIM or active application in the UICC (USIM) in the
following order: HPLMN selector, user controlled PLMN selector, operator controlled PLMN selector and
PLMN selector (in the USIM), and other networks.
The <AcT> access technology selected parameters should only be used in terminals capable to register
to more than one access technology. Selection of <AcT> does not limit the capability to cell reselections,
even though an attempt is made to select an access technology, the UE may still re-select a cell in
another access technology.
OK
BC35-G&BC28_AT_Commands_Manual 27 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
Parameter
Example
AT+COPS=0
OK
AT+COPS?
+COPS:0,2,"46000"
OK
AT+COPS=?
+COPS:(2,,,"46000"),,(0-2),(2)
BC35-G&BC28_AT_Commands_Manual 28 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
NOTES
1. When <mode>=1 is used, the PLMN setting will not persist after the UE is rebooted.
2. The test command currently returns the configured values rather than performing a PLMN search.
The execution command is used to attach the UE to, or detach the UE from, the packet domain service.
After the command has completed, the UE remains in V.250 command state. If the UE is already in the
requested state, the command is ignored and the “OK” response is returned. If AT+CGATT is in progress,
further execution of this command before the finishing of attach or detach procedure will return an error. If
the requested state cannot be achieved, an “ERROR” or “+CME ERROR” response is returned. Please
refer to Chapter 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.
OK
Test Command Response
AT+CGATT=? +CGATT:(list of supported <state>s)
OK
BC35-G&BC28_AT_Commands_Manual 29 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Parameter
Example
AT+CGATT?
+CGATT:0
OK
AT+CGATT=1
OK
AT+CGATT=?
+CGATT:(0,1)
OK
NOTE
If the initial PDP context is supported, the context with <cid>=0 is automatically defined at startup.
The execution command is used to activate or deactivate the specified PDP context(s). After the
command has completed, the UE remains in V.250 command state. If any PDP context is already in the
requested state, the state for that context remains unchanged. If the requested state for any specified
context cannot be achieved, an “ERROR” or “+CME ERROR” response is returned. Extended error
responses are enabled by the AT+CMEE command. If the UE is not PS attached when the activation form
of the command is executed, the UE first performs a PS attach and then attempts to activate the specified
contexts. If the attach fails then the UE responds with error or, if extended error responses are enabled,
with the appropriate failure-to-attach error message. Please refer to Chapter 7 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.
BC35-G&BC28_AT_Commands_Manual 30 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
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.
OK
OK
Parameter
Example
AT+CGACT=0,1
OK
AT+CGACT?
+CGACT:1,0
BC35-G&BC28_AT_Commands_Manual 31 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
AT+CGACT=?
+CGACT:(0,1)
OK
NOTE
If the initial PDP context is supported, the context with <cid>=0 is automatically defined at startup.
The command returns International Mobile Subscriber Identity (string without double quotes).
The execution command causes the UE to return <IMSI>, which is intended to permit the TE to identify
the individual USIM card or active application in the UICC (USIM) which is attached to UE.
OK
Parameter
NOTE
BC35-G&BC28_AT_Commands_Manual 32 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Example
AT+CIMI
460001357924680
OK
The write command specifies PDP context parameter values for a PDP context identified by <cid>, and
the (local) context identification parameter. It also allows the TE to specify whether security protected
transmission of ESM information is requested, because the PCO can include information that requires
ciphering. There can be other reasons for the UE to use security protected transmission of ESM
information, e.g. if the UE needs to transfer an APN. The number of PDP contexts that may be in a
defined state at the same time is given by the range returned by the test command. Please refer to
Chapter 7 for possible <err> values.
For EPS, the PDN connection and its associated EPS default bearer is identified herewith.
A special form of the write command, AT+CGDCONT=<cid> causes the values for context number <cid>
to become undefined.
If the initial PDP context is supported, the context with <cid>=0 is automatically defined at startup, the
parameters for <cid>=0 can be modified with AT+CGDCONT. If the initial PDP context is supported,
AT+CGDCONT=0 resets context number 0 to its particular default settings.
The read command returns the current settings for each defined context.
The test command returns values supported as compound values. If the UE supports several PDP types,
the parameter value ranges for each <PDP_type> are returned on a separate line.
OK
Test Command Response
AT+CGDCONT=? +CGDCONT:(range of supported <cid>s),<PDP_typ
e>,,,,,,,,,(list of supported <NSLPI>s)
BC35-G&BC28_AT_Commands_Manual 33 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
[...]
OK
Parameter
<cid> Integer type. Specifies a particular PDP context definition. The parameter is local to
the TE-UE interface and is used in other PDP context-related commands. The range
of permitted values (minimum value=1 or if the initial PDP context is supported,
minimum value=0) is returned by the test form of the command.
The <cid>s for network-initiated PDP contexts will have values outside the ranges
indicated for the <cid> in the test form of the AT+CGDCONT and AT+CGDSCONT
commands.
<cid> values of 0-10 are supported.
<cid>=0 is read only and is only defined when AUTOCONNECT is enabled.
<cid> value of 7 cannot be set when BIP is enabled.
<PDP_type> String type. Specifies the type of packet data protocol.
IP Internet Protocol (IETF STD 5 [103])
IPv6* Internet Protocol, version 6
IPv4v6* Virtual <PDP_type> introduced to handle dual IP stack UE capability
NONIP None IP
<APN> String type. A logical name that is used to select the GGSN or the external packet data
network. If the value is null or omitted, then the subscription value will be requested.
Maximum number of <APN> string is 63 characters.
<NSLPI> Integer type. Indicates the NAS signalling priority requested for this PDP context.
0 Indicates that this PDP context is to be activated with the value for the
low priority indicator configured in the UE.
1 Indicates that this PDP context is to be activated with the value for the
low priority indicator set to "MS is not configured for NAS signalling low
priority".
The UE utilizes the provided NSLPI information as specified in 3GPP TS
24.301 [83] and 3GPP TS 24.008.
Example
AT+CGDCONT=?
+CGDCONT:(0-10),("IP","NONIP"),,,,,,,,,(0,1)
OK
AT+CGDCONT=1,"IP","HUAWEI.COM"
OK
AT+CGDCONT?
+CGDCONT:1,"IP","HUAWEI.COM" ,,,,,,,,0
BC35-G&BC28_AT_Commands_Manual 34 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
The write command selects the level of functionality in the UE. Level "full functionality" is where the
highest level of power is drawn. "Minimum functionality" is where minimum power is drawn.
OK
Test Command Response
AT+CFUN=? +CFUN:(list of supported <fun>s), (list of supported <rst>s)
OK
Parameter
BC35-G&BC28_AT_Commands_Manual 35 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
NOTE
Deep sleep mode will be entered when the system is quiescent, but only if it has been enabled by the
network.
Example
AT+CFUN=?
+CFUN:(0,1),(0,1)
OK
AT+CFUN=1
OK
AT+CFUN?
+CFUN:1
OK
The write command disables or enables the use of final result code “+CME ERROR:<err>” as an
indication of an error relating to the functionality of the UE. When enabled, UE related errors cause
“+CME ERROR:<err>” final result code instead of the regular “ERROR” final result code. “ERROR” is
returned normally when error is related to syntax, invalid parameters or UE functionality.
BC35-G&BC28_AT_Commands_Manual 36 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
OK
Parameter
The clock will be set automatically once the UE has connected to the network.
OK
Parameter
BC35-G&BC28_AT_Commands_Manual 37 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
NOTES
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.
Example
AT+CCLK?
OK
AT+CCLK=?
OK
The write command controls the setting of the UE’s power saving mode (PSM) parameters. It can be used
to control whether the UE wants to apply PSM or not. Please refer to the unsolicited result codes provided
by AT+CGREG for the active time value, and the extended periodic TAU value that are allocated to the
UE by the network in E-UTRAN.
A special form of the command can be given as AT+CPSMS=2. In this form, the use of PSM will be
disabled and data for all parameters in AT+CPSMS command will be removed or, if available, set to the
default values.
The 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.
BC35-G&BC28_AT_Commands_Manual 38 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
Test Command Response
AT+CPSMS=? +CPSMS:(list of supported <mode>s),,,(list of supported
<Requested_Periodic-TAU>s),(list of supported
<Requested_Active-Time>s)
OK
Parameter
BC35-G&BC28_AT_Commands_Manual 39 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
876
0 0 0 value is incremented in multiples of 2 seconds
0 0 1 value is incremented in multiples of 1 minute
0 1 0 value is incremented in multiples of decihours
1 1 1 value indicates that the timer is deactivated.
The default value is 10 seconds.
NOTES
1. This timer value unit is only applicable to the T3412 extended value IE. If it is received in an integrity
protected message, value shall be interpreted as multiples of 320 hours. Otherwise value shall be
interpreted as multiples of 1 hour.
2. AT+CPSMS? read command could only get mode value 0 and 1.
Example
AT+CPSMS=1,,,01000011,01000011
OK
AT+CPSMS?
+CPSMS:1,,,01000011,01000011
OK
AT+CPSMS=?
+CPSMS:(0,1,2),,,( 00000000-11111111), (00000000-11111111)
OK
The write command controls the setting of the UE’s eDRX parameters. It can be used to control whether
the UE wants to apply eDRX or not, as well as the requested eDRX value for each specified type of
access technology.
The write command also controls the presentation of an unsolicited result code
+CEDRXP:<AcT-type>[,<Requested_eDRX_value>[,<NW-provided_eDRX_value>[,<Paging_time_wind
ow>]]] when <n>=2 and there is a change in the eDRX parameters provided by the network.
A special form of the command can be given as AT+CEDRXS=3. In this form, eDRX will be disabled and
data for all parameters in AT+CEDRXS command will be removed.
The read command returns the current settings for each defined value of <AcT-type>.
BC35-G&BC28_AT_Commands_Manual 40 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
The test command returns the supported <mode>s and the value ranges for the access technology and
the requested eDRX value as compound values.
OK
Test Command Response
AT+CEDRXS=? +CEDRXS:(list of supported <mode>s),(list of supported
<AcT-type>s),(list of supported
<Requested_eDRX_value>s)
OK
Parameter
<mode> Integer type. Disable or enable the use of eDRX in the UE. This parameter is
applicable to all specified types of access technology, i.e. the most recent setting of
<mode> will take effect for all specified values of <AcT-type>.
0 Disable the use of eDRX
1 Enable the use of eDRX
2 Enable the use of eDRX and enable the unsolicited result code
+CEDRXP:<AcT-type>[,<Requested_eDRX_value>[,<NW-provided_eDRX_
value>[,<Paging_time_window>]]]
3 Disable the use of eDRX and discard all parameters for eDRX.
<AcT-type> Integer type. Indicates the type of access technology. AT+CEDRXS? is used to specify
the relationship between the type of access technology and the requested eDRX
value.
0 Access technology is not using eDRX. This parameter value is only used in
the unsolicited result code.
5 E-UTRAN (NB-S1 mode)
<Requested_eDRX_value> String type. Half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 E-UTRAN eDRX cycle length duration
0 0 1 0 20.48 seconds
BC35-G&BC28_AT_Commands_Manual 41 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
0 0 1 1 40.96 seconds
0 1 0 1 81.92 seconds
1 0 0 1 163.84 seconds
1 0 1 0 327.68 seconds
1 0 1 1 655.36 seconds
1 1 0 0 1310.72 seconds
1 1 0 1 2621.44 seconds
1 1 1 0 5242.88 seconds
1 1 1 1 10485.76 seconds
<NW-provided_eDRX_value> String type. Half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 E-UTRAN eDRX cycle length duration
0 0 1 0 20.48 seconds
0 0 1 1 40.96 seconds
0 1 0 1 81.92 seconds
1 0 0 1 163.84 seconds
1 0 1 0 327.68 seconds
1 0 1 1 655.36 seconds
1 1 0 0 1310.72 seconds
1 1 0 1 2621.44 seconds
1 1 1 0 5242.88 seconds
1 1 1 1 10485.76 seconds
<Paging_time_window> String type. Half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 Paging Time Window length
0 0 0 0 2.56 seconds
0 0 0 1 5.12 seconds
0 0 1 0 7.68 seconds
0 0 1 1 10.24 seconds
0 1 0 0 12.8 seconds
0 1 0 1 15.36 seconds
0 1 1 0 17.92 seconds
0 1 1 1 20.48 seconds
1 0 0 0 23.04 seconds
1 0 0 1 25.6 seconds
1 0 1 0 28.16 seconds
1 0 1 1 30.72 seconds
1 1 0 0 33.28 seconds
1 1 0 1 35.84 seconds
1 1 1 0 38.4 seconds
1 1 1 1 40.96 seconds
1 1 1 1 40.96 seconds
BC35-G&BC28_AT_Commands_Manual 42 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Example
AT+CEDRXS=1,5,"0101"
OK
AT+CEDRXS?
+CEDRXS:5,"0101"
OK
AT+CEDRXS=?
+CEDRXS:(0,1,2,3),(5),("0000"-"1111")
OK
AT+CEDRXS=0,5
OK
The execution command causes the UE to return one or more lines of information text <report>,
determined by the UE manufacturer, which should offer the user of the UE an extended report of the
reason for the following errors:
Typically, the text will consist of a single line containing the cause information given by network in textual
format.
OK
Test Command Response
AT+CEER=? OK
Parameter
<report> Extended error report. The total number of characters, including line terminators, in the
BC35-G&BC28_AT_Commands_Manual 43 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
information text shall not exceed 2041 characters. The text shall not contain the sequence
0<CR> or OK<CR>.
Example
AT+CEER
+CEER:EMM_CAUSE_EPS_AND_NON_EPS_SERVICES_NOT_ALLOWED
OK
AT+CEER=?
OK
If the cell that the UE is currently registered to is not using eDRX, <AcT-type>=0 is returned.
OK
Test Command Response
AT+CEDRXRDP=? OK
Parameter
<AcT-type> Integer type. The type of access technology. AT+CEDRXS? is used to specify the
relationship between the type of access technology and the requested eDRX value.
0 Access technology is not using eDRX. This parameter value is only used in
the unsolicited result code
5 E-UTRAN (NB-S1 mode)
<Requested_eDRX_value> String type. Half a byte in a 4-bit format. NB-S1 mode.
bit
4 3 2 1 E-UTRAN eDRX cycle length duration
BC35-G&BC28_AT_Commands_Manual 44 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
0 0 1 0 20.48 seconds
0 0 1 1 40.96 seconds
0 1 0 1 81.92 seconds
1 0 0 1 163.84 seconds
1 0 1 0 327.68 seconds
1 0 1 1 655.36 seconds
1 1 0 0 1310.72 seconds
1 1 0 1 2621.44 seconds
1 1 1 0 5242.88 seconds
1 1 1 1 10485.76 seconds
<NW-provided_eDRX_value> String type. Half a byte in a 4-bit format. NB-S1 mode.
bit
4 3 2 1 E-UTRAN eDRX cycle length duration
0 0 1 0 20.48 seconds
0 0 1 1 40.96 seconds
0 1 0 1 81.92 seconds
1 0 0 1 163.84 seconds
1 0 1 0 327.68 seconds
1 0 1 1 655.36 seconds
1 1 0 0 1310.72 seconds
1 1 0 1 2621.44 seconds
1 1 1 0 5242.88 seconds
1 1 1 1 10485.76 seconds
<Paging_time_window> String type. Half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 Paging Time Window length
0 0 0 0 2.56 seconds
0 0 0 1 5.12 seconds
0 0 1 0 7.68 seconds
0 0 1 1 10.24 seconds
0 1 0 0 12.8 seconds
0 1 0 1 15.36 seconds
0 1 1 0 17.92 seconds
0 1 1 1 20.48 seconds
1 0 0 0 23.04 seconds
1 0 0 1 25.6 seconds
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
BC35-G&BC28_AT_Commands_Manual 45 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Example
AT+CEDRXRDP
+CEDRXRDP:5,"0010","1110","0101"
OK
AT+CEDRXRDP=?
OK
The write command controls the time zone change event reporting. If reporting is enabled the UE returns
the unsolicited result code +CTZV:<tz>, +CTZE:<tz>,<dst>,[<time>], or +CTZEU:<tz>,<dst>,[<utime>]
whenever the time zone is changed. The UE also provides the time zone upon network registration if
provided by the network. If setting fails in an UE error, +CME ERROR:<err> is returned.
The read command returns the current reporting settings in the UE.
OK
OK
OK
BC35-G&BC28_AT_Commands_Manual 46 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Parameter
Example
AT+CTZR=0
OK
AT+CTZR?
+CTZR:0
OK
BC35-G&BC28_AT_Commands_Manual 47 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
AT+CTZR=?
+CTZR:(0,1,2,3)
OK
The write command controls whether the UE is attached to E-UTRAN with or without a PDN connection.
The value of <n>=3 applies to E-UTRAN RATs. Changing <n> will never cause a PDP context
deactivation.
OK
OK
BC35-G&BC28_AT_Commands_Manual 48 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Parameter
NOTE
For this command, the term roaming corresponds to being registered to a VPLMN which is not equivalent
to HPLMN or EHPLMN.
Example
AT+CIPCA=3
OK
AT+CIPCA=?
+CIPCA:(3),(0,1)
OK
This execution command returns the APN rate control parameters (see 3GPP TS 24.008 [8]) associated
to the provided context identifier <cid>. If the parameter <cid> is omitted, the APN rate control parameters
for all active PDP contexts are returned.
The test command returns a list of <cid>s associated with secondary and non-secondary active PDP
contexts.
BC35-G&BC28_AT_Commands_Manual 49 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
<cid>[,<Additional_exception_reports>[,<Uplink_time_un
it>[,<Maximum_uplink_rate>]]]
[...]]]
OK
OK
Parameter
Example
AT+CGAPNRC=2,1,2,3
OK
BC35-G&BC28_AT_Commands_Manual 50 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
AT+CGAPNRC=?
+CGAPNRC:1,2
OK
The write command is used by the TE to transmit data over control plane to network via UE. Context
identifier <cid> is used to link the data to a particular context.
This command optionally indicates that the application on the UE expects that the exchange of data will
be completed with this uplink data transfer; or will be completed with the next received downlink data.
This command also optionally indicates whether or not the data to be transmitted is an exception data. It
causes transmission of an “ESM DATA TRANSPORT” message, as defined in 3GPP TS 24.301 [83].
The test command returns the maximum number of bytes of the user data container supported by the UE,
supported <RAI>s and supported <type_of_user_data>s as a compound value.
OK
Parameter
<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
BC35-G&BC28_AT_Commands_Manual 51 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
NOTES
Example
AT+CSODCP=?
+CSODCP:(0-10),(512),(0,1,2),(0,1)
OK
The write command is used to enable and disable reporting of data from the network to the UE that is
transmitted via the control plane in downlink direction. If reporting is enabled, the UE returns the
unsolicited result code +CRTDCP:<cid>,<cpdata_length>,<cpdata> when data is received from the
network.
BC35-G&BC28_AT_Commands_Manual 52 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
Test Command Response
AT+CRTDCP=? +CRTDCP:(list of supported <reporting>s),(range of
supported <cid>s),(maximum number of octets of user data
indicated by <cpdata_length>)
OK
Parameter
<reporting> Integer type. Controls reporting of mobile terminated control plane data events
0 Disable reporting of UE control plane data
1 Enable reporting of UE control plane data by the unsolicited result code
“+CRTDCP:<cid>,<cpdata_length>,<cpdata>”
<cid> Integer type. A numeric parameter which specifies a particular PDP context or
EPS bearer context definition. The <cid> parameter is local to the TE-UE
interface and identifies the PDP or EPS bearer contexts which have been setup
via AT command (see AT+CGDCONT command).
<cpdata_length> Integer type. Indicates the number of bytes of the <cpdata> information element.
When there is no data to transmit, the value shall be set to zero.
<cpdata> String of octets. Contains the user data container contents. When there is no data
to transmit, the <cpdata> shall be an empty string (""). This parameter shall not be
subject to conventional character conversion as per AT+CSCS (refer to 3GPP TS
27.007 [9]). The coding format of the user data container and the maximum
length of <cpdata> are implementation specific. Maximum received data length
will be 1358 bytes when non-IP is set by AT+CGDCONT, otherwise will be 0.
BC35-G&BC28_AT_Commands_Manual 53 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
NOTE
Example
AT+CRTDCP=1
OK
AT+CRTDCP?
+CRTDCP:1
OK
AT+CRTDCP=?
+CRTDCP:(0-1),(0-10),(0)
OK
+CRTDCP:0,2,"ab" //URC
BC35-G&BC28_AT_Commands_Manual 54 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
The write command selects messaging service. It returns the types of messages supported by the UE:
<mt> for mobile terminated messages, <mo> for mobile originated messages and <bm> for broadcast
type messages. If chosen service is not supported by the ME, final result code +CME ERROR:<err> will
be returned.
The read command returns supported message types along the current service setting.
The test command returns a list of all services supported by the UE.
OK
OK
Test Command Response
AT+CSMS=? +CSMS:(list of supported <service>s)
OK
Parameter
BC35-G&BC28_AT_Commands_Manual 55 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
NOTE
Example
AT+CSMS=1
+CSMS:2,3,4
OK
AT+CSMS?
+CSMS:1,2,3,4
OK
AT+CSMS=?
+CSMS:(0,1)
OK
BC35-G&BC28_AT_Commands_Manual 56 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
If UE does not get acknowledgement within required time (network timeout), UE should respond as
specified in 3GPP TS 24.011 [6] to the network.
If the command is executed, but no acknowledgement is expected, or some other UE related error occurs,
final result code +CME ERROR:<err> is returned. In case that a directly routed message must be
buffered in UE or AT interpreter remains too long in a state where result codes cannot be sent to TE (e.g.
user is entering a message using AT+CMGS), acknowledgement (RP-ACK) must be sent to the network
without waiting AT+CNMA command from TE. Later, when buffered result codes are flushed to TE, TE
must send +CNMA[=0] acknowledgement for each result code. In this way, UE can determine if message
should be placed in non-volatile memory and routing to TE disabled (+CNMA[=0] not received).
The test command returns a list of supported <n> values. If the only value supported is 0, the device does
not support sending of TPDU.
OK
Parameter
BC35-G&BC28_AT_Commands_Manual 57 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
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)
<length> Integer type. Indicates in the text mode (AT+CMGF=1) the length of the message body
<data> > (or <cdata>) in characters; or in PDU mode (AT+CMGF=0), the length of the
actual TP data unit in octets (i.e. the RP layer SMSC address octets are not counted in the
length). <length> range is 0-232.
NOTE
Example
AT+CNMA=1
OK
AT+CNMA=?
+CNMA:(0-2)
OK
The write command updates the SMSC address, through which mobile originated SMS are transmitted. In
text mode, setting is used by send and write commands. In PDU mode, setting is used by the same
commands, but only when the length of the SMSC address coded into <pdu> parameter equals zero.
OK
BC35-G&BC28_AT_Commands_Manual 58 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Parameter
<sca> 3GPP TS 24.011 [6] RP SC address Address-Value field in string format. BCD numbers (or
GSM 7 bit default alphabet characters) are converted to characters of the currently selected
TE character set (refer to AT+CSCS command in 3GPP TS 27.007 [9]); type of address
given by <tosca>.
<tosca> 3GPP TS 24.011 [6] RP SC address Type-of-Address octet in integer format (when first
character of <da> is + (IRA 43) default is 145, otherwise default is 129).
Example
AT+CSCA=358501234567,145
OK
AT+CSCA?
+CSCA:"358501234567",145
OK
AT+CSCA=?
OK
The execution command sends message from a TE to the network (SMS-SUBMIT). Message reference
value <mr> is returned to the TE on successful message delivery. Optionally (when AT+CSMS <service>
value is 1 and network supports) <ackpdu> is returned. Values can be used to identify message upon
unsolicited delivery status report result code. If sending fails in a network or an UE error, final result code
+CME ERROR:<err> is returned. This command should be abortable.
<length> must indicate the number of octets coded in the TP layer data unit to be given (i.e. SMSC
address octets are excluded).
The UE shall send a four character sequence <CR><LF><greater_than><space> (IRA 13, 10, 62, 32)
after command line is terminated with <CR>; after that PDU can be given from TE to UE.
The DCD signal shall be in ON state while PDU is given.
The echoing of given characters back from the UE is controlled by V.25ter echo command E.
The PDU shall be hexadecimal format (similarly as specified for <pdu>) and given in one line; UE
converts this coding into the actual octets of PDU.
BC35-G&BC28_AT_Commands_Manual 59 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
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
Parameter
NOTES
BC35-G&BC28_AT_Commands_Manual 60 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
The execution command sends a command message from TE to the network (SMS-COMMAND). The
entering of text (3GPP TS 23.040 [3] TP-Command-Data) is done similarly as specified in AT+CMGS
command, but the format is fixed to be a sequence of two IRA character long hexadecimal numbers which
UE converts into 8-bit octets (refer to AT+CMGS). Message reference value <mr> is returned to the TE on
successful message delivery. Optionally (when AT+CSMS <service> value is 1 and network supports)
<scts> is returned. Values can be used to identify message upon unsolicited delivery status report result
code. If sending fails in a network or an UE error, final result code +CME ERROR:<err> is returned. This
command should be abortable.
Parameter
NOTES
BC35-G&BC28_AT_Commands_Manual 61 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
5 General Commands
The command reboots the UE. There is a short delay after issuing this command before the UE reboots.
No further AT commands will be processed. Please refer to Chapter 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
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.
BC35-G&BC28_AT_Commands_Manual 62 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
[...NUESTATS:CELL,<earfcn>,<physical cell
id>,<primarycell>,<rsrp>,<rsrq>,<rssi>,<snr>]
OK
[...NUESTATS:THP,<throughput_type>,<throughput>]
OK
NUESTATS:APPSMEM,Total Free:<free>
OK
BC35-G&BC28_AT_Commands_Manual 63 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
[...NUESTATS:<type>,<name/value>,<value>[,<value[,<va
lue>[...]]]]
OK
OK
Parameter
<type> Type of data to be displayed as an unquoted string. Supported values of <type> are:
RADIO Radio specific information
CELL Per-cell information for the top 8 cells
BLER Block error rate information
THP Throughput
APPSMEM Dynamic memory usage
ALL All information. The value of <type> output is the correct one for each
data type.
If <type>=RADIO, return the default set of values:
<signal power in centibels> Signal power in centibels
<total power in centibels> Total power in centibels
<current TX power level in centibels> Current Tx power level in centibels
<total TX time since last reboot in millisecond> Total Tx time since last reboot in millisecond
<total RX time since last reboot in millisecond> Total Rx time since last reboot in millisecond
<last SIB1 cell ID> Last SIB1 cell ID
<last ECL value> Last ECL value
<last snr value> Last SNR value
<last earfcn value> Last EARFCN value
<last pci value> Last PCI value
<rsrq in centibels> Reference signal received quality in centibels
<operator mode> Operator mode for SIB1:
0 Unknown mode
1 Inband different PCI mode
2 Inband same PCI mode
3 Guardband mode
4 Standalone mode
BC35-G&BC28_AT_Commands_Manual 64 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
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
The variant of NUESTATS without an argument prints out the RADIO arguments without the command
and variant prefixes. This will be removed in a future release.
Example
AT+NUESTATS
Signal power:-663
Total power:-632
TX power:-35
BC35-G&BC28_AT_Commands_Manual 65 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
TX time:1572
RX time:17847
Cell ID:27447553
ECL:0
SNR:290
EARFCN:3701
PCI:37
RSRQ:-108
OPERATOR MODE:4
OK
AT+NUESTATS=CELL
NUESTATS:CELL,3569,69,1,23,-1073,-1145,286
OK
AT+NUESTATS=THP
NUESTATS:THP,RLC UL,100
NUESTATS:THP,RLC DL,98
NUESTATS:THP,MAC UL,103
NUESTATS:THP,MAC DL,100
OK
AT+NUESTATS=BLER
NUESTATS:BLER,RLC UL BLER,10
NUESTATS:BLER,RLC DL BLER,5
NUESTATS:BLER,MAC UL BLER,8
NUESTATS:BLER,MAC DL BLER,3
NUESTATS:BLER,Total TX bytes,1080
NUESTATS:BLER,Total RX bytes,900
NUESTATS:BLER,Total TX blocks,80
NUESTATS:BLER,Total RX blocks,80
BC35-G&BC28_AT_Commands_Manual 66 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
The write command provides a mechanism to lock to a specific E-UTRAN Absolute Radio Frequency
Channel Number (EARFCN) and, if desired, Physical Cell ID. All actions will be locked to this carrier until
either the lock is removed or the UE is rebooted. It is not persistent over reboots. If the specified EARFCN
is not present, the UE will enter out of service mode. If the specified PCI is not present, the UE will enter
out of service mode. Please refer to Chapter 7 for possible <err> values.
Parameter
<search_mode> Integer type. Specifies the type of search and defines the supplied parameters
0 Lock to a specific EARFCN
<earfcn> Integer type. A number in the range of 1-65535 representing the EARFCN to
search.
<pci> Integer type. E-UTRAN physical cell ID in hexadecimal format.
Valid range 0 -1F7.
Example
AT+NEARFCN=0,2506,AB
OK
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.
BC35-G&BC28_AT_Commands_Manual 67 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
If a socket has already been created for a protocol or port combination, then AT+NSOCR will fail if
requested a second time.
Parameter
NOTE
Example
AT+NSOCR=DGRAM,17,4587,1
0
OK
AT+NSOCR=DGRAM,17,1234,0
1
OK
BC35-G&BC28_AT_Commands_Manual 68 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
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.
Parameter
Example
AT+NSOST=0,192.158.5.1,1024,2,AB30
0,2
OK
Send a UDP datagram containing length bytes of data to <remote_port> on <remote_addr> and allows
meta-data flags to be set.
BC35-G&BC28_AT_Commands_Manual 69 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
The command sends a UDP datagram to the specified host:port. It will return with the socket that it was
sent on, and the number of bytes of data sent. If the amount of data is larger than the largest datagram
that can be sent, the AT+NSOSTF return value will indicate how much of the data was successfully sent.
Please refer to Chapter 7 for possible <err> values.
Parameter
Example
AT+NSOSTF=1,192.158.5.1,1024,0x100,2,AB30
1,2
OK
BC35-G&BC28_AT_Commands_Manual 70 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
The command can read up to <req_length> characters of data from <socket>, and returned length is the
actual number of characters returned.
The command is use to receive data on a socket. When data arrives, a “+NSONMI” response will be
generated to indicate the socket the message was received on and also the amount of data. The
AT+NSORF command takes a length, which is the maximum amount of data that will be returned.
If the requested length is larger than the actual size of the returned data, only the length of returned data
is provided, and the remaining length is returned as 0. If the requested length is less than the amount of
data returned, only the requested amount of data will be returned, plus an indication of the number of
bytes remaining. Once a message has been fully read, a new “+NSONMI” notification will be sent if there
is another message to process. Please refer to Chapter 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.
OK
Parameter
BC35-G&BC28_AT_Commands_Manual 71 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
bytes.
Example
AT+NSORF=0,10
0,192.168.5.1,1024,2,ABAB,0
OK
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
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.
BC35-G&BC28_AT_Commands_Manual 72 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Parameter
<socket> Integer type. Socket on which data is received. Decimal number returned by
AT+NSOCR.
<length> Integer type. Number of bytes of data in the first message.
NOTE
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.
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.
BC35-G&BC28_AT_Commands_Manual 73 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Parameter
The command sets the bands to be used. Please refer to Chapter 7 for possible <err> values.
OK
Test Command Response
AT+NBAND=? Returns the list of bands supported by the hardware.
+NBAND:(n[,n[,n[…]]])
OK
Parameter
BC35-G&BC28_AT_Commands_Manual 74 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Example
AT+NBAND=?
+NBAND:(1,2,3,5,8,12,13,14,17,18,19,20,25,26,28,66)
OK
The command sets the logging level. Logging level is not persistent. It can take one of the following
values. Please refer to Chapter 7 for possible <err> values.
OK
Test Command Response
AT+NLOGLEVEL=? +NLOGLEVEL:(<core>, …),(<level>,<level>, …)
OK
Parameter
BC35-G&BC28_AT_Commands_Manual 75 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Example
AT+NLOGLEVEL?
+NLOGLEVEL:SECURITY,NORMAL
+NLOGLEVEL:PROTOCOL,NORMAL
+NLOGLEVEL:APPLICATION, NORMAL
OK
The command allows configuring certain aspects of UE behavior. It takes a function and a value that
controls operation of that function.
OK
Test Command Response
AT+NCONFIG=? +NCONFIG:(<function>,(<value1>,<value2>[,<value3>[,…
]]))
[+NCONFIG:(<function>,(<value1>,<value2>[,<value3>[,
…]]))
[,…]]
OK
Parameter
BC35-G&BC28_AT_Commands_Manual 76 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Example
AT+NCONFIG?
+NCONFIG:AUTOCONNECT,TRUE
+NCONFIG:CR_0354_0338_SCRAMBLING, TRUE
+NCONFIG:CR_0859_SI_AVOID,TRUE
+NCONFIG:COMBINE_ATTACH,FALSE
+NCONFIG:CELL_RESELECTION,FALSE
+NCONFIG:ENABLE_BIP,FALSE
+NCONFIG:MULTITONE,TRUE
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))
+NCONFIG:(MULTITONE,(FALSE,TRUE)
OK
NOTES
1. CR_ function is temporary and will be retired when no longer required.
2. AT+NCONFIG=MULTITONE,<value> will take effect when rebooted. The real value could be got
when power on.
BC35-G&BC28_AT_Commands_Manual 77 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
The command is used to configure UART port baud rate. Please refer to Chapter 7 for possible <err>
values.
OK
Test Command Response
AT+NATSPEED=? +NATSPEED:(list of supported <baud rate>s),(list of
supported <timeout>s),(list of supported <store>s),(list of
supported <sync_mode>s),(list of supported <stopbits>s),
OK
Parameter
<baud_rate> Integer type indicating the baud rate of UART port that has been requested.
<baud_rate> value higher than the fastest speed supported by the low power
UART will disable deep sleep low power operation.
<timeout> Integer type indicating the time to wait for communication before switching back to
the original speed. Unit: second. Default value: 3. Maximum value: 30. 0 means
using default value.
<store> Integer type indicating whether to store <baud_rate> and <sync_mode> to NV or
not.
0 Do not store to NV, need to configure again after reboot
1 Store to NV, while there is interaction before timeout
<sync_mode> Integer type. The LP UART synchronizes to each start bit that it detects and uses
this to configure its optimum sampling point for each subsequent bit in a data
word. The Sync Mode field allows this sampling point to be modified if required.
<sync mode> don’t support 3 when <baud rate> is 4800bps and 57600bps. This
parameter may be removed in a future release.
0 Sample normally
1 Sample later
2 Sample earlier
BC35-G&BC28_AT_Commands_Manual 78 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Example
AT+NATSPEED=9600,3,1,2,1
OK
AT+NATSPEED?
+NATSPEED:9600,2,1,0
OK
AT+NATSPEED=?
+NATSPEED:(4800,9600,57600,115200),(0-30),(0,1),(0-3),(1,2),(0-2)
OK
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.
OK
OK
BC35-G&BC28_AT_Commands_Manual 79 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
+CME ERROR:<err>
Parameter
Example
AT+NCCID
+NCCID:44123456789012345678
OK
AT+NCCID?
+NCCID:44123456789012345678
OK
This command enables firmware updating. It allows package download, package validation 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.
OK
BC35-G&BC28_AT_Commands_Manual 80 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Parameter
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 lists all mapping of bands
and power classes.
OK
BC35-G&BC28_AT_Commands_Manual 81 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Parameter
The write command controls the presentation of an unsolicited result code “+NPSMR”. If <n>=1,
+NPSMR:<mode> is sent from the UE when the power mode of the UE is changed.
The read command returns the status of result code presentation and an integer <mode> which shows
whether the UE is currently in power saving mode or normal mode.
OK
Parameter
BC35-G&BC28_AT_Commands_Manual 82 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
The write command controls the setting of the UE paging time window value and eDRX parameters. The
command controls whether the UE wants to apply paging time window and eDRX or not, as well as the
requested paging time window and eDRX value for each specified type of access technology.
The write command also controls the presentation of an unsolicited result code
“+NPTWEDRXP:<AcT-type>[,<Requested_Paging_time_window>[,<Requested_eDRX_value>[,<NW_pr
ovided_eDRX_value>[,<Paging_time_window>]]]]” when <n>=2 and there is a change in the paging time
window and eDRX parameters provided by the network.
A special form of the command can be given as AT+NPTWEDRXS=3. In this form, paging time window
and eDRX will be disabled and data for all parameters in the command will be removed.
The read command returns the current settings for each defined value of <AcT-type>. The test command
returns the supported <mode>s and the value ranges for the access technology and the requested paging
time window and requested eDRX value as compound values.
OK
OK
BC35-G&BC28_AT_Commands_Manual 83 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Parameter
<mode> Integer type. Indicates to disable or enable the use of requested paging time window
and eDRX in the UE. This parameter is applicable to all specified types of access
technology, i.e. the most recent setting of <mode> will take effect for all specified
values of <AcT>. When set <mode> to 0 and do not have parameter
<Requested_Paging_time_window> or <Requested_eDRX_value>, it will set omit
value to invalid value like 0x00.
0 Disable the use of requested paging time window and eDRX
1 Enable the use of requested paging time window and eDRX
2 Enable the use of requested paging time window and eDRX, and enable the
unsolicited result code:
“+NPTWEDRXP:<AcT-type>[,<Requested_Paging_time_window>[,<Requested
_eDRX_value>[,<NW_provided_eDRX_value>[,<Paging_time_window>]]]]”
3 Disable the use of eDRX and discard all parameters for eDRX.
<Act-type> Integer type. Indicates the type of access technology. This parameter is used to
specify the relationship between the type of access technology and the requested
eDRX value.
0 Access technology is not using eDRX. This parameter value is only used in the
unsolicited result code.
5 E-UTRAN (NB-S1 mode)
<Requested_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
BC35-G&BC28_AT_Commands_Manual 84 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
0 0 1 1 40.96 seconds
0 1 0 1 81.92 seconds
1 0 0 1 163.84 seconds
1 0 1 0 327.68 seconds
1 0 1 1 655.36 seconds
1 1 0 0 1310.72 seconds
1 1 0 1 2621.44 seconds
1 1 1 0 5242.88 seconds
1 1 1 1 10485.76 seconds
<NW_Provided_eDRX_value> String type; half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 E-UTRAN eDRX cycle length duration
0 0 1 0 20.48 seconds
0 0 1 1 40.96 seconds
0 1 0 1 81.92 seconds
1 0 0 1 163.84 seconds
1 0 1 0 327.68 seconds
1 0 1 1 655.36 seconds
1 1 0 0 1310.72 seconds
1 1 0 1 2621.44 seconds
1 1 1 0 5242.88 seconds
1 1 1 1 10485.76 seconds
<Paging_time_window> String type; half a byte in a 4 bit format. NB-S1 mode.
bit
4 3 2 1 Paging Time Window length
0 0 0 0 2.56 seconds
0 0 0 1 5.12 seconds
0 0 1 0 7.68 seconds
0 0 1 1 10.24 seconds
0 1 0 0 12.8 seconds
0 1 0 1 15.36 seconds
0 1 1 0 17.92 seconds
0 1 1 1 20.48 seconds
1 0 0 0 23.04 seconds
1 0 0 1 25.6 seconds
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
BC35-G&BC28_AT_Commands_Manual 85 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
The write command is used to verify, change, enable, disable, or unblock PIN. An unsolicited result will be
received when execute pin command is completed.
USIM PIN, USIM PUK refer to the PIN of the selected application on the UICC. For example, in an
E-UTRAN context, the selected application on the currently selected UICC should be a USIM and the
USIM PIN then represents the PIN of the selected USIM. See 3GPP TS 31.101 [65] for further details on
application selection on the UICC.
Parameter
BC35-G&BC28_AT_Commands_Manual 86 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
“OK”
“ERROR PIN disabled”
“ERROR PIN blocked”
“ERROR wrong PIN <pin retries remaining>”
“ERROR wrong format”
“ERROR”
<pin retries remaining> Decimal type. Remained PIN retries. If no retries left then PIN is
blocked. AT+NPIN=4,<puk>,<pin> needs to be entered before the PIN
can be used again.
NOTE
Example
AT+NPIN=0,29102394
OK
The write command is used to set the function mode of NETLIGHT LED.
OK
BC35-G&BC28_AT_Commands_Manual 87 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
Parameter
Example
AT+QLEDMODE=1
OK
BC35-G&BC28_AT_Commands_Manual 88 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
The command is used to set and query the server IP address and port for the CDP server. It is used when
there is a HiSilicon CDP or Huawei’s IoT platform acting as gateway to network server applications. The
values assigned are persistent across reboots.
This command is available after the IMEI number has been set. It must be executed when the radio is
inactive (AT+CFUN=0 will force the module to enter into this state).
OK
Parameter
<ip_addr> A dot notation IPv4 address. IP addresses can be specified in decimal, octal or
hexadecimal notation. Only IPv4 is supported.
BC35-G&BC28_AT_Commands_Manual 89 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
<port> Integer type. Unsigned integer. The range is 0-65535. If port 0 is provided, the default
port (5683) will be used. If no port is specified the previously set port will be used. If no
port is specified, and no port was previously set, the default port will be used.
Example
AT+NCDP=192.168.5.1
OK
AT+NCDP?
+NCDP:192.168.5.1,5683
OK
This command is used to set the encryption mode of the data and standard DTLS session timeout
renegotiation interval.
OK
Parameter
BC35-G&BC28_AT_Commands_Manual 90 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
minute. The value range is 1-525600. Valid only for the standard DTLS. The
parameter can be configured only when <type> is set to 1. It must be set to
a value less than the network's NAT change time. When <type> is set to 2,
the fixed renegotiation time is 1 month.
NOTE
Example
AT+QSECSWT=0
OK
AT+QSECSWT=1,100
OK
AT+QSECSWT=2
OK
AT+QSECSWT?
+NSECSWT:0
OK
This command is used to configure PSK ID and PSK. This command must be executed when the radio is
inactive (AT+CFUN=0 will force this state).
BC35-G&BC28_AT_Commands_Manual 91 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
Parameter
<pskid> Indicates the PSK index. The fixed length is 15 decimal digits, The value
must be the same as the device IMEI. In addition, this parameter must also
be set to the same value on the IoT platform. When <pskid> is set to 0, the
IMEI is used as the PSKID.
<psk> Indicates the PSK. This parameter must be set to a 16-digit hexadecimal
number. In addition, it must also be set to the same value on Huawei’s IoT
platform.
NOTE
Example
AT+QSETPSK= 867724030000225,E8E19CC16CE1F388E8E19CC16CE1F388
OK
AT+QSETPSK?
+QSETPSK: 867724030000225,***
OK
The command is used to control module to launch register, deregister or update to the IoT platform. It will
give an <err> code and description as an intermediate message if the message cannot be sent. Please
refer to Chapter 7 for possible <err> values.
BC35-G&BC28_AT_Commands_Manual 92 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
+CME ERROR:<err>
Parameter
Example
AT+QLWSREGIND=0
OK
The command is used to send data to Huawei’s IoT platform with LWM2M protocol. It will give an <err>
code and description as an intermediate message if the message cannot be sent. Before the module
registered to the IoT platform, executing the command will trigger register operation and discard the data.
Please refer to Chapter 7 for possible <err> values.
Parameter
Example
AT+QLWULDATA=3,AA34BB
OK
BC35-G&BC28_AT_Commands_Manual 93 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
This command is used to send confirmable (CON) or non-confirmable (NON) message to Huawei’s IoT
platform. After sending CON data, the sending result will be automatically notified to the TE. TE can also
use the command AT+QLWULDATASTATUS? to query the status of the CON data that has been sent. If
sending CON data, it must acquire the state (fail/timeout/success/got reset message) of sending CON
data before sending the next CON or NON data.
Parameter
Example
AT+QLWULDATAEX=3,AA34BB,0x0001
OK
This command queries the status of the sending CON data to NB-IoT platform. This command only
queries the status of the CON data that has been sent.
BC35-G&BC28_AT_Commands_Manual 94 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
Parameter
Example
AT+QLWULDATASTATUS?
+QLWULDATASTATUS:4
OK
The command is used to set DFOTA update mode: automatic mode or manual mode. Under automatic
mode, the firmware download and update are completed automatically. Under manual mode, the firmware
download and update are controlled by device. Under manual mode, after received 5/0/1 update package
URL and 5/0/2 request update messages, the module will notify the device by AT+QLWEVTIND=<type>
command, and the device will decide whether or not to download and update firmware according to actual
conditions.
The function of manual mode requires the cooperation of Huawei’s IoT platform. 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.
BC35-G&BC28_AT_Commands_Manual 95 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
Parameter
Example
AT+QLWFOTAIND=1
OK
The command is used to set registration mode after the module reboot.
If set <type> to 1, after reboot and attached to network, the module will trigger automatic registration.
If set <type> to 0, after reboot and attached to network, the module will send REGISTERNOTIFY
message to the device, then the device triggers registration by command AT+QLWSREGIND.
It will give an <err> code and description as an intermediate message if the message cannot be sent.
Please refer to Chapter 7 for possible <err> values.
BC35-G&BC28_AT_Commands_Manual 96 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
OK
Parameter
Example
AT+QREGSWT=1
OK
AT+QREGSWT?
+QREGSWT:1
OK
Only)
The module reports the message sent status to the device after the device sent CON message to the
module. Please refer to Chapter 7 for possible <err> values.
Parameter
BC35-G&BC28_AT_Commands_Manual 97 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
The module reports the LWM2M event to the device. Please refer to Chapter 7 for possible <err> values.
Parameter
BC35-G&BC28_AT_Commands_Manual 98 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
7 Error Values
This chapter introduces the error values related to BC35-G and BC28 modules.
The error codes listed in the following two tables are compliant with the 3GPP specifications. Customers
can refer to 3GPP TS 27.007 V13.5.0, sub-clause 9.2 for all possible <err> values.
23 Memory failure
30 No network service
50 Incorrect parameters
300 ME failure
BC35-G&BC28_AT_Commands_Manual 99 / 108
NB-IoT Module Series
BC35-G&BC28 AT Commands Manual
The following error codes are specific ones for BC35-G and BC28 modules. Error code 512 was
previously error code 256. Error code 513 was previously error code 257.
NOTE
AT+CMEE=<n> command disables (<n>=0) or enables (<n>=1) the use of final result code “+CME
ERROR:<err>”. When <n>=1, a limited set of error codes will be returned.
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.
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
9 Examples
The following shows a simple example of sending, receiving and reading a UDP message. Once the
socket is closed, no replies will be received.
OK
AT+NSOST=0,192.53.100.53,5683,25,400241C7B17401724D0265703D323031363038323331363438
//Send a message
0,25
OK
OK
AT+NSOCL=0 //Close the socket
OK
+QLWEVTIND:3 //IoT platform has observed the data object 19. When
the module reports this message, the customer can
send data to the IoT platform.
AT+QLWULDATA=3,313233 //Send data with NON mode. It does not need the IoT
platform to ACK this data message.
OK
OK
+QLWDDLDATA:10,0102030405060708090A //The module has received data from the IoT platform.
OK
FIRMWARE DOWNLOADING
FIRMWARE DOWNLOADED
FIRMWARE UPDATING
AT+NCDP=127.0.0.1,5684 //Set IoT platform IP address and port. The port is 5684.
OK
AT+QSETPSK=201703230000024,0123456789ABCDEF0123456789ABCDEF
OK //Set PSK ID and PSK
10 Appendix A Reference
Table 8: Terms and Abbreviations
Abbreviation Description
CS Circuit Switched
MS Mobile Station
TA Terminal Adapter
TE Terminal Equipment
UE User Equipment