From 3796f76c56d42ca9b4fd36edae7f6bf6656009b9 Mon Sep 17 00:00:00 2001 From: Pete Johanson Date: Mon, 29 Jun 2020 00:37:11 -0400 Subject: Initial exploration of split BLE service. * Service for split peripheral to report position state to split central. * Updated advertising info. * Behavior for split BT until we have a proper event system. --- app/Kconfig | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'app/Kconfig') diff --git a/app/Kconfig b/app/Kconfig index e6dc3bd..10d98e6 100644 --- a/app/Kconfig +++ b/app/Kconfig @@ -72,6 +72,25 @@ endif endmenu + +menu "Split Support" + +config ZMK_SPLIT + bool "Split keyboard support" + default n + +if ZMK_SPLIT + +config ZMK_SPLIT_BLE + bool "Split keyboard support via BLE transport" + depends on ZMK_BLE + default y + +endif + +endmenu + + config ZMK_KSCAN_MOCK_DRIVER bool "Enable mock kscan driver to simulate key presses" default n -- cgit v1.2.3 From be537d06565a38f5fcca8d5a1d0a7b7350b35d51 Mon Sep 17 00:00:00 2001 From: Pete Johanson Date: Thu, 2 Jul 2020 23:34:11 -0400 Subject: Lots of work on split peripheral/central logic. --- app/Kconfig | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'app/Kconfig') diff --git a/app/Kconfig b/app/Kconfig index 10d98e6..2309d2d 100644 --- a/app/Kconfig +++ b/app/Kconfig @@ -86,6 +86,22 @@ config ZMK_SPLIT_BLE depends on ZMK_BLE default y +if ZMK_SPLIT_BLE + +choice ZMK_SPLIT_BLE_ROLE + bool "BLE Role For Split Communication" + default ZMK_SPLIT_BLE_ROLE_CENTRAL + +config ZMK_SPLIT_BLE_ROLE_CENTRAL + bool "Central" + +config ZMK_SPLIT_BLE_ROLE_PERIPHERAL + bool "Peripheral" + +endchoice + +endif + endif endmenu -- cgit v1.2.3 From d74efb331ac32c1a65d20193d06b2cabb858b594 Mon Sep 17 00:00:00 2001 From: Pete Johanson Date: Tue, 14 Jul 2020 12:14:15 -0400 Subject: Kconfig fixes for split roles. --- app/Kconfig | 2 ++ 1 file changed, 2 insertions(+) (limited to 'app/Kconfig') diff --git a/app/Kconfig b/app/Kconfig index 2309d2d..5881aae 100644 --- a/app/Kconfig +++ b/app/Kconfig @@ -94,6 +94,8 @@ choice ZMK_SPLIT_BLE_ROLE config ZMK_SPLIT_BLE_ROLE_CENTRAL bool "Central" + select BT_CENTRAL + select BT_GATT_CLIENT config ZMK_SPLIT_BLE_ROLE_PERIPHERAL bool "Peripheral" -- cgit v1.2.3 From d4afd989f35c46e43468dab1a19bfab9dcf34996 Mon Sep 17 00:00:00 2001 From: Pete Johanson Date: Wed, 15 Jul 2020 23:26:24 -0400 Subject: More split implementation. * Propogate key position state changes on central. * Various BLE tweaks. --- app/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'app/Kconfig') diff --git a/app/Kconfig b/app/Kconfig index 5881aae..8ae10ad 100644 --- a/app/Kconfig +++ b/app/Kconfig @@ -126,7 +126,7 @@ config ZMK_ACTION_MOD_TAP endmenu config HEAP_MEM_POOL_SIZE - default 200 + default 1024 module = ZMK module-str = zmk -- cgit v1.2.3 From 6701b7babc68cb8090a9d16105bd3876025aa0e8 Mon Sep 17 00:00:00 2001 From: Pete Johanson Date: Thu, 16 Jul 2020 15:50:41 -0400 Subject: Working BT settings. --- app/Kconfig | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) (limited to 'app/Kconfig') diff --git a/app/Kconfig b/app/Kconfig index 8ae10ad..c2a753f 100644 --- a/app/Kconfig +++ b/app/Kconfig @@ -40,6 +40,8 @@ menuconfig ZMK_BLE select BT_PERIPHERAL select BT_GATT_DIS select BT_GATT_BAS + select SETTINGS + select BT_SETTINGS if ZMK_BLE @@ -47,6 +49,9 @@ config ZMK_BLE_INIT_PRIORITY int "Init Priority" default 50 +config SYSTEM_WORKQUEUE_STACK_SIZE + default 2048 + # HID GATT notifications sent this way are *not* picked up by Linux, and possibly others. config BT_GATT_NOTIFY_MULTIPLE default n @@ -58,16 +63,6 @@ config ZMK_BLE_PASSKEY_ENTRY bool "Experimental: Requiring typing passkey from host to pair BLE connection" default n -# Incresed stack due to settings API usage -# CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048 -# -# CONFIG_BT_SETTINGS=y -# CONFIG_FLASH=y -# CONFIG_FLASH_PAGE_LAYOUT=y -# CONFIG_FLASH_MAP=y -# CONFIG_NVS=y -# CONFIG_SETTINGS=y - endif endmenu @@ -97,6 +92,13 @@ config ZMK_SPLIT_BLE_ROLE_CENTRAL select BT_CENTRAL select BT_GATT_CLIENT +if ZMK_SPLIT_BLE_ROLE_CENTRAL + +config BT_MAX_CONN + default 2 + +endif + config ZMK_SPLIT_BLE_ROLE_PERIPHERAL bool "Peripheral" -- cgit v1.2.3 From 339a15881a07c5b6e05c39ccdb8a312ba53042ff Mon Sep 17 00:00:00 2001 From: Pete Johanson Date: Fri, 17 Jul 2020 16:42:02 -0400 Subject: Tweaks for turning off USB for split peripherals. --- app/Kconfig | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'app/Kconfig') diff --git a/app/Kconfig b/app/Kconfig index c2a753f..aa8be60 100644 --- a/app/Kconfig +++ b/app/Kconfig @@ -102,6 +102,13 @@ endif config ZMK_SPLIT_BLE_ROLE_PERIPHERAL bool "Peripheral" +if ZMK_SPLIT_BLE_ROLE_PERIPHERAL + +config ZMK_USB + default n + +endif + endchoice endif -- cgit v1.2.3 From 1951883def78d9771221a347a4a61c176907433c Mon Sep 17 00:00:00 2001 From: Pete Johanson Date: Fri, 17 Jul 2020 23:04:47 -0400 Subject: Bump max BT connections for testing. --- app/Kconfig | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'app/Kconfig') diff --git a/app/Kconfig b/app/Kconfig index aa8be60..997409e 100644 --- a/app/Kconfig +++ b/app/Kconfig @@ -95,7 +95,7 @@ config ZMK_SPLIT_BLE_ROLE_CENTRAL if ZMK_SPLIT_BLE_ROLE_CENTRAL config BT_MAX_CONN - default 2 + default 5 endif @@ -107,6 +107,10 @@ if ZMK_SPLIT_BLE_ROLE_PERIPHERAL config ZMK_USB default n + +config BT_MAX_CONN + default 5 + endif endchoice -- cgit v1.2.3