|
|
|
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 USB
|
|
|
|
|
|
|
|
config ZMK_USB_INIT_PRIORITY
|
|
|
|
int "Init Priority"
|
|
|
|
default 50
|
|
|
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
if ZMK_USB
|
|
|
|
|
|
|
|
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_SMP_APP_PAIRING_ACCEPT
|
|
|
|
select BT_PERIPHERAL
|
|
|
|
select BT_GATT_DIS
|
|
|
|
select BT_GATT_BAS
|
|
|
|
select BT_SETTINGS
|
|
|
|
select SETTINGS
|
|
|
|
|
|
|
|
if ZMK_BLE
|
|
|
|
|
|
|
|
config ZMK_BLE_INIT_PRIORITY
|
|
|
|
int "Init Priority"
|
|
|
|
default 50
|
|
|
|
|
|
|
|
config SYSTEM_WORKQUEUE_STACK_SIZE
|
|
|
|
default 2048
|
|
|
|
|
|
|
|
config ZMK_BLE_CLEAR_BONDS_ON_START
|
|
|
|
bool "Configuration that clears all bond information from the keyboard on startup."
|
|
|
|
default n
|
|
|
|
|
|
|
|
# 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
|
|
|
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
endmenu
|
|
|
|
|
|
|
|
menuconfig ZMK_SLEEP
|
|
|
|
bool "Enable deep sleep support"
|
|
|
|
imply USB
|
|
|
|
|
|
|
|
if ZMK_SLEEP
|
|
|
|
|
|
|
|
config SYS_POWER_DEEP_SLEEP_STATES
|
|
|
|
default y
|
|
|
|
|
|
|
|
choice SYS_PM_POLICY
|
|
|
|
default SYS_PM_POLICY_APP
|
|
|
|
endchoice
|
|
|
|
|
|
|
|
config ZMK_IDLE_SLEEP_TIMEOUT
|
|
|
|
int "Milliseconds to wait to sleep when going idle"
|
|
|
|
default 900000
|
|
|
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
config ZMK_DISPLAY
|
|
|
|
bool "ZMK display support"
|
|
|
|
default n
|
|
|
|
select DISPLAY
|
|
|
|
select LVGL
|
|
|
|
select LVGL_THEMES
|
|
|
|
select LVGL_THEME_MONO
|
|
|
|
select LVGL_OBJ_LABEL
|
|
|
|
|
|
|
|
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
|
|
|
|
select BT_USER_PHY_UPDATE
|
|
|
|
|
|
|
|
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"
|
|
|
|
|
|
|
|
if ZMK_SPLIT_BLE_ROLE_PERIPHERAL
|
|
|
|
|
|
|
|
config ZMK_USB
|
|
|
|
default n
|
|
|
|
|
|
|
|
config BT_MAX_PAIRED
|
|
|
|
default 1
|
|
|
|
|
|
|
|
config BT_MAX_CONN
|
|
|
|
default 1
|
|
|
|
|
|
|
|
config BT_GAP_AUTO_UPDATE_CONN_PARAMS
|
|
|
|
default n
|
|
|
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
endchoice
|
|
|
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
if ZMK_BLE
|
|
|
|
|
|
|
|
if ZMK_SPLIT_BLE && ZMK_SPLIT_BLE_ROLE_CENTRAL
|
|
|
|
|
|
|
|
config BT_MAX_CONN
|
|
|
|
default 6
|
|
|
|
|
|
|
|
config BT_MAX_PAIRED
|
|
|
|
default 6
|
|
|
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
if !ZMK_SPLIT_BLE
|
|
|
|
|
|
|
|
config BT_MAX_CONN
|
|
|
|
default 5
|
|
|
|
|
|
|
|
config BT_MAX_PAIRED
|
|
|
|
default 5
|
|
|
|
|
|
|
|
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
|
|
|
|
|
|
|
|
menu "ZMK Lighting"
|
|
|
|
|
|
|
|
menuconfig ZMK_RGB_UNDERGLOW
|
|
|
|
bool "RGB Adressable LED Underglow"
|
|
|
|
select LED_STRIP
|
|
|
|
|
|
|
|
if ZMK_RGB_UNDERGLOW
|
|
|
|
|
|
|
|
config ZMK_RGB_UNDERGLOW_HUE_STEP
|
|
|
|
int "RGB underglow hue step in degrees of 360"
|
|
|
|
default 10
|
|
|
|
|
|
|
|
config ZMK_RGB_UNDERGLOW_SAT_STEP
|
|
|
|
int "RGB underglow sturation step in percent"
|
|
|
|
default 10
|
|
|
|
|
|
|
|
config ZMK_RGB_UNDERGLOW_BRT_STEP
|
|
|
|
int "RGB underglow brightness step in percent"
|
|
|
|
default 10
|
|
|
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
endmenu
|
|
|
|
|
|
|
|
config HEAP_MEM_POOL_SIZE
|
|
|
|
default 8192
|
|
|
|
|
|
|
|
config KERNEL_BIN_NAME
|
|
|
|
default "zmk"
|
|
|
|
|
|
|
|
config REBOOT
|
|
|
|
default y
|
|
|
|
|
|
|
|
module = ZMK
|
|
|
|
module-str = zmk
|
|
|
|
source "subsys/logging/Kconfig.template.log_config"
|
|
|
|
|
|
|
|
rsource "boards/Kconfig"
|
|
|
|
rsource "boards/shields/*/Kconfig.defconfig"
|
|
|
|
rsource "boards/shields/*/Kconfig.shield"
|
|
|
|
|
|
|
|
osource "$(ZMK_CONFIG)/boards/shields/*/Kconfig.defconfig"
|
|
|
|
osource "$(ZMK_CONFIG)/boards/shields/*/Kconfig.shield"
|
|
|
|
|
|
|
|
source "Kconfig.zephyr"
|
|
|
|
|