Hi All,
I would like to let my QN9083 application be bonded by only one BLE mobile phone and other phones cannot connect it.
So I enabled the "gAppUsePairing_d" and "gAppUseBonding_d", then also redefined both the "gAppMaxConnections_c" and "gMaxBondedDevices_c" to be "1" in the app_preinclude.h.
But after I did the pairing and bonding with one phone successfully, I disconnected it then reconnect with another phone, the QN9083 still can be paired and bonded successfully.
Is there any other parameters in project codes which also need to be modified or redefined ?
Please give me some instructions or suggestions. Thank you in advance.
Best Regards,
Albert
Hello,
Please remember that the QN908x has the capabilities of having more than one connection when setting the gMaxBondedDevices_c it is related to the space in the memory reserved for the information of the device connection and that it can only store the information of one device.
If you are looking to only have one device, you will need to create a whitelist with the desired address so no other address can be bonded and paired.
Regards,
Estephania
Hi Estephania, thank you very much for your reply.
I saw the "BleConnManager_GapPeripheralEvent()" is called from "BleApp_ConnectionCallback()" and there has called "Gap_AddDeviceToWhiteList()" after the gConnEvtPairingComplete_c case.
After my 1st bonding, the "Gap_AddDeviceToWhiteList()" should already add the 1st bonded device address into whitelist, right ?
Then since I already redefined the "gMaxBondedDevices_c" to be 1, the whitelist shouldn't add the new device address during my 2nd bonding.
But it looks like the whitelist can add more than one device address so the 2nd bonding is still acceptable. Is this possible to happen ?