Dialog Semiconductor customer support - iOS10 https://support.dialog-semiconductor.com/resource-keywords/ios10 en The disconnection process differs between iOS 10 and iOS 9. https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bluetooth-low-energy-%E2%80%93-software/disconnection-process-differs-between

1. issue a connection request (Connection Request) from iOS.
2. the peripheral issues a Connection Request Indication.
3. Issue a disconnect process from the peripheral.
In iOS 9 it will be identified as disconnected and disconnected immediately.
However, iOS 10 identifies it as timeout and takes time to disconnect.
Is this a problem with iOS?
Is it a problem on the peripheral side?

static int gapc_connection_req_ind_handler(ke_msg_id_t const msgid,
struct gapc_connection_req_ind const *param,
ke_task_id_t const dest_id,
ke_task_id_t const src_id)
{
uint8_t connection_idx = KE_IDX_GET(src_id);

// In iOS 9 it will be identified as disconnected and disconnected immediately.
// However, iOS 10 identifies it as timeout and takes time to disconnect.
app_easy_gap_disconnect(connection_idx);

return (KE_MSG_CONSUMED);
}

Device: 
Thu, 22 Jun 2017 01:00:32 +0000 y-takamine 53831 at https://support.dialog-semiconductor.com https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bluetooth-low-energy-%E2%80%93-software/disconnection-process-differs-between#comments