Hi there!
We are using nRF52840DK development kit with nRF-Connect SDK to build a pre-production version of our product. We have added the required BLE service and characteristics and they are working fine when it comes to an insecure BLE connection. Now we have implemented the security using bonding by referring to the peripheral_lbs example in nrf-Connect SDK samples, It works fine but it requires a person to enter the passkey provided by the DK board over serial terminal to feed in to the BLE controller i.e. an Android device.
I read some community posts related to older nRF5 SDK that to avoid entering the key manually every time, we can disable the MITM flag and have a pre-shared pass key between the devices say "000000". But I wonder, if there is any better method to do it automatically without compromising the security like MITM protection. Even if we consider implementing the similar thing using nRF-Connect SDK (instead of nRF52 SDK), I am not able to find a simple step-by-step guide or at-least some proper guidelines to refer. As we have recently started our development with nRF-Connect SDK and Zephyr, this could be a naive question to ask but pardon me on this.
So can anyone please guide me to implement secure bonding between the said DK board and android device without manual intervention (or at-least the 'OK Button' kind of pairing at Android) using nRF-Connect SDK or if possibly could point me to the right resource to learn this? It is really critical for us to come up with a solution for this ASAP.
Thanks for the support in advance!
Regards,
Bhupendra