Pairing specific pairs among many

Hello, we're trying to make products using BLE with nRF52840(central) and nRF52833(peripheral).

We did make custom boards and also made a program that once paired(bonded), it won't connect with others.

(eg, once nRF52840 and nRF52833 is paired, it will not connect with others)

We were wondering is there a way to make specific central connect with specific peripheral?

Is there a way to make each central/peripheral unique so that pairing process can be done without interference?

We got concerned that wrongly paired(or bonded) devices might ship out.

At our current stage, pairing wrong central/peripheral is possible.

Other infos.

nRF52840-central has 2 buttons, while nRF52833-peripheral has none

We're using SDK 17.1.0 S140 Segger Studio

has NUS(communication) and BAS(battery check) BLE services

thanks

edit:

extra question: is there a way to write certain unique number/MAC address on flash during flash write and then read it during application?

How do I know which address of flash is used or not?(want to avoid  collision with bonded info)

Is there a download tool beside nRF Connect Programmer?

Parents
  • Perfect!

    Could you be so kind to do another one for central/scanner please?

    Edit: Central looks very tricky. hrs_c has whitelist-ing stuffs but it's related to peers

    pm_peer_id_t says it is uint16_t, how does it carry whitelist data??

    does central has something like ble_advertising_whitelist_reply()?

    my central's NRF_BLE_SCAN_EVT_CONNECTED display totally different ble address compare to my peripheral's device address(NRF_FICR->DEVICEADDR[0,1]), is it possible?

    Also,

    Peripheral's side doesn't respond much but central's side constantly find connection and get disconnected for reason 2 and 3e

    what does it mean unknown connection identifier?

    I believe BLE_HCI_CONN_FAILED_TO_BE_ESTABLISHEDd is due to constantly trying to connect?

Reply
  • Perfect!

    Could you be so kind to do another one for central/scanner please?

    Edit: Central looks very tricky. hrs_c has whitelist-ing stuffs but it's related to peers

    pm_peer_id_t says it is uint16_t, how does it carry whitelist data??

    does central has something like ble_advertising_whitelist_reply()?

    my central's NRF_BLE_SCAN_EVT_CONNECTED display totally different ble address compare to my peripheral's device address(NRF_FICR->DEVICEADDR[0,1]), is it possible?

    Also,

    Peripheral's side doesn't respond much but central's side constantly find connection and get disconnected for reason 2 and 3e

    what does it mean unknown connection identifier?

    I believe BLE_HCI_CONN_FAILED_TO_BE_ESTABLISHEDd is due to constantly trying to connect?

Children
No Data
Related