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

No invitation to enter passkey on Asus tablet

I have ASUS ZenPad 10 with Android 5.0.2, BLE device on nRF51, S110 SDK9 with fixed passkey and encrypted characteristics with following settings

#define SEC_PARAM_BOND                  1    /**< Perform bonding. */
#define SEC_PARAM_MITM                  1    /**< Man In The Middle protection not required. */
#define SEC_PARAM_IO_CAPABILITIES       BLE_GAP_IO_CAPS_DISPLAY_ONLY 
#define SEC_PARAM_OOB                   0         /**< Out Of Band data not available. */

I'm using MCP application. nRF51 connects without problem to several tablets and phones with passkey invitation to enter, but on ASUS one it is bonded without asking to enter passkey. On nRF51 side I can see that BLE_GAP_EVT_PASSKEY_DISPLAY event doesn't happen with ASUS and missing in the list of events, the other events sequence match. But even after MCP reported that device is bonded when I try to read encrypted characteristic MCP shows busy symbol and not reading it although not encrypted can be read. When I started using that tablet I had message from Google Smart Lock asking if I want do add found bluetooth device to trusted list. If I pressed yes that didn't give me the option to enter passkey. But now I don't even have that message, may be I disabled something. Can anyone have any idea why that happens?

UPD: Just checked what comes from tablet on second parameter request and IO capability is BLE_GAP_IO_CAPS_DISPLAY_YESNO. Not sure if i looked on correct parameter. it is p_ble_evt->evt.gap_evt.params.sec_params_request.peer_params.io_caps

Does it mean that tablet report no keyboard capability and connects in Just Works way?

UPD2: I don't know how I missed it but the answer is here

Related