BT Classic 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 | ||
Set Operating Mode | ||
Enable BT Protocol switch proto | ||
Set Local Name | ||
Query Local Name | ||
Set Local COD | ||
Query Local COD | ||
Query RSSI | ||
Query Local BD Address | ||
Query BT Stack Version | ||
Initialize BT Module | ||
Deinitialize BT Module | ||
AFH_MAP | ||
AFH Channel Classification | ||
BT Antenna Select | ||
Set Antenna Tx Power Level | ||
Update Gain Table Offset and MaxPower | ||
BT SecurePairing API's | ||
Set SSP Mode | ||
BT Sniff/Sleep API's | ||
Sniff Mode | ||
Sniff Exit | ||
BT PER API's | ||
BR EDR PER Transmit | ||
BR EDR PER Receive | ||
PER Stats | ||
BT GAP API's | ||
Set Feature Bitmap | ||
Set Profile Mode | ||
Set Device Discovery Mode | ||
Get Device Discovery Mode | ||
Set Connectability Mode | ||
Get Connectablility Mode | ||
Bond or Create Connection | ||
Bond Cancel Or Create Connection Cancel | ||
UnBond Or Disconnect | ||
User Confirmation | ||
Pass Key Request Reply | ||
Pincode Request Reply | ||
Linkkey Reply | ||
Get Local Device Role | ||
Set Local Device Role Or Switch The Role | ||
Get Service List | ||
Search Service | ||
BT Inquiry API's | ||
Remote Name Request | ||
Remote Name Request Cancel | ||
Inquiry Cancel | ||
Extended Inquiry Response Data | ||
BT Testmode API's | ||
Enable Device Under TestMode | ||
BT DID API's | ||
Add Device ID | ||
BT SPP API's | ||
SPP Connect | ||
SPP Disconnect | ||
SPP Transfer | ||
BT HID API's | ||
HID Send Interrupt Data | ||
HID Send Handshake Message | ||
HID Send Control Message | ||
HID Send SDP Configuration Data | ||
HID Reconnect |
This section explains various Bluetooth Classic commands, their structures, parameters and their responses. For API prototypes of these commands, please refer to the API Library Section.
A command should not be issued by the Host before receiving the response of a previously issued command from the module.
[ Go to top ]
rsi_opermode :: Set Operating Mode#
Description#
This is the first command that needs to be sent from the Host after receiving card ready frame from module. This command configures the module in different functional modes.
Command Format#
If 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>
If 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>
If BIT(31) is set to ‘1’ in both custom_feature and ext_custom_feature bit maps
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>
if BIT(31) is set to 1 in 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_feature_bit_map>
If 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_custom_feature_bit_map><ext_tcp_ip_feature_bit_map><ble_custom_feature_bit_map>,<ble_custom_ext_feature_bit_map>
If 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_custom_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
Sets the mode of operation.
oper_mode
contains two parts <wifi_oper_mode, coex_mode>. Lower two bytes representwifi_oper_mode
and higher two bytes representcoex_modes
.
oper_mode = ((wifi_oper_mode) | (coex_mode << 16))
Note!
See Wi-Fi AT Command PRM for more details on WLAN and co-existence of other protocols with WLAN.
In Bluetooth Low Energy (BLE) mode, Bluetooth Classic (BTC) mode also needs to be enabled.
Coex mode 8 (Dual mode) and 4 (BT classic mode) are not supported.
Instead of coexmode 8 and 4, To achieve the same functionality, please use coexmode 9 and 5.
To achieve the power save functionality, please trigger the
at+rsi_init
command after theat+rsi_opermode
command and also issue both WLAN and BT power save commands.If coex mode is enabled in opermode command, then BT / BLE protocol get starts and gives corresponding card ready in parallel with opermode command response (which will be handled by corresponding application).
custom_feature_bit_map
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 feature bitmap valid
1 - Extended feature bitmap is invalid
BIT[0:1],BIT[3:4],BIT[7],BIT[21],BIT[30]: Reserved, should be set to all
0
.
Note! For UART / USB-CDC in AT mode:
The parameters
feature_bit_map
,tcp_ip_feature_bit_map
andcustom_feature_bit_map
are optional inopermode
command in UART mode. If user does not give these parameters then default configuration gets selected as explained above based on the operating mode configured.
ext_custom_feature_bit_map
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. If this bit is enabled then connected clients which are in powersave may observe packet miss.
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
0 - Disable 4096 bit RSA key support
1 - Enable 4096 bit RSA key support
BIT[5]: This bit is used to enable Pre-authentication Support.
1 - Enable Pre-authentication Support
0 - Disable 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
This bitmap is valid only if BIT[31] of extended custom feature bit map is set.
BIT[0:7] - reserved
BIT[8] - BT_EDR_3MBPS_DISABLE
0 - Enable BT EDR 3Mbps Feature
1 - Disable BT EDR 3Mbps Feature
BIT[9] - BT_EDR_2MBPS_DISABLE
0 - Enable BT EDR 2Mbps Feature
1 - Disable BT EDR 2Mbps Feature
BIT[10] - BT_5_SLOT_PACKETS_DISABLE
0 - Enable BT 5 Slot Packet Feature
1 - Disable BT 5 Slot Packet Feature
BIT[11] - BT_3_SLOT_PACKETS_DISABLE
0- Enable BT 3 Slot Packet Feature
1 - Disable BT 3 Slot Packet Feature
BIT[12] - Noise Figure Feature
0 - Disable Noise Figure
1 - Enable Noise Figure
BIT[13] - SNIFF Feature Disable
0- Enable SNIFF Feature
1- Disable SNIFF Feature
BIT[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 number 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. For classic opermode this can be ignored.
0 - Ignore BLE feature bit map
1 - Valid BLE feature bit map
Note! A2DP, AVRCP and HFP Profiles are not supported currently.
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 | 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 | Successful execution of the command |
ERROR | Failure |
Example#
Command
at+rsi_opermode=327680,0,0,2147483648,2150629376,1073741824
Response
OK
bt_loaded
[ Go to top ]
rsi_switch_proto :: Enable BT Protocol Switch proto#
Description#
This is used to enable BT protocol in case of coex opermodes (8/9 etc). By default, BT protocol is disabled only in "opermode 8" and "opermode 9", remaining opermodes not needed to enable it explicitly as it is enable by default.
Command Format#
at+rsi_switch_proto=<enable>
Parameters#
enable
0 - disable
1 - enable
Example#
Command
at+rsi_switch_proto=1
Response
OK
[ Go to top ]
rsibt_setlocalname :: Set Local Name#
Description#
This is used to set name to the local device
Command Format#
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 8,silabs
[ Go to top ]
rsibt_setlocalcod :: Set Local COD#
Description#
This command indicates the capabilities of local device to other devices. It is a parameter received during the device discovery procedure on the BR/EDR physical transport, indicating the type of device. The Class of Device parameter is only used on BR/EDR and BR/EDR/LE devices using BR/EDR physical transport. It is defined in the following link Bluetooth Assigned Numbers.
Command Format#
at+rsibt_setlocalcod=<local_device_class>
Parameters#
local_device_class
Class of the Device of local device
Example#
Command
at+rsibt_setlocalcod=7A020C
Response
OK
[ Go to top ]
rsibt_getlocalcod :: Query Local COD#
Description#
This is used to query Class of Device of the local device.
Command Format#
at+rsibt_getlocalcod?
Response#
Result Code | Description |
---|---|
OK <local_device_class> | Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
local_device_class - Class of the Device of the local device
Example#
Command
at+rsibt_getlocalcod?
Response
OK 7A020C
[ Go to top ]
rsibt_getrssi :: Query RSSI#
Description#
This is used to query RSSI of the connected remote BT Device.
Command Format#
at+rsibt_getrssi=<bd_addr>?
Parameters#
bd_addr (6 bytes)
BD Address of the connected remote device.
Response#
Result Code | Description |
---|---|
OK <rssi_value> | Command Success. |
ERROR <Error_code> | Command Fail. |
where ...
rssi_value (1 byte)
RSSI value of the connected remote device. The rssi is in the range -128 to +127 dBm.
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 BD address of the local device.
Command Format#
at+rsibt_getlocalbdaddr?
Response#
Result Code | Description |
---|---|
OK <bd_addr> | Command Success with valid response. |
ERROR <Error_code> | Command Fail. |
where ...
bd_addr (6 bytes)
BD 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 Current BT Stack Version.
Command Format#
at+rsibt_getbtstackversion?
Response#
Result Code | Description |
---|---|
OK | Command Success with valid response. |
ERROR | Command Fail. |
where ...
*stack version (1 byte)
Stack version
Example#
Command
at+rsibt_getbtstackversion?
Response
OK 2.1.0
[ Go to top ]
rsibt_btinit :: Initialize BT Module#
Description#
This is used to initialize the BT module.
Command Format#
at+rsibt_btinit
Example#
Command
at+rsibt_btinit
Response
OK
[ Go to top ]
rsibt_btdeinit :: Deinitialize BT Module#
Description#
This is used to de-initialize the BT module. To again initialize the module Initialize BT module
command can be used.
Command Format#
at+rsibt_btdeinit
Example#
Command
at+rsibt_btdeinit
Response
OK
[ Go to top ]
rsibt_btantennaselect :: BT Antenna Select#
Description#
This is used to select internal or external antenna of the BT module.
Command Format#
at+rsibt_btantennaselect=<antenna_val>
Parameters#
antenna_val (1 byte)
Select the internal or external antenna
0 - Internal Antenna
1 - External Antenna
Example#
Command
at+rsibt_btantennaselect=1
Response
OK
[ Go to top ]
rsibt_setfeaturebitmap :: Set Feature Bitmap#
Description#
Sets the feature bitmap of module. But at present this command is used to enable/disable the BT Security
If BT Security gets Enabled, then Stack sends IOCapablity Request positive Reply with the IOCapability data updated via Set SSP Mode command. Else, IOCapability Request Negative Reply will be called from stack.
Command Format#
at+rsibt_setfeaturebitmap=<featurebitmap>
Parameters#
featurebitmap (2 bytes)
0 - Disable BT security
1 - Enable BT security
Example#
at+rsibt_setfeaturebitmap=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)
1 - BT Classic
power_level (1 byte)
Power level used in the range 1-14 dBm
Tx Power Index | Tx Power Value |
---|---|
64 | 1dBm |
65 | 2dBm |
66 | 3dBm |
67 | 4dBm |
68 | 5dBm |
69 | 6dBm |
70 | 7dBm |
71 | 8dBm |
72 | 9dBm |
73 | 10dBm |
74 | 11dBm |
75 | 12dBm |
Example#
at+rsibt_setantennatxpowerlevel=1,10
Response
OK
[ 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 the opermode request.
This command is applicable for High performance(HP) mode only.
Internally, the firmware maintains two tables.
Gain table holding the Max Tx power values for all supported regions.
Gain table holding the Max power vs offset values for each channel for all supported regions
There are 5 regions supported and they are FCC, ETSI, TELEC, KCC and 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 on every boot-up since this information is not saved inside the flash. SoC uses these tables in FCC/ETSI/TELEC/KCC regions to limit power and not to violate the allowed limits.
In worldwide regions, firmware uses worldwide TX power values. In other regions, firmware uses minimum of worldwide and region-based TX values. Keep in mind that these values vary with different parts. Also, the offsets are estimated during manufacturing, which are then applied as a correction factor during normal mode of operation.
This frame has to be used by customers who have done FCC/ETSI/TELEC/KCC certification with their own antenna. All other customers should not use this. Any other use of this frame may result in violation of FCC/ETSI/TELEC/KCC or any other certifications and Silicon labs is not liable for it.
In the max power per region configurations, update all regions.
Update all the 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 certifications.
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; must be equal to the size of payload
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>, <#Channels - 'm'>,
<CHANNEL NUMBER 1>, <OFFSET>,
<CHANNEL NUMBER 2>, <OFFSET>,
.
.
<CHANNEL NUMBER m>, <OFFSET>,
<REGION NAME 2>, <#Channels - 'n'>,
<CHANNEL NUMBER 1>, <OFFSET>,
<CHANNEL NUMBER 2>, <OFFSET>,
.
.
<CHANNEL NUMBER n>, <OFFSET>,
.
.
<REGION NAME r>, <#Channels - 'n'>,
<CHANNEL NUMBER 1>, <OFFSET>,
<CHANNEL NUMBER 2>, <OFFSET>,
.
.
<CHANNEL NUMBER n>, <OFFSET>,
};
Supported Region names
The following are the regions and there values to be passed instead of macros in the example.
0 - FCC
1 - ETSI
2 - TELEC
3 - WORLDWIDE
4 - KCC
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 <stack_version> | Command Success with valid response. |
ERROR <Error_code> | Command Fail. |
where ...
error_code
4F01
- Invalid gain table payload length4F02
- Invalid region4F03
- Invalid gain table offset request type4F04
- Invalid node id request
Example 1 - Update BT Maxpower#
Command
at+rsibt_updategaintableoffsetMaxpower= 1,0,10,0,17,1,10,2,14,3,20,4,12
Example 2 - Update BT Offset#
Command
at+rsibt_updategaintableoffsetMaxpower= 1,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\r\n
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_bredrtransmit :: BR EDR PER Transmit#
Description#
This command can be given to start br -edr transmission.
Command Format#
at+rsibt_bredrtransmit=<enable>,<device_address>,<pkt_len>,<pkt_type>,<BR/EDR_mode>,<rx_channel_num>,<tx_channel_num>,<link_type>,<scrambler_seed>,<hopping_type>,<antenna_sel>,<pll_mode>,<rf_type>,<rf_chain>,<payload_type>,<tx_power_index>,<tx_mode>,<inter_packet_gap>,<num_of_packets>
Parameters#
enable
This parameter enables/disables the bt per transmit mode
0 - PER Transmit Disable
1 - PER Transmit Enable
device_address
A 48-bit address in hexadecimal format e.g.
0023A7010203
.Does not need to be the modules BD address, it can be any 48bit BD address however the same address should be used for the transmit and receive command.
pkt_len
Length of the packet in bytes to be transmitted
pkt_type
Type of the packet to be transmitted as per the Bluetooth standard.
Packet | Type | BR EDR Mode | Packet length | Link Type |
---|---|---|---|---|
DM1 | 3 | 1 | 0-17 | 1 |
DH1 | 4 | 1 | 0-27 | 1 |
DH3 | 11 | 1 | 0-183 | 1 |
DM3 | 10 | 1 | 0-121 | 1 |
DH5 | 15 | 1 | 0-339 | 1 |
DM5 | 14 | 1 | 0-224 | 1 |
2-DH1 | 4 | 2 | 0-54 | 1 |
2-DH3 | 10 | 2 | 0-367 | 1 |
2-DH5 | 14 | 2 | 0-679 | 1 |
3-DH1 | 8 | 3 | 0-83 | 1 |
3-DH3 | 11 | 3 | 0-552 | 1 |
3-DH5 | 15 | 3 | 0-1021 | 1 |
HV1 | 5 | 1 | 10 | 0 |
HV2 | 6 | 1 | 20 | 0 |
HV3 | 7 | 1 | 30 | 0 |
DV | 8 | 1 | 10+(0-9)D | 0 |
EV3 | 7 | 1 | 1-30 | 2 |
EV4 | 12 | 1 | 1-120 (See note) | 2 |
EV5 | 13 | 1 | 1-180 (See note) | 2 |
2-EV3 | 6 | 2 | 1-60 | 2 |
2-EV5 | 12 | 2 | 1-360 (See note) | 2 |
3-EV3 | 7 | 3 | 1-90 | 2 |
3-EV5 | 13 | 3 | 1-540 (See note) | 2 |
Note! In eSCO (link type = 3), having capability of maximum 90 bytes (Packet Length) only.
BR/EDR_mode
BT Classic mode
1 - basic rate
2,3 - enhanced_rate
rx_channel_num
Receive channel index as per the Bluetooth standard. i.e, 0 to 78
The band and bandwidth for all BT channels is 2.4 GHz and 1 MHz respectively.
Channel Number | Centre Frequency (MHz) |
---|---|
0 | 2402 |
1 | 2403 |
2 | 2404 |
3 | 2405 |
4 | 2406 |
5 | 2407 |
6 | 2408 |
7 | 2409 |
8 | 2410 |
9 | 2411 |
10 | 2412 |
11 | 2413 |
12 | 2414 |
13 | 2415 |
14 | 2416 |
15 | 2417 |
16 | 2418 |
17 | 2419 |
18 | 2420 |
19 | 2421 |
20 | 2422 |
21 | 2423 |
22 | 2424 |
23 | 2425 |
24 | 2426 |
25 | 2427 |
26 | 2428 |
27 | 2429 |
28 | 2430 |
29 | 2431 |
30 | 2432 |
31 | 2433 |
32 | 2434 |
33 | 2435 |
34 | 2436 |
35 | 2437 |
36 | 2438 |
37 | 2439 |
38 | 2440 |
39 | 2441 |
40 | 2442 |
41 | 2443 |
42 | 2444 |
43 | 2445 |
44 | 2446 |
45 | 2447 |
46 | 2448 |
47 | 2449 |
48 | 2450 |
49 | 2451 |
50 | 2452 |
51 | 2453 |
52 | 2454 |
53 | 2455 |
54 | 2456 |
55 | 2457 |
56 | 2458 |
57 | 2459 |
58 | 2460 |
59 | 2461 |
60 | 2462 |
61 | 2463 |
62 | 2464 |
63 | 2465 |
64 | 2466 |
65 | 2467 |
66 | 2468 |
67 | 2469 |
68 | 2470 |
69 | 2471 |
70 | 2472 |
71 | 2473 |
72 | 2474 |
73 | 2475 |
74 | 2476 |
75 | 2477 |
76 | 2478 |
77 | 2479 |
78 | 2480 |
tx_channel_num
Transmit channel index as per the Bluetooth standard. i.e, 0 to 78
link_type
The type of the channel is used
0 - sco
1 - acl
2 - esco
scrambler_seed
Initial seed to be used for whitening. It should be set to ‘0’ in order todisable whitening.In order to enable, one should give the scrambler seed value which is used on the receive side
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
This field defines the antenna selection (onboard/external) to be used for reception
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
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
Transmit power value should be between 0 and 10
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 interpacket 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.
Example#
Command
at+rsibt_bredrtransmit= 1,11-11-11-11-11-11,339,15,1,10,10,1,0,0,2,0,1,2,0,10,0,0,0
Response
OK
[ Go to top ]
rsibt_bredrreceive :: BR EDR PER Receive#
Description#
This command can be given to start the br -edr reception.
Command Format#
at+rsibt_bredrreceive=<enable>,<device_address>,<pkt_len>,<pkt_type>,<BR/EDR_mode>,<rx_channel_num>,<tx_channel_num>,<link_type>,<scrambler_seed>,<hopping_type>,<antenna_sel>,<pll_mode>,<rf_type>,<rf_chain>,<loop_back_mode>
Parameters#
Variables | Description |
---|---|
enable/disable (1 byte) |
This parameter enables/disables the bt per Receive mode
0 - PER Receive Disable
1 - PER Receive Enable
device_address (6 bytes)
48-bit address in hexadecimal format, e.g,
000012345678
pkt_len (1 byte)
Length of the packet in bytes is received.
pkt_type (1 byte)
Type of the packet is received, as per the Bluetooth standard.
BR/EDR_mode (1 byte)
BT Classic Mode
1- basic rate
2 - enhanced_rate
rx_channel_num (1 byte)
Receive channel index as per the Bluetooth standard. i.e, 0 to 78
tx_channel_num (1 byte)
Transmit channel index as per the Bluetooth standard. i.e, 0 to 78
link_type (1 byte)
The type of the channel is used
0 - sco
1 - acl
2 - esco
scrambler_seed (1 byte)
Initial seed to be used for whitening. It should be set to ‘0’ inorder to disable whitening.
hopping_type (1 byte)
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 parametersare unused in this mode)
antenna_sel (1 byte)
This field defines the antenna selection (onboard/external) to be used for reception
2 - ONBOARD_ANT_SEL
3 - EXT_ANT_SEL
pll_mode (1 byte)
This field define the pll_mode type to be used
0 - PLL_MODE0 (to be used by Default)
1 - PLL_MODE1
2 - PLL_MODE2
rf_type (1 byte)
This field defines the selection of RF type (internal/external)
0 - External RF
1 - Internal RF
rf_chain (1 byte)
This field corresponds to the selection of RF chain (HP/LP) to be used
2 -BT_HP_CHAIN
3 - BT_LP_CHAIN
loop_back_mode (1 byte)
0 - Disable
1 - Enable
Example#
Command
at+rsibt_bredrreceive= 1,11-11-11-11-11-11,339,15,1,10,10,1,0,0,2,0,1,2,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 Format#
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
dummy (2 bytes)
Dummy array of length 5
Example#
The following is an example response
OK 000a 00a0 000F 0000 0000 0000 0000 00b0 001f 0000 0000
[ Go to top ]
rsibt_setprofilemode :: Set Profile Mode#
Description#
This is used to initialize the particular profiles in Bluetooth embedded host stack. At present, only SPP and HID profiles are supported.
Command Format#
at+rsibt_setprofilemode=<ProfileMode>
Parameters#
ProfileMode (1 byte)
Set specific bits to enable the profiles.
Bit No | Description |
---|---|
0 | SPP Profile |
1 | A2DP Profile |
2 | AVRCP Profile |
3 | HFP Profile |
4 | PBAP Profile |
5 | IAP Profile |
6 | HID Profile |
Example#
Command
at+rsibt_setprofilemode=1
Response
OK
[ Go to top ]
rsibt_setdiscvmode :: Set Device Discovery Mode#
Description#
This is used to set the BT module in any of the three Discovery modes. Timeout can be used for only limited discovering.
Command Format#
at+rsibt_setdiscvmode=<mode>,<timeout>
Parameters#
Mode (1 byte)
Enable/disable discovery
0 - disable discovery
1 - enable discovery
2 - limited discovery
TimeOut (4 bytes)
Timeout value in milliseconds, it is recommende to keep the timeout below 1 hour (3600000 ms)
Example#
Command
at+rsibt_setdiscvmode=2,10000
Response
OK
[ Go to top ]
rsibt_getdiscvmode :: Get Device Discovery Mode#
Description#
This is used to get the discovery mode of the BT module, currently the BT module was set.
Command Format#
at+rsibt_getdiscvmode?
Response#
Result Code | Description |
---|---|
OK | Command Success with valid response. |
ERROR | Command Fail. |
where ...
mode (1 byte)
0 - discovery mode disabled
1 - discovery mode enabled
Example#
Command
at+rsibt_getdiscvmode?
Response
OK 1
[ Go to top ]
rsibt_setconnmode :: Set Connectability Mode#
Description#
This is used to set the BT module in one of the two Connectability modes.
Command Format#
at+rsibt_setconnmode=<ConnMode>
Parameters#
ConnMode (1 byte)
Enable/disable connectability
0 - disable connection mode
1 - enable connection mode
Example#
Command
at+rsibt_setconnmode=1
Response
OK
[ Go to top ]
rsibt_getconnmode :: Get Connectablility Mode#
Description#
This is used to get the connectable mode, currently the BT module was set.
Command Format#
at+rsibt_getconnmode?
Response#
Result Code | Description |
---|---|
OK | Command Success with valid response. |
ERROR | Command Fail. |
where ...
ConnMode (1 byte)
enabled/disabled connection mode
0 - Disabled connection mode
1 - Enabled connection mode
Example#
Command
at+rsibt_getconnmode?
Response
OK 1
[ Go to top ]
rsibt_rmtnamereq :: Remote Name Request#
Description#
This is used to know the name of the remote BT device, using its BD address. The response to this command containing the remote BT device name will be sent to the host through "RMTDEVNAME" event.
Command Format#
at+rsibt_rmtnamereq=<bd_addr>
Parameters#
bd_addr (6 bytes)
remote device BD Address
Example#
Command
at+rsibt_rmtnamereqcancel=AA-BB-CC-DD-EE-FF
Response
OK
[ Go to top ]
rsibt_rmtnamereqcancel :: Remote Name Request Cancel#
Description#
This will cancel the request served by "Remote Name Request" command. The cancellation is confirmed through "Remote Name Request Cancelled" event.
Command Format#
at+rsibt_rmtnamereqcancel=<bd_addr>
Parameters#
bd_addr (6 bytes)
remote device BD Address
Example#
Command
at+rsibt_rmtnamereqcancel=AA-BB-CC-DD-EE-FF
Response
OK
[ Go to top ]
Inquiry#
Description#
This performs an inquiry to find any BT devices in the vicinity. The response is sent using "INQRESP" event.
Command Format#
at+rsibt_inquiry=<InquiryType>,<Duration>,<MaxNbrdev>
Parameters#
inquiryType (1 byte)
0 - Standard inquiry
1 - Inquiry with RSSI
2 - Extended Inquiry
3 - Inquiry followed by Remote name request
Duration (4 bytes)
Extended Time in milliseconds (up to 10000ms)
MaxNbrdev (1 byte)
Maximum number of devices to scan (from 1 to 10)
Example#
Command
at+rsibt_inquiry=1,10000,10
Response
OK
[ Go to top ]
rsibt_inquirycancel :: Inquiry Cancel#
Description#
This will cancel the inquiry scan which was already in the process, served by "Inquiry" command.
Command Format#
at+rsibt_inquirycancel
Example#
Command
at+rsibt_inquirycancel
Response
OK
[ Go to top ]
rsibt_seteir :: Extended Inquiry Response Data#
Description#
This command is used to set the Extended Inquiry Response data.
Command Format#
at+rsibt_seteir=<DataLen>,<Data>
Parameters#
Length (1 byte)
data length. Max EIR data length is 200 Bytes.
Data (200 bytes)
Actual data in hex format
Example#
Command
at+rsibt_seteir=8,2,1,0,4,9,72,72,72
Response
OK
[ Go to top ]
rsibt_bond :: Bond or Create Connection#
Description#
This will create bonding (connection) between the BT module and the remote BT device based on BD address along with security.
Command Format#
at+rsibt_bond=<bd_addr>
Parameters#
bd_addr (6 bytes)
remote device BD Address.
Example#
Command
at+rsibt_bond=AA-BB-CC-DD-EE-FF
Response
OK
[ Go to top ]
rsibt_bondcancel :: Bond Cancel Or Create Connection Cancel#
Description#
This will disconnect the connection between the BT module and the remote BT device only while the bonding is in progress.
Command Format#
at+rsibt_bondcancel=<bd_addr>
Parameters#
bd_addr (6 bytes)
Remote device BD Address
Example#
Command
at+rsibt_bondcancel=AA-BB-CC-DD-EE-FF
Response
OK
[ Go to top ]
rsibt_unbond :: UnBond Or Disconnect#
Description#
This un-bonds the device which was already bonded based on BD address of the remote BT device.
Command Format#
at+rsibt_unbond=<bd_addr>
Parameters#
bd_addr (6 bytes)
Remote device BD Address
Example#
at+rsibt_unbond=AA-BB-CC-DD-EE-FF
Response
OK
[ Go to top ]
rsibt_usrconfirmation :: User Confirmation#
Description#
This gives the confirmation for the values sent by remote BT devices at the time of bonding.
Command Format#
at+rsibt_usrconfirmation=<bd_addr>,<Confirmation>
Parameters#
bd_addr (6 bytes)
BD address of the remote BT device which sends connection request.
confirmation (1 byte)
0 - NO. If both remote and local values are not same.
1 - YES. If both remote and local values are same.
Example#
Command
at+rsibt_usrconfirmation=AA-BB-CC-DD-EE-FF,1
Response
OK
[ Go to top ]
rsibt_usrpasskey :: Pass Key Request Reply#
Description#
The user passkey entry is used to respond on a User Passkey Entry Request (UPER).
Command Format#
at+rsibt_usrpasskey=<bd_addr>,<ReplyType>,<Passkey>
Parameters#
bd_addr (6 bytes)
Remote BD Address.
ReplyType (1 byte)
0 - negative reply
1 - positive reply
Passkey (4 bytes)
Entered Passkey number in decimal (range from 0 to 999999).
Example#
Command
at+rsibt_usrpasskey=AA-BB-CC-DD-EE-FF,1,123456
Response
OK
[ Go to top ]
rsibt_usrpincode :: Pincode Request Reply#
Description#
The user pincode entry is used to respond on a user pin code entry request (UPER). To make connection with remote device then need to respond with positive reply, otherwise send a negative reply.
Command Format#
at+rsibt_usrpincode=<bd_addr>,<ReplyType>,<Pincode>
Parameters#
bd_addr (6 bytes)
Remote BD Address.
ReplyType (1 byte)
0 - negative reply
1 - positive reply
Reserved
Padding
Pincode (16 bytes)
Entered Pincode number (must be in string format max string length is 16 bytes).
Response#
Result Code | Description |
---|---|
OK | Command Success with valid response. |
ERROR | Command Fail |
Example#
Command
at+rsibt_usrpincode=AA-BB-CC-DD-EE-FF,1,1234
Response
OK
[ Go to top ]
rsibt_getmasterslaverole :: Get Local Device Role#
Description#
This gets the role of the local BT module when connected with a particular remote BT device, based on BD address of the remote BT device.
Command Format#
at+rsibt_getmasterslaverole=<bd_addr>?
Parameters#
bd_addr (6 bytes)
Remote BD Address
Response#
Result Code | Description |
---|---|
OK | Command Success with valid response. |
ERROR | Command Fail. |
where ...
role (1 byte)
0 - Master role
1 - Slave role
Example#
Command
at+rsibt_getmasterslaverole=AA-BB-CC-DD-EE-FF?
Response
OK 1
[ Go to top ]
rsibt_setmasterslaverole :: Set Local Device Role Or Switch The Role#
Description#
This is used to change the current role of the local BT module with respect to the remote BT device.
Command Format#
at+rsibt_setmasterslaverole=<bd_addr>,<Role>
Parameters#
bd_addr (6 bytes)
Remote BD Address
Role (1 byte)
0 - Master role
1 - Slave role
Example#
Command
at+rsibt_setmasterslaverole=AA-BB-CC-DD-EE-FF,1
Response
OK
[ Go to top ]
rsibt_getsrvs :: Get Service List#
Description#
This is used to search for the services supported by the remote BT device.
Command Format#
at+rsibt_getsrvs=<bd_addr>
Parameters#
bd_addr (1 byte)
Remote BD Address
Response#
Result Code | Description |
---|---|
OK<bd_addr>,<nbr_srvs_found>,<srv_uuid_1>,<srv_uuid_2>, ... | Command Success with valid response. |
ERROR <Error_code> | Command Fail. |
where ...
nbr_srvs_found (1 byte)
Number of services in the list
ServiceUUIDs (4 bytes)
List of service UUIDs, displayed as 32 bit UUIDs
Example#
Command
at+rsibt_getsrvs=AA-BB-CC-DD-EE-FF
Response
OK <1800>,<1801>....
[ Go to top ]
rsibt_searchsrv :: Search Service#
Description#
This is used to find whether a particular service is supported by the remote BT device.
Command Format#
at+rsibt_searchsrv=<bd_addr>,<ServiceUUID>
Parameters#
bd_addr (6 bytes)
Remote BD Address ServiceUUID - 16 bit or 32 bit UUID.
Response#
Result Code | Description |
---|---|
OK <search_result> | Command Success with valid response. |
ERROR <Error_code> | Command Fail. |
where ...
search_result (1 byte)
0 - No
1 - Yes
Example#
Command
at+rsibt_searchsrv=AA-BB-CC-DD-EE-FF,1105
Response
OK 1
[ Go to top ]
rsibt_usrlinkkey :: Linkkey Reply#
Description#
The link key reply is used to respond on a link key request event. If previous link key of connecting device available then need to respond with positive reply,else send negative reply.
Command Format#
at+rsibt_usrlinkkey=<bd_addr>,<ReplyType>,<LinkKey>
Parameters#
bd_addr (6 bytes)
Remote BD Address.
ReplyType (1 byte)
0 - negitive reply
1 - positive reply
LinkKey (16 bytes)
Link key saved for the remote BD address in host.
Example 1 - Positive reply with linkkey#
Command
at+rsibt_usrlinkkey=AA-BB-CC-DD-EE-FF,1,3C,A5,50,25,DC,D0,B0,AB,B7,C3,4F,4D,9,79,2C,5C
Example 2 - Negative reply without linkkey#
Command
at+rsibt_usrlinkkey=AA-BB-CC-DD-EE-FF,0
Response
OK
Note! When a negative reply is given, the remote device may either initiate a re-pairing process or disconnect. In disconnection case, remove the pair info on the remote device side and initate a new connection process.
[ Go to top ]
rsibt_setsspmode :: Set SSP Mode#
Description#
Set SSP mode is used to enable Simple Secure Pair mode and also used to select the IO Capability for SSP mode.
Command Format#
at+rsibt_setsspmode=<PairMode>,<IOCapability>
Parameters#
PairMode (1 byte)
0 - Disable
1 - Enable
IOCapability (1 byte)
0x00 - DisplayOnly
0x01 - DisplayYesNo
0x02 - KeyboardOnly
0x03 - NoInputNoOutput
Example#
at+rsibt_setsspmode=1,1
Response
OK
[ Go to top ]
rsibt_sniffmode :: Sniff Mode#
Description#
Enables the Host to support a low-power policy and allows the devices to enter Inquiry Scan, Page Scan, and a number of other possible actions.
The local device will return the actual sniff interval in the Interval parameter of the Mode Change event, if the command is successful.
Command Format#
at+rsibt_sniffmode=<bd_addr>,<SniffMaxIntr>,<SniffMinIntr>,<SniffAttempt>,<sniffTimeout>
Parameters#
bd_addr(6 bytes)
Remote BD Address.
SniffMaxIntr (2 bytes)
Specifies the maximum Sniff Mode period.
SniffMinIntrv (2 bytes)
Specifies the minimum Sniff Mode period.
SniffAttempt (2 bytes)
Master shall poll the slave at least once in the sniff attempt transmit slots starting at each sniff anchor point.
SniffTimeout (2 bytes)
Timeout after which device enter sniff subrating mode.
Example#
at+rsibt_sniffmode=AA-BB-CC-DD-EE-FF,192,160,4,2
Response
OK
[ Go to top ]
rsibt_sniffexit :: Sniff Exit#
Description#
To end the Sniff mode.
Command Format#
at+rsibt_sniffexit=<bd_addr>
Parameters#
bd_addr (6 bytes)
Remote BD Address.
Example#
at+rsibt_sniffexit=AA-BB-CC-DD-EE-FF
Response
OK
[ Go to top ]
rsibt_adddeviceid :: Add Device ID#
Description#
Add device Identification in SDP protocol.
Command Format#
at+rsibt_adddeviceid=<SpecificationID>,<VendorID>,<ProductID>,<Version>,<PrimaryRecord>,<VendorIDSource>
Parameters#
SpecificationID (2 bytes)
The version number of the Bluetooth Device ID Profile specification supported by the device.
VendorID (2 bytes)
Uniquely identify vendor of the device, see Vendor IDs
ProductID (2 bytes)
Distinguish between different products made by the vendor
Version (2 bytes)
A numeric expression identifying the device release number in Binary-Coded Decimal
PrimaryRecord
Set to
1
in the case single Device ID Service Record exists in the device.Set to
0
if multiple Device ID Service Records exist, and no primary record has been defined.
VendorIDSource (2 bytes)
This attribute designates which organization assigned the VendorID attribute,
0x201
.
Example#
at+rsibt_adddeviceid=512,513,514,515,1,2
Response
OK
[ Go to top ]
rsibt_sppconn :: SPP Connect#
Description#
This is used to establish SPP connection with the remote BT device specified by the BD address. Note that the SPP profile will not connect without completing the pair process or authentication.
Command Format#
at+rsibt_sppconn=<bd_addr>
Parameters#
bd_addr (6 bytes)
Remote BD Address.
Example#
Command
at+rsibt_sppconn=AA-BB-CC-DD-EE-FF
Response
OK
[ Go to top ]
rsibt_sppdisconn :: SPP Disconnect#
Description#
This is used to disconnect the SPP connection with the remote BT device.
Command Format#
at+rsibt_sppdisconn=<bd_addr>
Parameters#
bd_addr (6 bytes)
Remote BD address
Example#
Command
at+rsibt_sppdisconn=AA-BB-CC-DD-EE-FF
Response
OK
[ Go to top ]
rsibt_spptx :: SPP Transfer#
Description#
This is used to send data to the remote BT device using SPP profile. This command contains a data length field which tells the BT module about the length of data in bytes user wants to send from the application.
Command Format#
at+rsibt_spptx=<DataLength>,<Data>
Parameters#
DataLength (1 byte)
SPP data length (range of Data length is 1 to 200 bytes).
Data (200 bytes)
SPP data.
Example#
at+rsibt_spptx=5,iiiii
Response
OK
[ Go to top ]
rsibt_spptxv2 :: SPP Transfer#
Description#
This command is used to send data to a remote Bluetooth (BT) device using the SPP profile. It is similar to the rsibt_spptx command but includes an additional feature for transmitting characters (\r, \n) (0x0D, 0x0A in hex), which otherwise indicates the termination of an AT command.
Command Format#
at+rsibt_spptxv2=<DataLength>,<Data>
Parameters#
DataLength (1 byte)
SPP data length (range of Data length is 1 to 200 bytes).
Data (200 bytes)
SPP data.
Example#
at+rsibt_spptxv2=9,iiiii\r\n
Response
OK
Note! If the specified data length is greater than the data sent, the firmware will continuously poll for data, leading to no response or causing it to get stuck.
[ Go to top ]
rsibt_afhmap :: AFH_MAP#
Description#
This command mode is used to configure the following parameters..
Command#
at+rsibt_afhmap=<startingchannel>,<endingchannel>
Parameters#
startchannel
This parameter indicates the starting channel index, as per the Bluetooth standard. The range is from 0 to 78.
endchannel
This parameter indicates the ending channel index, as per the Bluetooth standard. The range is from 0 to 78.
Example#
Command
at+rsibt_afhmap=12,30
Response
OK
[ Go to top ]
RSIBT_ROLECHANGED : Role Change Status Event#
Description#
This event describes the status of the command "Change Master Slave Role".
Event Format#
AT+RSIBT_ROLECHANGED <bd_addr>,<Changed_Role>,<RoleChangeStatus>
where ...
bd_addr
Remote BD Address
Changed_Role
0 - Master role
1 - Slave role
RoleChangeStatus
0 - Success
1 - Failure
Example#
AT+RSIBT_ ROLECHANGED AA-BB-CC-DD-EE-FF,1,0
[ Go to top ]
RSIBT_UNBONDRESP :: Unbond Or Disconnect Status Event#
Description#
This event describes the status of unbonding between the BT module and remote BT device.
Event Format#
AT+RSIBT_UNBONDRESP <bd_addr>,<unbond_status>
where ...
bd_addr
BD address of the remote BT device in the vicinity of the BT module.
bond_status
0 - Success
1 - Failure
Example#
AT+RSIBT_UNBONDRESP AA-BB-CC-DD-EE-FF,1
[ Go to top ]
RSIBT_BONDRESP :: Bond Response Event#
Description#
This event will be sent to the host, containing the status for "Bond" command.
Event Format#
AT+RSIBT_BONDRESP <bd_addr>,<bond_status>
where ...
bd_addr
BD address of the remote BT device in the vicinity of the BT module.
bond_status
0 - Success
1 - Failure
Example#
AT+RSIBT_BONDRESP AA-BB-CC-DD-EE-FF,0
[ Go to top ]
RSIBT_INQRESP :: Inquiry Response Event#
Description#
This event will be sent in response to the "Inquiry" command. This event contains the details of BT device (like device name, BD address, COD, RSSI value) in the vicinity of the BT module.
Event Format#
Standard Inquiry
AT+RSIBT_INQRESP <InquiryType>,<bd_addr>.
Inquiry with RSSI
AT+RSIBT_INQRESP<InquiryType>,<bd_addr>,<NameLength>,<RemoteDeviceName>,<Rssi>,<cod>
where ...
InquiryType
0 - Standard Inquiry
1 - Inquiry with RSSI.
2 - Extended inquiry with RSSI.
3 - Inquiry with Remote Name request
bd_addr
BD address of remote BT device in the vicinity of the BT module. This parameter will be sent by host for all inquiry types.
NameLength
Length of the remote device name.
RemoteDeviceName
Name of the remote BT device, with corresponding BD address. This parameter will be sent by host for all inquiry types. This parameter is present only if the "rmt_name_len" value is non- zero.
cod
Class of the remote BT device. This parameter is sent by host for all inquiry types.
rssi
RSSI value between BT module and the remote BT device. This parameter will be sent only for inquiry types 1, 2 and 3.
Example#
Standard Inquiry
AT+RSIBT_INQRESP 0,AA-BB-CC-DD-EE-FF
Inquiry with RSSI
AT+RSIBT_INQRESP 1,AA-BB-CC-DD-EE-FF,7,silabs,-59,7a020c
[ Go to top ]
RSIBT_RMTDEVNAME :: Remote Device Name Event#
Description#
This event will be sent to the host in response to the "Remote Name Request" command. This event contains the name of the remote BT device, which was requested by the host.
Event Format#
AT+RSIBT_RMTDEVNAME <bd_addr>,<NameLength>,<RemoteDeviceName>
where ...
bd_addr
BD address of remote BT device in the vicinity of the BT module.
NameLength
Length of the remote device name. If remote device name is not found this parameter will be zero and the "rmt_dev_name" contains the error code.
RemoteDeviceName
Name of the remote BT device, with corresponding BD address. If the remote device name is not available or remote device is not connected, this parameter contains the corresponding error code.
Example#
AT+RSIBT_RMTDEVNAME AA-BB-CC-DD-EE-FF,7,silabs
[ Go to top ]
RSIBT_USRCONFIRMREQ :: User Confirmation Request Event#
Description#
This event is raised when User Confirmation Request comes from the remote BT Device.
Event Format#
AT+RSIBT_USRCONFIRMREQ <bd_addr>,<confirmation_value>
where ...
bd_addr
The remote BT device BD address.
confirmation_value
Range from 0 to 999999 in decimal.
Example#
AT+RSIBT_USRCONFIRMREQ AA-BB-CC-DD-EE-FF,1234
[ Go to top ]
RSIBT_USRPASSKEYDISP :: User Passkey Display Event#
Description#
This event is raised when User Passkey comes from the module.
Event Format#
AT+RSIBT_USRPASSKEYDISP <bd_addr>,<Passkey>
where ...
bd_addr
The remote BT device BD address.
passkey
Range from 0 to 999999 in decimal.
Example#
AT+RSIBT_USRPASSKEYDISP AA-BB-CC-DD-EE-FF,12345
[ Go to top ]
RSIBT_USRPINCODEREQ :: User Pincode Request Event#
Description#
This event is raised when User Pincode is invoked by the remote BT Device. In such a case, user shall respond with Pincode Reply Command.
Event Format#
AT+RSIBT_USRPINCODEREQ <bd_addr>
where ...
bd_addr
BD Address of the remote BT device.
Example#
AT+RSIBT_USRPINCODEREQ AA-BB-CC-DD-EE-FF
[ Go to top ]
RSIBT_USRPASSKEYREQ :: User Passkey Request Event#
Description#
This event is raised when User passkey request comes from the remote BT Device.
Event Format#
AT+RSIBT_USRPASSKEYREQ <bd_addr>
where ...
bd_addr
BD Address of the remote BT device.
[ Go to top ]
RSIBT_INQCOMPLETE :: Inquiry Complete Event#
Description#
This event is raised after the Inquiry is completed.
Event Format#
AT+RSIBT_INQCOMPLETE
[ Go to top ]
RSIBT_USRLNKKEYREQ :: User Linkkey Request#
Description#
This event is raised when user linkkey request comes from the remote BT Device.
Event Format#
AT+RSIBT_USRLNKKEYREQ <bd_addr>
where ...
bd_addr
BD Address of the remote BT device.
Example#
AT+RSIBT_USRLINKKEYREQ AA-BB-CC-DD-EE-FF
[ Go to top ]
RSIBT_SIMPLEPAIRINGCOMPLETED :: SSP Enable Event#
Description#
This event is raised when a device pairing mode set to Simple Secure pairing mechanism.
Event Format#
AT+RSIBT_SIMPLEPAIRINGCOMPLETED <bd_addr>,<status>
where ...
bd_addr
BD Address of the remote BT device.
Status
0 - Simple Pairing succeeded.
1 - Simple pairing failed.
Example#
AT+RSIBT_SIMPLEPAIRINGCOMPLETED AA-BB-CC-DD-EE-FF,0
[ Go to top ]
RSIBT_USRLINKKEYSAVE :: User Linkkey Save Event#
Description#
This event is raised when a device is paired and linkkey for remote BT Device is given to host.
Event Format#
AT+RSIBT_USRLINKKEYSAVE <bd_addr>,<LinkKey>
where ...
bd_addr
BD Address of the remote BT device.
LinkKey
Link key for the remote BT device.
Example#
AT+RSIBT_USRLINKKEYSAVE AA-BB-CC-DD-EE-FF,3C,A5,50,25,DC,D0,B0,AB,B7,C3,4F,4D,9,79,2C,5C
[ Go to top ]
RSIBT_AUTHENTICATION_STATUS :: Auth Complete Event#
Description#
This event describes the status of authentication process.
Event Format#
AT+RSIBT_AUTHENTICATION_STATUS <bd_addr>,<STATUS/ERROR>
where ...
bd_addr
BD Address of the remote device.
[ Go to top ]
RSIBT_MODECHANGED :: Mode Change#
Description#
This event occurs when sniff mode is enabled by either remote device or local device and it is raised to indicate whenever the device changes between Active mode and Sniff mode.
Event Format#
AT+RSIBT_MODECHANGED <bd_addr>,<current mode>,<ModeInterval>
where ...
bd_addr
BD Address of the remote BT device.
current_mode
State the connection is currently in.
0 - Active mode
1 - Hold mode (currently Not supported)
2 - Sniff mode
Mode Interval
Specify a time amount specific to each state. Time Range: 2-65534
Example#
AT+RSIBT_MODECHANGED AA-BB-CC-DD-EE-FF,1,192
[ Go to top ]
Disconnected Event#
RSIBT_DISCONNECTED :: Description#
This event is raised when disconnection happens between the local BT device and the remote device.
Event Format#
AT+RSIBT_DISCONNECTED <bd_addr>,<reason>
where ...
bd_addr
BD address of the remote BT device.
Example#
AT+RSIBT_CLASSIC_DISCONNECTED AA-BB-CC-DD-EE-FF,0
[ Go to top ]
RSIBT_SPPRX :: SPP Receive Event#
Description#
This event is sent to the host when data is received from remote BT device through SPP. This data_len field contains the length of data to be send to the host.
Event Format#
AT+RSIBT_SPPRX <DataLength>,<Data>
where ...
Datalength
length of the data (from 1 byte to 200 bytes)
Example#
AT+RSIBT_SPPRX 4,rtrt
[ Go to top ]
RSIBT_SPPCONNECTED :: SPP Connected Event#
Description#
This event will be sent to the host, when the connection is established between BT Module and the remote BT device based on SPP profile.
Event Format#
AT+RSIBT_SPPCONNECTED <bd_addr>
where ...
bd_addr
BD Address of the remote BT device.
Example#
AT+RSIBT_SPPCONNECTED AA-BB-CC-DD-EE-FF
[ Go to top ]
RSIBT_SPPDISCONNECTED :: SPP Disconnected Event#
Description#
This event will be sent to the host, when the existing SPP connection of the BT Module with the remote BT device is disconnected.
Event Format#
AT+RSIBT_SPPDISCONNECTED <bd_addr>
where ...
bd_addr
BD Address of the disconnected device
Example#
AT+RSIBT_SPPDISCONNECTED AA-BB-CC-DD-EE-FF
[ Go to top ]
RSIBT_IAP_CONNECTED :: IAP Connected Event#
Description#
This event indicates that the connection was established between an Apple device and accessory.
Event Format#
AT+RSIBT_IAP_CONNECTED <bd_addr>,<IAP_Protocol_Ver>
where ...
bd_addr
BD address of the remote BT device.
IAP_Protocol_Version
Version of the IAP supported by the Apple device which was connected.
1 for IAP1
2 for IAP2.
Example#
AT+RSIBT_IAP_CONNECTED AA-BB-CC-DD-EE-FF,1
[ Go to top ]
RSIBT_IAP_DISCONNECTED :: IAP Disconnected Event#
Description#
This event will be sent to the host when the connection between accessory and an Apple device get disconnected.
Event Format#
AT+RSIBT_IAP_DISCONNECTED <bd_addr>,<IAP_Protocol_Ver>
where ...
bd_addr
BD address of the remote BT device.
IAP_Protocol_Version
Version of the IAP supported by the Apple device, which was connected.
1 for IAP1
2 for IAP2
Example#
AT+RSIBT_IAP_DISCONNECTED AA-BB-CC-DD-EE-FF,1
[ Go to top ]
RSIBT_IAP1_ACCESSORY_AUTH_STARTED :: IAP1 Accessory Authentication Started Event#
Description#
This indicates the start of the Accessory Authentication procedure by the Apple device.
Event Format#
AT+RSIBT_IAP1_ACCESSORY_AUTH_STARTED
where ...
None
Example#
AT+RSIBT_IAP1_ACCESSORY_AUTH_STARTED
[ Go to top ]
RSIBT_IAP1_ACCESSORY_AUTH_FAILED :: IAP1 Accessory Authentication Failed Event#
Description#
When the Accessory Authentication gets failed, it will be indicated by this event. The reason for failure is indicated by the error code.
Event Format#
AT+RSIBT_IAP1_ACCESSORY_AUTH_FAILED <error_code>
where ...
error_code
The reason for failure is indicated by this error code.
Example#
AT+RSIBT_IAP1_ACCESSORY_AUTH_FAILED 0x8002
[ Go to top ]
RSIBT_IAP1_ACCESSORY_AUTH_COMPLETED :: IAP1 Accessory Authentication Completed Event#
Description#
This event indicates the completion of the Authentication procedure by the Apple device.
Event Format#
AT+RSIBT_IAP1_ACCESSORY_AUTH_COMPLETED
where ...
None
Example#
AT+RSIBT_IAP1_ACCESSORY_AUTH_COMPLETED
[ Go to top ]
RSIBT_IAP1_CURR_APP_BUNDLE_NAME :: IAP1 Now Playing App Bundle Name Event#
Description#
This event contains the current playing application bundle name. This event will be generated when the music player starts playing, or when voice memo starts recording etc.
Event Format#
AT+RSIBT_IAP1_CURR_APP_BUNDLE_NAME <name>
where ...
name
Name of the current playing application name.
Example#
AT+RSIBT_IAP1_CURR_APP_BUNDLE_NAME com.apple.mobileipod
[ Go to top ]
RSIBT_IAP1_CURR_APP_DISPLAY_NAME :: IAP1 Now Playing Application Display Name Event#
Description#
This event contains the current playing application Display name. This event will be generated when the music player starts playing, when the voice memo starts recording etc.
Event Format#
AT+RSIBT_IAP1_CURR_APP_DISPLAY_NAME <name>
where ...
name
Name of the current playing application name.
Example#
AT+RSIBT_IAP1_CURR_APP_DISPLAY_NAME Music
[ Go to top ]
RSIBT_IAP1_ASSISTIVE_TOUCH :: IAP1 Assistive Touch Status Event#
Description#
This event indicates a change in the status of the Assistive Touch. This event will be sent to the host, whenever there is a change (ON/OFF) in the status of Assistive Touch.
Event Format#
AT+RSIBT_IAP1_ASSISTIVE_TOUCH <status>
where ...
status
Status of Assistive touch.
0 for OFF
1 for ON
Example#
AT+RSIBT_IAP1_ASSISTIVE_TOUCH 1
[ Go to top ]
RSIBT_IAP1_IPODOUT :: IAP1 iPod Out Status Event#
Description#
This event denotes the status of iPod out.
Event Format#
AT+RSIBT_IAP1_IPODOUT <status>
where ...
status
Status of iPod out.
0 - for OFF
1 - for ON
Example#
AT+RSIBT_IAP1IPODOUT 0
[ Go to top ]
RSIBT_IAP1_FLOW_CONTROL :: IAP1 Flow Control Status Event#
Description#
This event will be sent to the host when the connection is established between BT Module and the remote BT device based on SPP profile.
Event Format#
AT+RSIBT_IAP1_FLOW_CONTROL <IAP_Protocol_Ver>
where ...
IAP_Protocol_Version
Version of the IAP supported by the Apple device, which was connected.
1 for IAP1
2 for IAP2
Example#
AT+RSIBT_IAP1_FLOW_CONTROL
[ Go to top ]
RSIBT_IAP1_RADIO_TAGGING :: IAP1 Radio Tagging Status Event#
Description#
This event indicates the radio tagging status.
Event Format#
AT+RSIBT_IAP1_RADIO_TAGGING <status>
where ...
Status
0 - Tagging operation successful
1 - Tagging operation failed
2 - Information available for tagging (all required RT)
3 - Information not available for tagging
Example#
AT+RSIBT_IAP1_RADIO_TAGGING 0
[ Go to top ]
RSIBT_IAP1_CAMERA : IAP1 Camera Status Event#
Description#
This event indicates the camera status.
Event Format#
AT+RSIBT_IAP1_CAMERA <status>
where ...
Status
0 - Camera App off
3 - Preview
4 - Recording
Example#
AT+RSIBT_IAP1_CAMERA 3
[ Go to top ]
RSIBT_IAP1_DATABASE_CHANGED :: IAP1 Database Changed Status Event#
Description#
This event will be raised when there is a change in the Apple device database.
Event Format#
AT+RSIBT_IAP1_DATABASE_CHANGED
Example#
AT+RSIBT_IAP1_DATABASE_CHANGED
[ Go to top ]
RSIBT_IAP1_SESSION_SPACE_AVAILABLE :: IAP1 Session Space Available Event#
Description#
This event will be sent to the host, when the connection is established between BT Module and the remote BT device based on SPP profile.
Event Format#
AT+RSIBT_IAP1_SESSION_SPACE_AVAILABLE
Example#
AT+RSIBT_IAP1_SESSION_SPACE_AVAILABLE
[ Go to top ]
IAP1 Bluetooth Status#
Description#
This event will be sent to the host, when the connection is established between BT Module and the remote BT device based on SPP profile.
Event Format#
AT+RSIBT_IAP1_BLUETOOTH_STATUS <IAP_Protocol_Ver>
where ...
IAP_Protocol_Version
Version of the IAP supported by the Apple device, which was connected.
1 for IAP1
2 for IAP2
Example#
AT+RSIBT_IAP1_BLUETOOTH_STATUS
[ Go to top ]
RSIBT_IAP1_VOICEOVER_PARAM_CHANGED :: IAP1 Voiceover Parameter Changed Event#
Description#
This event occurs whenever there is a change in any of the voiceover parameter like voiceover volume, speech rate.
Event Format#
AT+RSIBT_IAP1_VOICEOVER_PARAM_CHANGED <param_type>,<changed_value>
where ...
param_type
Type of the parameter changed.
0 - Voiceover Volume.
1 - Voiceover speech rate.
changed_value
The changed value of the voiceover parameter.
Example#
AT+RSIBT_IAP1_VOICEOVER_PARAM_CHANGED 0,150
[ Go to top ]
RSIBT_IAP1_OPEN_DATA_SESSION :: IAP1 Application Data Session Opened Event#
Description#
This event indicates that a session is opened by an Apple device. The details of the session are denoted by session id and protocol index which is assigned through the EAProtocolToken at the time of Identification Procedure. If the data session is accepted by the user, this must be acknowledgment by "" command.
Event Format#
AT+RSIBT_IAP1_OPEN_DATA_SESSION? <session_id>,<protocol_index>
where ...
session_id
ID of the session opened by the Apple device.
protocol index
Protocol index assigned for an application at the time of Identification.
Example#
AT+RSIBT_IAP1_OPEN_DATA_SESSION? 25,1
[ Go to top ]
RSIBT_IAP1_CLOSE_DATA_SESSION :: IAP1 Application Data Session Closed Event#
Description#
This event indicates the closure of the data session by the Apple device. This must be acknowledged by "" command.
Event Format#
AT+RSIBT_IAP1_CLOSE_DATA_SESSION? <session_id>
where ...
session_id
Session ID of the application to be closed.
Example#
AT+RSIBT_IAP1_CLOSE_DATA_SESSION? 25
[ Go to top ]
RSIBT_IAP1_IPOD_DATA_RECEIVED :: IAP1 iPod Data Received Event#
Description#
This event indicates the data received from the Apple device. If the data is received correctly, an acknowledgment is sent to the Apple device.
Event Format#
AT+RSIBT_IAP1_IPOD_DATA_RECEIVED <session_id>,<data_len>,<data>
where ...
session_id
Session ID
data_len
Length of the data received from the Apple device.
data
Actual data received from the Apple device.
Example#
AT+RSIBT_IAP1_IPOD_DATA_RECEIVED 25,7,welcome
[ Go to top ]
RSIBT_IAP1_IPOD_DATA_RECEIVED :: IAP1 Accessory HID Report#
Description#
This event indicates the accessory HID report sent by the Apple device. For example an LED report sent to the keyboard accessory.
Event Format#
AT+RSIBT_IAP1_IPOD_DATA_RECEIVED <desc_index>,<report_type>,<len>,<report>
where ...
desc_index
HID descriptor index, already registered with the Apple device.
report_type
Input report.
len
Length of the report in bytes.
report
Device report. The report values are not the ASCII values, but the numerical values.
Example#
AT+RSIBT_IAP1_ACCESSORY_HID_REPORT 0,1,3, 01 00 00
[ Go to top ]
rsibt_afhchannelclassification :: AFH Channel Classification#
Description#
This is used to read and write the channel assessment modes and to set the AFH channel classification.
Command Format#
at+rsibt_afhchannelclassification=<ChannelAssessmentMode>,<enable>,<channel_map>
where ...
ChannelAssessmentMode (1 byte)
Whether to read from, or write to, the controller.
Enable (1 byte)
Channel assessment mode Enable or Disable.
channel_map (10 bytes) - 0 - ChannelAssessmentMode is Disabled - 1 - ChannelAssessmentMode is Enabled - Other - Reserved for future use.
Example#
Command
at+rsibt_afhchannelclassification=1,1,ff,ff,ff,ff,0,0,0,0,0,7f
Response
OK
[ Go to top ]
RSIBT_HID_CONNECTED :: HID Connected Event#
Description#
This event will be sent to the host, when the HID profile level connection between the device and Host is successful.
Event Format#
AT+RSIBT_HID_CONNECTED <bd_addr>,<MTU size>
where ...
bd_addr
BD address of the remote BT device.
MTU Size
Size of the L2CAP connection
Example#
AT+RSIBT_HID_CONNECTED AA-BB-CC-DD-EE-FF,3EA
[ Go to top ]
RSIBT_HID_DISCONNECTED :: HID Disconnected Event#
Description#
This event will be sent to the host when the HID profile level connection between the device and Host is closed.
Event Format#
AT+RSIBT_HID_DISCONNECTED <bd_addr>,<Reason Code>
where ...
bd_addr
BD address of the remote BT device.
Reason Code
Reason Code for disconnection
Example#
AT+RSIBT_HID_DISCONNECTED AA-BB-CC-DD-EE-FF,13
[ Go to top ]
RSIBT_HID_HANDSHAKE_MSG_EVENT :: HID Handshake Message Event#
Description#
This event will be sent to the host when HID profile handshake message is received.
Event Format#
AT+RSIBT_HID_HANDSHAKE_MSG_EVENT <bd_addr>,<result_code>
where ...
bd_addr
BD address of the remote BT device.
result_code
Result Code received in Handshake message for previous control message
0 - SUCCESSFUL
2 - ERR_INVALID_REPORT_ID
3 - ERR_UNSUPPORTED_REQUEST
4 - ERR_INVALID_PARAMETER
14 - ERR_UNKNOWN
15 - ERR_FATAL
Example#
AT+RSIBT_HID_HANDSHAKE_MSG_EVENT AA-BB-CC-DD-EE-FF,0
[ Go to top ]
RSIBT_HID_CONTROL_MSG_EVENT :: HID Control Message Event#
Description#
This event will be sent to the host when HID profile control message is received.
Event Format#
AT+RSIBT_HID_CONTROL_MSG_EVENT <bd_addr>,<Control Operation>
where ...
bd_addr
BD address of the remote BT device.
Control Operation
Control Operation received in Control message
Example#
AT+RSIBT_HID_CONTROL_MSG_EVENT AA-BB-CC-DD-EE-FF,5
[ Go to top ]
HID Get Report Event#
Description#
This event will be sent to the host, when HID profile Get Report is received.
Event Format#
AT+RSIBT_HID_GET_REPORT_EVENT <bd_addr>,<Report Type>,<Buffer Size Field status>,<Report ID>,<Buffer Size>
where ...
bd_addr
BD address of the remote BT device. Report Type: Report Type of the data received
**Report Type
1 - Input
2 - Output
3 - Feature
Buffer Size Field Status
Is buffer size field present
Report Id
Report ID requested by the host
Buffer Size
Buffer Size of the data accepted by the Host
Example#
AT+RSIBT_HID_GET_REPORT_EVENT AA-BB-CC-DD-EE-FF,1,0,1
[ Go to top ]
RSIBT_HID_SET_REPORT_EVENT :: HID Set Report Event#
Description#
This event will be sent to the host when HID profile Set Report is received.
Event Format#
AT+RSIBT_HID_SET_REPORT_EVENT <bd_addr>,<Report Type>,<Length of Data>,<data>
where ...
bd_addr
BD address of the remote BT device.
Report Type
Report Type of the data received
1 - Input
2 - Output
3 - Feature
Length of Data
Length of data from the host
data
Data sent from the host; in hex format separated by commas
Example#
AT+RSIBT_HID_SET_REPORT_EVENT AA-BB-CC-DD-EE-FF,1,5,1,2,3,4,5
[ Go to top ]
RSIBT_HID_GET_PROTOCOL_EVENT :: HID Get Protocol Event#
Description#
This event will be sent to the host when HID profile Get Protocol is received.
Event Format#
AT+RSIBT_HID_GET_PROTOCOL_EVENT <bd_addr>
where ...
bd_addr
BD address of the remote BT device.
Example#
AT+RSIBT_HID_GET_PROTOCOL_EVENT AA-BB-CC-DD-EE-FF
[ Go to top ]
RSIBT_HID_SET_PROTOCOL_EVENT :: HID Set Protocol Event#
Description#
This event will be sent to the host when HID profile Set Protocol is received.
Event Format#
AT+RSIBT_HID_SET_PROTOCOL_EVENT <bd_addr>,<Protocol Mode>
where ...
bd_addr
BD address of the remote BT device.
Protocol Mode
Protocol Mode the Device needs to set
Example#
AT+RSIBT_HID_SET_PROTOCOL_EVENT AA-BB-CC-DD-EE-FF,1
[ Go to top ]
RSIBT_HID_RX_CONTROL_DATA :: HID Control Data Received Event#
Description#
This event will be sent to the host, when the HID profile receives data on control channel.
Event Format#
AT+RSIBT_HID_RX_CONTROL_DATA <bd_addr >,<Report Type>,<Length of Data>,<data>
where ...
bd_addr
BD address of the remote BT device.
Report Type
Report Type of the data received
1 - Input
2 - Output
3 - Feature
Length of Data
Length of data from the host
data
Data sent from the host; in hex format separated by commas
Example#
AT+RSIBT_HID_RX_CONTROL_DATA AA-BB-CC-DD-EE-FF,2,2,1,1
[ Go to top ]
RSIBT_HID_RX_INTR_DATA :: HID Interrupt Data Received Event#
Description#
This event will be sent to the host, when HID profile receives data on interrupt channel.
Event Format#
AT+RSIBT_HID_RX_INTR_DATA <bd_addr>,<Report Type>,<Length of Data>,<data>
where ...
bd_addr
BD address of the remote BT device.
Report Type
Report Type of the data received
1 - Input
2 - Output
3 - Feature
Length of Data
Length of data from the host
data
Data sent from the host; in hex format separated by commas
Example#
AT+RSIBT_HID_RX_INTR_DATA AA-BB-CC-DD-EE-FF,2,2,1,1
[ Go to top ]
rsibt_hidsendinterruptdata :: HID Send Interrupt Data#
Description#
The data is sent to the remote HID device using Interrupt channel.
Command Format#
at+rsibt_hidsendinterruptdata=<bd_addr>,<Report Type>,<Length of Data>,<data>
Parameters#
bd_addr
BD address of the remote BT device.
Report Type
Report Type of the data received
1 - Input
2 - Output
3 - Feature
Length of Data
Length of data from the host
data
Data sent from the host; in hex format separated by commas
Example#
Command
at+rsibt_hidsendinterruptdata=AA-BB-CC-DD-EE-FF,1,9,1,2,3,4,5,6,7,8,9
Response
OK
[ Go to top ]
HID Send Control Data#
Description#
The data is sent to the remote HID device using Control channel.
Command Format#
at+rsibt_hidsendcontroldata=<bd_addr>,<Report Type>,<Length of Data>,<data>
Parameters#
bd_addr
BD address of the remote BT device.
Report Type
Report Type of the data received
1 - Input
2 - Output
3 - Feature
Length of Data
Length of data from the host
data
Data sent from the host; in hex format separated by commas
Example#
Command
at+rsibt_hidsendcontroldata=AA-BB-CC-DD-EE-FF,1,9,1,2,3,4,5,6,7,8,9
Response
OK
[ Go to top ]
rsibt_hidsendhandshakemsg :: HID Send Handshake Message#
Description#
The result of a received control message is sent to the remote HID device using Control channel.
Command Format#
at+rsibt_hidsendhandshakemsg=<bd_addr>,<result_code>
Parameters#
bd_addr
Remote BD Address.
result_code
Result Code received in Handshake message for previous control message
0 - SUCCESSFUL
1 - NOT_READY
2 - ERR_INVALID_REPORT_ID
3 - ERR_UNSUPPORTED_REQUEST
4 - ERR_INVALID_PARAMETER
14 - ERR_UNKNOWN
15 - ERR_FATAL
Example#
at+rsibt_hidsendhandshakemsg=AA-BB-CC-DD-EE-FF,0
Response
OK
[ Go to top ]
rsibt_hidsendcontrolmsg :: HID Send Control Message#
Description#
The control operation is sent to the remote HID device using Control channel.
Command Format#
at+rsibt_hidsendcontrolmsg=<bd_addr>,<Control Operation>
Parameters#
bd_addr
Remote BD Address.
Control Operation
Control Operation received in Control message
Example#
Command
at+rsibt_hidsendcontrolmsg=AA-BB-CC-DD-EE-FF,5
Response
OK
[ Go to top ]
rsibt_hidsendsdpconfig :: HID Send SDP Configuration Data#
Description#
Configures the SDP records attributes of the HID service with Service Name, Country Code, SDP Report Desc Data. This command must be executed after setting the profile mode to HID_PROFILE
and is one time configurable.
Command Format#
at+rsibt_hidsendsdpconfig=<Service Name>,<Country Code>,<Desc len>,<Desc Data>
Parameters#
Service Name
Service Name is written to SDP HID attribute record
Country Code
Country Code configuration in SDP HID attribute record
Desc len
SDP REPORT Desc len that is in data field
Desc Data
SDP REPORT Desc Data in Hex format (Separated by commas)
Example#
at+rsibt_hidsendsdpconfig=KeyboardService,33,160,35,9e,35,9c,08,22,25,98,05,01,09,06,a1,01,85,01,75,01,95,08,05,07,19,e0,29,e7,15,00,25,01,81,02,95,01,75,08,81,03,95,05,75,01,05,08,19,01,29,05,91,02,95,01,75,03,91,03,95,06,75,08,15,00,26,ff,00,05,07,19,00,29,ff,81,00,c0,05,0c,09,01,a1,01,85,03,15,00,25,01,75,01,95,0d,0a,23,02,0a,21,02,0a,83,01,09,b6,09,b5,09,e9,09,ea,09,cd,09,b7,09,e2,0a,8a,01,09,30,09,b8,81,02,95,01,75,0b,81,03,c0,05,01,09,80,a1,01,85,04,15,00,25,01,75,01,95,03,09,81,09,82,09,83,81,02,95,01,75,05,81,03,c0
Response
OK
[ Go to top ]
rsibt_hidreconnect :: HID Reconnect#
Description#
HID Reconnect command is used to connect to a device with HID profile.
This command needs prior exchange of SDP records with the master device during initial connection for profile level exchanges.
Command Format#
at+rsibt_hidreconnect=<BD Address>
Parameters#
BD Address
BD Address of the device to reconnect
Example#
at+rsibt_hidreconnect=AA-BB-CC-DD-EE-FF
Response
OK
[ Go to top ]
rsibt_enabledevicetestmode :: Enable Device Under TestMode#
Description#
This is used to request the local device to enable test mode. This command should only be called after the commands:
rsi_bt_start_discoverable
rsi_bt_set_connectable
Command Format#
at+rsibt_enabledevicetestmode
Example#
Command
at+rsibt_enabledevicetestmode
Response
OK