
API frames
BLE Unlock API - 0x2C
Digi XBee® 3 Cellular LTE-M/NB-IoT Global Smart Modem User Guide
268
BLE Unlock API - 0x2C
Description
The XBee Smart Modem uses this frame to authenticate a connection on the Bluetooth interface and
unlock the processing of AT command frames. This frame is used in conjunction with the
frame.
The unlock process is an implementation of the
algorithm using the
and the SHA-256 hash algorithm . The SRP identifying user name, commonly
referred to as
I
, is fixed to the value
apiservice
.
Upon completion, each side will have derived a shared session key which is used to communicate in an
encrypted fashion with the peer. Additionally, a
with the status code 0x32
(Bluetooth Connected) is sent through the UART (if AP=1 or 2). When an unlocked connection is
terminated, a Modem Status Frame with the status code 0x33 (Bluetooth Disconnected) is sent
through the UART.
The following implementations are known to work with the BLE SRP implementation:
n
https://github.com/cncfanatics/SRP
You will need to modify the hashing algorithm to SHA256 and the values of N and g to use the
RFC5054 1024-bit group.
n
https://github.com/cocagne/csrp
n
https://github.com/cocagne/pysrp
Format
The following table provides the contents of the frame. For details on frame structure, see
Frame data fields
Offset
Description
Frame type
3
0x2C = Request
0xAC = Response