refactor(split): allow central to define connection parameters
Fixes #1614
This commit is contained in:
parent
5763558a02
commit
e686fce4d9
@ -33,6 +33,18 @@ config ZMK_SPLIT_BLE_CENTRAL_SPLIT_RUN_QUEUE_SIZE
|
||||
int "Max number of behavior run events to queue to send to the peripheral(s)"
|
||||
default 5
|
||||
|
||||
config ZMK_SPLIT_BLE_PREF_INT
|
||||
int "Connection interval to use for split central/peripheral connection"
|
||||
default 6
|
||||
|
||||
config ZMK_SPLIT_BLE_PREF_LATENCY
|
||||
int "Latency to use for split central/peripheral connection"
|
||||
default 30
|
||||
|
||||
config ZMK_SPLIT_BLE_PREF_TIMEOUT
|
||||
int "Supervision timeout to use for split central/peripheral connection"
|
||||
default 400
|
||||
|
||||
endif # ZMK_SPLIT_ROLE_CENTRAL
|
||||
|
||||
if !ZMK_SPLIT_ROLE_CENTRAL
|
||||
@ -58,8 +70,9 @@ config BT_MAX_PAIRED
|
||||
config BT_MAX_CONN
|
||||
default 1
|
||||
|
||||
config BT_PERIPHERAL_PREF_MAX_INT
|
||||
default 6
|
||||
# Allow central to specify connection parameters.
|
||||
config BT_GAP_AUTO_UPDATE_CONN_PARAMS
|
||||
default n
|
||||
|
||||
#!ZMK_SPLIT_ROLE_CENTRAL
|
||||
endif
|
||||
|
@ -383,7 +383,9 @@ static bool split_central_eir_found(const bt_addr_le_t *addr) {
|
||||
struct peripheral_slot *slot = &peripherals[slot_idx];
|
||||
|
||||
LOG_DBG("Initiating new connnection");
|
||||
struct bt_le_conn_param *param = BT_LE_CONN_PARAM(0x0006, 0x0006, 30, 400);
|
||||
struct bt_le_conn_param *param =
|
||||
BT_LE_CONN_PARAM(CONFIG_ZMK_SPLIT_BLE_PREF_INT, CONFIG_ZMK_SPLIT_BLE_PREF_INT,
|
||||
CONFIG_ZMK_SPLIT_BLE_PREF_LATENCY, CONFIG_ZMK_SPLIT_BLE_PREF_TIMEOUT);
|
||||
err = bt_conn_le_create(addr, BT_CONN_LE_CREATE_CONN, param, &slot->conn);
|
||||
if (err < 0) {
|
||||
LOG_ERR("Create conn failed (err %d) (create conn? 0x%04x)", err, BT_HCI_OP_LE_CREATE_CONN);
|
||||
|
Loading…
x
Reference in New Issue
Block a user