feeature(bt): Add "unpair combo" on startup.
* Especially for splits, we need the ability to unpair all paired devices as sledgehammer if we need to "reset things", and doing so via keymaps isn't suitable. * Allows shields to define a collection of key positions that if all held 2 seconds after startup, will unpair all existing pairs for the device.
This commit is contained in:
parent
d7dee20e8d
commit
4402e4fbc7
22 changed files with 160 additions and 10 deletions
|
|
@ -58,6 +58,10 @@ RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10
|
|||
|
||||
};
|
||||
|
||||
bt_unpair_combo: bt_unpair_combo {
|
||||
compatible = "zmk,bt-unpair-combo";
|
||||
};
|
||||
|
||||
// TODO: per-key RGB node(s)?
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -1,2 +1,3 @@
|
|||
CONFIG_ZMK_SPLIT=y
|
||||
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y
|
||||
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y
|
||||
CONFIG_ZMK_BLE_UNPAIR_COMBO=y
|
||||
|
|
@ -16,3 +16,7 @@
|
|||
, <&pro_micro_d 14 GPIO_ACTIVE_HIGH>
|
||||
;
|
||||
};
|
||||
|
||||
&bt_unpair_combo {
|
||||
key-positions = <0 38>;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,2 +1,3 @@
|
|||
CONFIG_ZMK_SPLIT=y
|
||||
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y
|
||||
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y
|
||||
CONFIG_ZMK_BLE_UNPAIR_COMBO=y
|
||||
|
|
@ -21,3 +21,6 @@
|
|||
;
|
||||
};
|
||||
|
||||
&bt_unpair_combo {
|
||||
key-positions = <11 39>;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -81,6 +81,10 @@ RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9)
|
|||
sensors = <&left_encoder &right_encoder>;
|
||||
};
|
||||
|
||||
bt_unpair_combo: bt_unpair_combo {
|
||||
compatible = "zmk,bt-unpair-combo";
|
||||
};
|
||||
|
||||
// TODO: RGB node(s)
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -1,2 +1,3 @@
|
|||
CONFIG_ZMK_SPLIT=y
|
||||
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y
|
||||
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y
|
||||
CONFIG_ZMK_BLE_UNPAIR_COMBO=y
|
||||
|
|
@ -22,3 +22,7 @@
|
|||
&left_encoder {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&bt_unpair_combo {
|
||||
key-positions = <0 44>;
|
||||
};
|
||||
|
|
@ -1,2 +1,3 @@
|
|||
CONFIG_ZMK_SPLIT=y
|
||||
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y
|
||||
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y
|
||||
CONFIG_ZMK_BLE_UNPAIR_COMBO=y
|
||||
|
|
@ -27,3 +27,7 @@
|
|||
&right_encoder {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&bt_unpair_combo {
|
||||
key-positions = <11 45>;
|
||||
};
|
||||
|
|
@ -44,6 +44,10 @@ RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(4,5) RC(4,6) RC(3,6) RC(3,7)
|
|||
;
|
||||
|
||||
};
|
||||
|
||||
bt_unpair_combo: bt_unpair_combo {
|
||||
compatible = "zmk,bt-unpair-combo";
|
||||
};
|
||||
};
|
||||
|
||||
&pro_micro_i2c {
|
||||
|
|
|
|||
|
|
@ -1,2 +1,3 @@
|
|||
CONFIG_ZMK_SPLIT=y
|
||||
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y
|
||||
CONFIG_ZMK_SPLIT_BLE_ROLE_CENTRAL=y
|
||||
CONFIG_ZMK_BLE_UNPAIR_COMBO=y
|
||||
|
|
@ -17,3 +17,6 @@
|
|||
;
|
||||
};
|
||||
|
||||
&bt_unpair_combo {
|
||||
key-positions = <0 42>;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,2 +1,3 @@
|
|||
CONFIG_ZMK_SPLIT=y
|
||||
CONFIG_ZMK_SPLIT_BLE_ROLE_PERIPHERAL=y
|
||||
CONFIG_ZMK_BLE_UNPAIR_COMBO=y
|
||||
|
|
|
|||
|
|
@ -21,3 +21,6 @@
|
|||
;
|
||||
};
|
||||
|
||||
&bt_unpair_combo {
|
||||
key-positions = <11 43>;
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue