Hello,
I add sd_ble_gap_phy_update() in the ble_evt_handler() as below:
case BLE_GAP_EVT_CONNECTED:
{
......
ble_gap_phys_t const phys =
{
.rx_phys = BLE_GAP_PHY_2MBPS,
.tx_phys = BLE_GAP_PHY_2MBPS,
};
err_code = sd_ble_gap_phy_update(p_ble_evt->evt.gap_evt.conn_handle, &phys);
APP_ERROR_CHECK(err_code);f
}
Issue description:
When I use a central phone which support Bluetooth 5 can connect to peripheral(nRF52805) properly via nRF Connect app.
But the nRF Connect always switch to disconnect via some central phones only support Bluetooth 4.2.
The Bluetooth 4.2 device information show on nRF Connect app :
High speed (PHY 2M) spported - YES
Long range (PHY Coded) spported - No
The central phone will make the final Phy rate decision
But why connection cannot be established stable between central(Bluetooth 4.2) and peripheral ?
Any good method to support:
1. Force to use 2Mbps via Bluetooth 5 central phone
2. Switch to 1Mbps via Bluetooth 4.2 central phone without any disconnection issue.
thanks