LL_Reject_Ind ErrorCode 6

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hello,  I tried to connect two devices with encryption and the slave sends "LL_Reject_Ind ErrorCode 6" to the master.  Any idea what might cause the error?    I compared my codes to hello_client and hello_sensor and all the security related functions are called within the "connection_up" function, including lesmp_sendSecurityRequest and lesmp_startPairing.  I am not sure what else I could miss.    Thank you.

0 Likes
1 Solution
Anonymous
Not applicable

hlee

It seems that the passcode or pincode doesn't match on either side.  Or if they have been paired previously, one side has lost the link key but the other side has not. 

Try a "forget this device" to wipe out the bonding information an try repairing.

-Kevin

View solution in original post

0 Likes
6 Replies
BoonT_56
Employee
Employee
500 likes received 250 likes received 100 likes received
0 Likes
Anonymous
Not applicable

hlee

It seems that the passcode or pincode doesn't match on either side.  Or if they have been paired previously, one side has lost the link key but the other side has not. 

Try a "forget this device" to wipe out the bonding information an try repairing.

-Kevin

0 Likes
Anonymous
Not applicable

boont, thanks.  The link show some discussion but there is no conclusion how the problem was solved (or not solved).

Kevin,  thanks.  You are right.  I think the problem is one side lost the key but the other side has not.  In my case, the problem solved whenever I re-download the codes to the master node.  Somehow reset does not work?!

Do you know how I can force "forget the device"?

0 Likes
Anonymous
Not applicable

hlee

Are you using the tag3? Assuming you are, the reset button on the tag3 only restarts the board so all your information is still store on the chip, whereas re-downloading the code will completely wipe out any bonding or pairing you previously had, which is why your problem is solved when you re-download your code to the master.

I'm not aware of any other ways to forget the device than to redownload the code on one side, mwf_mmfae might know another way.


-Kevin

I believe that this issue has come up several times in the past.

Here's one thread I found: Re: bonding of sensor after flashing

Essentially, because the bonding/pairing information is stored in NVRAM, a firmware reflash will delete the pairing information from one side of the connection, while this information is still being retained by the other side. Therefore during the next re-connection attempt, it will fail because one side is still using its existing - but otherwise expired- bonding/pairing information.

This thread goes into some detail on the synchronization of the information on both sides and explains why it's not possible: Un-pairing / un-bonding from a BLE sensor device

If you are using a handset on one side of the connection, you 'Forget this device' inside of the Bluetooth settings.

On a Tag board, you do the same by reflashing the board.

If you need a way to programmatically remove existing bonding/pairing information, then we would need to consult with the developers.

Anonymous
Not applicable

Thank you for your help!   Could you please check my another question as well?  Piconet with encryption

0 Likes