Beware that this post is related to an SDK in maintenance mode
More Info: Consider nRF Connect SDK for new designs
This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

iPhone X can't connect

Hello,

I'm having an issue when I try to connect to my device from an iPhone X. I'm using SD132 v6.0.0 on SDK 15.

The phone tries to connect and then it times out. All other phones I've tried worked fine. Could it be something related to Bluetooth 5 that my device still doesn't support?

This is the debug output I get:

nrf_ble_gatt.c           : 159:   32752: Requesting to update ATT MTU to 247 bytes on connection 0x0
nrf_ble_gatt.c           :  82:   32752: Updating data length to 251 on connection 0x0.
ble_conn_params.c        : 182:   32752: New connection interval: 30 ms
ble_stack.c              : 422:   32752: Connection parameters ok
ble_stack.c              : 663:   32752: PERIPHERAL: Connected
ble_stack.c              : 664:   32752: Connection interval: 30 ms

nrf_ble_gatt.c           : 219:   32897: ATT MTU updated to 185 bytes on connection 0x0 (response).
ble_stack.c              : 308:   32897: GATT ATT MTU changed to 185
nrf_ble_gatt.c           : 313:   32958: Data length updated to 251 on connection 0x0
nrf_ble_gatt.c           : 316:   32958: Max RX octets: 251
nrf_ble_gatt.c           : 318:   32958: Max TX octets: 251
nrf_ble_gatt.c           : 320:   32958: Max RX time: 2120
nrf_ble_gatt.c           : 322:   32958: Max TX time: 2120
ble_stack.c              : 669:   47784: PERIPHERAL: Disconnected
ble_stack.c              : 672:   47784: - REMOTE_USER_TERMINATED_CONNECTION

I have no clue how to go about this problem. Any help will be appreciated.

EDIT: I connected with another app and got disconnection reason 0x22: BLE_HCI_STATUS_CODE_LMP_RESPONSE_TIMEOUT

My connection parameters are set up as follows:

#define MIN_CONN_INTERVAL               MSEC_TO_UNITS(15, UNIT_1_25_MS)
#define MAX_CONN_INTERVAL               MSEC_TO_UNITS(30, UNIT_1_25_MS)
#define SLAVE_LATENCY                   0
#define CONN_SUP_TIMEOUT                MSEC_TO_UNITS(500, UNIT_10_MS)

Related