Hello,
I am a bit confused about pairing and bonding. I have compiled and run Glucose sensor sample app in the TI BLE SDK.
Just to be on the same page, here are the configuration of the sample:
#define DEFAULT_PASSCODE 19655
#define DEFAULT_PAIRING_MODE GAPBOND_PAIRING_MODE_WAIT_FOR_REQ
#define DEFAULT_MITM_MODE TRUE
#define DEFAULT_BONDING_MODE TRUE
#define DEFAULT_IO_CAPABILITIES GAPBOND_IO_CAP_DISPLAY_ONLY
Now, when I try to pair/bond with the sensor using BTool or a BLE Scanner Android App as my central unit, pin code is asked and if I do not provide "19655", then the whole process fails as expected. And only when I provide it, pairing and bonding is successful.
So far so good!
However, when I try the same thing using BlueZ 5.22 as the central unit, then pairing/bonding goes successful even though I do not provide the pin code. How is that possible? Any ideas? What am I missing? :)
Attaching the sniffer data (used TI Packet Sniffer):
Lastly, this is what BlueZ bluetoothctl program shows:
[bluetooth]# info 84:DD:20:F0:8E:2B
Device 84:DD:20:F0:8E:2B
Name: Glucose
Alias: Glucose
Paired: yes
Trusted: no
Blocked: no
Connected: yes
LegacyPairing: no
UUID: Generic Access Profile (00001800-0000-1000-8000-00805f9b34fb)
UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
UUID: Glucose (00001808-0000-1000-8000-00805f9b34fb)
UUID: Device Information (0000180a-0000-1000-8000-00805f9b34fb)
Modalias: bluetooth:v000Dp0000d0110