This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

LESC unable to pair (SM_pairing_faill )

Hi all,

I have tried to mimic the LESC multi role example to my own app, but I dint have luck to pair it using LESC, MITM, and perform bonding and I received a SM_pairing_faill reason 0x0b; screen capture below:

nRF connect PC

image description

nRF connect PC failing to pair

image description

sniffer capture

image description

details: Peripheral running on my peripheral device nRF52 with SDK13. Central using a nRF51 using PC nRF connect firmware.

My device does not have any Input, I am trying to perform LESC with just work

sec_params.bond           = true;
sec_params.mitm           = false;
sec_params.lesc           = true;
sec_params.keypress       = false;
sec_params.io_caps        = false;
sec_params.oob            = false;
sec_params.min_key_size   = 7;
sec_params.max_key_size   = 16;
sec_params.kdist_own.enc  = 1;
sec_params.kdist_own.id   = 1;
sec_params.kdist_peer.enc = 1;
sec_params.kdist_peer.id  = 1;

I tried use nRF connect (pc version) with the multi role example and it works with no issue, and I am pretty sure it is equal on my app (same settings), but I am stuck in the SM_paring_failed.

Parents
  • Hi Hung, I took a capture for the ble_app_mulirole_lesc and I am comparing it with my app it looks pretty similar the differences are on: IOcap, AuthReq and pairing is failing. image description

    The curious is I am using the same sec_parrams and it looks like is taking some different values because of the values in the sniffer capture. the ble_app_multirole_lesc works fine for me using nrf connect version PC.

    Update:

    I tried performing on nrf connect pairing with only MITM protection and Bonding, no LESC. It is pairing and encrypting my data, but I don't know if it is actually enabling LESC (I did not select it on the pairing windows on nrf connect).

    Another thing. Running the ble_app_multirole_lesc example I cannot write/read the characteristics before pairing, on my application, it is not happening, it should be defined on the Characteristic definition or when initializing the services.

Reply
  • Hi Hung, I took a capture for the ble_app_mulirole_lesc and I am comparing it with my app it looks pretty similar the differences are on: IOcap, AuthReq and pairing is failing. image description

    The curious is I am using the same sec_parrams and it looks like is taking some different values because of the values in the sniffer capture. the ble_app_multirole_lesc works fine for me using nrf connect version PC.

    Update:

    I tried performing on nrf connect pairing with only MITM protection and Bonding, no LESC. It is pairing and encrypting my data, but I don't know if it is actually enabling LESC (I did not select it on the pairing windows on nrf connect).

    Another thing. Running the ble_app_multirole_lesc example I cannot write/read the characteristics before pairing, on my application, it is not happening, it should be defined on the Characteristic definition or when initializing the services.

Children
No Data
Related