mainmenu "ZMK Firmware" config ZMK_KEYBOARD_NAME string "Keyboard Name" config USB_DEVICE_PRODUCT default ZMK_KEYBOARD_NAME config BT_DEVICE_NAME default ZMK_KEYBOARD_NAME config ZMK_KSCAN_EVENT_QUEUE_SIZE int "Size of the event queue for KSCAN events to buffer events" default 4 menu "HID Output Types" menuconfig ZMK_USB bool "USB" select USB select USB_DEVICE_STACK select USB_DEVICE_HID if ZMK_USB config ZMK_USB_INIT_PRIORITY int "Init Priority" default 50 config USB_NUMOF_EP_WRITE_RETRIES default 10 endif menuconfig ZMK_BLE bool "BLE (HID over GATT)" select BT select BT_SMP select BT_SMP_SC_PAIR_ONLY select BT_PERIPHERAL select BT_GATT_DIS select BT_GATT_BAS if ZMK_BLE config ZMK_BLE_INIT_PRIORITY int "Init Priority" default 50 # HID GATT notifications sent this way are *not* picked up by Linux, and possibly others. config BT_GATT_NOTIFY_MULTIPLE default n config BT_DEVICE_APPEARANCE default 961 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 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 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" select BT_CENTRAL select BT_GATT_CLIENT config ZMK_SPLIT_BLE_ROLE_PERIPHERAL bool "Peripheral" endchoice endif endif endmenu config ZMK_KSCAN_MOCK_DRIVER bool "Enable mock kscan driver to simulate key presses" default n config ZMK_KSCAN_COMPOSITE_DRIVER bool "Enable composite kscan driver to combine kscan devices" default n menu "ZMK Actions" config ZMK_ACTION_MOD_TAP bool "Enable the Mod-Tap Action" endmenu config HEAP_MEM_POOL_SIZE default 1024 module = ZMK module-str = zmk source "subsys/logging/Kconfig.template.log_config" rsource "boards/Kconfig" rsource "boards/shields/*/Kconfig.defconfig" source "Kconfig.zephyr"