I have been very frustrated with the information provided about this event when running the RL78G1D as a collector in modem mode. When I respond to the event as indicated in the r01uw0088ej0118-g1drm-main.pdf documentation, a connected peripheral has a much greater tendency to disconnect. Worse is that sometimes I get this event and I am not even connected. I use no white list so I do not ever expect to see this event when not connected. I can also get this event on a first time connection where it is asking me for information that I do not have yet.
As a result I have ignored the event and simply return and continue on as if it never happened. It appears that I get more robust behavior that way but I do not understand what the consequences of ignoring the event might mean. This issue has been a source of confusion for months.
Could someone please tell me why this event occurs, why I need to respond to it, and what are the consequences of ignoring it?
RBLE_SM_CHK_BD_ADDR_REQ will always be notified when connecting to a remote device with Public or Static address, if you set a security level except RBLE_GAP_NO_SEC used in your device by RBLE_GAP_Set_Security_Request.
When RBLE_SM_CHK_BD_ADDR_REQ is notified, please respond as follows.
For the device not previously bonded:
Set the found_flag of RBLE_SM_Chk_Bd_Addr_Req_Resp to "FALSE" and respond.
For the device that has previously been bonded:
Set the found_flag of RBLE_SM_Chk_Bd_Addr_Req_Resp to TRUE then set the logical sum of sec_prop notified by RBLE_GAP_EVENT_BONDING_COMP upon completion of previous bonding and RBLE_SMP_BONDED to lk_sec_status and respond.
The response by RBLE_SM_Chk_Bd_Addr_Req_Resp tells the stack whether the bonding with the connected device is completed or not.
The following application note is helpful.
If you ignore RBLE_SM_CHK_BD_ADDR_REQ, it does not matter.
In reply to K.noto:
I could not show the URL well.
Please check the following:
Thanks for that helpful response. I am not sure I quite follow the instructions but the important piece of information is that it doesn't matter if I do not set it. Right now I am ignoring the event. Ignoring it appeared to be okay but I was always worried that it might be responsible for some other issues I am having. It is good to know that it isn't. Thanks again!