Out of Band Pairing
Hi,
I have a project where we use the STM32WB55 with the ST25R3911B as NFC module for OOB pairing.
I couldn't find any example for OOB pairing flow.
My start point is the p2p_server example and I can see there are:
- BleApplicationContext.BleApplicationContext_legacy.bleSecurityParam.OOB_Data
- BleApplicationContext.BleApplicationContext_legacy.bleSecurityParam.OOB_Data_Present
which I assume are relevant for my cause.
After reading AN5289 I also can tell there are:
- aci_gap_set_oob_data()
- aci_gap_get_oob_data() - which in my case always return an array of '0' at the
But I can't figure how to connect the dots. is there any example for OOB?
when I am invoking get oob data as below I always get OOB_Data array of '0', why?
uint8_t Address_Type = 0;
uint8_t Address[6];
// initial value is just for seeing it gets override
uint8_t OOB_Data[16] = { 0x01, 0x02, 0x03 };
uint8_t OOB_Data_Len;
uint8_t getOobDataRes = aci_gap_get_oob_data(0x01, &Address_Type, Address, &OOB_Data_Len, OOB_Data);
If there is no example I would appreciate if you can answer my questions ( a reference to the relevant functions would be awsome! :(
- when I invoke aci_gap_set_oob_data() what should be the content of OOB_Data argument? I can see it's 16 bytes (which I assume received from outside) but what are thay stand for? is there any standard for it?
- What is the flow I need to conduct in order to pair a device once I recieved the NDEF via NFC?
- After the pairing process, If I want them to bond what else is required?
- After the bonding how can I implement white list such that only the bonded device would be able to connect?
Thanks
