fix(split): Use queue/work for peripheral events.

* Avoid corruption by using work to process
  peripheral key position events on the main
  work thread, like local kscan events are.
* Fixes #221
This commit is contained in:
Pete Johanson
2020-12-03 00:12:21 -05:00
parent 969e5568af
commit 4aa78a6f8d
2 changed files with 40 additions and 11 deletions

View File

@@ -94,11 +94,19 @@ config ZMK_SPLIT_BLE
if ZMK_SPLIT_BLE
config ZMK_SPLIT_BLE_ROLE_CENTRAL
menuconfig ZMK_SPLIT_BLE_ROLE_CENTRAL
bool "Central"
select BT_CENTRAL
select BT_GATT_CLIENT
if ZMK_SPLIT_BLE_ROLE_CENTRAL
config ZMK_SPLIT_BLE_CENTRAL_POSITION_QUEUE_SIZE
int "Max number of key position state events to queue when received from peripherals"
default 5
endif
if !ZMK_SPLIT_BLE_ROLE_CENTRAL
config ZMK_USB