BLE Commands
The following sections document RS9116 WiSeConnect commands, parameters, responses and availability. For error codes returned by commands, see https://docs.silabs.com/rs9116-wiseconnect/latest/wifibt-wc-sapi-reference/error-codes .
Index
Group | AT Command API | Description |
---|---|---|
Common API's | ||
rsi_opermode | Set Operating Mode | |
rsibt_setlocalname | Set Local Name | |
rsibt_getlocalname | Query Local Name | |
rsibt_getrssi | Query RSSI | |
rsibt_getlocalbdaddr | Query Local BD Address | |
rsibt_getbtstackversion | Query BT Stack Version | |
rsibt_updategaintableoffsetMaxpower | Update Gain Table Offset and MaxPower | |
rsibt_btantennaselect | BT Antenna Select | |
rsibt_setantennatxpowerlevel | Set Antenna Tx Power Level | |
rsibt_btinit | Initialize BLE Module | |
rsibt_btdeinit | Deinitialize BLE Module | |
PER API's | ||
rsibt_bletransmit | BLE PER Transmit | |
rsibt_blereceive | BLE PER Receive | |
rsibt_perstats | PER Stats | |
rsibt_percwmode | PER CW Mode | |
BLE test mode API's | ||
rsibt_enhancedrxtest | LE Enhanced Receiver Test Mode | |
rsibt_enhancedtxtest | LE Enhanced Transmitter Test Mode | |
rsibt_endtest | LE Enhanced End Test Mode | |
BLE GAP API's | ||
rsibt_advertise | Advertise Local Device | |
rsibt_connect | Connect | |
rsibt_setresolutionenable | BLE SetResolution Enable | |
rsibt_scan | Scan | |
rsibt_disconnect | Disconnect | |
rsibt_getdevstate | Query Device State | |
rsibt_startencrypt | Start Encryption | |
rsibt_setadvertisedata | BLE Set Advertise Data | |
rsibt_setscanrspdata | BLE Set scan Response Data | |
rsibt_setrandadd | BLE Set Random Device Address | |
rsibt_lewhitelist | BLE Whitelist | |
rsibt_setphy | BLE Set Phy Command | |
rsibt_readphy | BLE Read Phy Command | |
rsibt_setdatalength | BLE Set Data Length Command | |
rsibt_readdatalength | BLE Read Maximum Data Length Command | |
rsibt_resolvlist | BLE Resolve List | |
getresolvlistsize | BLE GetResolvlist Size | |
rsibt_setprivacymode | BLE SetPrivacy Mode | |
rsibt_updateparams | BLE connection Update Command | |
rsibt_leltkreqreply | LE LTK Request-Reply | |
BLE SMP API's | ||
rsibt_smpreq | SMP Pair Request | |
rsibt_smpresp | SMP Response | |
rsibt_smppasskey | SMP Passkey | |
BLE GATT API's | ||
rsibt_getcharservices | Query Characteristic Services | |
at+rsibt_blesetmtu | BLE Set MTU Size Command | |
rsibt_mtuexchangeresp | LE MTU Exchange Resp | |
rsibt_getallprofiles | Query Profiles List | |
rsibt_getprofile | Query Profile | |
rsibt_getincservices | Query Include Services | |
rsibt_readbytype | Read Characteristic Value By UUID | |
rsibt_getdescriptors | Query Attribute | |
rsibt_readvalue | Query Attribute Value | |
rsibt_readmultiple | LE Read Multiple | |
rsibt_longread | Query Long Attribute Value | |
rsibt_writevalue | Set Attribute Value | |
rsibt_writecmd | Set Attribute Value No Ack | |
rsibt_longwrite | Set Long Attribute Value | |
rsibt_preparewrite | Set Prepare Long Attribute Value | |
rsibt_executewrite | Execute Long Attribute Value | |
BLE GATT - Server API's | ||
rsibt_sendnotify | Send Notify | |
rsibt_addservice | Add GATT Service Record | |
rsibt_addattribute | Add Attribute Record | |
rsibt_setlocalattvalue | Set Local Attribute Value | |
rsibt_getlocalattvalue | Get Local Attribute Value | |
rsibt_readresp | Send Read Response | |
rsibt_writeresponse | Write Response | |
rsibt_preparewriteresponse | Prepare Write Response | |
rsibt_sendindicate | Send Indicate | |
rsibt_removeservice | Remove Service | |
rsibt_removeattribute | Remove Attribute |
rsi_opermode :: Set Operating Mode
Description
This is the first command that needs to be sent from the Host after receiving the card ready frame from the module. This command configures the module in different functional modes.
Command Format
ext_custom_feature_bit_map gets enabled when BIT(31) is set to ‘1’ in custom_feature_bitmap
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>
ext_tcp_ip_feature_bit_map gets enabled when BIT(31) is set to ‘1’ in tcp_ip_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_tcp_ip_feature_bit_map>
bt_feature_bit_map gets enabled when BIT(31) is set to ‘1’ in both custom_feature_bit_map and ext_custom_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>,<bt_feature_bit_map>
ble_custom_feature_bit_map gets enabled when BIT(31) is set to 1 in custom_feature_bitmap, ext_custom_feature_bit_map and bt_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>,<bt_feature_bit_map>,<ext_tcp_ip_feature_bit_map>,<ble_custom_feature_bit_map>
ble_custom_ext_feature_bit_map gets enable when BIT(31) is set to 1 in ble_custom_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>,<bt_feature_bit_map>,<ext_tcp_ip_feature_bit_map>,<ble_custom_feature_bit_map>,<ble_custom_ext_feature_bit_map>
config_feature_bit_map gets enabled when BIT(31) is set to '1' in both tcp_ip_feature_bit_map and ext_tcp_ip_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>,<bt_feature_bit_map>,<ext_tcp_ip_feature_bit_map>,<ble_custom_feature_bit_map>,<ble_custom_ext_feature_bit_map>,<config_feature_bit_map>
Parameters
oper_mode (4 bytes)
-
Sets the mode of operation.
oper_mode
contains two parts <wifi_oper_mode, coex_mode>. The lower two bytes representwifi_oper_mode
and the higher two bytes representcoex_mode
.
oper_mode = ((wifi_oper_mode) | (coex_mode <<16))
custom_feature_bit_map (4 bytes)
-
This bitmap is used to enable following BT/BLE custom features:
-
BIT[11]: To Enable Packet Pending Indication(
wake on wireless
) in UART mode
- 0 – Disable
- 1 - Enable
-
BIT[29]: To Enable IAP support in BT mode
- 0 – Disable
- 1 - Enable
-
BIT[31]: This bit is used to validate extended custom feature bitmap.
- 0 – Extended custom feature bitmap is invalid
- 1 – Extended custom feature bitmap valid
- BIT[0:1],BIT[3:4],BIT[7],BIT[21], BIT[29], BIT[30]: Reserved
-
BIT[11]: To Enable Packet Pending Indication(
wake on wireless
) in UART mode
- If opermode is 8 (PER mode is selected) - feature_bit_map, tcp_ip_feature_bit_map and custom_feature_bit_map can be ignored or not valid. Set to zero.
ext_custom_feature_bit_map (4 bytes)
- This feature bitmap is an extension of custom feature bitmap and is valid only if BIT[31] of custom feature bitmap is set. This enables the following feature.
-
BIT[0]: To enable antenna diversity feature.
- 0 – Disable antenna diversity feature
- 1 – Enable antenna diversity feature
-
BIT[1]: This bit is used to enable 4096 bit RSA key support. If key size is 4096 bit, module will use a software routine for exponentiation, so connection time will increase.
- 0 – Disable 4096 bit RSA key support
- 1 – Enable 4096 bit RSA key support
-
BIT[3]: This bit is used to enable SSL certificate with 4096-bit key support. If this bit is enabled then connected client who is in power save may miss the packet.
- 0 – Disable 4096 bit key support for SSL sockets
- 1 – Enable 4096 bit key support for SSL sockets
-
BIT[5]: This bit is used to enable Pre-authentication Support.
- 0 – Disable Pre-authentication Support
- 1 – Enable Pre-authentication Support
-
BIT[6]: This bit is used to enable 40MHZ Support
- 0 – Disable 40MHz Support
- 1 – Enable 40MHz Support
-
BIT[20:21] - These bits are used to configure 384k mode (which is mandatory).
- 0 - Disable
- 1 - Enable
-
BIT[31] This bit is used to validate bt and BLE feature bitmap.
- 0 – BT & BLE feature bitmap is invalid
- 1 – BT & BLE feature bitmap valid
bt_feature_bit_map (4 bytes)
-
This bitmap is valid only if BIT[31] of the extended custom feature bit map is set.
-
BIT[0:1] – HP/LP Chain selection in BT classic
- 0 - BDR/EDR HP chain
- 1 - BDR HP chain
- 2 - BDR LP chain
- BIT[2:14] – reserved
-
BIT[15] – HFP profile bit enable
- 0 - Disable the HFP profile
- 1 - Enable the HFP profile
- BIT[16:19] – reserved for future use
- BIT[20:22] – Number of slaves supported by BT; Maximum no of bt slaves: 2
-
BIT [23] – A2DP profile bit enable
- 0 - Disable the A2DP profile
- 1 - Enable the A2DP profile
-
BIT [24] – A2DP profile role selection
- 0 - A2DP sink
- 1 - A2DP source
-
BIT [25] – A2DP accelerated mode selection
- 0 - Disable accelerated mode
- 1 - Enable accelerated mode
-
BIT [26] – A2DP I2S mode selection
- 0 - Disable I2S mode
- 1 - Enable I2S mode
-
BIT [27:29] – reserved BIT[30] – RF Type selection
- 0 - External Rf Type selection
- 1 - Internal Rf Type selection
-
BIT[31] - Validate BLE feature bit map.
-
0 - Ignore BLE feature bit map
- Default number of BLE slaves supported is 3.
- Default number of BLE masters supported is 1.
- Maximum of 5 services in total can exist out of which two services namely GAP and GATT are added by default. So user can add up to 3 services.
- Maximum of 20 attributes in total can exist out of which ten attributes of GAP and GATT are added by default. So user can add upto 10 attributes.
-
1 - valid BLE feature bit map
- User can enter maximum of 8 BLE slaves.
- User can enter maximum of 2 BLE masters.
- Maximum of 10 services in total can exist out of which two services namely GAP and GATT are added by default. So if this bitmap has value 10 user can add upto 8 services.
- Maximum of 80 attributes in total can exist out of which ten attributes of GAP and GATT are added by default. So if this bitmap has value 80 user can add upto 70 attributes.
- RSI_BLE_NUM_CONN_EVENTS> = RSI_BLE_MAX_NBR_SLAVES + RSI_BLE_MAX_NBR_MASTERS.
-
0 - Ignore BLE feature bit map
-
BIT[0:1] – HP/LP Chain selection in BT classic
ble_custom_feature_bit_map (4 bytes)
-
This bitmap is valid only if BIT[31] of bt custom feature bit map is set.
- BIT [0:7] – BLE number of attributes, Maximum No of BLE attributes = 80, Please refer NOTE given below for more info
- BIT[8:11] – BLE number of GATT services, Maximum no services - 10, Please refer NOTE given below for more info
- BIT [12:15] – BLE number of slaves, Maximum No of BLE slaves = 8, Please refer NOTE given below for more info
-
BIT[16:23] – BLE tx power save index
- Give 31 as BLE tx power index (eg: 31<<16)
- This variable is used to select the BLE tx power index value. The following are the possible values.
- Default Value for BLE Tx Power Index is 31
-
The range for the BLE Tx Power Index is 1 to 75 (0, 32 index is invalid)
- 1 - 31 BLE - 0dBm Mode
- 33 - 63 BLE - 10 dBm Mode
- 64 - 75 BLE - HP Mode
-
BIT[24:26] – BLE power save options
- BLE_DUTY_CYCLING BIT(24)
- BLR_DUTY_CYCLING BIT(25)
- BLE_4X_PWR_SAVE_MODE BIT(26)
- BLE_DISABLE_DUTY_CYCLING 0
- Note : Default BLE_DISABLE_DUTY_CYCLING. This feature is not supported in current release
- BIT[27:28] - BLE number of masters. Maximum No of BLE Masters = 2, Please refer NOTE given below for more info
-
BIT[29] - GATT ASYNC BIT
- 0 - Gatt Async Disable
- 1 - Gatt Async Enable
- Note : Expectation of GATT Async Bit Enable: Response structure will be filled in the Event and Event will come later. Not in sync with response for qurey command.
-
BIT[30] - To ensure the RS9113/RS9116 compatible features
- 0 - Enable the 9113 compatible features
- 1 - Enable the 9116 compatible features
-
BIT[31] -Validate BLE custom ext feature bit map.
- 0 - Ignore BLE custom ext feature bit map
- 1 - valid BLE custom ext feature bit map
ble_custom_ext_feature_bit_map (4 bytes)
-
This bitmap is valid only if BIT[31] of BLE custom feature bit map is set.
- BIT [0:4] - BLE number of connection Events. Its describes the number of buffers need to be allocated for BLE on the opermode
- BIT[5:12] - BLE number of record size in bytes (n) e.g. n*16:(n=60, Default 1024 bytes(1K))
-
BIT[13] - GATT INIT
- 0 - Gatt Init in Firmware i.e both the GAP service and GATT service will be maintained by Firmware
- 1 - Gatt Init in Host i.e GAP service and GATT service should be created by the APP/Host/User and the ATT transactions like read, write, notify and indicate shall be handled by the APP/Host/User. Note : Default Gatt Init in Firmware
-
BIT[14] - Indication response from APP. As per ATT protocol for every indication received from the server should be acknowledged(indication response) by the Client. If this bit is disabled then firmware will send the acknowledgment(indication response) and if the bit is enabled then APP/Host/User needs to send the acknowledgment(indication response).
- 0 - Disable (default)
- 1 - Enable
-
BIT[15] - MTU Exchange request initiation from APP. If this bit is disabled, the firmware will initiate the MTU exchange request to the remote device on the successful connection. And if Peer initiates MTU exchange Request then firmware will send Exchange MTU Response in reply to a received Exchange MTU Request. If this bit is enabled then APP/Host/User need to initiate the MTU request by using the
at+rsibt_blesetmtu
Command. And if Peer initiates MTU exchange Request then APP/Host/User shall send Exchange MTU Response in reply to a received Exchange MTU Request using "at+rsibt_mtuexchangeresp" command.- 0 - Disable (default)
- 1 - Enable
-
BIT[16] - Set SCAN Resp Data from APP. Device will maintain some default scan reponse data and will be used in the scan_response controller frame. By enabling this bit we can make the defalut data as Null (empty).
- 0 - Disable (default)
- 1 - Enable
-
BIT[17] - Disable Coded PHY from APP. Device will support the LE-coded phy feature (i.e LR - 125kbps and 500kbps) by default.
If this bit is enabled, the device will not the support of the LE-coded phy rates.
- 0 - Disable (defautl)
- 1 - Enable
- BIT[18:31] - Reserved.
config_feature_bit_map (4 bytes)
-
This bitmap is valid only if BIT[31] of
ext_tcp_ip_feature_bit_map
is set.
Config Feature bitmap | Functionality | Set to 0 | Set to 1 | Notes |
---|---|---|---|---|
config_feature_bit_map[0] | To select wakeup indication to host.If it is disabled UULP_GPIO_3 is used as a wakeup indication to host.If it is enabled UULP_GPIO_0 is used as a wakeup indication to host. | Disable | Enable | |
config_feature_bit_map[1:15] | Reserved | |||
config_feature_bit_map[16] | Active high or low interrupt mode selection for wake on wireless operationIf it is disabled active low interrupt is used in wake on wireless operation.If it is enabled active high interrupt isused in wake on wireless operation. | Disable | Enable | |
config_feature_bit_map[23:17] | Reserved | |||
config_feature_bit_map[25:24] |
Configurability options for 40MHz XTAL good time in μs
[00 = 1000]
,
[01 = 2000]
,
[10 = 3000]
,
[11 = 600]
|
These bits are used to select XTAL good time.These changes are available from Release2.3.0 onwards. Release prior to 2.3.0 these config_feature_bitmap[31:17] are reserved. Its only applicable for customers using chip not the module. Please contact Support for more details. Default value is 1000 µs. | ||
config_feature_bit_map[31:26] | Reserved for LMAC | . |
Note!
- 32KHz external clock connection and power save pins
- As per Silicon Labs datasheet update in May 2019, the 32KHz external clock and the power save pins connections have changed. To keep SW compatibility between initial design (i.e. first EVKs developed by Silicon Labs) as well as new designs, there are currently 2 options for connecting the 32KHz external clock and the power save pins:
-
Option 1
- External 32KHz clock connection pins : XTAL_32KHZ_P & XTAL_32KHZ_N
- Power Save connection pins : HOST_BYP_ULP_WAKEUP & UULP_VBAT_GPIO_3
-
Option 2
- External 32KHz clock connection pin : UULP_VBAT_GPIO_3
- Power Save connection pins : HOST_BYP_ULP_WAKEUP & UULP_VBAT_GPIO_0
- As per Silicon Labs datasheet updated in May'2019, Option 2 must be used for External 32KHz external clock and Power save connections in new designs
Response
Result Code | Description |
---|---|
OK | Success |
ERROR
|
Failure |
Example 1
Enable WLAN and BLE operating mode with BLE power save index as 31 and 9116 compatible feature enabled.
Command
at+rsi_opermode=851968,0,1,2147483648,2150629376,3221225472,0,3760128000,2048
Response
OK
bt_loaded
Example 2
Enable 7 BLE slaves, 5 services and 25 attributes, 30 BLE power save index
Command
at+rsi_opermode=851968,0,1,2147483648,2150629376,3221225472,0,1996057
Response
OK
bt_loaded
[ Go to top ]
rsibt_setlocalname :: Set Local Name
Description
This is used to set name to the local device.
at+rsibt_setlocalname=<NameLength>,<Name>
Parameters
NameLength
- Length of the name of local device.
Name (16 bytes)
- Name of the local device.
- When the name of the local device is set to a value with length more than 16 bytes then error is returned with an error code 0x4E66.
Example
Command
at+rsibt_setlocalname=6,silabs
Response
OK
[ Go to top ]
rsibt_getlocalname :: Query Local Name
Description
This is used to query the name of the local device.
Command Format
at+rsibt_getlocalname?
Response
Result Code | Description |
---|---|
OK <name_length>,<local_device_name> | Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
name_length
- Length of the name
local_device_name (16 bytes)
- Name of the local device
Example
Command
at+rsibt_getlocalname?
Response
OK 6,silabs
[ Go to top ]
rsibt_getrssi :: Query RSSI
Description
This is used to query RSSI of the connected remote BD device
at+rsibt_getrssi=<BDAddress>?
Parameters
BDAddress (6 bytes)
- Bluetooth Address of the connected remote device.
Response
Result Code | Description |
---|---|
OK
|
Command Success |
ERROR <Error_code> | Command Fail |
where ...
rssi value
- RSSI value of the connected remote device.
Example
Command
at+rsibt_getrssi=AA-BB-CC-DD-EE-FF?
Response
OK -70
[ Go to top ]
rsibt_getlocalbdaddr :: Query Local BD Address
Description
This is used to query the BD address of the local device
Command Format
at+rsibt_getlocalbdaddr?
Response
Result Code | Description |
---|---|
OK
|
Command Success with valid response. |
ERROR <Error_code> | Command Fail. |
where ...
BDAddress (6 bytes)
- Bluetooth Address of the local device
Example
Command
at+rsibt_getlocalbdaddr?
Response
OK AA-BB-CC-DD-EE-FF
[ Go to top ]
rsibt_getbtstackversion :: Query BT Stack Version
Description
This is used to query the Current BT Stack Version.
Command Format
at+rsibt_getbtstackversion?
Response
Result Code | Description |
---|---|
OK
|
Command Success with valid response. |
ERROR <Error_code> | Command Fail. |
where ...
stack version(10 bytes) - Current Stack Version
Example
Command
at+rsibt_getbtstackversion?
Response
OK 2.1.0
[ Go to top ]
rsibt_updategaintableoffsetMaxpower :: Update Gain Table Offset and MaxPower
Description
This command is used to configure region based gain table the module from user. This method is used for overwriting default region based gain tables that are present in firmware.
There are two types of gain tables for BT and BLE protocols
Gain table holding Max Tx power values Gain table with Max power vs offset values Customer must configure both gain tables mentioned above in the same order to apply the changes in the firmware properly.
Note!
- This command must be used immediately after opermode request
- This command is applicable for High performance(HP) mode only.
-
Internally firmware maintains two tables
- Gain table holding Max Tx power values for all regions
- Gain table with Max power vs offset values for each channel of all regions
- There are 5 regions supported and are FCC, ETSI, TELEC, KCC, WORLDWIDE. These FCC/ETSI/TELEC/KCC gain table max power level and offset values should be loaded in end-to-end mode via BT/BLE User Gain table. This has to be called upon every boot-up since this information is not saved inside flash. SoC uses these tables in FCC/ETSI/TELEC/KCC to limit power and not to violate allowed limits.
- For Worldwide region firmware uses Worldwide values for Tx. For other regions(FCC/ETSI/TELEC/KCC), Firmware uses min value out of Worldwide & Region based values for Tx. Also there will be part to part variation across chips and offsets are estimated during manufacturing flow which will be applied as correction factor during normal mode of operation.
- This frame has to be used by customers who has done FCC/ETSI/TELEC/KCC certification with their own antenna. All other customers should not use this. Inappropriate use of this frame may result in violation of FCC/ETSI/TELEC/KCC or any certifications and Silicon labs is not liable for that.
-
In max power per region configuration, users need to update all regions.
- Update regions that are not certified with max power as ZERO.
- Update the world-wide region with proper max power provided in Gain Tables with the release. This represents values of the initial chip certification.
- In max power vs offset configuration, only the region that is certified can be updated. Other regions can be ignored.
Command Format
at+rsibt_updategaintableoffsetMaxpower=<node_id>,<update_gain_table_type>,<payloadlength>,<payload>
Parameters
node_id
- 0 - BLE
- 1 - BT
update_gain_table_type
-
Request type to select appropriate gain table
- 0 - Update gain table with max power values
- 1 - Update gain table with offset values
payloadlength
- Gain table payload length
payload
- Gain table payload data consist of channel power values for different regions in the below mentioned format.
- Gain table holding Max Tx power values : (Each entry of the table is 1 byte)
<TABLE NAME>[] = {
<REGION NAME 1>, <MAX POWER>,
<REGION NAME 1>, <MAX POWER>,
.
.
<REGION NAME N>, <MAX POWER>
};
- Gain table with Max power vs offset values : (Each entry of the table is 1 byte)
<TABLE NAME>[] = {
<Number Of Regions - 'r'>,
<REGION NAME 1>, <Number Of Channels - 'm'>,
<CHANNEL NUMBER 1>, <OFFSET>,
<CHANNEL NUMBER 2>, <OFFSET>,
.
.
<CHANNEL NUMBER m>, <OFFSET>,
<REGION NAME 2>, <No Of Channels - 'n'>,
<CHANNEL NUMBER 1>, <OFFSET>,
<CHANNEL NUMBER 2>, <OFFSET>,
.
.
<CHANNEL NUMBER n>, <OFFSET>,
.
.
<REGION NAME r>, <No Of Channels - 'n'>,
<CHANNEL NUMBER 1>, <OFFSET>,
<CHANNEL NUMBER 2>, <OFFSET>,
.
.
<CHANNEL NUMBER n>, <OFFSET>,
};
- Supported Region names: FCC, ETSI,TELEC, KCC, WORLDWIDE
- The following are the regions and there values to be passed instead of macros in the example.
Value | Region |
---|---|
0 | FCC |
1 | ETSI |
2 | TELEC |
4 | KCC |
3 | WORLDWIDE |
- If Tx powers of all the channels are same, then channel number as 255. If Tx power is not same for all channels, then indicate no-of channels and specify tx power values for all the channels indicated
Response
Result Code | Description |
---|---|
OK | Success with valid response. |
ERROR <Error_code> | Command Fail. |
4F01 - Invalid gain table payload length | |
4F02 - Invalid region | |
4F03 - Invalid gain table offset request type | |
4F04 - Invalid node id request |
Example 1 - Update BLE Max Power
Command
at+rsibt_updategaintableoffsetMaxpower= 0,0,10,0,17,1,10,2,14,3,20,4,12
Example 2 - Update BLE Offset
Command
at+rsibt_updategaintableoffsetMaxpower= 0,1,55,5,0,4,255,0,0,0,39,0,78,2,1,4,255,0,0,0,39,0,78,0,2,4,255,3,12,0,15,5,26,1,3,6,255,0,0,0,3,0,39,1,75,2,78,0,4,4,255,3,2,2,5,5,7,1
Note! Here...
- 255 represents all channels except explicitly mentioned -> zero offset.
- 0th channel-> zero offset.
- 39th channel-> zero offset.
- 78th channel-> 2 offset
Response
OK
[ Go to top ]
rsibt_bletransmit :: BLE PER Transmit
Description
This command can be given to start the BLE transmission.
Command Format
at+rsibt_bletransmit=<enable>,<access_addr>,<ble_rate>,<rx_channel_num>,<tx_channel_num>,<scrambler_seed>,<le_channel_type>,<hopping_type>,<antenna_sel>,<pll_mode>,<rf_type>,<rf_chain>,<pkt_len>,<payload_type>,<tx_power_index>,<tx_mode>,<inter_packet_gap>,<num_of_packets>
Parameters
enable/disable
-
This parameter enables/disables the BLE per transmit mode
- 0 - PER Transmit Disable |
- 1 - PER Transmit Enable
access_addr
- This is the access address with which packets are transmitted
ble_rate
-
This is the Phy rate at which packets are transmitted
- 1 - 1 Mbps
- 2 - 2 Mbps
- 4 - 125 Kbps Coded
- 8 - 500 Kbps Coded
rx_channel_num
- Rx channel number (0 - 39)
tx_channel_num
- Tx channel number (0 - 39)
scrambler_seed
- Initial seed to be used for whitening. It should be set to ‘0’ in orderto disable whitening.In order to enable, one should give the scrambler seed value which is used on the receive side
le_channel_type
-
This is the LE channel type (data or advertise channel)
- 0x00 - Advertise Channel
- 0x01 - Data Channel (to be used by Default)
hopping_type
- This field defines the frequency hopping type to be used 0 - No Hopping1. - Fixed Hopping2. - Random Hopping (rx_chnl_num, tx_chnl_num parameters areunused in this mode)
antenna_sel
-
Select the antenna to be used. Refer to the datasheet for your hardware to check whether or not it contains an onboard antenna.
- 2 - ONBOARD_ANT_SEL
- 3 - EXT_ANT_SEL
pll_mode
-
This field define the pll_mode type to be used
- 0 - PLL_MODE0 (Default)
- 1 - PLL_MODE1
rf_type
-
This field defines the selection of RF type (internal/external)
- 0 - External RF
- 1 - Internal RF
rf_chain
-
This field corresponds to the selection of RF chain (HP/LP) to be used
- 2 - BT_HP_CHAIN
- 3 - BT_LP_CHAIN
pkt_len
- length of the packet to be transmitted. Max pkt_len to betransmitted is 240
payload_type
-
Type of payload data sequence
- 0x00 - PRBS9 sequence ‘11111111100000111101...
- 0x01 - Repeated ‘11110000’
- 0x02 - Repeated ‘10101010’
- 0x03 - PRBS15
- 0x04 - Repeated ‘11111111’
- 0x05 - Repeated ‘00000000’
- 0x06 - Repeated '00001111'
- 0x07 - Repeated '01010101'
tx_power_index
-
This field corresponds to the transmit power. The range for the Tx Power Index is 1 to 63 (0 and 32 are invalid.)
-
If rf chain is BT_HP_CHAIN
- 1 - 12 BLE - HP Mode
- 127 magic number for selecting maximum possible power output
-
If rf chain is BT_LP_CHAIN
- 1 - 31 BLE - 0 dBm Mode
- 33 - 63 BLE- 10 dBm Mode
-
If rf chain is BT_HP_CHAIN
tx_mode
-
This field corresponds to the transmit mode to be used either Burst/Continuous
- 0 - BURST_MODE
- 1 - CONTINUOUS_MODE
- 2 - CONTINUOUS_WAVE_MODE (CW_MODE)
inter_pkt_gap
- This field takes the value of inter packet gap. Number of slots to be skipped between two packets - Each slot will be 1250usec
num_of_packets
- This field defines the number of packets to be transmitted, default to zero for continuous transmission. It is valid only when the <tx_mode> is set to Burst mode
Response
Result Code | Description |
---|---|
OK | Command Success with valid response. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_bletransmit=1,71764129,1,10,10,0,1,0,3,0,1,3,240,1,31,0,0,0
Response
OK
[ Go to top ]
rsibt_blereceive :: BLE PER Receive
Description
This command can be given to start the BLE reception.
Command Format
at+rsibt_blereceive=<enable>,<access_addr>,<ble_rate>,<rx_channel_num>,<tx_channel_num>,<scrambler_seed>,<le_channel_type>,<hopping_type>,<antenna_sel>,<pll_mode>,<rf_type>,<rf_chain>,<ext_data_len_ind>,<loop_back_mode>,<duty_cycling>
Parameters
enable
-
This parameter enables/disables the BLE per receive mode
- 0 - PER Receive Disable
- 1 - PER Receive Enable
access_addr
- This is the access address with which packets are transmitted
ble_rate
-
This is the Phy rate at which packets are transmitted
- 1 - 1 Mbps
- 2 - 2 Mbps
- 4 - 125 Kbps Coded
- 8 - 500 Kbps Coded
rx_channel_num
- Rx channel number (0 - 39)
tx_channel_num
- Tx channel number (0 - 39)
scrambler_seed
- Initial seed to be used for whitening. It should be set to ‘0’ in order to disable whitening. In order to enable, one should give the scrambler seed valuewhich is used on the transmit side
le_channel_type
-
This is the LE channel type (data or advertise channel)
- 0x00 - Advertise Channel
- 0x01 - Data Channel (to be used by Default)
hopping_type
-
This field defines the frequency hopping type to be used
- 0 - No Hopping
- 1 - Fixed Hopping
- 2 - Random Hopping (rx_chnl_num, tx_chnl_num parameters areunused in this mode)
antenna_sel
-
Select the antenna to be used. Refer to the datasheet for your hardware to check whether or not it contains an onboard antenna.
- 2 - ONBOARD_ANT_SEL
- 3 - EXT_ANT_SEL
pll_mode
-
This field define the pll_mode type to be used
- 0 - PLL_MODE0 (to be used by Default)
- 1 - PLL_MODE1
rf_type
-
This field defines the selection of RF type (internal/external)
- 0 - External RF
- 1 - Internal RF
rf_chain
-
This field corresponds to the selection of RF chain (HP/LP) to be used
- 2 - BT_HP_CHAIN
- 3 - BT_LP_CHAIN
ext_data_len_ind
-
This field enables/disables the extended data length
- 0 - Extended Data length disabled(27 Bytes)
- 1 - Extended Data length enabled(240 Bytes)
loop_back_mode
-
This field defines the loopback to be enable or disable
- 0 - LOOP_BACK_MODE_DISABLE
- 1 - LOOP_BACK_MODE_ENABLE
duty_cycling
-
This field enables/disables the duty cycling
- 0 - Duty Cycling Disabled (to be used by Default)
- 1 - Duty Cycling Enabled
Response
Result Code | Description |
---|---|
OK | Command Success with valid response. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_blereceive=1,71764129,1,10,10,0,1,0,3,0,1,3,240,1,0
Response
OK
[ Go to top ]
rsibt_perstats :: PER Stats
Description
The following PER statistics are returned. This command may be used for BTC and BLE.
Command
at+rsibt_perstats
Parameters
Example
Command
at+rsibt_perstats
Response
OK <crc_fail_count>,<crc_pass_count>,<tx_abort_count>,<rx_drop_count>,<rx_cca_idle_count>,<rx_start_idle_count>,<rx_abrt_count>,<tx_dones>,<rssi>,<id_pkts_rcvd>,<dummy>
where ...
crc_fail_count (2 bytes)
- The number of packets received which failed CRC check
crc_pass_count (2 bytes)
- The number of packets received which passed CRC check
tx_abort_count (2 bytes)
- The number of aborted TX packets
rx_drop_count (2 bytes)
- The number of dropped RX packets
rx_cca_idle_count (2 bytes)
- The number of CCA(Clear Channel Assesment) Idle packets
rx_start_idle_count (2 bytes)
- The number of RX start packets
rx_abrt_count (2 bytes)
- The number of aborted RX packets
tx_dones (2 bytes)
- The number of Successful Transmitted packets
rssi (1 byte integer)
- The RSSI value of the last received packet
id_pkts_rcvd (2 bytes)
- The number of ID packets Received BD-Address
dummy (2 bytes)
- Dummy array of length 5
Response Example
OK 000a 00a0 000F 0000 0000 0000 0000 00b0 001f 0000 0000
BLE Channel Number Reference
The band and bandwidth for all channels is 2.4 GHz and 2 MHz respectively.
Channel | Center Freq (MHz) |
---|---|
0 | 2402 |
1 | 2404 |
2 | 2406 |
3 | 2408 |
4 | 2410 |
5 | 2412 |
6 | 2414 |
7 | 2416 |
8 | 2418 |
9 | 2420 |
10 | 2422 |
11 | 2424 |
12 | 2426 |
13 | 2428 |
14 | 2430 |
15 | 2432 |
16 | 2434 |
17 | 2436 |
18 | 2438 |
19 | 2440 |
20 | 2442 |
21 | 2444 |
22 | 2446 |
23 | 2448 |
24 | 2450 |
25 | 2452 |
26 | 2454 |
27 | 2456 |
28 | 2458 |
29 | 2460 |
30 | 2462 |
31 | 2464 |
32 | 2466 |
33 | 2468 |
34 | 2470 |
35 | 2472 |
36 | 2474 |
37 | 2476 |
38 | 2478 |
39 | 2480 |
[ Go to top ]
rsibt_percwmode :: PER CW Mode
Description
This command can be given to enable the Continuous Wave mode transmission. Need to issue this command after giving the BLE transmit command.
Command Format
at+rsibt_percwmode=<enable>
Parameters
enable
- 0 - disable
- 1 - enable
Example - Start CW mode
Command
at+rsibt_percwmode=1
Response
OK
[ Go to top ]
rsibt_advertise :: Advertise Local Device
Description
This is used to expose or advertise about the local device to the remote BT devices.
Command Format
All parameters should be in decimal except DirectAddr which should be in hexadecimal
at+rsibt_advertise=<Status>,<AdvertiseType>,<FilterType>,<DirectAddrType>,<DirectAddr>,<adv_int_min>,<adv_int_max>,<own_add_type>,<adv_channel_map>
Parameters
status
-
enable/disable Advertising
- 0 - Disable Advertising
- 1 - Enable Advertising
AdvertiseType (1 byte)
- Advertising type used during advertising.
State | Description |
---|---|
0x80 | connectable undirected |
0x81 | connectable directed with high duty cycle |
0x82 | scannable undirected |
0x83 | Non connectable undirected |
0x84 | connectable directed with low duty cycle |
FilterType (1 byte)
- advertising filter type
Filter type | Description |
---|---|
0 | Allow scan Request from Any, Allow connect Request from Any. |
1 | Allow scan Request from White List Only, Allow connect Request from Any. |
2 | Allow scan Request from Any, Allow connect Request from White List Only. |
3 | Allow scan Request from White List Only, Allow connect Request from White List Only. |
DirectAddrType (1 byte)
-
address type of the device to which directed advertising has to be done
- 0 – Public address
- 1 – Random address
- 2 – Resolvable public address
- 3 – Resolvable random address
DirectAddr (1 byte)
- Address of the device to which directed advertising has to be done
adv_int_min (2 bytes)
- Advertising interval min
-
N = 0xXXXX
- Minimum advertising interval for non-directed advertising
- Range: 0x0020 to 0x4000
- Default: N = 0x0800 (1.28 second)
- Time = N * 0.625 msec
- Time Range: 20 ms to 10.24 sec.
adv_int_max (2 bytes)
- Advertising interval max
-
N = 0xXXXX
- Minimum advertising interval for non-directed advertising
- Range: 0x0020 to 0x4000
- Default: N = 0x0800 (1.28 second)
- Time = N * 0.625 msec
- Time Range: 20 ms to 10.24 sec.
own_add_type (1 byte)
-
Address of the local device.
- 0 – Public address
- 1 – Random address
- 2 – Resolvable public address
- 3 – Resolvable random address
adv_channel_map (1 byte)
- advertising channel map.
Value | Parameter Description |
---|---|
00000000b | Reserved for future use |
xxxxxxx1b | Enable channel 37 use |
xxxxxx1xb | Enable channel 38 use |
xxxxx1xxb | Enable channel 39 use |
00000111b | Default (all channels enabled) |
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_advertise=1,128,0,0,0,32,32,0,7
Response
OK
Note! For scannable undirected and non-connectable undirected advertising modes, minimum advertising interval should be 41ms and maximum advertising interval should be 1.28s
[ Go to top ]
rsibt_scan :: Scan
Description
This is used to scan for remote LE advertising devices.
Command Format
at+rsibt_scan=<Status>,<Scantype>,<FilterType>,<own_add_type>,<scan_int>,<scan_win>
Parameters
All parameters are in decimal
Status (1 byte)
-
Enable/disable scanning
- 0 – Disable scanning
- 1 – Enable scanning
scantype (1 byte)
- 0 - Passive scanning
- 1 - Active scanning
FilterType (1 byte)
- 0 - Accept all advertisement packets.
- 1 - Accept only white listed device advertisement packets.
own_add_type (1 byte)
-
Address of the local device.
- 0 – Public address
- 1 – Random address
- 2 – Resolvable public address
- 3 – Resolvable random address
scan_int (2 bytes)
- scan interval. This is defined as the time interval from when the Controller started its last LE scan until it begins the subsequent LE scan.
- Range: 0x0004 to 0x4000
- Default: 0x0010 (10 ms)
- Time = N * 0.625 msec
- Time Range: 2.5 msec to 10 . 24 seconds
scan_win (2 bytes)
- scan window. The duration of the LE scan. LE_scan_Window shall be less than or equal to LE_scan_Interval
- Range: 0x0004 to 0x4000
- Default: 0x0010 (10 ms)
- Time = N * 0.625 msec
- Time Range: 2.5 msec to 10240 msec
Response
| Result Code | Description | | OK | Command Success. | | ERROR <Error_code> | Command Fail. |
Example
Disable scan
Command
at+rsibt_scan=0,0,0,0,100,10
Response
OK
Note!
- Scan Interval must be greater than scan window.
rsibt_connect :: Connect
Description
This is used to create connection with remote LE device.
Command Format
at+rsibt_connect=< AddressType >, < BDAddress >< LeScanInterval >,< LeScanWindow >,< ConnIntervalMin >,< ConnIntervalMax >,< ConnLatency >,< SupervisionTimeout >
Parameters
AddressType (1 byte)
-
Specifies the type of the address mentioned in BD Address
- 0 – Public Address
- 1 – Random Address
BDAddress (6 bytes)
- This parameter describes the device address of remote device
LescanInterval (2 bytes)
- LE scan Interval : N=0xXXXX
- This is defined as the time interval from when the Controller started its last LE scan until it begins the subsequent LE scan.
- Range: 0x0004 to 0x4000
- Time = N * 0.625 msec
- Time Range: 2.5 msec to 10 . 24 seconds
- Note : le_scan_interval and le_scan_window parameters are recommendations from the Host on how long (LE_scan_Window) and how frequently (LE_scan_Interval) the Controller should scan.
LescanWindow (2 bytes)
- LE scan Window : N=0xXXXX
- Amount of time for the duration of the LE scan.LE_scan_Window shall be less than or equal to LE_scan_Interval
- Range: 0x0004 to 0x4000
- Time = N * 0.625 msec
- Time Range: 2.5 msec to 10.24 seconds
- NOTE: le_scan_interval and le_scan_window parameters are recommendations from the Host on how long (LE_scan_Window) and how frequently (LE_scan_Interval) the Controller should scan.
ConnIntervalMin (2 bytes)
- Min connection Interval : N=0xXXXX
- Minimum value for the connection event interval. This shall be greater than or equal to Conn_Interval_Min.
- Range: 0x0006 to 0x0C80
- Time = N * 1.25 msec
- Time Range: 7.5 msec to 4 seconds.
- 0x0000 – 0x0005 and 0x0C81 – 0xFFFF - Reserved for future use
ConnIntervalMax(2 bytes)
- Max connection Interval : N=0xXXXX
- Minimum value for the connection event interval. This shall beless than or equal to Conn_Interval_Max.
- Range: 0x0006 to 0x0C80
- Time = N * 1.25 msec
- Time Range: 7.5 msec to 4 seconds
- 0x0000 – 0x0005 and 0x0C81 – 0xFFFF - Reserved for future use
ConnLatency (2 bytes)
- Connection Latency : N = 0xXXXX
- Slave latency for the connection in number of connection events.
- Range: 0x0000 to 0x01F4
SupervisionTimeout (2 bytes)
- Supervision Timeout : N = 0xXXXX Supervision timeout for the LE Link.
- Range: 0x000A to 0x0C80
- Time = N * 10 msecTime
- Range: 100 msec to 32 seconds
- 0x0000 – 0x0009 and 0x0C81 – 0xFFFF - Reserved for futureuse
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_connect=0,B4-99-4C-64-BE-F5,96,32,160,160,0,100
Response
OK
Note!
- Reception of the response doesn't mean that Connection with the remote device is completed.
- Connection is said to complete after it receives Connection Complete Event. The user is recommended not to give further commands before receiving the above Event. But the user is allowed to give Disconnect even before Connection Complete Event is received.
[ Go to top ]
rsibt_disconnect :: Disconnect
Description
This is used to cancel create connection or disconnect HCI connection, if already connected.
Command Format
at+rsibt_disconnect=<BDAddress>
Parameters
BDAddress (6 bytes)
- BD Address of the remote device
Response
| Result Code | Description | | OK | Command Success. | | ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_disconnect=53-41-CC-FF-91-2A
Response
OK
[ Go to top ]
rsibt_getdevstate :: Query Device State
Description
This is used to query state of the local device.
Command Format
at+rsibt_getdevstate?
Result Code | Description |
---|---|
OK,
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
DeviceState (1 byte)
-
Bit 0 - Advertise
- 0-disable
- 1-enable
-
Bit 1 - scan state
- 0-disable
- 1-enable
-
Bit 2 - connection initiated
- 0-not initiated
- 1-initiated
-
Bit 3 - connected state
- 0-not connected
- 1-connected
Example
Command
at+rsibt_getdevstate?
Response
OK 8
[ Go to top ]
rsibt_startencrypt :: Start Encryption
Description
This is used to initiate the Encryption procedure.
Command Format
at+rsibt_startencrypt=<BDAddress>,<RemoteEDIV>,<RemoteRand>,<RemoteLTK>
Parameters
BDAddress (6 bytes)
- Remote BD address
RemoteEDIV (2 bytes)
- Remote device Encryption Diversifier
RemoteRand (8 bytes)
- Remote device Random number
RemoteLTK (16 bytes)
- Remote device Long Term Key
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_startencrypt=B4-99-4C-64-BE-F5,253C,45,B6,53,7A,37,42,85,9D,65,BA,84,DA,CC,56,85,9D,3A,74,3C,45,23,78,4D,3A
Response
OK
[ Go to top ]
rsibt_smpreq :: SMP Pair Request
Description
This is used to send SMP Pair Request command to the connected remote device.
at+rsibt_smpreq=<BDAddress>,<IO Capability>
Parameters
BDAddress (6 bytes)
- This is the remote device address
IOCapability (1 byte)
-
This is the device input output capability
- 0x00 - Display Only
- 0x01 - Display Yes/No
- 0x02 - Keyboard Only
- 0x03 - No Input No Output
- 0x04 - Keyboard Display
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_smpreq=B4-99-4C-64-BE-F5,1
Response
OK
[ Go to top ]
rsibt_smpresp :: SMP Response
Description
This is used to send SMP response to the SMP request made by the remote device.
Command Format
at+rsibt_smpresp=<BDAddress>,<IOCapability>
Parameters
BDAddress (6 bytes)
- This is the remote device address
IOCapability (1 byte)
-
This is the device input output capability
- 0x00 - Display Only
- 0x01 - Display Yes/No
- 0x02 - Keyboard Only
- 0x03 - No Input No Output
- 0x04 - Keyboard Display
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_smpresp=74-04-2B-7A-93-EF,1
Response
OK
[ Go to top ]
rsibt_smppasskey :: SMP Passkey
Description
This is used to send SMP Passkey required to connect with the remote device.
Command Format
at+rsibt_smppasskey=<BDAddress>,<Passkey>
Parameters
BDAddress (6 bytes)
- Remote BD Address
Passkey (4 bytes)
- Passkey to authenticate with the Remote device
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_smppasskey=B4-99-4C-64-BE-F5,12345
Response
OK
[ Go to top ]
rsibt_btinit :: Initialize BLE Module
Description
This is used to initialize the BLE module
Command Format
at+rsibt_btinit
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_btinit
Response
OK
[ Go to top ]
rsibt_btdeinit :: Deinitialize BLE Module
Description
This is used to deinitialize the BLE module.
Command Format
at+rsibt_btdeinit
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_btdeinit
Response
OK
[ Go to top ]
rsibt_btantennaselect :: BT Antenna Select
Description
This is used to select the internal or external antenna of the BT module.
Command Format
at+rsibt_btantennaselect=<AntennaVal>
Parameters
AntennaVal (1 byte)
-
Select the internal or external antenna
- 0 – Internal Antenna
- 1 – External Antenna
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_btantennaselect=1
Response
OK
[ Go to top ]
rsibt_setantennatxpowerlevel :: Set Antenna Tx Power Level
Description
This is used to set the Bluetooth antenna transmit power level. This command serves for selecting the maximum power to be used for the device.
Command Format
at+rsibt_setantennatxpowerlevel=<protocol_mode>,<power_level>
Parameters
protocol_mode (1 byte)
- 2 - BLE
power_level (1 byte)
Tx Power Index | Tx Power Mode |
---|---|
1 - 31 | BLE - 0dBm Mode |
33 - 63 | BLE - 10 dBm Mode |
64 - 75 | BLE - HP Mode |
Example
at+rsibt_setantennatxpowerlevel=2,31
Response
OK
[ Go to top ]
rsibt_setadvertisedata :: BLE Set Advertise Data
Description
This command is used to set the advertise data to expose remote devices.
Command Format
at+rsibt_setadvertisedata=<DataLen>,<Data>
Parameters
Length (1 byte)
- data length. Max advertise data length is 31.
Data (31 bytes)
- Actual data
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_setadvertisedata=8,2,1,6,4,9,72,72,72
Response
OK
Note! Name set in this command will be shown on remote device when remote device scan for advertising device(except for ios versions). For more information on this advertising data with types, information is available at following link: https://www.bluetooth.com/specifications/assigned-numbers/generic-access-profile
Advertising or scan Response Data
[ Go to top ]
rsibt_setscanrspdata :: BLE Set scan Response Data
Description
This command is used to set the scan response data.
Command Format
at+rsibt_setscanrspdata=<DataLen>,<Data>
Parameters
Length (1 byte)
- data length. Max scan Response data length is 31
Data (31 bytes)
- Actual data
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_setscanrspdata=8,2,1,6,4,9,72,72,72
Response
OK
Note!
- Name set in this command will be shown on remote device when remote device scan for advertising device(except for ios versions)
- Controller has default scan response data which enable the flags 2,1,6.
[ Go to top ]
rsibt_setrandadd :: BLE Set Random Device Address
Description
This command is used by the Host to set the LE Random Device Address in the Controller.
Command Format
at+rsibt_setrandadd=<BDAddress>
Parameters
BDAddress (6 bytes)
-
0xXXXXXXXXXXXX
- Random Device Address as defined by Device Address
Response
Result Code | Description |
---|---|
OK
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
status
- 0x00 - LE_Set_Random_Address command succeeded.
- 0x01 – 0xFF - LE_Set_Random_Address command failed.
Example
Command
at+rsibt_setrandadd=B4-99-4C-64-BE-F5
Response
OK
[ Go to top ]
BLE Data Encrypt
Description
This command is used to encrypt the data. This is the HCI_LE_Encrypt command and is used to request the Controller to encrypt the data(Plaintext_Data) in the command using the Key given in the command and returns the Encrypted_Data to the Host. It uses the AES-128 bit block cypher alogo to generate encrypted data. Refer to Bluetooth Spec 5.0 for further details
Command
at+rsibt_leencrypt=<key>,<data>
Parameters
key
- 16 Bytes key for Encryption of data
data
- 16 Bytes of Data request to encrypt
Response
Result Code | Description |
---|---|
OK
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
EncData (16 Bytes)
- Encrypted data
Example
Command
at+rsibt_leencrypt=1,2,3,4,5,6,7,8,9,0,B,C,D,E,F,10,1,2,3,4,5,6,7,8,9,0,B,C,D,E,F,10
Response
OK 10 93 c1 5a e4 a5 db fd 5e c2 4c 61 8a a3 11 28
[ Go to top ]
rsibt_lewhitelist :: BLE Whitelist
Description
This is used to add a particular BD-Address to the white list. Maximum number of device address that firmware can store is 10.
Command Format
at+rsibt_lewhitelist=<operation>,<BDAddress>,<BDAddressType>
Parameters
operation (1 byte)
-
This bit specifies the operation to be done
- 0 – Clear all entries
- 1 – Add entry to white list
- 2 – Delete entry from the white list
BDAddress (6 bytes)
- BDAddress of the remote device that needed to be added to white list
BDAddressType (1 byte)
-
Type of the BDAddress
- 0 - Public Device Address
- 1 – Random Device Address
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_lewhitelist=1,00-23-A7-80-6F-CD,1
Response
OK
[ Go to top ]
rsibt_blesetmtu :: BLE Set MTU Size Command
Description
This is used to set the MTU size for the BLE stack. By default MTU size is 240bytes. Until issue this command, MTU size won't be changed from 240bytes.
Command Format
at+rsibt_blesetmtu=<BDAddress>,<MTU Size>
Parameters
BDAddress (6 bytes)
- BDAddress of the remote device
mtu_size
- Requested mtu value
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_blesetmtu=69-76-4A-4C-13-8C,80
Response
OK
[ Go to top ]
rsibt_mtuexchangeresp :: LE MTU Exchange Resp
Description
This is used to set the MTU size for the BLE stack.
Command Format
at+rsibt_mtuexchangeresp=<BDAddress>,<MTU Size>
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_mtuexchangeresp=69-76-4A-4C-13-8C,75
Response
OK
Note!
-
ble_custom_ext_feature_bit_map BIT[15]
- MTU Exchange request initiation from APP shall be set to initiate this command. If this BIT is disabled firmware throw an error "0x4D0C"
[ Go to top ]
rsibt_setphy :: BLE Set Phy Command
Description
The LE_Set_PHY command is used to set the PHY preferences for the connection identified by the connection_Handle.
Command Format
at+rsibt_setphy=<remotebdaddress>,<all_phy>,<tx_phy>,<rx_phy>,<phy_options>
Parameters
BDAddress (6 bytes)
- BDAddress of the remote device
All_phy (1 byte)
- BIT(0) - The Host has no preference among the transmitter PHYs supported by the Controller.
- BIT(1) - The Host has no preference among the receiver PHYs supported by the Controller.
tx_phy (1 byte)
- BIT(0) - The Host prefers to use the LE 1M transmitter PHY (possibly among others)
- BIT(1) - The Host prefers to use the LE 2M transmitter PHY (possibly among others)
- BIT(2) - The Host prefers to use the LE Coded transmitter PHY (possibly among others)
- BIT(3) - BIT(7) Reserved for future use
rx_phy (1 byte)
- BIT(0) - The Host prefers to use the LE 1M receiver PHY (possibly among others)
- BIT(1) - The Host prefers to use the LE 2M receiver PHY (possibly among others)
- BIT(2) - The Host prefers to use the LE Coded receiver PHY (possibly among others)
- BIT(3) – BIT(7) Reserved for future use
phy_options (2 bytes)
- 0 = the Host has no preferred coding when transmitting on the LE Coded PHY
- 1 = the Host prefers that S=2 coding be used when transmitting on the LE Coded PHY
- 2 = the Host prefers that S=8 coding be used when transmitting on the LE Coded PHY 3 = Reserved for future use
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_setphy=00-23-A7-00-00-0D,0,1,2,0
Response
OK
[ Go to top ]
rsibt_readphy :: BLE Read Phy Command
Description
The LE_Read_PHY command is used to read the current transmitter PHY and receiver PHY on the connection identified by the connection_Handle.
Command Format
at+rsibt_readphy=<remotebdaddr>
Parameters
remotebdaddr (6 bytes)
- BDAddress of the remote device.
Response
Result Code | Description |
---|---|
OK,
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
Remotebdaddr (6 bytes)
- Remote device Bluetooth Address
tx_phy
- 0x01 - The transmitter PHY for the connection is LE 1M
- 0x02 - The transmitter PHY for the connection is LE 2M
- 0x03 - The transmitter PHY for the connection is LE Coded
- All other values Reserved for future use
rx_phy
- 0x01 - The receiver PHY for the connection is LE 1M
- 0x02 - The receiver PHY for the connection is LE 2M
- 0x03 - The receiver PHY for the connection is LE Coded
- All other values Reserved for future use
Example
Command
at+rsibt_readphy=00-23-A7-00-00-0D
Response
OK 88-DA-1A-9E-BE-6A,2,2
[ Go to top ]
rsibt_setdatalength :: BLE Set Data Length Command
Description
The LE_Set_Data_Length command allows the Host to suggest maximum transmission packet size and maximum packet transmission time.
Command Format
at+rsibt_setdatalength=<BDAddress>,<TXOctets><TXTime>
Parameters
BDAddress (6 bytes)
- BDAddress of the remote device.
TXOctets (2 bytes)
- Preferred maximum number of payload octets that the local Controller should include in a single Link Layer packet on this connection.
TXTime (2 bytes)
- Preferred maximum number of microseconds that the local Controllershould use to transmit a single Link Layer packet on this connection.
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_setdatalength =00-23-A7-80-6F-CD,40,330
Response
OK
[ Go to top ]
rsibt_readdatalength :: BLE Read Maximum Data Length Command
Description
The LE_Read_Maximum_Data_Length command allows the Host to read the Controller's maximum supported payload octets and packet duration times for transmission and reception.
Command Format
at+rsibt_readdatalength?
Response
Result Code | Description |
---|---|
OK ,
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
Parameter | Description |
---|---|
maxtxoctets
- Preferred maximum number of payload octets that the local Control-ler should include in a single Link Layer packet on this connection.
maxtxtime
- Preferred maximum number of microseconds that the local Controllershould use to transmit a single Link Layer packet on this connection
maxrxoctets
- Maximum number of payload octets that the local Controller supportsfor reception of a single Link Layer packet on a data connection.
maxrxtime
- Maximum time, in microseconds, that the local Controller supports forreception of a single Link Layer packet on a data connection.
Example
Command
at+rsibt_readdatalength?
Response
OK 230,750,230,750
[ Go to top ]
rsibt_resolvlist :: BLE Resolve List
Description
The Resolving List command is used to add/remove/clear one device to the list of address translations used to resolve Resolvable Private Addresses in the Controller.
Command Format
at+rsibt_resolvlist=<Process_type>,<address_type>,<peer_address>,<peer_irk>,<local_irk>
Parameters
Process_type
- 1 - Add a device to the resolving list
- 2 - Remove a device from the resolving list
- 3 - Clear all devices from the resolve list.
AddressType
- 0x00 - Public Identity Address
- 0x01 - Random (static) Identity Address
- 0x02 – 0xFF Reserved for Future Use
peer_address
- Public or Random (static) Identity address of the peer device
peer_irk
- IRK of the peer device.
local_irk
- IRK of the local device
Response
Result Code | Description |
---|---|
OK | Command Success |
ERROR_CODE | Command Fail. |
Examples
Add device to resolvlist
Command
at+rsibt_resolvlist=<Process_type>,<address_type>,<peer_address>,<peer_irk>,<local_irk> ... for example ...
at+rsibt_resolvlist=1,0,00-23-A7-00-00-0D,01,01,01,01,01,01,01,01,01,01,01,01,01,01,01,01,02,02,02,02,02,02,02,02,02,02,02,02,02,02,02,02
Remove device from resolvlist
Command
at+rsibt_resolvlist=2,<address_type>,<peer_address> ... for example ...
at+rsibt_resolvlist=2,0,00-23-A7-00-00-0D
Clear resolvlist
Command
at+rsibt_resolvlist=<Process_type> ... for example ...
at+rsibt_resolvlist=3
Response
Assuming success in each case ...
OK
[ Go to top ]
getresolvlistsize :: BLE GetResolvlist Size
Description
The BLE_Read_Resolving_List_Size command is used to read the total number of address translation entries in the resolving list that can be stored in the Controller.
Command Format
at+rsibt_ getresolvlistsize?
Response
Result Code | Description |
---|---|
OK,
|
Command Success |
ERROR_CODE | Command Fail. |
where ...
size (1 byte)
- Resolving list size
Example
Command
at+rsibt_ getresolvlistsize?
Response
OK 5
[ Go to top ]
rsibt_setresolutionenable :: BLE SetResolution Enable
Description
The BLE_Set_Address_Resolution_Enable command is used to enable resolution of Resolvable Private Addresses in the Controller, The LE _Timeout command sets the length of time the Controller uses a Resolvable Private Address before a new resolvable private address is generated and starts being used. This timeout applies to all addresses generated by the Controller.
Command Format
at+rsibt_setresolutionenable=<enable>,<timeout>
Parameters
enable
- 0 - Disable the Address resolution
- 1 - Enable the Address resolution
timeout
- RPA_Timeout measured in s
- Range for N: 0x0001 – 0xA1B8 (1 s – approximately 11.5 hours)
- Default: N= 0x0384 (900 s or 15 minutes)
Response
Result Code | Description |
---|---|
OK | Command Success |
ERROR_CODE | Command Fail. |
Example
Command
at+rsibt_setresolutionenable=1,60
Response
OK
[ Go to top ]
rsibt_setprivacymode :: BLE SetPrivacy Mode
Description
The HCI_LE_Set_Privacy_Mode command is used to allow the Host to specify the privacy mode to be used for a given entry on the resolving list.
Command Format
at+rsibt_setprivacymode=<peer_addr_type>,<peer_addr>,<privacy_mode>
Parameters
peer_addr_type
- 0x00 - Public Identity Address
- 0x01 - Random (static) Identity Address
- All other values reserved for future use
peer_addr
- Public Identity Address or Random (static) Identity Address of the advertiser
privacy_mode
- 0x00 - Use Network Privacy Mode for this peer device (default)
- 0x01 - Use Device Privacy Mode for this peer device
- All other values reserved for future use
Response
Result Code | Description |
---|---|
OK | Command Success |
ERROR_CODE | Command Fail. |
Example
Command
at+rsibt_setprivacymode=0,00-23-A7-00-00-0D,1
Response
OK
[ Go to top ]
rsibt_updateparams :: BLE connection Update Command
Description
The
LE_UPDATE_PARAMS
command is used to change the Link Layer connection parameters of a connection.
Command Format
at+rsibt_updateparams=<bd_addr>,<Conn_Interval_Min>,<Conn_Interval_Max>,<Conn_Latency>,<Supervision_Timeout>
Parameters
bd_addr
- BDAddress of the remote device
Conn_Interval_Min
- The minimum value for the connection interval. This shall be less than or equal to Conn_Interval_Max
Conn_Interval_Max
- Maximum value for the connection interval. This shall be greater than or equal to Conn_Interval_Min.
- Min and max interval Range: 6 to 3200 (Time = N * 1.25 ms,Time Range: 7.5 ms to 4 s.)
Conn_Latency)
- Slave latency for the connection in a number of connection events.
- Range: 0 to 499
-
The connSlaveLatency shall be an integer in the range of 0 to
((connSupervisionTimeout / (connInterval*2)) - 1)
. -
Note
- latency: If conn slave latency is greater than 32, Limiting conn slave latency to 32. Max supported slave latency is 32 when the Device is in Slave Role.
Supervision_Timeout
- Supervision timeout for the LE Link.Range: 10 to 3200 (Time = N * 10 ms, Time Range: 100 ms to 32 s) |
Response
Result Code | Description |
---|---|
OK | Command Success |
ERROR_CODE | Command Fail. |
Example
Command
at+rsibt_updateparams=00-1A-7D-DA-71-13,12,12,0,500
Response
OK
[ Go to top ]
rsibt_getallprofiles :: Query Profiles List
Description
This is used to query all the supported profiles list from the connected remote device.
Command Format
at+rsibt_getallprofiles=<BDAddress>,<StartHandle>,<EndHandle>
Parameters
BDAddress (6 bytes
- Remote BD Address
StartHandle (2 bytes)
- Start of the handle of the services to be known
EndHandle (2 bytes)
- End of the handle of the services to be known.
Response
Result Code | Description |
---|---|
OK ,<number_profiles>,
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
number_profiles (1 byte)
- Number of the profiles supported by the remote device
profile descriptors list (10 bytes)
-
Profiles descriptors of the profiles:
-
<start_handle>,<end_handle>,<property>,<profile_UUID>
-
Example
Command
at+rsibt_getallprofiles=B4-99-4C-64-BE-F5,1,10
Response
OK 3
1,B,2,1800
C,F,2,1801
10,FFFF,2,180A
Note! This command is a sync command, while using this command Need to disable BIT(29): GATT Async bit in ble_custom_feature_bit_map
[ Go to top ]
rsibt_getprofile :: Query Profile
Description
This is used to query particular profile details from the connected remote device.
Command Format
at+rsibt_getprofile=<BDAddress>,<size_uuid>,<ProfileUUID>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
Size_uuid
- UUID size value e.g : 2,4,16
ProfileUUID
- UUID of the profile
Response
Result Code | Description |
---|---|
OK ,
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
profile descriptors list (28 bytes)
-
Profiles descriptors of the profiles:
-
<start_handle>,<end_handle>,<property>,<profile_UUID>
-
Example 1
Command
at+rsibt_getprofile=77-A8-E3-CC-41-CB,2,1800
Response
OK 1,5,2,1800
Example 2 - 128 bit UUID
Command
at+rsibt_getprofile=77-A8-E3-CC-41-CB,16,0000aaa0-0000-1000-8000-bb,aa,ff,ee,dd,cc
Response
OK 1,5,2,0000aaa0-0000-1000-8000-bb,aa,ff,ee,dd,cc
Note! This command is a sync command, while using this command Need to disable BIT(29): GATT Async bit in ble_custom_feature_bit_map
[ Go to top ]
rsibt_getcharservices :: Query Characteristic Services
Description
This is used to query characteristic services, within the particular range, from the connected remote device.
Command Format
at+rsibt_getcharservices=<BDAddress>,<StartHandle>,<EndHandle>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
StartHandle (2 bytes)
- Start of the handle from which Characteristics services are to be known.
EndHandle (2 bytes)
- End of the handle till which Characteristics services are to be known
Response
Result Code | Description |
---|---|
OK ,
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
NumberOfCharServices (1 byte)
- No of Characteristic services.
CharacteristicService (5 bytes)
-
Each Characteristic Service details:
-
<Service_Handle>,<Property>,<Char_handle>,<Sizeof_UUID>,<UUID>
-
Example
at+rsibt_getcharservices=B4-99-4C-64-BE-F5,1,10
Response
OK 5,2,2,3,2,2A00
4,2,5,2,2A01
6,2,7,2,2A02
8,8,9,2,2A03
A,2,B,2,2A04
Note! This command is a sync command, while using this command Need to disable BIT(29): GATT Async bit in ble_custom_feature_bit_map
[ Go to top ]
rsibt_getincservices :: Query Include Services
Description
This is used to query include services, within the particular range, from the connected remote device.
Command Format
at+rsibt_getincservices=<BDAddress>,<StartHandle>,<EndHandle>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
StartHandle (2 bytes)
- Start of the handle from which Include services are to be known.
EndHandle (2 bytes)
- End of the handle till which Include services are to be known.
Response
Result Code | Description |
---|---|
OK ,
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
NumberOfIncServices (1 byte)
- No of Included services
IncludedService (5 bytes)
-
Each Characteristic Service details:
-
<Service_Handle>,<IncServ_starthandle>,<IncServ_endhandle>,<Sizeof_UUID>,<UUID>
-
Example
at+rsibt_getincservices=68-2F-10-0B-62-63,1,10
Response
OK 1,15,11,12,2,AABB
Note! This command is a sync command, while using this command Need to disable BIT(29): GATT Async bit in ble_custom_feature_bit_map
[ Go to top ]
rsibt_readbytype :: Read Characteristic Value By UUID
Description
This is used to get the characteristic attribute value of the specified UUID.
Command Format
at+rsibt_readbytype=<BDAddress>,<StartHandle>,<Endhandle>,<size>,<UUID>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
StartHandle (2 bytes)
- Start of the handle from which Attribute values are to be known
EndHandle (2 bytes)
- End of the handle till which Attribute values are to be known
size
- Size of the UUID
UUID
- UUID whose Attribute values are to be known
Response
Result Code | Description |
---|---|
OK ,
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
NumberOfValues (1 byte)
- The number of valid bytes in the CharacterValue
CharacterValue (30 bytes)
- The attribute value of the given CharacterUUID
Example
Command
at+rsibt_readbytype=65-65-11-B4-8C-08,1,10,2,2A00
Response
OK 6,3,0,69,50,61,64
Note! This command is a sync command, while using this command Need to disable BIT(29): GATT Async bit in ble_custom_feature_bit_map
[ Go to top ]
rsibt_getdescriptors :: Query Attribute
Description
This is used to query the Attribute Descriptors from the connected remote device. The Descriptor includes both the Handle and UUID.
Command Format
at+rsibt_getdescriptors=<BDAddress>,<StartHandle>,<EndHandle>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
StartHandle (2 bytes)
- The handle from which Attribute Descriptors are to be known
EndHandle (2 bytes)
- The handle till which Attribute Descriptors are to be known
Response
Result Code | Description |
---|---|
OK
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
NumberOfAttributes (1 byte)
- No of attributes
AttributeDescriptor (5 bytes)
-
Descriptor of each Attribute:
<handle>,<size>,<UUID>
Example
Command
at+rsibt_getdescriptors=B4-99-4C-64-BE-F5,1,ffff
Response
OK 5
1,2,2800
2,2,2803
3,2,2A00
4,2,2803
5,2,2A01
Note! This command is a sync command, while using this command Need to disable BIT(29): GATT Async bit in ble_custom_feature_bit_map
[ Go to top ]
rsibt_readvalue :: Query Attribute Value
Description
This is used to query Attribute value from the connected remote device.
Command Format
at+rsibt_readvalue=<BDAddress>,<Handle>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
Handle (2 bytes)
- Handle of the Attribute whose value is to be known
Response
Result Code | Description |
---|---|
OK ,
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
NumberOfValues (1 byte)
- No of valid bytes in the AttributeValues
AttributeValues (30 bytes)
- Attribute value of the specified Handle
Example
at+rsibt_readvalue=65-65-11-B4-8C-08,1
Response
OK 2,0,18
Note!
This command is a sync command, while using this command Need to disable BIT(29): GATT Async bit in
ble_custom_feature_bit_map
[ Go to top ]
rsibt_enhancedrxtest :: LE Enhanced Receiver Test Mode
Description
This command is used to start a test where the DUT receives test reference packets at a fixed interval.
Command Format
at+rsibt_enhancedrxtest=<RX_channel>,<phy>,<Modulation>
Parameters
RX_channel (1 byte)
- Channel in which packet has to be received.
phy (1 byte)
- 0x00 - Reserved for future use
- 0x01 - Receiver set to use the LE 1M PHY
- 0x02 - Receiver set to use the LE 2M PHY
- 0x03 - Receiver set to use the LE Coded PHY
- 0x04 – 0xFF Reserved for future use.
Modulation (1 byte)
- 0x00 - Assume transmitter will have a standard modulation index
- 0x01 Assume transmitter will have a stable modulation index
- 0x02 – 0xFF Reserved for future use
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_enhancedrxtest=30,1,1
Response
OK
rsibt_enhancedtxtest :: LE Enhanced Transmitter Test Mode
Description
This command is used to start a test where the DUT generates test reference packets at a fixed interval.
Command Format
at+rsibt_enhancedtxtest=<TX_channel>,<phy>,<TxLen>,<TxDataMode>
Parameters
TX_channel (1 byte)
- Channel in which packet has to be sent
phy (1 byte)
- 0x00 - Reserved for future use
- 0x01 - Receiver set to use the LE 1M PHY
- 0x02 - Receiver set to use the LE 2M PHY
- 0x03 - Receiver set to use the LE Coded PHY
- 0x04 – 0xFF Reserved for future use.
TxLen (1 byte)
- Length in bytes of payload data in each packet
TxDataMode (1 byte)
-
0x00 - PRBS9 sequence
11111111100000111101...
-
0x01 - Repeated
11110000
-
0x02 - Repeated
10101010
- 0x03 - PRBS15
-
0x04 - Repeated
11111111
-
0x05 - Repeated
00000000
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_enhancedtxtest=30,1,2,0
Response
OK
rsibt_endtest :: LE Enhanced End Test Mode
Description
This command is used to stop any test which is in progress.
Command Format
at+rsibt_endtest
Parameters
NumOfPkts (2 bytes)
- Number of RX packets received are displayed
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_endtest
Response
OK 100
[ Go to top ]
rsibt_leltkreqreply :: LE LTK Request-Reply
Description
This is used to intimate the controller about the long-term key in the host.
Command Format
at+rsibt_leltkreqreply=<BDAddress>,<reply_type>,<Long_term_key>
Parameters
BDAddress (6 bytes)
- BDAddress of the remote device
Reply_Type (1 byte)
- 0 - Negative reply
- 1 – Positive reply
Long_term_key (16 bytes)
- Either NULL or 16 bytes value
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_leltkreqreply=6E-35-7C-35-50-2F,0,0
at+rsibt_leltkreqreply=6E-35-7C-35-50-2F,1,<LocalLTK of 16 bytes>
Response
OK
[ Go to top ]
rsibt_readmultiple :: LE Read Multiple
Description
This is used to query Multiple Attribute values from the connected remote device.
Command Format
at+rsibt_readmultiple=<BDAddress>,<NumberofHandles>,<Handles>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
NumberOfHandles (1 byte)
- No of handles whose Attribute values are to be known
Handles (10 bytes)
- The handle whose Attribute value is to be known
Response
Result Code | Description |
---|---|
OK,
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
NumberOfValues (2 bytes)
- Number of valid bytes in the AttributeValues
AttributeValues (30 bytes)
- Attribute value of the specified Handles
Example
Command
at+rsibt_readmultiple=65-65-11-B4-8C-08,3,1,2,5
Response
OK 9,0,18,2,3,0,0,2A,80,2
[ Go to top ]
rsibt_longread :: Query Long Attribute Value
Description
This is used to query long Attribute value from the connected remote device. This is useful when the Attribute value is more than 30 bytes.
Command Format
at+rsibt_longread=<BDAddress>,<Handle>,<Offset>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
Handle (2 bytes)
- Handle of the Attribute whose value is to be known
Offset (2 bytes)
- Offset from which Attribute values are to be known
Response
Result Code | Description |
---|---|
OK ,
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
NumberOfValues
- Number of valid bytes in the LongAttValue
LongAttValue
- Attribute value of the specified Handle
Example
Command
at+rsibt_longread=65-65-11-B4-8C-08,10,1
Response
OK 12,0,D9,D9,AA,FD,BD,9B,21,98,A8,49,E1,45,F3,D8,D1,69
[ Go to top ]
rsibt_writevalue :: Set Attribute Value
Description
This is used to Set the attribute value of the connected remote device.
Command Format
at+rsibt_writevalue=<BDAddress>,<Handle>,<Length>,<value>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
Handle (2 bytes)
- Handle of the Attribute whose value has to be set
Length (1 byte)
- Number of bytes to be set in the specified Handle
Value (25 bytes)
- Value to be set in the specified Handle
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_writevalue=65-65-11-B4-8C-08,34,2,1,0
Response
OK
[ Go to top ]
rsibt_writecmd :: Set Attribute Value No Ack
Description
This is used to Set the attribute value of the connected remote device. If the Attribute value is set using this command, Ack will not be received from the remote device.
Command Format
at+rsibt_writecmd=<BDAddress>,<Handle>,<Length>,<value>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
Handle (2 bytes)
- Handle of the Attribute whose value has to be set
Length (1 byte)
- Number of bytes to be set in the specified Handle
Value (25 bytes)
- Value to be set in the specified Handle
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_writecmd=65-65-11-B4-8C-08,1,1,2
Response
OK
[ Go to top ]
rsibt_longwrite :: Set Long Attribute Value
Description
This is used to Set the long attribute value of the connected remote device. This is useful when the number of bytes to be set is more than 25 and when particular offset bytes are written.
Command Format
at+rsibt_longwrite=<BDAddress>,<Handle>,<Offset>,<Length>,<value>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
Handle (2 bytes)
- Handle of the Attribute whose value has to be set
Offset (2 bytes)
- Offset from which Value has to set in the specified Handle
Length (1 byte)
- Number of bytes to be set in the specified Handle
Value (40 bytes)
- Value to be set in the specified Handle
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_longwrite=C0-FF-EE-C0-FF-EE,1,1,1,2
Response
OK
[ Go to top ]
rsibt_longwrite :: Set Prepare Long Attribute Value
Description
This is used to Set the Long Attribute value in the connected remote device. When Value is set using this API, the remote device will wait for "Execute Long Attribute Value " to come before updating its handle with its value.
Command Format
at+rsibt_longwrite=<BDAddress>,<Handle>,<Offset>,<Length>,<value>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
Handle (2 bytes)
- Handle of the Attribute whose value has to be set
Offset (2 bytes)
- Offset from which Value has to set in the specified Handle
Length (1 byte)
- Number of bytes to be set in the specified Handle
Value (40 bytes)
- Value to be set in the specified Handle
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_longwrite=C0-FF-EE-C0-FF-EE,1,1,1,2
Response
OK
[ Go to top ]
rsibt_preparewrite :: Set Prepare Long Attribute Value
Description
This is used to Set the Long Attribute value in the connected remote device. When Value is set using this API, the remote device will wait for "Execute Long Attribute Value " to come before updating its handle with its value.
Command Format
at+rsibt_preparewrite=<BDAddress>,<Handle>,<Offset>,<Length>,<Value>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
Handle (2 bytes)
- Handle of the Attribute whose value has to be set
Offset (2 bytes)
- Offset from which Value has to set in the specified Handle
Length (1 byte)
- Number of bytes to be set in the specified Handle
Value (40 bytes)
- Value to be set in the specified Handle
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_preparewrite=B4-99-4C-64-BC-AF,1,1,1,2
Response
OK
[ Go to top ]
rsibt_executewrite :: Execute Long Attribute Value
Description
This is used to send Execute Long Attribute Value to the connected remote device. Depending on the "flag" of this command, the remote device will either set/not set the previously sent Prepare Long Attribute values.
Command Format
at+rsibt_executewrite=<BDAddress>,<Flag>
Parameters
BDAddress (6 bytes)
- Remote device BD Address
Flag (1 byte)
-
This parameter decides whether to set/not set the previously sent Prepare Long Attribute values.
- 0 – Don't set the values
- 1 – Set the values
Example
Command
at+rsibt_executewrite=C0-FF-EE-C0-FF-EE,1
Response
OK
[ Go to top ]
rsibt_addservice :: Add GATT Service Record
Description
This is used to add the new service Record in the BLE GATT record list. If service is created successfully service record handle is returned, else the error value is returned.
Command Format
at+rsibt_addservice=<uuid_size>,<ServiceUUID>,<NbrAttributes>,<MaxAttDataSize>
Parameters
ServiceUUID
- BLE supporting service UUID value
numberAttributes (2 bytes)
- Number of attributes need to add for this service
MaxAttDataSize (2 bytes)
- Maximum number of data length that can be used in the attribute list.
Response
Result Code | Description |
---|---|
OK,
|
Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
ServiceHndlerPtr
- Created GATT service record handle
StartHndl (2 bytes)
- Service record starting attribute handle value
Example
Command
at+rsibt_addservice=2,18ff,3,30
Response
OK 157A8,A
rsibt_addattribute :: Add Attribute Record
Description
This is used to add the attribute record to the specific service using the service record handle. The is used to add characteristic declaration and characteristic definition of the record.
Command Format
at+rsibt_addattribute=<ServiceHndlerPtr>,<Hndl>,<AttUUIDsize>,<AttUUID>,<prop>,<DataLen>,<ConfigBitmap>,<Data>
Parameters
ServiceHndlerPtr
- Service record handle
Hndl (2 bytes)
- Handle of the attribute record
AttUUID
- Attribute record UUID
Prop (1 byte)
-
Property of the attribute
- Bit[1] - read property.
- Bit[2] - write without response
- Bit[3] - write with response
- Bit[4] - Notify
- Bit[5] - Indicate
DataLen (2 bytes)
- Attribute record data length. If DataLen is less than 20 bytes and ConfigBitmap=0 then the attribute record will be maintained inside the device. Either of the cases fails, the Application has to maintain the record data.
Data (max 20 bytes)
- Attribute record data value
ConfigBitmap
-
Attribute configuration bitmap.
#define ATT_REC_MAINTAIN_IN_HOST BIT(0) /* Att record maintained by the Host */ #define SEC_MODE_1_LEVEL_1 BIT(1) /* NO Auth & No Enc */ #define SEC_MODE_1_LEVEL_2 BIT(2) /* UnAUTH with Enc */ #define SEC_MODE_1_LEVEL_3 BIT(3) /* AUTH with Enc */ #define SEC_MODE_1_LEVEL_4 BIT(4) /* AUTH LE_SC Pairing with Enc */ All other bits are reserved.
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_addattribute=157A8,A,2,2A02,2,9,0,1,2,3,4,5,6,7,8,0
Response
OK
Example
Creation of a service UUID (AABB) with a Characteristic UUID = 1BB1 and a notify property.
-- Service creation
at+rsibt_addservice=2,AABB,3,30
uuid_size = 2
ServiceUUID = 180A
NbrAttributes = 3
MaxAttDataSize = 30
-- Characteristic declaration; the data contains information about the definition in the format: <Prop (001A), Handle (000B), UUID (1BB1)>
at+rsibt_addattribute=157A8,A,2,2803,8,6,0,1A,0,0E,00,B1,1B
ServiceHndlerPtr = 157A8
Hndl = A
AttUUIDsize = 2
AttUUID = 2803
prop = 8
DataLen = 6
ConfigBitmap = 0
Data = 1A,0,0B,00,B1,1B
-- Characteristic definition; the data is the actual Characteristic Value
at+rsibt_addattribute=157A8,B,2,1BB1,1A,a,0,1,2,3,4,5,6,7,8,9,0
ServiceHndlerPtr = 157A8
Hndl = B
AttUUIDsize = 2
AttUUID = 1BB1
prop = 1A
DataLen = a
ConfigBitmap = 0
Data = 1,2,3,4,5,6,7,8,9,0
-- Client Characteristic Configuration Descriptor (CCCD)
at+rsibt_addattribute=157A8,C,2,2902,A,2,0,0,0
ServiceHndlerPtr = 157A8
Hndl = C
AttUUIDsize = 2
AttUUID = 2902
prop = A
DataLen = 2
ConfigBitmap = 0
Data = 0,0
[ Go to top ]
rsibt_setlocalattvalue :: Set Local Attribute Value
Description
This is used to set/change the local attribute record value to the specific service using the service record handle.
Command Format
at+rsibt_setlocalattvalue=<Hndl>,<DataLen>,<Data>
Parameters
Hndl (2 bytes)
- Handle of the attribute record
DataLen (2 bytes)
- Attribute record data length
Data (31 bytes)
- Attribute record data value.
Response
Result Code | Description |
---|---|
OK | Command Success. |
ERROR <Error_code> | Command Fail. |
Example
Command
at+rsibt_setlocalattvalue=A,1,EE
Response
OK
[ Go to top ]
rsibt_getlocalattvalue :: Get Local Attribute Value
Description
This is used to read the local attribute record value to the specific service using the service record handle.
Command Foramt
at+rsibt_getlocalattvalue=<Hndl>
Parameters
Hndl (2 bytes)
- Handle of the attribute record
Response
Result Code | Description |
---|---|
OK ,
|
Command Success |
ERROR <Error_code> | Command Fail |
Parameters
Hndl (2 bytes)
- Handle of the attribute record
DataLen (2 bytes)
- Attribute record data length
Data (31 bytes)
- Attribute record data value
Example
Command
at+rsibt_getlocalattvalue=A
Response
OK A,1,EE
[ Go to top ]
rsibt_readresp :: Send Read Response
Description
Send the response for the read request received from the remote device. Use this command only when the attribute record is maintained in the host.
Command Format
at+rsibt_readresp=<bd_address>,<read_type>,<data_len>,<data>
Parameters
bd_address
- BD address of the remote device
read_type
-
Read value type
- 0 - Read response
- 1 - Read blob response
data_len
- Attribute value length
data
- Attribute value
Response
Result Code | Description |
---|---|
OK | Command Success |
ERROR <Error_code> | Command Fail |
Example
Command
at+rsibt_readresp=62-CB-12-9D-CA-F2,0,2,1,2
Response
OK
[ Go to top ]
rsibt_writeresponse :: Write Response
Description
Sends write response ACK to the server/remote device when a valid request is received. Use this command only when the attribute record is maintained in the host.
Command Format
at+rsibt_writeresponse=<bdaddress>,<type>
Parameters
bd_address
- BD address of the remote device
type
-
Write value type
- 0 - Write response
- 1 - Execute Write response
Response
Result Code | Description |
---|---|
OK | Command Success |
ERROR <Error_code> | Command Fail |
Example
Command
at+rsibt_writeresponse=62-CB-12-9D-CA-F2,1
Response
OK
[ Go to top ]
rsibt_preparewriteresponse :: Prepare Write Response
Description
Sent in response to a received Prepare Write Request to acknowledge that the value has been successfully received and placed in the prepare write queue. Use this command only when the attribute record is maintained in the host.
Command Format
at+rsibt_preparewriteresponse=<p_remote_addr>,<handle>,<offset>,<data_len>,<data>
Parameters
p_remote_addr
- BD address of the remote device
handle (2 bytes)
- handle to which prepare write must be sent
offset (2 bytes)
- Offset from which Value has to set in the specified Handle
data_len (1 byte)
- length of the data to be sent
data (40 bytes)
- data to be sent to the remote device
Response
Result Code | Description |
---|---|
OK | Command Success |
ERROR <Error_code> | Command Fail |
Example
Command
at+rsibt_preparewriteresponse=6C-27-39-31-9C-D6,E,0,14,1,2,3,4,5,6,7,8,9,10,1,2,3,4
Response
OK
[ Go to top ]
rsibt_sendnotify :: Send Notify
Description
This command will be used to send notification events to the specific remote device. Use this command only when the attribute record is maintained in the host.
Command Format
at+rsibt_sendnotify=<bd_address>,<handle>,<data_len>,<data>
Parameters
bd_address
- bd address of the remote device
handle
- handle to which notification must be sent
data_len
- length of the data to be sent
data
- data to be sent to the remote device
Response
Result Code | Description |
---|---|
OK | Command Success |
ERROR <Error_code> | Command Fail |
Example
Command
at+rsibt_sendnotify=62-CB-12-9D-CA-F2,A,2,1,0
Response
OK
[ Go to top ]
rsibt_sendindicate :: Send Indicate
Description
This command will be used to send indication events to the specific remote device. Use this command only when the attribute record is maintained in the host.
Command Format
at+rsibt_sendindicate=<bd_address>,<handle>,<data_len>,<data>
Parameters
bd_address
- BD address of the remote device
handle
- Handle to which indication must be sent
data_len
- Length of the data to be sent
data
- Data to be sent to the remote device
Response
Result Code | Description |
---|---|
OK | Command Success |
ERROR <Error_code> | Command Fail |
Example
Command
at+rsibt_sendindicate=62-CB-12-9D-CA-F2,A,2,1,0
Response
OK
[ Go to top ]
rsibt_removeservice :: Remove Service
Description
This command is used to remove the service from the profile.
Command Format
at+rsibt_removeservice=<Servicehandlerptr>
Parameters
ServiceHndlerPtr
- Service record handle pointer
Example
Command
at+rsibt_removeservice=157A8
Response OK
[ Go to top ]
rsibt_removeattribute :: Remove Attribute
Description
This command is used to remove an attribute.
Command Format
at+rsibt_removeattribute=<Servicehandlerptr>,<AttHandle>
Parameters
ServiceHndlerPtr
- Service record handle
AttHandle (2 bytes)
- Handle of the attribute which has to be removed
Example
Command
at+rsibt_removeattribute=157A8,10
Response
OK
[ Go to top ]
Advertise Report Event
Description
This event indicates the remote device's Advertisement. It comes when scan is enabled in the local device.
Event Format
AT+RSIBT_ADVRTISE,<addr_type>,<bd_addr>,<RSSI>,<Type>,<adv_data_len>,<adv_data>
where ... addr_type (1 byte)
-
Type of address of advertiser
- 0 - Public address
- 1 - Random address
- 2 - Public Identity Address
- 3 - Random (static) Identity Address
bd_addr (6 bytes)
- Advertiser address
RSSI (1 byte)
- Signal strength indication between devices (decimal)
adv_data_len (1 byte)
- Total raw advertisement data length
adv_data (31 bytes)
- Advertisement data
type(1 byte)
- 0x00 - Connectable and scannable undirectedadvertising (ADV_IND)
- 0x01 - Connectable directed advertising (ADV_DIRECT_IND)
- 0x02 - Scannable undirected advertising (ADV_SCAN_IND)
- 0x03 - Non connectable undirected advertising (ADV_NONCONN_IND)
- 0x04 - Scan Response (SCAN_RSP)
- All other values | Reserved for future use
Example
In this example
- addr_type = 0
- addr = B4-99-4C-64-BC-AF
- RSSI = -31
- adv_data_len = 3
- adv_data = 2,1,6
-
type:3
AT+RSIBT_ADVRTISE,addr_type:0,addr:B4-99-4C-64-BC-AF,RSSI:-31,Type:3,adv_data_len:3,adv_data:2,1,6
[ Go to top ]
LE Connected Event
Description
This event indicates either the connection is Success or not, when 9113 compatible features BIT[30] is set from
ble_custom_feature_bit_map
in opermode.
Event Format
AT+RSIBT_LE_DEVICE_CONNECTED=<addr_type>,<bd_addr>,<status>
where ...
addr_type (1 byte)
-
Address type of the connected device
- 0 - Public address
- 1 - Random address
- 2 - Public Identity Address
- 3 - Random(static) Identity Address
bd_addr (6 bytes)
- BD Address of the connected device
status (1 byte)
-
This is the status of the connection – Success or Failure
- 0 – Success
- 1 - Non-zero – Failure
Example
AT+RSIBT_LE_DEVICE_CONNECTED=0,B4-99-4C-64-BE-F5,0
[ Go to top ]
Disconnected Event
Description
This event is raised when disconnection happens between the local BT device and the remote device.
Event Format
AT+RSIBT_LE_DISCONNECTED <bd_addr>,<error>
where ...
bd_addr (6 bytes)
- BD address of the remote BT device
error (4 bytes)
- Reason for failure
Example
AT+RSIBT_LE_DISCONNECTED 62-CB-12-9D-CA-F2,4E13
[ Go to top ]
SMP Request Event
Description
This event is raised when the SMP Request comes from the connected remote device. Upon reception of this event SMP Response command has to be given.
Event Format
AT+RSIBT_SMP_REQUEST <bd_addr>
where ...
bd_addr (6 bytes)
- BD address of the remote BT device.
Example
AT+RSIBT_SMP_REQUEST AA-BB-CC-DD-EE-FF
[ Go to top ]
SMP Response Event
Description
This event is raised when the SMP Response comes from the connected remote device. Upon reception of this event SMP Passkey command has to be given.
Event Format
AT+RSIBT_SMP_RESPONSE <bd_addr>
Parameters
bd_addr (6 bytes)
- BD address of the remote BT device
Example
AT+RSIBT_SMP_RESPONSE AA-BB-CC-DD-EE-FF
[ Go to top ]
SMP Passkey Event
Description
This event is raised when the SMP Passkey comes from the connected remote device. Upon reception of this event SMP Passkey command has to be given.
Event Format
AT+RSIBT_SMPPASSKEY <bd_addr>
where ...
bd_addr (6 bytes)
- BD address of the remote BT device.
Example
AT+RSIBT_SMP_PASSKEY AA-BB-CC-DD-EE-FF
[ Go to top ]
SMP Failed Event
Description
This event is raised when the SMP exchange fails. The reason for failure would be present in the Descriptor frame.
Event Format
AT+RSIBT_SMP_FAILED,<bd_addr>,<error>
Parameters
bd_addr (6 bytes)
- BD address of the remote BT device.
error (4 bytes)
- Reason for SMP failing.
Example
AT+RSIBT_SMP_FAILED ,AA-BB-CC-DD-EE-FF,4B01
[ Go to top ]
SMP Encrypt Enabled Event
Description
This event is raised when the encryption gets started. If some problem occurs in starting the encryption, an error code will be sent in this event.
Event Format
AT+RSIBT_ENCRYPTION_ENABLED <bd_addr>,<local_ediv>,<local_rand>,<local_ltk>
AT+RSIBT_ENCRYPTION_DISABLED
where ... bd_addr (6 bytes)
- BD address of the remote BT device
local_ediv (2 bytes)
- 16-bit stored value used to identify the LTK distributed during LE legacy pairing. A new EDIV is generated each time a unique LTK is distributed.
local_rand (8 bytes)
- 64-bit stored valued used to identify the LTK distributed during LE legacy pairing. A new Rand is generated each time a unique LTK is distributed
local_ltk (16 bytes)
- Long Term Key
Example
AT+RSIBT_ENCRYPTION_ENABLED 88-DA-1A-9E-81-87,[Local EDIV=]1FFF,[Local RAND=]71,80,0,BF,0,0,C0,1[Local LTK=]63,63,6D,45,62,55,81,9D,A4,22,8E,69,CA,77,7F,B0
[ Go to top ]
LE MTU Size Event
Description
This event is raised after LE connection.
Event Format
AT+RSIBT_LE_REMOTE_MTU_SIZE ,<bd_addr>,<mtu_size>
Parameters
bd_addr (6 bytes)
- BD address of the remote BT device
MTU_size (2 bytes)
- Size of MTU
Example
AT+RSIBT_LE_REMOTE_MTU_SIZE 00-1A-7D-34-54-66,64
[ Go to top ]
LE MTU Exchange Info Event
Description
This event is triggered when:
-
Remote Device initiates MTU Exchange Request, (initiated_role =PEER_DEVICE_INITATED_MTU_EXCHANGE )
- Remote Device responds with MTU response (initiated_role =LOCAL_DEVICE_INITATED_MTU_EXCHANGE )
Event Format
AT+RSIBT_LE_MTU_EXCHANGE_INFORMATION <remote_dev_addr>,<remote_mtu_size>,<local_mtu_size>,<initiated_role>
Parameters
bd_addr (6 bytes)
- BD address of the remote BT device.
Remote_MTU_size (2 bytes)
- Remote Device MTU
Local_MTU_size (2 bytes)
- Local Device MTU
Initiated_role (1 byte)
-
Initated Role, who has initiated MTU Exchange Req
- 0x1 - PEER_DEVICE_INITATED_MTU_EXCHANGE
- 0x2 - LOCAL_DEVICE_INITATED_MTU_EXCHANGE
Example
AT+RSIBT_LE_MTU_EXCHANGE_INFORMATION 6C-F2-1B-3E-BF-50,FA,F0,1
[ Go to top ]
SMP Passkey Display Event
Description
This event is raised when the SMP Passkey comes from the connected remote device. If IO_Capability request in SMP Passkey Request is DISPLAY_ONLY then only this event occurs.
Upon reception of this event SMP Passkey command is not required.
Event Format
AT+RSIBT_SMPPASSKEY_DISPLAY <bd_addr>,<Passkey>
whnere ...
bd_addr (6 bytes)
- BD address of the remote BT device.
Passkey (4 bytes)
- Passkey
Example
AT+RSIBT_SMP_PASSKEY_DISPLAY AA-BB-CC-DD-EE-FF,123456
Note!
If IO_Capability request as DISPLAY_ONLY in both sides then SMP will won't work.
[ Go to top ]
Phy Update Event
Description
The LE PHY Update Complete Event is used to indicate that the Controller has changed the transmitter PHY or receiver PHY in use.
Event Format
AT+RSIBT_LE_PHY_UPDATE_COMPLETE =<bd_addr>,<status>,<Tx_phy><Rx_phy>
where ...
bd_addr (6 bytes)
- BD address of the connected device.
status (1 byte)
- 0 – Success,
- Non-zero – Failure
Tx_phy(1 byte)
-
Transmitission phy rate
- BIT(0) - The Host prefers to use the LE 1M transmitter PHY (possibly among others)
- BIT(1) - The Host prefers to use the LE 2M transmitter PHY (possibly among others)
- BIT(2) - The Host prefers to use the LE Coded transmitter PHY (possibly among others)
- BIT(3) - BIT(7) Reserved for future use
Rx_phy (1 byte)
-
Reception phy rate
- BIT(0) - The Host prefers to use the LE 1M transmitter PHY (possibly among others)
- BIT(1) - The Host prefers to use the LE 2M transmitter PHY (possibly among others)
- BIT(2) - The Host prefers to use the LE Coded transmitter PHY (possibly among others)
- BIT(3) - BIT(7) Reserved for future use
Example
AT+RSIBT_ LE_PHY_UPDATE_COMPLETE =B4-99-4C-64-BE-F5,0,2,1
[ Go to top ]
BLE Data Length Change Event
Description
The LE Data Length Change event notifies the Host of a change to either the maximum Payload length or the maximum transmission time of packets in either direction.
Event Format
AT+RSIBT_LE_DATA_LENGTH_CHANGE_EVENT <BDAddress><MaxTxOctets>,<MaxTxTime>,<MaxRxOctets><MaxRxTime>
where ...
BDAddress (6 bytes)
- BD address of the connected device.
MaxTxOctets (2 bytes)
- The maximum number of payload octets in a Link Layer packet that the local)Controller will send on this connection.
MaxTxTime (2 bytes)
- The maximum time that the local Controller will take to send a Link Layer packet on this connection.
MaxRxOctets (2 bytes)
- The maximum number of payload octets in a Link Layer packet that the local)Controller expects to receive on this connection
MaxRxTime (2 bytes)
- The maximum time that the local Controller expects to take to receive a Link Layer packet on this connection
Example
AT+RSIBT_LE_DATA_LENGTH_UPDATE 00-23-A7-12-23-24,40,330,50,320
[ Go to top ]
SMP Secure connection Passkey Event
Description
This event is raised when the SMP Secure connection Passkey comes from the connected remote device. Upon reception of this event SMP Passkey command has to be given.
Event Format
AT+RSIBT_LE_SC_PASSKEY = <bd_addr>,<passkey>
where ...
bd_addr (6 bytes)
- BD address of the remote BT device.
Passkey (4 bytes)
- Passkey to authenticate with the Remote device.
Example
AT+RSIBT_LE_SC_PASSKEY 00-23-A7-12-23-24,435622
[ Go to top ]
LE Directed Advertising Report Event
Description
The LE Directed Advertising Report event indicates that directed advertisements have been received.
Event Format
AT+RSIBT_LE_DIRECTED_ADV_REPORT <AddressType>,<Address>,<DirectedAddressType>,<DirectedAddress>,<Rssi>
where ...
AddressType (1 byte)
-
Specifies the type of the address mentioned in BDAddress
- 0 – Public address
- 1 – Random address
- 2 – Public Identity Address
- 3 – Random (Static) Identity Address
BDAddress (18 bytes)
- Remote device BD Address
DirectedAddressType (1 byte)
- Type od the remote Device Address
DirectedAddress (18 bytes)
- Random Device Address.
Rssi (1 byte)
- Received signal strength value
Example
AT+RSIBT_LE_DIRECTED_ADV_REPORT 1,00-23-A7-12-23-24,1,00-23-A7-12-23-24,21
[ Go to top ]
Enhanced connection Complete Event
Description
Enhanced connection Complete Event indicates both of the hosts forming a connection that a new connection has been established.
Event Format
AT+RSIBT_LE_DEVICE_ENHANCE_CONNECTED=<addr_type>,<bd_addr>,<status>,<LocalResolvableAddr>,<PeerResolvableAddr>
where ...
addr_type
-
Address type of the connected device
- 0 – Public address
- 1 – Random address
- 2 – Public Identity Address
- 3 – Random (Static) Identity Address
BDAddress
- BD Address of the connected device
Status
- 0 – Success,
- Non-zero – Failure
LocalResolvableAddr
- Resolvable address of the local device
PeerResolvableAddr
- Resolvable address of the remote device
Example
AT+RSIBT_LE_DEVICE_ENHANCE_CONNECTED=0,B4-99-4C-64-BE-F5,0,74-99-4C-64-BB-F5,48-99-4C-64-BE-F5
[ Go to top ]
LE LTK Request Event
Description
This event is raised when the LE long-term key of the local device is requested by its LE controller.
Event Format
AT+RSIBT_LTK_REQUEST <bd_addr>,<LocalEDIV>,<LocalRand>
where ... bd_addr
- Remote BD Address.
LocalEDIV (2 bytes)
- 16-bit stored value used to identify the LTK distributed during LE legacy pairing.A new EDIV is generated each time a unique LTK is distributed.
LocalRand (8 bytes)
- 64-bit stored valued used to identify the LTK distributed during LE legacy pairing.A new Rand is generated each time a unique LTK is distributed
Example
AT+RSIBT_LTK_REQUEST 68-13-4C-69-1E-90, Local EDIV: F259, Local RAND: 21,A4,B2,86,F5,10,52,59
[ Go to top ]
LE Security Keys Event
Description
This event is raised after encryption enabled with the remote device.
Event Format
AT+RSIBT_ <LocalIRK>,<RemoteIRK>,<RemoteEDIV>,<RemoteRand>,<RemoteLTK>,<Remote Identity Address Type>,<Remote Identity Address>
where ...
BDAddress (6 bytes)
- Remote BD Address.
LocalIRK (16 bytes)
- IRK of the local device
RemoteIRK (16 bytes)
- IRK of the remote device
RemoteEDIV (2 bytes)
- 16-bit stored value used to identify the LTK distributed during LE legacy pairing. A new EDIV is generated each time a unique LTK is distributed.
RemoteRand (16 bytes)
- 64-bit stored valued used to identify the LTK distributed during LE legacy pairing.A new Rand is generated each time a unique LTK is distributed
RemoteLTK (16 bytes)
- Remote device Long Term Key
IdentityAddressType (1 byte)
- Address type of the remote device Identity Address
IdentityAddress (6 bytes)
- Identity Address of the remote device
Example
AT+RSIBT_ local IRK:9D,9,A5,B,E9,97,3C,15,C2,34,AE,EB,5F,8E,74,D
Remote IRK:49,7D,83,E6,19,2A,2,60,8E,9B,37,3D,3C,D7,E0,6B
Remote EDIV:0
Remote RAND:0,0,0,0,0,0,0,0
Remote LTK:0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Remote Identity Address Type:0,
Remote Identity Address:34-82-C5-34-1D-30,
[ Go to top ]
Conn Update Event
Description
The LE CONN Update Complete Event is used to indicate that the Controller has changed the connection parameter.
Event Format
AT+RSIBT_LE_CONN_UPDATE_COMPLETE <BDAddress>,<status>,<Conn_Interval>,<Conn_Latency>,<Supervision_Timeout>
where ...
bd_addr (6 bytes)
- BD Address of the connected device
status (1 byte)
- 0x00 - connection_Update command successfully completed.
- 0x01 – 0xFF connection_Update command failed to complete.
Conn_Interval (2 bytes)
-
connection interval used on this connection.
- Range: 0x0006 to 0x0C80 (Time = N * 1.25 ms, Time Range: 7.5 ms to 4000 ms.)
Conn_Latency (2 bytes)
- Slave latency for the connection in the number of connection events.
- Range: 0x0000 to 0x01F3
-
The connSlaveLatency shall be an integer in the range of 0 to
((connSupervisionTimeout / (connInterval*2)) - 1)
-
Note
latency:
- If conn slave latency is greater than 32, Limiting conn slave latency to 32. Max supported slave latency is 32 when the Device is in Slave Role.
Supervision_Timeout (2 bytes)
- Supervision timeout for the LE Link.Range: 0x000A to 0x0C80 (Time = N * 10 ms, Time Range: 100 ms to 32000 ms)
Example
AT+RSIBT_LE_CONN_UPDATE_COMPLETE 00-1A-7D-DA-71-13,0,6,0,C80
[ Go to top ]
GATT Notification
Description
This event is raised when the GATT Notification packet is received from the connected remote device.
Event Format
AT+RSIBT_NOTIFY,<bd_addr>,<handle>,<length>,<value>
where ...
bd_addr (6 bytes)
- Remote BD Address
handle (2 bytes)
- handle related to the Value
-
pkt_type:
- 0x01 - RSI_BLE_WRITE_CMD_EVENT
- 0x02 - RSI_BLE_WRITE_REQUEST_EVENT
- 0x03 - RSI_BLE_NOTIFICATION_EVENT
- 0x04 - RSI_BLE_INDICATION_EVENT
length (1 byte)
- Number of valid bytes in the Value
value (50 bytes)
- The contents of the received Notification packet
Note!
- "handle" parameter contains handle and pkt_type, both are clubbed (Ex: 3303, MSB: 33 is the handle and 03 is the packet type)
Example
In this example
- 3303 - 33 is the handle and 03 is the packet type
- length = 2
-
value = 1,0
AT+RSIBT_NOTIFY,C0-FF-EE-C0-FF-EE,3303,2,1,0
[ Go to top ]
GATT Indication
Description
This event is raised when the GATT Indication packet is received from the connected remote device.
Event Format
AT+RSIBT_INDICATION,<bd_addr>,<handle + pkt_type>,<length>,<value>
where ...
bd_addr (6 bytes)
- Remote BD Address
handle (2 bytes)
- handle related to the Value
-
pkt_type:
- 0x01 - RSI_BLE_WRITE_CMD_EVENT
- 0x02 - RSI_BLE_WRITE_REQUEST_EVENT
- 0x03 - RSI_BLE_NOTIFICATION_EVENT
- 0x04 - RSI_BLE_INDICATION_EVENT
length (1 byte)
- Number of valid bytes in the Value
value (50 bytes)
- The contents of the received Notification packet
Note!
- "handle" parameter contains handle and pkt_type, both are clubbed (Ex: 3304, MSB: 33 is the handle and 04 is the packet type)
Example
In this example
- 3304 - 33 is the handle and 04 is the packet type
- length = 2
-
value = 2,0
AT+RSIBT_INDICATION,C0-FF-EE-C0-FF-EE,3304,2,2,0
[ Go to top ]
GATT Write
Description
This event is raised when GATT write packet is received from the connected remote device.
Event Format
AT+RSIBT_WRITE,<bd_addr>,<handle>,<length>,<value>
where ...
bd_addr (6 bytes)
- Remote BD Address
handle (2 bytes)
- handle related to the Value
-
pkt_type:
- 0x01 - RSI_BLE_WRITE_CMD_EVENT
- 0x02 - RSI_BLE_WRITE_REQUEST_EVENT
- 0x03 - RSI_BLE_NOTIFICATION_EVENT
- 0x04 - RSI_BLE_INDICATION_EVENT
length (1 byte)
- Number of valid bytes in the Value
value (50 bytes)
- The contents of the received Notification packet
Note!
- "handle" parameter contains handle and pkt_type, both are clubbed (Ex: 3301, MSB: 33 is the handle and 01 is the packet type)
Example
In this example
- C01 - C is the handle and 01 is the packet type
- length = 3
-
value = 1,3,2
AT+RSIBT_WRITE,C0-FF-EE-C0-FF-EE,C01,3,1,3,2
[ Go to top ]
Prepare Write Event
Description
This event is raised when prepare write packet is received from the connected remote device.
Event Format
AT+RSIBT_PREPARE_WRITE_REQ,<bd_addr>,<handle>,<offset>,<length>,<value>
bd_addr (6 bytes)
- Remote BD Address
handle (2 bytes)
- Handle related to the Value:
length (1 byte)
- Number of valid bytes in the Value
value (50 bytes)
- The contents of the received Prepare Write packet
Example
AT+RSIBT_PREPARE_WRITE_REQ 6C-27-39-31-9C-D6,E,0,14,1,2,3,4,5,6,7,8,9,10,1,2,3,4
[ Go to top ]
GATT Read
Description
This event is raised when a read request is received from the connected remote device. In BLE mode, enable BT mode.
Event Format
AT+RSIBT_READ_REQ,<bd_addr>,<handle>
where ...
bd_addr (6 bytes)
- Remote BD Address.
handle (2 bytes)
- Handle related to the value of the characteristic requested to be read.
[ Go to top ]
GATT Read Blob
Description
This event is raised when a read blob request is received from the connected remote device. In BLE mode, enable BT mode.
Event Format
AT+RSIBT_READ_BLOB_REQ,<bd_addr>,<handle>,<offset>
where ...
bd_addr (6 bytes)
- Remote BD Address.
handle (2 bytes)
- Handle related to the value of the characteristic requested to be read.
offset (2 bytes)
- The offset of the first octet to be read.
Note!
-
- A command should not be issued by the Host before receiving the response of a previously issued command from the module
-
- AT mode is supported in RS9116 WiSeconnect.
-
- WLAN / Wi-Fi / TCP-IP is supported in RS9116 WiSeconnect.
ext_custom_feature_bit_map gets enabled when BIT(31) is set to ‘1’ in custom_feature_bitmap
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>
ext_tcp_ip_feature_bit_map gets enabled when BIT(31) is set to ‘1’ in tcp_ip_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_tcp_ip_feature_bit_map>
bt_feature_bit_map gets enabled when BIT(31) is set to ‘1’ in both custom_feature_bit_map and ext_custom_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>,<bt_feature_bit_map>
ble_custom_feature_bit_map gets enabled when BIT(31) is set to 1 in custom_feature_bitmap, ext_custom_feature_bit_map and bt_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>,<bt_feature_bit_map>,<ext_tcp_ip_feature_bit_map>,<ble_custom_feature_bit_map>
ble_custom_ext_feature_bit_map gets enable when BIT(31) is set to 1 in ble_custom_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>,<bt_feature_bit_map>,<ext_tcp_ip_feature_bit_map>,<ble_custom_feature_bit_map>,<ble_custom_ext_feature_bit_map>
config_feature_bit_map gets enabled when BIT(31) is set to '1' in both tcp_ip_feature_bit_map and ext_tcp_ip_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>,<bt_feature_bit_map>,<ext_tcp_ip_feature_bit_map>,<ble_custom_feature_bit_map>,<ble_custom_ext_feature_bit_map>,<config_feature_bit_map>
ext_custom_feature_bit_map gets enabled when BIT(31) is set to ‘1’ in custom_feature_bitmap
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>
ext_tcp_ip_feature_bit_map gets enabled when BIT(31) is set to ‘1’ in tcp_ip_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_tcp_ip_feature_bit_map>
bt_feature_bit_map gets enabled when BIT(31) is set to ‘1’ in both custom_feature_bit_map and ext_custom_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>,<bt_feature_bit_map>
ble_custom_feature_bit_map gets enabled when BIT(31) is set to 1 in custom_feature_bitmap,ext_custom_feature_bit_map and bt_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>,<bt_feature_bit_map>,<ext_tcp_ip_feature_bit_map>,<ble_custom_feature_bit_map>
ble_custom_ext_feature_bit_map gets enable when BIT(31) is set to 1 in ble_custom_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>,<bt_feature_bit_map>,<ext_tcp_ip_feature_bit_map>,<ble_custom_feature_bit_map>,<ble_custom_ext_feature_bit_map>
config_feature_bit_map gets enabled when BIT(31) is set to '1' in both tcp_ip_feature_bit_map and ext_tcp_ip_feature_bit_map
at+rsi_opermode=<oper_mode>,<feature_bit_map>,<tcp_ip_feature_bit_map>,<custom_feature_bitmap>,<ext_custom_feature_bit_map>,<bt_feature_bit_map>,<ext_tcp_ip_feature_bit_map>,<ble_custom_feature_bit_map>,<ble_custom_ext_feature_bit_map>,<config_feature_bit_map>