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

nRF51x, S110, pairing request with Initiator key LTK

Thats the problem. On Windows7, 64 bit, with the Bluetooth Stack from the USB BLE-Stick happens the following: Windows (master) initiates the connection, sends a security requierement of Bond=1, MITM=1, etc... I do´nt support MITM, so it fails with error 0x83, but the Master sends after this a second pairing request with Bond=1, MITM=0 etc..., so it decreased the security levels, starting with the highest.

But the slave does not answer anymore.

The problem is in S110 V6.0.0 til S110 V8.0.0 the same.

How can I change, that the slave dont disconnect in the given timeout? I will, that he should response all request, so that the master can determine the higest available security level.

Update.

After a lot of sniffing and playing with Android and Windows I´ve note, that the main problem is not the MITM or Bonding, is the requested Initiator Key Type.

On Android: Sniff_android.pcapng 677 6.821182000 Master Slave SMP 37 Rcvd Pairing Request: Bonding, MITM, Initiator Key(s): LTK IRK CSRK , Responder Key(s): LTK IRK CSRK
680 6.872967000 Slave Master SMP 37 Rcvd Pairing Response: Bonding, No MITM, Initiator Key(s): IRK , Responder Key(s): LTK IRK

Thats fine. The slave answers with IRK.

On Windows: Sniff.pcapng 119 48.358824000 Master Slave SMP 37 Rcvd Pairing Request: Bonding, MITM, Initiator Key(s): LTK , Responder Key(s): LTK 122 48.377210000 Slave Master SMP 37 Rcvd Pairing Response: Bonding, No MITM, Initiator Key(s): , Responder Key(s): LTK

That goes wrong. The Slave answers with an empty Initiator Key. After this, the Master answers with : 123 48.384597000 Master Slave SMP 32 Rcvd Pairing Failed: Authentication Requirements The Slave sends one empty data block.

Then the Master repeats till timeout: 125 48.394607000 Master Slave SMP 37 Rcvd Pairing Request: Bonding, No MITM, Initiator Key(s): LTK , Responder Key(s): LTK

But no more response from the slave....

Here the disconnect event. discon_event.png

Parents
  • Hi Pitius,

    Please capture a sniffer trace with Windows 10.

    We need to align what is being tested. Please test with an example in the SDK. If you need to modify something to make the issue occur, please let me know.

    All of our examples went through intensive test before it get into the SDK (production version). So it would be very strange that you find it has issue with Windows 10 , out of the box. Unless it's a new update on Windows 10 that causes the incompatibility.

Reply
  • Hi Pitius,

    Please capture a sniffer trace with Windows 10.

    We need to align what is being tested. Please test with an example in the SDK. If you need to modify something to make the issue occur, please let me know.

    All of our examples went through intensive test before it get into the SDK (production version). So it would be very strange that you find it has issue with Windows 10 , out of the box. Unless it's a new update on Windows 10 that causes the incompatibility.

Children
No Data
Related