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

Pair Device with Legacy Connection OOB preshared key, using Android NRF connect

Hi,

I am working on NRF52832-based board, with SDK 15.2.

My BLE device is protected with Legacy Connection OOB preshared key.

I would like to use Android NRF Connect app to pair with my device, filling my OOB key.

I can be in pairing mode and fill my key in NRF Connect Desktop, but not with NRF Connect app.

I don't find any button to do that. There is only a button to bond, so I have added the bonding mode in my application, but I haven't succeeded to bond also.

DO you know how I can pair with my security parameters ? If I can do it only through bonding mode, can you help me resolve my problem ?

I have already checked these others subjects, but they haven't succeeded too :

https://devzone.nordicsemi.com/f/nordic-q-a/47932/oob-works-with-mcp-but-fails-with-nrf-connect

https://devzone.nordicsemi.com/f/nordic-q-a/60196/how-to-enter-oob-key-in-nrf-connect-app

https://devzone.nordicsemi.com/f/nordic-q-a/43338/android-pairing-without-bonding---nrf-connect/172332#172332

Thanks

Parents
  • Hi Simonr,

    Yes, try to connect to your device without using nRFConnect. If you go into the settings on the phone, you should have a "Bluetooth menu" where you can scan for, connect, and pair to Bluetooth devices.

    With my phone, when i scan Bluetooth devices without NRF Connect, I don't see my BLE device.

    The three dots next to the DEBUG tab in the nRFConnect app for Android should have a "share" or "copy to clipboard" button function depending on the nRFConnect version.

    Ok, here is the logs

    nRF Connect, 2021-01-14
    123456789ab (D7:6A:98:57:39:7F)
    V 11:48:43.051 Connecting to D7:6A:98:57:39:7F...
    D 11:48:43.051 gatt = device.connectGatt(autoConnect = false, TRANSPORT_LE, preferred PHY = LE 1M)
    D 11:48:50.565 [Callback] Connection state changed with status: 0 and new state: CONNECTED (2)
    I 11:48:50.565 Connected to D7:6A:98:57:39:7F
    D 11:48:50.567 [Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
    V 11:48:50.651 Discovering services...
    D 11:48:50.651 gatt.discoverServices()
    D 11:48:50.689 [Broadcast] Action received: android.bluetooth.device.action.BOND_STATE_CHANGED, bond state changed to: BOND_BONDING (11)
    D 11:48:50.722 [Broadcast] Action received: android.bluetooth.device.action.PAIRING_REQUEST, pairing variant: PAIRING_VARIANT_CONSENT (3)
    I 11:48:51.188 Connection parameters updated (interval: 7.5ms, latency: 0, timeout: 5000ms)
    D 11:48:52.498 [Callback] Services discovered with status: 0
    I 11:48:52.498 Services discovered
    V 11:48:52.659 Generic Access (0x1800)
    ... 
    I 11:48:52.677 Connection parameters updated (interval: 45.0ms, latency: 0, timeout: 5000ms)
    D 11:48:54.475 [Broadcast] Action received: android.bluetooth.device.action.PAIRING_REQUEST, pairing variant: PAIRING_VARIANT_CONSENT (3)
    I 11:48:56.672 Connection parameters updated (interval: 75.0ms, latency: 0, timeout: 4000ms)
    D 11:48:57.496 [Broadcast] Action received: android.bluetooth.device.action.BOND_STATE_CHANGED, bond state changed to: BOND_BONDED (12)
    I 11:48:57.496 Device bonded
    V 11:49:37.379 Reading characteristic 00002a29-0000-1000-8000-00805f9b34fb
    D 11:49:37.379 gatt.readCharacteristic(00002a29-0000-1000-8000-00805f9b34fb)
    E 11:49:38.395 Error 137 (0x89): GATT AUTH FAIL
    

Reply
  • Hi Simonr,

    Yes, try to connect to your device without using nRFConnect. If you go into the settings on the phone, you should have a "Bluetooth menu" where you can scan for, connect, and pair to Bluetooth devices.

    With my phone, when i scan Bluetooth devices without NRF Connect, I don't see my BLE device.

    The three dots next to the DEBUG tab in the nRFConnect app for Android should have a "share" or "copy to clipboard" button function depending on the nRFConnect version.

    Ok, here is the logs

    nRF Connect, 2021-01-14
    123456789ab (D7:6A:98:57:39:7F)
    V 11:48:43.051 Connecting to D7:6A:98:57:39:7F...
    D 11:48:43.051 gatt = device.connectGatt(autoConnect = false, TRANSPORT_LE, preferred PHY = LE 1M)
    D 11:48:50.565 [Callback] Connection state changed with status: 0 and new state: CONNECTED (2)
    I 11:48:50.565 Connected to D7:6A:98:57:39:7F
    D 11:48:50.567 [Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
    V 11:48:50.651 Discovering services...
    D 11:48:50.651 gatt.discoverServices()
    D 11:48:50.689 [Broadcast] Action received: android.bluetooth.device.action.BOND_STATE_CHANGED, bond state changed to: BOND_BONDING (11)
    D 11:48:50.722 [Broadcast] Action received: android.bluetooth.device.action.PAIRING_REQUEST, pairing variant: PAIRING_VARIANT_CONSENT (3)
    I 11:48:51.188 Connection parameters updated (interval: 7.5ms, latency: 0, timeout: 5000ms)
    D 11:48:52.498 [Callback] Services discovered with status: 0
    I 11:48:52.498 Services discovered
    V 11:48:52.659 Generic Access (0x1800)
    ... 
    I 11:48:52.677 Connection parameters updated (interval: 45.0ms, latency: 0, timeout: 5000ms)
    D 11:48:54.475 [Broadcast] Action received: android.bluetooth.device.action.PAIRING_REQUEST, pairing variant: PAIRING_VARIANT_CONSENT (3)
    I 11:48:56.672 Connection parameters updated (interval: 75.0ms, latency: 0, timeout: 4000ms)
    D 11:48:57.496 [Broadcast] Action received: android.bluetooth.device.action.BOND_STATE_CHANGED, bond state changed to: BOND_BONDED (12)
    I 11:48:57.496 Device bonded
    V 11:49:37.379 Reading characteristic 00002a29-0000-1000-8000-00805f9b34fb
    D 11:49:37.379 gatt.readCharacteristic(00002a29-0000-1000-8000-00805f9b34fb)
    E 11:49:38.395 Error 137 (0x89): GATT AUTH FAIL
    

Children
No Data
Related