Gadget Settings for Classic Bluetooth
This topic describes the settings that your gadget must use to communicate with an Echo device over Classic Bluetooth (BR/EDR).
For a description of the pairing, connection, and reconnection communication flows that use these settings, see the following topics:
- Pairing and Connection Flow for Alexa Gadgets over Classic Bluetooth
- Reconnection Flow for Alexa Gadgets over Classic Bluetooth
At the appropriate steps, the communication flows refer to this topic for the settings that the gadget must use to successfully complete the step.
For Alexa Gadgets Toolkit issues related to Bluetooth, see Bluetooth on the known issues page.
- Extended Inquiry Response settings
- Pairing parameters
- Service Discovery Protocol (SDP) database settings
- SDP initiation settings
- SDP record example
Extended Inquiry Response settings
When a user puts an Echo device into pairing mode, the Echo device scans for Bluetooth devices within range by sending out an inquiry request. For the Echo device to find the gadget over Classic Bluetooth, the gadget must respond to the Echo device's inquiry with an Extended Inquiry Response (EIR) that has the following parameters:
- For section
0x06, there must be the following 128-bit UUID, little endian:
6088D2B3-983A-4EED-9F94-5AD1256816B7. To find general information about EIRs, see Volume 3, Part C, Section 8 of the Bluetooth Core Specification.
- For section
0xFF(which is the manufacturer-specific data section), there must be 10 bytes of data, little endian, with the following format:Important: This information must be at the end of the EIR.
Description Number of Bytes Value
Bluetooth Vendor ID
This is your Bluetooth-provided vendor ID, if you have one. Otherwise you can set these bytes to
Bluetooth Product ID
You can use your own internal product ID or set these bytes to zeros.
Amazon SIG VID
Amazon Gadget UUID
Pairing is the process by which an Echo device and a gadget exchange initial information such as I/O capabilities, authentication requirements, and other data, so that they can communicate over Bluetooth. If pairing is successful, the Echo device and the gadget store the settings so that they can reconnect in the future without user intervention.
To pair with an Echo device, a gadget must use the following pairing parameters:
- IO Capability – No Input, No Output (value of
- OOB Data Present – OOB Data Not Present (value of
- Authentication Requirements – MITM protection not required, General Bonding, Numeric Comparison, Automatic Accept allowed (value of
For more information about these settings, see Volume 2, Part E, Section 7.1.29 of the Bluetooth Specification.
Service Discovery Protocol (SDP) database settings
Every time an Echo device establishes a communication channel with a gadget, the Echo device and the gadget use SDP to exchange information about their services. For this step to be successful, the gadget's local SDP database must contain the following 128-bit UUID as the service profile:
6088D2B3-983A-4EED-9F94-5AD1256816B7 and the following settings:
SDP initiation settings
If a gadget and an Echo device are paired but become disconnected, the gadget can reconnect to the Echo device by initiating an SDP connection. To do so, the gadget must use the following settings:
- The gadget's RFCOMM server must have a service class UUID of
0x1201. The minimum value of the maximum transmission unit (MTU) for the RFCOMM server is 512.
- The gadget uses the following parameters for initiating SDP:
Service Search UUIDs
Attribute ID list
0x0000(Service Record Handle)
SDP record example
The following example shows SDP records from a gadget. It shows the three services: OTA RFCOMM, data RFCOMM, and the custom UUID used for identification.
Service Name: SPP Port DATA Service RecHandle: 0x10000 Service Class ID List: "Generic Networking" (0x1201) Protocol Descriptor List: "L2CAP" (0x0100) "RFCOMM" (0x0003) Channel: 4 Service Name: Gadget Service RecHandle: 0x10001 Service Class ID List: UUID 128: 6088d2b3-983a-4eed-9f94-5ad1256816b7 Protocol Descriptor List: "L2CAP" (0x0100) "RFCOMM" (0x0003) Channel: 4 Service Name: SPP Port OTA Service RecHandle: 0x10002 Service Class ID List: "Serial Port" (0x1101) Protocol Descriptor List: "L2CAP" (0x0100) "RFCOMM" (0x0003) Channel: 2