forked from kofal.net/zmk
merge upstream
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
module.exports = {
|
||||
endOfLine: "auto",
|
||||
trailingComma: "es5",
|
||||
};
|
||||
|
||||
@@ -2,47 +2,55 @@ cmake_minimum_required(VERSION 3.13.1)
|
||||
|
||||
set(CONFIG_APPLICATION_DEFINED_SYSCALL true)
|
||||
|
||||
# Add our custom Zephyr module for drivers w/ syscalls, etc.
|
||||
list(APPEND DTS_ROOT ${CMAKE_SOURCE_DIR}/drivers/zephyr)
|
||||
|
||||
set(ZephyrBuildConfiguration_ROOT ${CMAKE_SOURCE_DIR}/cmake)
|
||||
|
||||
list(APPEND ZEPHYR_EXTRA_MODULES
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/module
|
||||
)
|
||||
set(ZEPHYR_BOARD_ALIASES "boards/aliases.cmake")
|
||||
set(ZEPHYR_EXTRA_MODULES "${ZMK_EXTRA_MODULES};${CMAKE_CURRENT_SOURCE_DIR}/module;${CMAKE_CURRENT_SOURCE_DIR}/keymap-module")
|
||||
|
||||
# Find Zephyr. This also loads Zephyr's build system.
|
||||
find_package(Zephyr REQUIRED HINTS ../zephyr)
|
||||
project(zmk)
|
||||
|
||||
zephyr_linker_sources(SECTIONS include/linker/zmk-behaviors.ld)
|
||||
zephyr_linker_sources(RODATA include/linker/zmk-events.ld)
|
||||
|
||||
if(CONFIG_ZMK_BEHAVIOR_LOCAL_IDS)
|
||||
zephyr_linker_sources(DATA_SECTIONS include/linker/zmk-behavior-local-id-map.ld)
|
||||
endif()
|
||||
|
||||
zephyr_syscall_header(${APPLICATION_SOURCE_DIR}/include/drivers/behavior.h)
|
||||
zephyr_syscall_header(${APPLICATION_SOURCE_DIR}/include/drivers/input_processor.h)
|
||||
zephyr_syscall_header(${APPLICATION_SOURCE_DIR}/include/drivers/ext_power.h)
|
||||
|
||||
# Add your source file to the "app" target. This must come after
|
||||
# find_package(Zephyr) which defines the target.
|
||||
target_include_directories(app PRIVATE include)
|
||||
add_subdirectory(src/boot)
|
||||
target_sources(app PRIVATE src/stdlib.c)
|
||||
target_sources(app PRIVATE src/activity.c)
|
||||
target_sources(app PRIVATE src/kscan.c)
|
||||
target_sources(app PRIVATE src/behavior.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_KSCAN_SIDEBAND_BEHAVIORS app PRIVATE src/kscan_sideband_behaviors.c)
|
||||
target_sources(app PRIVATE src/matrix_transform.c)
|
||||
target_sources(app PRIVATE src/physical_layouts.c)
|
||||
target_sources(app PRIVATE src/sensors.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_WPM app PRIVATE src/wpm.c)
|
||||
target_sources(app PRIVATE src/event_manager.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_PM app PRIVATE src/pm.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_EXT_POWER app PRIVATE src/ext_power_generic.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_GPIO_KEY_WAKEUP_TRIGGER app PRIVATE src/gpio_key_wakeup_trigger.c)
|
||||
target_sources(app PRIVATE src/events/activity_state_changed.c)
|
||||
target_sources(app PRIVATE src/events/position_state_changed.c)
|
||||
target_sources(app PRIVATE src/events/sensor_event.c)
|
||||
target_sources(app PRIVATE src/events/mouse_button_state_changed.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_WPM app PRIVATE src/events/wpm_state_changed.c)
|
||||
target_sources_ifdef(CONFIG_USB_DEVICE_STACK app PRIVATE src/events/usb_conn_state_changed.c)
|
||||
target_sources(app PRIVATE src/behaviors/behavior_reset.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_EXT_POWER app PRIVATE src/behaviors/behavior_ext_power.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_SOFT_OFF app PRIVATE src/behaviors/behavior_soft_off.c)
|
||||
add_subdirectory_ifdef(CONFIG_ZMK_POINTING src/pointing/)
|
||||
if ((NOT CONFIG_ZMK_SPLIT) OR CONFIG_ZMK_SPLIT_ROLE_CENTRAL)
|
||||
target_sources(app PRIVATE src/hid.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_MOUSE app PRIVATE src/mouse.c)
|
||||
target_sources(app PRIVATE src/behaviors/behavior_key_press.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_KEY_TOGGLE app PRIVATE src/behaviors/behavior_key_toggle.c)
|
||||
target_sources(app PRIVATE src/behaviors/behavior_hold_tap.c)
|
||||
target_sources(app PRIVATE src/behaviors/behavior_sticky_key.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_HOLD_TAP app PRIVATE src/behaviors/behavior_hold_tap.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_STICKY_KEY app PRIVATE src/behaviors/behavior_sticky_key.c)
|
||||
target_sources(app PRIVATE src/behaviors/behavior_caps_word.c)
|
||||
target_sources(app PRIVATE src/behaviors/behavior_key_repeat.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_MACRO app PRIVATE src/behaviors/behavior_macro.c)
|
||||
@@ -57,8 +65,10 @@ if ((NOT CONFIG_ZMK_SPLIT) OR CONFIG_ZMK_SPLIT_ROLE_CENTRAL)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_SENSOR_ROTATE_VAR app PRIVATE src/behaviors/behavior_sensor_rotate_var.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_SENSOR_ROTATE_COMMON app PRIVATE src/behaviors/behavior_sensor_rotate_common.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_MOUSE_KEY_PRESS app PRIVATE src/behaviors/behavior_mouse_key_press.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_STUDIO_UNLOCK app PRIVATE src/behaviors/behavior_studio_unlock.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_INPUT_TWO_AXIS app PRIVATE src/behaviors/behavior_input_two_axis.c)
|
||||
target_sources(app PRIVATE src/combo.c)
|
||||
target_sources(app PRIVATE src/behaviors/behavior_tap_dance.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BEHAVIOR_TAP_DANCE app PRIVATE src/behaviors/behavior_tap_dance.c)
|
||||
target_sources(app PRIVATE src/behavior_queue.c)
|
||||
target_sources(app PRIVATE src/conditional_layer.c)
|
||||
target_sources(app PRIVATE src/endpoints.c)
|
||||
@@ -68,6 +78,7 @@ if ((NOT CONFIG_ZMK_SPLIT) OR CONFIG_ZMK_SPLIT_ROLE_CENTRAL)
|
||||
target_sources(app PRIVATE src/events/layer_state_changed.c)
|
||||
target_sources(app PRIVATE src/events/modifiers_state_changed.c)
|
||||
target_sources(app PRIVATE src/events/keycode_state_changed.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_HID_INDICATORS app PRIVATE src/hid_indicators.c)
|
||||
|
||||
if (CONFIG_ZMK_BLE)
|
||||
target_sources(app PRIVATE src/events/ble_active_profile_changed.c)
|
||||
@@ -83,16 +94,43 @@ target_sources_ifdef(CONFIG_ZMK_BACKLIGHT app PRIVATE src/behaviors/behavior_bac
|
||||
target_sources_ifdef(CONFIG_ZMK_BATTERY_REPORTING app PRIVATE src/events/battery_state_changed.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BATTERY_REPORTING app PRIVATE src/battery.c)
|
||||
|
||||
target_sources_ifdef(CONFIG_ZMK_HID_INDICATORS app PRIVATE src/events/hid_indicators_changed.c)
|
||||
add_subdirectory_ifdef(CONFIG_ZMK_HID_INDICATORS src/indicators)
|
||||
|
||||
target_sources_ifdef(CONFIG_ZMK_SPLIT app PRIVATE src/events/split_peripheral_status_changed.c)
|
||||
add_subdirectory(src/split)
|
||||
add_subdirectory_ifdef(CONFIG_ZMK_SPLIT src/split)
|
||||
|
||||
target_sources_ifdef(CONFIG_USB_DEVICE_STACK app PRIVATE src/usb.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_USB app PRIVATE src/usb_hid.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_RGB_UNDERGLOW app PRIVATE src/rgb_underglow.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_BACKLIGHT app PRIVATE src/backlight.c)
|
||||
target_sources(app PRIVATE src/workqueue.c)
|
||||
target_sources_ifdef(CONFIG_ZMK_LOW_PRIORITY_WORK_QUEUE app PRIVATE src/workqueue.c)
|
||||
target_sources(app PRIVATE src/main.c)
|
||||
|
||||
add_subdirectory(src/display/)
|
||||
add_subdirectory_ifdef(CONFIG_SETTINGS src/settings/)
|
||||
|
||||
if (CONFIG_ZMK_STUDIO_RPC)
|
||||
# For some reason this is failing if run from a different sub-file.
|
||||
list(APPEND CMAKE_MODULE_PATH ${ZEPHYR_BASE}/modules/nanopb)
|
||||
|
||||
include(nanopb)
|
||||
|
||||
# Turn off the default nanopb behavior
|
||||
set(NANOPB_GENERATE_CPP_STANDALONE OFF)
|
||||
|
||||
nanopb_generate_cpp(proto_srcs proto_hdrs RELPATH ${ZEPHYR_ZMK_STUDIO_MESSAGES_MODULE_DIR}
|
||||
${ZEPHYR_ZMK_STUDIO_MESSAGES_MODULE_DIR}/proto/zmk/studio.proto
|
||||
${ZEPHYR_ZMK_STUDIO_MESSAGES_MODULE_DIR}/proto/zmk/meta.proto
|
||||
${ZEPHYR_ZMK_STUDIO_MESSAGES_MODULE_DIR}/proto/zmk/core.proto
|
||||
${ZEPHYR_ZMK_STUDIO_MESSAGES_MODULE_DIR}/proto/zmk/behaviors.proto
|
||||
${ZEPHYR_ZMK_STUDIO_MESSAGES_MODULE_DIR}/proto/zmk/keymap.proto
|
||||
)
|
||||
|
||||
target_include_directories(app PUBLIC ${CMAKE_CURRENT_BINARY_DIR})
|
||||
target_sources(app PRIVATE ${proto_srcs} ${proto_hdrs})
|
||||
|
||||
add_subdirectory(src/studio)
|
||||
endif()
|
||||
|
||||
zephyr_cc_option(-Wfatal-errors)
|
||||
|
||||
358
app/Kconfig
358
app/Kconfig
@@ -5,6 +5,17 @@ mainmenu "ZMK Firmware"
|
||||
|
||||
menu "ZMK"
|
||||
|
||||
config ZMK_BOARD_COMPAT
|
||||
bool
|
||||
help
|
||||
Hidden symbol used to hint that a board has been specifically
|
||||
set up with various ZMK requirements in mind, e.g. settings
|
||||
storage, bootloader integration, etc.
|
||||
|
||||
Failure to set this will warn users they may want to verify they
|
||||
used a ZMK variant of an upstream board, or are using a board
|
||||
properly migrated to a newer ZMK version.
|
||||
|
||||
menu "Basic Keyboard Setup"
|
||||
|
||||
config ZMK_KEYBOARD_NAME
|
||||
@@ -31,12 +42,23 @@ config BT_DIS_PNP_VID
|
||||
config BT_DIS_PNP_PID
|
||||
default 0x615E
|
||||
|
||||
config BT_DIS_MODEL
|
||||
config BT_DIS_MODEL_NUMBER_STR
|
||||
default ZMK_KEYBOARD_NAME
|
||||
|
||||
config BT_DIS_MANUF
|
||||
config BT_DIS_MANUF_NAME_STR
|
||||
default "ZMK Project"
|
||||
|
||||
# Hardware specific overrides
|
||||
|
||||
if SOC_SERIES_NRF52X
|
||||
|
||||
# Default on for our usage until boards implement retained bootmode.
|
||||
config NRF_STORE_REBOOT_TYPE_GPREGRET
|
||||
bool
|
||||
default y
|
||||
|
||||
endif # SOC_SERIES_NRF52X
|
||||
|
||||
menu "HID"
|
||||
|
||||
choice ZMK_HID_REPORT_TYPE
|
||||
@@ -53,22 +75,28 @@ config ZMK_HID_REPORT_TYPE_NKRO
|
||||
help
|
||||
Enable full N-Key Roll Over for HID output. This selection will prevent the keyboard
|
||||
from working with some BIOS/UEFI versions that only support "boot keyboard" support.
|
||||
This option also prevents using some infrequently used higher range HID usages.
|
||||
This option also prevents using some infrequently used higher range HID usages (notably F13-F24 and INTL1-9)
|
||||
These usages can be re enabled with ZMK_HID_KEYBOARD_NKRO_EXTENDED_REPORT.
|
||||
|
||||
endchoice
|
||||
|
||||
config ZMK_HID_KEYBOARD_NKRO_EXTENDED_REPORT
|
||||
bool "Enable extended NKRO reporting"
|
||||
depends on ZMK_HID_REPORT_TYPE_NKRO
|
||||
help
|
||||
Enables higher usage range for NKRO (F13-F24 and INTL1-9).
|
||||
Please note this is not compatible with Android currently and you will get no input
|
||||
|
||||
|
||||
if ZMK_HID_REPORT_TYPE_HKRO
|
||||
|
||||
config ZMK_HID_KEYBOARD_REPORT_SIZE
|
||||
int "# Keyboard Keys Reportable"
|
||||
default 6
|
||||
|
||||
endif
|
||||
endif # ZMK_HID_REPORT_TYPE_HKRO
|
||||
|
||||
config ZMK_HID_CONSUMER_REPORT_SIZE
|
||||
int "# Consumer Keys Reportable"
|
||||
default 6
|
||||
|
||||
|
||||
choice ZMK_HID_CONSUMER_REPORT_USAGES
|
||||
prompt "HID Report Type"
|
||||
@@ -87,6 +115,20 @@ config ZMK_HID_CONSUMER_REPORT_USAGES_BASIC
|
||||
|
||||
endchoice
|
||||
|
||||
config ZMK_HID_INDICATORS
|
||||
bool "HID Indicators"
|
||||
help
|
||||
Enable HID indicators, used for detecting state of Caps/Scroll/Num Lock,
|
||||
Kata, and Compose.
|
||||
|
||||
rsource "src/indicators/Kconfig"
|
||||
|
||||
config ZMK_HID_SEPARATE_MOD_RELEASE_REPORT
|
||||
bool "Release Modifiers Separately"
|
||||
help
|
||||
Send a separate release event for the modifiers, to make sure the release
|
||||
of the modifier doesn't get recognized before the actual key's release event.
|
||||
|
||||
menu "Output Types"
|
||||
|
||||
config ZMK_USB
|
||||
@@ -100,7 +142,9 @@ config ZMK_USB_BOOT
|
||||
bool "USB Boot Protocol Support"
|
||||
depends on ZMK_USB
|
||||
select USB_HID_BOOT_PROTOCOL
|
||||
select USB_DEVICE_SOF
|
||||
|
||||
config USB_DEVICE_INITIALIZE_AT_BOOT
|
||||
default n
|
||||
|
||||
if ZMK_USB
|
||||
|
||||
@@ -110,8 +154,7 @@ config USB_NUMOF_EP_WRITE_RETRIES
|
||||
config USB_HID_POLL_INTERVAL_MS
|
||||
default 1
|
||||
|
||||
#ZMK_USB
|
||||
endif
|
||||
endif # ZMK_USB
|
||||
|
||||
menuconfig ZMK_BLE
|
||||
bool "BLE (HID over GATT)"
|
||||
@@ -121,24 +164,41 @@ menuconfig ZMK_BLE
|
||||
select BT_SMP_APP_PAIRING_ACCEPT
|
||||
select BT_PERIPHERAL
|
||||
select BT_DIS
|
||||
select BT_SETTINGS
|
||||
select SETTINGS
|
||||
imply ZMK_BATTERY_REPORTING
|
||||
imply BT_DEVICE_NAME_DYNAMIC
|
||||
imply BT_SETTINGS if !ARCH_POSIX
|
||||
imply SETTINGS if !ARCH_POSIX
|
||||
imply ZMK_BATTERY_REPORTING if !ARCH_POSIX
|
||||
|
||||
if ZMK_BLE
|
||||
|
||||
# BT_TINYCRYPT_ECC is required for BT_SMP_SC_PAIR_ONLY when using HCI
|
||||
config BT_TINYCRYPT_ECC
|
||||
default y if BT_HCI && !BT_CTLR
|
||||
config ZMK_BLE_EXPERIMENTAL_CONN
|
||||
bool "Experimental BLE connection changes"
|
||||
help
|
||||
Enables settings that are planned to be default in future versions of ZMK
|
||||
to improve connection stability.
|
||||
|
||||
choice BT_LL_SW_LLCP_IMPL
|
||||
default BT_LL_SW_LLCP_LEGACY
|
||||
config ZMK_BLE_EXPERIMENTAL_SEC
|
||||
bool "Experimental BLE security changes"
|
||||
imply BT_SMP_ALLOW_UNAUTH_OVERWRITE
|
||||
help
|
||||
Enables security settings that are planned to be officially supported in the future.
|
||||
|
||||
endchoice
|
||||
config ZMK_BLE_EXPERIMENTAL_FEATURES
|
||||
bool "Experimental BLE connection and security settings/features"
|
||||
select ZMK_BLE_EXPERIMENTAL_CONN
|
||||
select ZMK_BLE_EXPERIMENTAL_SEC
|
||||
help
|
||||
Enables experimental connection changes and security features.
|
||||
|
||||
config SYSTEM_WORKQUEUE_STACK_SIZE
|
||||
default 4096 if SOC_RP2040
|
||||
default 2048
|
||||
config ZMK_BLE_PASSKEY_ENTRY
|
||||
bool "Require passkey entry on the keyboard to complete pairing"
|
||||
select RING_BUFFER
|
||||
|
||||
config BT_SMP_ALLOW_UNAUTH_OVERWRITE
|
||||
imply ZMK_BLE_PASSKEY_ENTRY
|
||||
|
||||
config BT_CTLR_PHY_2M
|
||||
default n if ZMK_BLE_EXPERIMENTAL_CONN
|
||||
|
||||
config ZMK_BLE_THREAD_STACK_SIZE
|
||||
int "BLE notify thread stack size"
|
||||
@@ -162,22 +222,13 @@ config ZMK_BLE_MOUSE_REPORT_QUEUE_SIZE
|
||||
|
||||
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_GATT_AUTO_SEC_REQ
|
||||
default n
|
||||
|
||||
config BT_DEVICE_APPEARANCE
|
||||
default 961
|
||||
|
||||
config ZMK_BLE_PASSKEY_ENTRY
|
||||
bool "Require passkey entry on the keyboard to complete pairing"
|
||||
default n
|
||||
select RING_BUFFER
|
||||
default (ZMK_SPLIT_BLE && !ZMK_SPLIT_ROLE_CENTRAL)
|
||||
|
||||
config BT_PERIPHERAL_PREF_MIN_INT
|
||||
default 6
|
||||
@@ -191,91 +242,99 @@ config BT_PERIPHERAL_PREF_LATENCY
|
||||
config BT_PERIPHERAL_PREF_TIMEOUT
|
||||
default 400
|
||||
|
||||
#ZMK_BLE
|
||||
endif
|
||||
# The device name should be 16 characters or less so it fits within the
|
||||
# advertising data.
|
||||
config BT_DEVICE_NAME_MAX
|
||||
default 16
|
||||
|
||||
#Output Types
|
||||
endmenu
|
||||
endif # ZMK_BLE
|
||||
|
||||
# HID
|
||||
endmenu
|
||||
endmenu # Output Types
|
||||
|
||||
endmenu # HID
|
||||
|
||||
rsource "src/split/Kconfig"
|
||||
|
||||
#Basic Keyboard Setup
|
||||
endmenu
|
||||
endmenu # Basic Keyboard Setup
|
||||
|
||||
menu "Keymaps"
|
||||
|
||||
config ZMK_KEYMAP_LAYER_REORDERING
|
||||
bool "Layer Reordering Support"
|
||||
|
||||
config ZMK_KEYMAP_SETTINGS_STORAGE
|
||||
bool "Settings Save/Load"
|
||||
depends on SETTINGS
|
||||
depends on ZMK_BEHAVIOR_LOCAL_IDS
|
||||
|
||||
if ZMK_KEYMAP_SETTINGS_STORAGE
|
||||
|
||||
config ZMK_KEYMAP_LAYER_NAME_MAX_LEN
|
||||
int "Max Layer Name Length"
|
||||
default 20
|
||||
|
||||
endif # ZMK_KEYMAP_SETTINGS_STORAGE
|
||||
|
||||
endmenu # Keymaps
|
||||
|
||||
rsource "src/studio/Kconfig"
|
||||
|
||||
menu "Display/LED Options"
|
||||
|
||||
rsource "src/display/Kconfig"
|
||||
|
||||
menuconfig ZMK_RGB_UNDERGLOW
|
||||
bool "RGB Adressable LED Underglow"
|
||||
bool "RGB Addressable LED Underglow"
|
||||
select LED_STRIP
|
||||
select ZMK_LOW_PRIORITY_WORK_QUEUE
|
||||
|
||||
if ZMK_RGB_UNDERGLOW
|
||||
|
||||
# This default value cuts down on tons of excess .conf files, if you're using GPIO, manually disable this
|
||||
config SPI
|
||||
default y
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_EXT_POWER
|
||||
bool "RGB underglow toggling also controls external power"
|
||||
default y
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_MIN
|
||||
int "RGB underglow minimum brightness in percent"
|
||||
range 0 100
|
||||
default 0
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_MAX
|
||||
int "RGB underglow maximum brightness in percent"
|
||||
range ZMK_RGB_UNDERGLOW_BRT_MIN 100
|
||||
default 100
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_HUE_STEP
|
||||
int "RGB underglow hue step in degrees"
|
||||
range 0 359
|
||||
default 10
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_SAT_STEP
|
||||
int "RGB underglow saturation step in percent"
|
||||
range 0 100
|
||||
default 10
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_STEP
|
||||
int "RGB underglow brightness step in percent"
|
||||
range 0 100
|
||||
default 10
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_HUE_START
|
||||
int "RGB underglow start hue value in degrees"
|
||||
range 0 359
|
||||
default 0
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_SAT_START
|
||||
int "RGB underglow start saturations value in percent"
|
||||
range 0 100
|
||||
default 100
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_START
|
||||
int "RGB underglow start brightness value in percent"
|
||||
range ZMK_RGB_UNDERGLOW_BRT_MIN ZMK_RGB_UNDERGLOW_BRT_MAX
|
||||
default ZMK_RGB_UNDERGLOW_BRT_MAX
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_SPD_START
|
||||
int "RGB underglow start animation speed value"
|
||||
range 1 5
|
||||
default 3
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_EFF_START
|
||||
int "RGB underglow start effect int value related to the effect enum list"
|
||||
range 0 3
|
||||
default 0
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_ON_START
|
||||
bool "RGB underglow starts on by default"
|
||||
default y
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_AUTO_OFF_IDLE
|
||||
bool "Turn off RGB underglow when keyboard goes into idle state"
|
||||
@@ -284,8 +343,7 @@ config ZMK_RGB_UNDERGLOW_AUTO_OFF_USB
|
||||
bool "Turn off RGB underglow when USB is disconnected"
|
||||
depends on USB_DEVICE_STACK
|
||||
|
||||
#ZMK_RGB_UNDERGLOW
|
||||
endif
|
||||
endif # ZMK_RGB_UNDERGLOW
|
||||
|
||||
menuconfig ZMK_BACKLIGHT
|
||||
bool "LED backlight"
|
||||
@@ -296,16 +354,13 @@ if ZMK_BACKLIGHT
|
||||
config ZMK_BACKLIGHT_BRT_STEP
|
||||
int "Brightness step in percent"
|
||||
range 1 100
|
||||
default 20
|
||||
|
||||
config ZMK_BACKLIGHT_BRT_START
|
||||
int "Default brightness in percent"
|
||||
range 1 100
|
||||
default 40
|
||||
|
||||
config ZMK_BACKLIGHT_ON_START
|
||||
bool "Default backlight state"
|
||||
default y
|
||||
|
||||
config ZMK_BACKLIGHT_AUTO_OFF_IDLE
|
||||
bool "Turn off backlight when keyboard goes into idle state"
|
||||
@@ -313,35 +368,44 @@ config ZMK_BACKLIGHT_AUTO_OFF_IDLE
|
||||
config ZMK_BACKLIGHT_AUTO_OFF_USB
|
||||
bool "Turn off backlight when USB is disconnected"
|
||||
|
||||
#ZMK_BACKLIGHT
|
||||
endif
|
||||
endif # ZMK_BACKLIGHT
|
||||
|
||||
#Display/LED Options
|
||||
endmenu
|
||||
endmenu # Display/LED Options
|
||||
|
||||
menu "Mouse Options"
|
||||
|
||||
config ZMK_MOUSE
|
||||
bool "Enable ZMK mouse emulation"
|
||||
default n
|
||||
|
||||
#Mouse Options
|
||||
endmenu
|
||||
rsource "src/pointing/Kconfig"
|
||||
|
||||
menu "Power Management"
|
||||
|
||||
config ZMK_BATTERY_REPORTING
|
||||
bool "Battery level detection/reporting"
|
||||
default n
|
||||
select SENSOR
|
||||
select ZMK_LOW_PRIORITY_WORK_QUEUE
|
||||
imply BT_BAS if ZMK_BLE
|
||||
|
||||
if ZMK_BATTERY_REPORTING
|
||||
|
||||
choice ZMK_BATTERY_REPORTING_FETCH_MODE
|
||||
prompt "Battery Reporting Fetch Mode"
|
||||
|
||||
config ZMK_BATTERY_REPORTING_FETCH_MODE_STATE_OF_CHARGE
|
||||
bool "State of charge"
|
||||
|
||||
config ZMK_BATTERY_REPORTING_FETCH_MODE_LITHIUM_VOLTAGE
|
||||
bool "Lithium Voltage"
|
||||
|
||||
endchoice
|
||||
|
||||
endif # ZMK_BATTERY_REPORTING
|
||||
|
||||
config ZMK_IDLE_TIMEOUT
|
||||
int "Milliseconds of inactivity before entering idle state (OLED shutoff, etc)"
|
||||
default 30000
|
||||
|
||||
config ZMK_SLEEP
|
||||
bool "Enable deep sleep support"
|
||||
depends on HAS_POWEROFF
|
||||
select POWEROFF
|
||||
select ZMK_PM_DEVICE_SUSPEND_RESUME
|
||||
imply USB
|
||||
|
||||
if ZMK_SLEEP
|
||||
@@ -353,14 +417,32 @@ config ZMK_IDLE_SLEEP_TIMEOUT
|
||||
int "Milliseconds of inactivity before entering deep sleep"
|
||||
default 900000
|
||||
|
||||
#ZMK_SLEEP
|
||||
endif
|
||||
endif # ZMK_SLEEP
|
||||
|
||||
config ZMK_EXT_POWER
|
||||
bool "Enable support to control external power output"
|
||||
default y
|
||||
|
||||
#Power Management
|
||||
config ZMK_PM
|
||||
bool
|
||||
|
||||
config ZMK_PM_DEVICE_SUSPEND_RESUME
|
||||
bool
|
||||
select ZMK_PM
|
||||
|
||||
config ZMK_PM_SOFT_OFF
|
||||
bool "Soft-off support"
|
||||
depends on HAS_POWEROFF
|
||||
select ZMK_PM
|
||||
select PM_DEVICE
|
||||
select ZMK_PM_DEVICE_SUSPEND_RESUME
|
||||
select POWEROFF
|
||||
|
||||
config ZMK_GPIO_KEY_WAKEUP_TRIGGER
|
||||
bool "Hardware supported wakeup (GPIO)"
|
||||
default y
|
||||
depends on DT_HAS_ZMK_GPIO_KEY_WAKEUP_TRIGGER_ENABLED && ZMK_PM_SOFT_OFF
|
||||
|
||||
# Power Management
|
||||
endmenu
|
||||
|
||||
menu "Combo options"
|
||||
@@ -370,14 +452,18 @@ config ZMK_COMBO_MAX_PRESSED_COMBOS
|
||||
default 4
|
||||
|
||||
config ZMK_COMBO_MAX_COMBOS_PER_KEY
|
||||
int "Maximum number of combos per key"
|
||||
default 5
|
||||
int "Deprecated: Max combos per key"
|
||||
default 0
|
||||
help
|
||||
Deprecated: Storage for combos is now determined automatically
|
||||
|
||||
config ZMK_COMBO_MAX_KEYS_PER_COMBO
|
||||
int "Maximum number of keys per combo"
|
||||
default 4
|
||||
int "Deprecated: Max keys per combo"
|
||||
default 0
|
||||
help
|
||||
Deprecated: This is now auto-calculated based on `key-positions` in devicetree
|
||||
|
||||
#Combo options
|
||||
# Combo options
|
||||
endmenu
|
||||
|
||||
menu "Behavior Options"
|
||||
@@ -400,16 +486,21 @@ endmenu
|
||||
|
||||
menu "Advanced"
|
||||
|
||||
rsource "src/boot/Kconfig"
|
||||
|
||||
menu "Initialization Priorities"
|
||||
|
||||
if USB_DEVICE_STACK
|
||||
|
||||
config ZMK_USB_INIT_PRIORITY
|
||||
int "USB Init Priority"
|
||||
default 50
|
||||
default 96
|
||||
|
||||
#USB
|
||||
endif
|
||||
config ZMK_USB_HID_INIT_PRIORITY
|
||||
int "USB HID Init Priority"
|
||||
default 95
|
||||
|
||||
endif # USB
|
||||
|
||||
if ZMK_BLE || ZMK_SPLIT_BLE
|
||||
|
||||
@@ -417,11 +508,13 @@ config ZMK_BLE_INIT_PRIORITY
|
||||
int "BLE Init Priority"
|
||||
default 50
|
||||
|
||||
#ZMK_BLE || ZMK_SPLIT_BLE
|
||||
endif
|
||||
endif # ZMK_BLE || ZMK_SPLIT_BLE
|
||||
|
||||
#Initialization Priorities
|
||||
endmenu
|
||||
endmenu # Initialization Priorities
|
||||
|
||||
config ZMK_PHYSICAL_LAYOUT_KEY_ROTATION
|
||||
bool "Support rotation of keys in physical layouts"
|
||||
default y
|
||||
|
||||
menuconfig ZMK_KSCAN
|
||||
bool "ZMK KScan Integration"
|
||||
@@ -436,6 +529,21 @@ config ZMK_KSCAN_EVENT_QUEUE_SIZE
|
||||
|
||||
endif # ZMK_KSCAN
|
||||
|
||||
config ZMK_KSCAN_SIDEBAND_BEHAVIORS
|
||||
bool
|
||||
default y
|
||||
depends on DT_HAS_ZMK_KSCAN_SIDEBAND_BEHAVIORS_ENABLED
|
||||
select KSCAN
|
||||
|
||||
if ZMK_KSCAN_SIDEBAND_BEHAVIORS
|
||||
|
||||
config ZMK_KSCAN_SIDEBAND_BEHAVIORS_INIT_PRIORITY
|
||||
int "Keyboard scan sideband behaviors driver init priority"
|
||||
# The default kscan init priority is 90, so be sure we are initialized later.
|
||||
default 95
|
||||
|
||||
endif # ZMK_KSCAN_SIDEBAND_BEHAVIORS
|
||||
|
||||
menu "Logging"
|
||||
|
||||
config ZMK_LOGGING_MINIMAL
|
||||
@@ -480,8 +588,7 @@ config USB_CDC_ACM_RINGBUF_SIZE
|
||||
config LOG_PROCESS_THREAD_STARTUP_DELAY_MS
|
||||
default 1000
|
||||
|
||||
#ZMK_USB_LOGGING
|
||||
endif
|
||||
endif # ZMK_USB_LOGGING
|
||||
|
||||
config ZMK_RTT_LOGGING
|
||||
bool "Enable RTT logging to help debug"
|
||||
@@ -497,8 +604,7 @@ if ZMK_RTT_LOGGING
|
||||
config SEGGER_RTT_BUFFER_SIZE_UP
|
||||
default 8192
|
||||
|
||||
#ZMK_RTT_LOGGING
|
||||
endif
|
||||
endif # ZMK_RTT_LOGGING
|
||||
|
||||
if ZMK_USB_LOGGING || ZMK_RTT_LOGGING
|
||||
|
||||
@@ -508,25 +614,40 @@ config LOG_BUFFER_SIZE
|
||||
config LOG_PROCESS_THREAD_SLEEP_MS
|
||||
default 100
|
||||
|
||||
#ZMK_USB_LOGGING || ZMK_RTT_LOGGING
|
||||
endif
|
||||
endif # ZMK_USB_LOGGING || ZMK_RTT_LOGGING
|
||||
|
||||
#Logging
|
||||
endmenu
|
||||
endmenu # Logging
|
||||
|
||||
if SETTINGS
|
||||
|
||||
config ZMK_SETTINGS_RESET_ON_START
|
||||
bool "Delete all persistent settings when the keyboard boots"
|
||||
|
||||
if ZMK_SETTINGS_RESET_ON_START
|
||||
|
||||
config ZMK_SETTINGS_RESET_ON_START_INIT_PRIORITY
|
||||
int "Settings Reset ON Start Initialization Priority"
|
||||
default 60
|
||||
help
|
||||
Initialization priority for the settings reset on start. Must be lower priority/
|
||||
higher value than FLASH_INIT_PRIORITY if using the NVS/Flash settings backend.
|
||||
|
||||
endif # ZMK_SETTINGS_RESET_ON_START
|
||||
|
||||
config ZMK_SETTINGS_SAVE_DEBOUNCE
|
||||
int "Milliseconds to debounce settings saves"
|
||||
default 60000
|
||||
|
||||
#SETTINGS
|
||||
endif
|
||||
endif # SETTINGS
|
||||
|
||||
config ZMK_BATTERY_REPORT_INTERVAL
|
||||
depends on ZMK_BATTERY_REPORTING
|
||||
int "Battery level report interval in seconds"
|
||||
default 60
|
||||
|
||||
config ZMK_LOW_PRIORITY_WORK_QUEUE
|
||||
bool "Work queue for low priority items"
|
||||
|
||||
if ZMK_LOW_PRIORITY_WORK_QUEUE
|
||||
|
||||
config ZMK_LOW_PRIORITY_THREAD_STACK_SIZE
|
||||
int "Low priority thread stack size"
|
||||
@@ -536,14 +657,18 @@ config ZMK_LOW_PRIORITY_THREAD_PRIORITY
|
||||
int "Low priority thread priority"
|
||||
default 10
|
||||
|
||||
#Advanced
|
||||
endmenu
|
||||
endif # ZMK_LOW_PRIORITY_WORK_QUEUE
|
||||
|
||||
#ZMK
|
||||
endmenu
|
||||
endmenu # Advanced
|
||||
|
||||
config HEAP_MEM_POOL_SIZE
|
||||
default 8192
|
||||
endmenu # ZMK
|
||||
|
||||
if SOC_FAMILY_NORDIC_NRF
|
||||
|
||||
config NRF_SOC_VALIDATE_HEADERS_DISABLED
|
||||
default y
|
||||
|
||||
endif
|
||||
|
||||
config KERNEL_BIN_NAME
|
||||
default "zmk"
|
||||
@@ -554,9 +679,11 @@ config REBOOT
|
||||
config USB_DEVICE_STACK
|
||||
default y if HAS_HW_NRF_USBD
|
||||
|
||||
config FPU
|
||||
default CPU_HAS_FPU
|
||||
|
||||
config ZMK_WPM
|
||||
bool "Calculate WPM"
|
||||
default n
|
||||
|
||||
config ZMK_KEYMAP_SENSORS
|
||||
bool "Enable Keymap Sensors support"
|
||||
@@ -577,21 +704,24 @@ config ZMK_KEYMAP_SENSORS_DEFAULT_TRIGGERS_PER_ROTATION
|
||||
|
||||
endif # ZMK_KEYMAP_SENSORS
|
||||
|
||||
choice CBPRINTF_IMPLEMENTATION
|
||||
default CBPRINTF_NANO
|
||||
|
||||
endchoice
|
||||
|
||||
module = ZMK
|
||||
module-str = zmk
|
||||
source "subsys/logging/Kconfig.template.log_config"
|
||||
|
||||
# This loads ZMK's internal board and shield Kconfigs
|
||||
rsource "boards/Kconfig"
|
||||
rsource "boards/shields/*/Kconfig.defconfig"
|
||||
rsource "boards/shields/*/Kconfig.shield"
|
||||
|
||||
# This loads custom shields defconfigs (from BOARD_ROOT)
|
||||
# Duplicated from Kconfig.zephyr
|
||||
osource "$(KCONFIG_BINARY_DIR)/Kconfig.shield.defconfig"
|
||||
|
||||
# This loads board and shield Kconfigs found under zmk-config/config/
|
||||
osource "$(ZMK_CONFIG)/boards/shields/*/Kconfig.defconfig"
|
||||
osource "$(ZMK_CONFIG)/boards/shields/*/Kconfig.shield"
|
||||
|
||||
# This loads ZMK's sensible defaults
|
||||
rsource "Kconfig.defaults"
|
||||
|
||||
source "Kconfig.zephyr"
|
||||
|
||||
@@ -1,6 +1,66 @@
|
||||
# Copyright (c) 2023 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config ZMK_BEHAVIOR_METADATA
|
||||
bool "Metadata"
|
||||
help
|
||||
Enabling this option adds APIs for documenting and fetching
|
||||
metadata describing a behaviors name, and supported parameters.
|
||||
|
||||
config ZMK_BEHAVIOR_LOCAL_IDS
|
||||
bool "Local IDs"
|
||||
|
||||
if ZMK_BEHAVIOR_LOCAL_IDS
|
||||
|
||||
config ZMK_BEHAVIOR_LOCAL_IDS_IN_BINDINGS
|
||||
bool "Track in behavior bindings"
|
||||
|
||||
choice ZMK_BEHAVIOR_LOCAL_ID_TYPE
|
||||
prompt "Local ID Type"
|
||||
|
||||
config ZMK_BEHAVIOR_LOCAL_ID_TYPE_SETTINGS_TABLE
|
||||
bool "Settings Table"
|
||||
depends on SETTINGS
|
||||
select ZMK_BEHAVIOR_LOCAL_IDS_IN_BINDINGS
|
||||
help
|
||||
Use persistent entries in the settings subsystem to identify
|
||||
behaviors by local ID, which uses the device name to generate
|
||||
a new settings entry tying a presistant local ID to that name.
|
||||
This guarantees stable, colllision-free local IDs at the expense
|
||||
of settings storage used.
|
||||
|
||||
config ZMK_BEHAVIOR_LOCAL_ID_TYPE_CRC16
|
||||
bool "CRC16 Hash"
|
||||
select CRC
|
||||
help
|
||||
Use the CRC16-ANSI hash of behavior device names to generate
|
||||
stable behavior local IDs. This saves on settings storage at
|
||||
the expense of (highly unlikely) risk of collisions.
|
||||
|
||||
endchoice
|
||||
|
||||
endif
|
||||
|
||||
|
||||
config ZMK_BEHAVIOR_HOLD_TAP
|
||||
bool
|
||||
default y
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_HOLD_TAP_ENABLED
|
||||
|
||||
if ZMK_BEHAVIOR_HOLD_TAP
|
||||
|
||||
config ZMK_BEHAVIOR_HOLD_TAP_MAX_HELD
|
||||
int "Hold Tap Max Held"
|
||||
help
|
||||
Max number of simultaneously held hold-taps
|
||||
|
||||
config ZMK_BEHAVIOR_HOLD_TAP_MAX_CAPTURED_EVENTS
|
||||
int "Hold Tap Max Captured Events"
|
||||
help
|
||||
Max number of captured system events while waiting to resolve hold taps
|
||||
|
||||
endif
|
||||
|
||||
config ZMK_BEHAVIOR_KEY_TOGGLE
|
||||
bool
|
||||
default y
|
||||
@@ -9,12 +69,49 @@ config ZMK_BEHAVIOR_KEY_TOGGLE
|
||||
config ZMK_BEHAVIOR_MOUSE_KEY_PRESS
|
||||
bool
|
||||
default y
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_MOUSE_KEY_PRESS_ENABLED
|
||||
imply ZMK_MOUSE
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_MOUSE_KEY_PRESS_ENABLED && ZMK_POINTING
|
||||
|
||||
config ZMK_BEHAVIOR_STICKY_KEY
|
||||
bool
|
||||
default y
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_STICKY_KEY_ENABLED
|
||||
|
||||
if ZMK_BEHAVIOR_STICKY_KEY
|
||||
|
||||
config ZMK_BEHAVIOR_STICKY_KEY_MAX_HELD
|
||||
int "Sticky Key Max Held"
|
||||
help
|
||||
Max number of simultaneously held sticky keys
|
||||
|
||||
endif
|
||||
|
||||
config ZMK_BEHAVIOR_SOFT_OFF
|
||||
bool
|
||||
default y
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_SOFT_OFF_ENABLED && ZMK_PM_SOFT_OFF
|
||||
|
||||
|
||||
config ZMK_BEHAVIOR_TAP_DANCE
|
||||
bool
|
||||
default y
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_TAP_DANCE_ENABLED
|
||||
|
||||
if ZMK_BEHAVIOR_TAP_DANCE
|
||||
|
||||
config ZMK_BEHAVIOR_TAP_DANCE_MAX_HELD
|
||||
int "Tap-Dance Max Held"
|
||||
help
|
||||
Max number of simultaneously held taps-dances
|
||||
|
||||
endif
|
||||
|
||||
config ZMK_BEHAVIOR_INPUT_TWO_AXIS
|
||||
bool
|
||||
default y
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_INPUT_TWO_AXIS_ENABLED && ZMK_POINTING
|
||||
|
||||
config ZMK_BEHAVIOR_SENSOR_ROTATE_COMMON
|
||||
bool
|
||||
default n
|
||||
|
||||
config ZMK_BEHAVIOR_SENSOR_ROTATE
|
||||
bool
|
||||
@@ -28,7 +125,12 @@ config ZMK_BEHAVIOR_SENSOR_ROTATE_VAR
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_SENSOR_ROTATE_VAR_ENABLED
|
||||
select ZMK_BEHAVIOR_SENSOR_ROTATE_COMMON
|
||||
|
||||
config ZMK_BEHAVIOR_STUDIO_UNLOCK
|
||||
bool
|
||||
default y
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_STUDIO_UNLOCK_ENABLED && ZMK_STUDIO
|
||||
|
||||
config ZMK_BEHAVIOR_MACRO
|
||||
bool
|
||||
default y
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_MACRO_ENABLED || DT_HAS_ZMK_BEHAVIOR_MACRO_ONE_PARAM_ENABLED || DT_HAS_ZMK_BEHAVIOR_MACRO_TWO_PARAM_ENABLED
|
||||
depends on DT_HAS_ZMK_BEHAVIOR_MACRO_ENABLED || DT_HAS_ZMK_BEHAVIOR_MACRO_ONE_PARAM_ENABLED || DT_HAS_ZMK_BEHAVIOR_MACRO_TWO_PARAM_ENABLED
|
||||
|
||||
118
app/Kconfig.defaults
Normal file
118
app/Kconfig.defaults
Normal file
@@ -0,0 +1,118 @@
|
||||
# Copyright (c) 2024 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config SYSTEM_WORKQUEUE_STACK_SIZE
|
||||
default 3072 if ZMK_DISPLAY
|
||||
default 2048
|
||||
|
||||
# Basic
|
||||
config BT_DEVICE_APPEARANCE
|
||||
default 961
|
||||
|
||||
# HID
|
||||
if ZMK_HID_REPORT_TYPE_HKRO
|
||||
|
||||
config ZMK_HID_KEYBOARD_REPORT_SIZE
|
||||
default 6
|
||||
|
||||
endif
|
||||
|
||||
config ZMK_HID_CONSUMER_REPORT_SIZE
|
||||
default 6
|
||||
|
||||
# Behaviors
|
||||
|
||||
if ZMK_BEHAVIOR_HOLD_TAP
|
||||
|
||||
config ZMK_BEHAVIOR_HOLD_TAP_MAX_HELD
|
||||
default 10
|
||||
|
||||
config ZMK_BEHAVIOR_HOLD_TAP_MAX_CAPTURED_EVENTS
|
||||
default 40
|
||||
|
||||
endif
|
||||
|
||||
if ZMK_BEHAVIOR_STICKY_KEY
|
||||
|
||||
config ZMK_BEHAVIOR_STICKY_KEY_MAX_HELD
|
||||
default 10
|
||||
|
||||
endif
|
||||
|
||||
if ZMK_BEHAVIOR_TAP_DANCE
|
||||
|
||||
config ZMK_BEHAVIOR_TAP_DANCE_MAX_HELD
|
||||
default 10
|
||||
|
||||
endif
|
||||
|
||||
# Underglow
|
||||
if ZMK_RGB_UNDERGLOW
|
||||
|
||||
# This default value cuts down on tons of excess .conf files, if you're using GPIO, manually disable this
|
||||
config SPI
|
||||
default y
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_EXT_POWER
|
||||
default y
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_MIN
|
||||
default 0
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_MAX
|
||||
default 100
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_HUE_STEP
|
||||
default 10
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_SAT_STEP
|
||||
default 10
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_STEP
|
||||
default 10
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_HUE_START
|
||||
default 0
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_SAT_START
|
||||
default 100
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_BRT_START
|
||||
default ZMK_RGB_UNDERGLOW_BRT_MAX
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_SPD_START
|
||||
default 3
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_EFF_START
|
||||
default 0
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_ON_START
|
||||
default y
|
||||
|
||||
endif # ZMK_RGB_UNDERGLOW
|
||||
|
||||
# Backlight
|
||||
if ZMK_BACKLIGHT
|
||||
|
||||
config ZMK_BACKLIGHT_BRT_STEP
|
||||
default 20
|
||||
|
||||
config ZMK_BACKLIGHT_BRT_START
|
||||
default 40
|
||||
|
||||
config ZMK_BACKLIGHT_ON_START
|
||||
default y
|
||||
|
||||
endif # ZMK_BACKLIGHT
|
||||
|
||||
# Ext_power
|
||||
config ZMK_EXT_POWER
|
||||
default y
|
||||
|
||||
# Battery
|
||||
config ZMK_BATTERY_REPORT_INTERVAL
|
||||
default 60
|
||||
|
||||
# Imports
|
||||
rsource "src/boot/Kconfig.defaults"
|
||||
rsource "src/split/Kconfig.defaults"
|
||||
13
app/VERSION
Normal file
13
app/VERSION
Normal file
@@ -0,0 +1,13 @@
|
||||
# x-release-please-start-major
|
||||
VERSION_MAJOR = 0
|
||||
# x-release-please-end
|
||||
|
||||
# x-release-please-start-minor
|
||||
VERSION_MINOR = 3
|
||||
# x-release-please-end
|
||||
|
||||
# x-release-please-start-patch
|
||||
PATCHLEVEL = 0
|
||||
# x-release-please-end
|
||||
|
||||
VERSION_TWEAK = 0
|
||||
@@ -1,6 +0,0 @@
|
||||
CONFIG_ZMK_DISPLAY=y
|
||||
CONFIG_LV_FONT_UNSCII_8=n
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_I2C=y
|
||||
CONFIG_I2C_DW=y
|
||||
CONFIG_LV_Z_VDB_SIZE=50
|
||||
9
app/boards/adafruit/kb2040/Kconfig.adafruit_kb2040
Normal file
9
app/boards/adafruit/kb2040/Kconfig.adafruit_kb2040
Normal file
@@ -0,0 +1,9 @@
|
||||
# Copyright (c) 2026 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_ADAFRUIT_KB2040
|
||||
select ZMK_BOARD_COMPAT if BOARD_ADAFRUIT_KB2040_RP2040_ZMK
|
||||
imply RETAINED_MEM if BOARD_ADAFRUIT_KB2040_RP2040_ZMK
|
||||
imply RETENTION if BOARD_ADAFRUIT_KB2040_RP2040_ZMK
|
||||
imply RETENTION_BOOT_MODE if BOARD_ADAFRUIT_KB2040_RP2040_ZMK
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
file_format: "1"
|
||||
id: adafruit_kb2040
|
||||
id: adafruit_kb2040//zmk
|
||||
name: Adafruit KB2040
|
||||
type: board
|
||||
arch: arm
|
||||
@@ -4,6 +4,7 @@
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "usb_console.dtsi"
|
||||
#include <../boards/adafruit/kb2040/adafruit_kb2040.dts>
|
||||
#include <arm/raspberrypi/rp2040-boot-mode-retention.dtsi>
|
||||
|
||||
&pro_micro_serial { status = "disabled"; };
|
||||
23
app/boards/adafruit/kb2040/adafruit_kb2040_zmk_defconfig
Normal file
23
app/boards/adafruit/kb2040/adafruit_kb2040_zmk_defconfig
Normal file
@@ -0,0 +1,23 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=125000000
|
||||
|
||||
# Enable reset by default
|
||||
CONFIG_RESET=y
|
||||
|
||||
# Enable clock control by default
|
||||
CONFIG_CLOCK_CONTROL=y
|
||||
|
||||
# Code partition needed to target the correct flash range
|
||||
CONFIG_USE_DT_CODE_PARTITION=y
|
||||
|
||||
# Output UF2 by default, native bootloader supports it.
|
||||
CONFIG_BUILD_OUTPUT_UF2=y
|
||||
|
||||
# USB HID
|
||||
CONFIG_ZMK_USB=y
|
||||
|
||||
# Bootloader Support
|
||||
CONFIG_RETAINED_MEM=y
|
||||
CONFIG_RETENTION=y
|
||||
CONFIG_RETENTION_BOOT_MODE=y
|
||||
5
app/boards/adafruit/kb2040/board.yml
Normal file
5
app/boards/adafruit/kb2040/board.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
board:
|
||||
extend: adafruit_kb2040
|
||||
variants:
|
||||
- name: zmk
|
||||
qualifier: rp2040
|
||||
@@ -0,0 +1,9 @@
|
||||
# Copyright (c) 2026 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_ADAFRUIT_QT_PY_RP2040
|
||||
select ZMK_BOARD_COMPAT if BOARD_ADAFRUIT_QT_PY_RP2040_RP2040_ZMK
|
||||
imply RETAINED_MEM if BOARD_ADAFRUIT_QT_PY_RP2040_RP2040_ZMK
|
||||
imply RETENTION if BOARD_ADAFRUIT_QT_PY_RP2040_RP2040_ZMK
|
||||
imply RETENTION_BOOT_MODE if BOARD_ADAFRUIT_QT_PY_RP2040_RP2040_ZMK
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
file_format: "1"
|
||||
id: adafruit_qt_py_rp2040
|
||||
id: adafruit_qt_py_rp2040//zmk
|
||||
name: Adafruit QT Py RP2040
|
||||
type: board
|
||||
arch: arm
|
||||
@@ -0,0 +1,10 @@
|
||||
/*
|
||||
* Copyright (c) 2023 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <../boards/adafruit/qt_py_rp2040/adafruit_qt_py_rp2040.dts>
|
||||
#include <arm/raspberrypi/rp2040-boot-mode-retention.dtsi>
|
||||
|
||||
&xiao_serial { status = "disabled"; };
|
||||
@@ -0,0 +1,23 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=125000000
|
||||
|
||||
# Enable reset by default
|
||||
CONFIG_RESET=y
|
||||
|
||||
# Enable clock control by default
|
||||
CONFIG_CLOCK_CONTROL=y
|
||||
|
||||
# Code partition needed to target the correct flash range
|
||||
CONFIG_USE_DT_CODE_PARTITION=y
|
||||
|
||||
# Output UF2 by default, native bootloader supports it.
|
||||
CONFIG_BUILD_OUTPUT_UF2=y
|
||||
|
||||
# USB HID
|
||||
CONFIG_ZMK_USB=y
|
||||
|
||||
# Bootloader Support
|
||||
CONFIG_RETAINED_MEM=y
|
||||
CONFIG_RETENTION=y
|
||||
CONFIG_RETENTION_BOOT_MODE=y
|
||||
5
app/boards/adafruit/qt_py_rp2040/board.yml
Normal file
5
app/boards/adafruit/qt_py_rp2040/board.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
board:
|
||||
extend: adafruit_qt_py_rp2040
|
||||
variants:
|
||||
- name: zmk
|
||||
qualifier: rp2040
|
||||
@@ -1,4 +0,0 @@
|
||||
CONFIG_CONSOLE=n
|
||||
CONFIG_SERIAL=n
|
||||
CONFIG_UART_CONSOLE=n
|
||||
CONFIG_ZMK_USB=y
|
||||
@@ -1,9 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2023 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "usb_console.dtsi"
|
||||
|
||||
&pro_micro_serial { status = "disabled"; };
|
||||
@@ -1,15 +1,11 @@
|
||||
|
||||
CONFIG_CONSOLE=n
|
||||
CONFIG_SERIAL=n
|
||||
CONFIG_UART_CONSOLE=n
|
||||
CONFIG_UART_INTERRUPT_DRIVEN=n
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
|
||||
|
||||
CONFIG_MPU_ALLOW_FLASH_WRITE=y
|
||||
CONFIG_NVS=y
|
||||
CONFIG_SETTINGS_NVS=y
|
||||
CONFIG_FLASH=y
|
||||
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||
CONFIG_FLASH_MAP=y
|
||||
CONFIG_FLASH_MAP=y
|
||||
@@ -1,4 +0,0 @@
|
||||
CONFIG_CONSOLE=n
|
||||
CONFIG_SERIAL=n
|
||||
CONFIG_UART_CONSOLE=n
|
||||
CONFIG_ZMK_USB=y
|
||||
2
app/boards/aliases.cmake
Normal file
2
app/boards/aliases.cmake
Normal file
@@ -0,0 +1,2 @@
|
||||
# defines board aliases for shorter names (or for renaming boards)
|
||||
set(mikoto_520_BOARD_ALIAS "mikoto")
|
||||
@@ -1,8 +0,0 @@
|
||||
# keeb.io BDN9 board configuration
|
||||
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_BDN9
|
||||
bool "BDN9 rev2"
|
||||
depends on SOC_STM32F072XB
|
||||
@@ -1,11 +0,0 @@
|
||||
file_format: "1"
|
||||
id: bdn9_rev2
|
||||
name: BDN9 Rev2
|
||||
type: board
|
||||
arch: arm
|
||||
features:
|
||||
- keys
|
||||
- encoder
|
||||
outputs:
|
||||
- usb
|
||||
url: https://keeb.io/products/bdn9-rev-2-3x3-9-key-macropad-rotary-encoder-and-rgb
|
||||
@@ -1,8 +0,0 @@
|
||||
# BlueMicro840 board configuration
|
||||
|
||||
# Copyright (c) 2020 Pete Johanson, Derek Schmell
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_BLUEMICRO840_V1
|
||||
bool "BlueMicro840_V1"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
@@ -1,9 +0,0 @@
|
||||
file_format: "1"
|
||||
id: boardsource_blok
|
||||
name: BoardSource blok
|
||||
type: board
|
||||
arch: arm
|
||||
outputs:
|
||||
- usb
|
||||
url: https://peg.software/docs/blok
|
||||
exposes: [pro_micro]
|
||||
@@ -1,7 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_ENABLE_DCDC
|
||||
bool "Enable DCDC mode"
|
||||
select SOC_DCDC_NRF52X
|
||||
default y
|
||||
depends on (BOARD_BT60_V1_HS || BOARD_BT60_V1)
|
||||
@@ -1,12 +0,0 @@
|
||||
# BT60 board configuration
|
||||
|
||||
# Copyright (c) 2021 Polarity Works
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_BT60_V1
|
||||
bool "bt60"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config BOARD_BT60_V1_HS
|
||||
bool "bt60 hotswap"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
@@ -1,135 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2021 Polarity Works
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include <nordic/nrf52840_qiaa.dtsi>
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
/ {
|
||||
model = "BT60";
|
||||
compatible = "polarityworks,bt60";
|
||||
|
||||
chosen {
|
||||
zephyr,code-partition = &code_partition;
|
||||
zephyr,sram = &sram0;
|
||||
zephyr,flash = &flash0;
|
||||
zephyr,console = &cdc_acm_uart;
|
||||
zmk,battery = &vbatt;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix_transform = &default_transform;
|
||||
};
|
||||
|
||||
sensors: sensors {
|
||||
compatible = "zmk,keymap-sensors";
|
||||
sensors = <&left_encoder>;
|
||||
triggers-per-rotation = <20>;
|
||||
};
|
||||
|
||||
|
||||
|
||||
left_encoder: encoder_left {
|
||||
compatible = "alps,ec11";
|
||||
label = "LEFT_ENCODER";
|
||||
a-gpios = <&gpio1 1 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
|
||||
b-gpios = <&gpio1 3 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
|
||||
steps = <80>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
blue_led: led_0 {
|
||||
gpios = <&gpio0 15 GPIO_ACTIVE_HIGH>;
|
||||
label = "Blue LED";
|
||||
};
|
||||
};
|
||||
|
||||
vbatt: vbatt {
|
||||
compatible = "zmk,battery-voltage-divider";
|
||||
label = "BATTERY";
|
||||
io-channels = <&adc 2>;
|
||||
output-ohms = <2000000>;
|
||||
full-ohms = <(2000000 + 806000)>;
|
||||
};
|
||||
};
|
||||
|
||||
&adc {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpiote {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
compatible = "nordic,nrf-twi";
|
||||
sda-pin = <17>;
|
||||
scl-pin = <20>;
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
compatible = "nordic,nrf-uarte";
|
||||
tx-pin = <6>;
|
||||
rx-pin = <8>;
|
||||
};
|
||||
|
||||
&usbd {
|
||||
status = "okay";
|
||||
cdc_acm_uart: cdc_acm_uart {
|
||||
compatible = "zephyr,cdc-acm-uart";
|
||||
label = "CDC_ACM_0";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
&flash0 {
|
||||
/*
|
||||
* For more information, see:
|
||||
* http://docs.zephyrproject.org/latest/devices/dts/flash_partitions.html
|
||||
*/
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
sd_partition: partition@0 {
|
||||
label = "softdevice";
|
||||
reg = <0x00000000 0x00026000>;
|
||||
};
|
||||
code_partition: partition@26000 {
|
||||
label = "code_partition";
|
||||
reg = <0x00026000 0x000c6000>;
|
||||
};
|
||||
|
||||
/*
|
||||
* The flash starting at 0x000ec000 and ending at
|
||||
* 0x000f3fff is reserved for use by the application.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Storage partition will be used by FCB/LittleFS/NVS
|
||||
* if enabled.
|
||||
*/
|
||||
storage_partition: partition@ec000 {
|
||||
label = "storage";
|
||||
reg = <0x000ec000 0x00008000>;
|
||||
};
|
||||
|
||||
boot_partition: partition@f4000 {
|
||||
label = "adafruit_boot";
|
||||
reg = <0x000f4000 0x0000c000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -1,12 +0,0 @@
|
||||
file_format: "1"
|
||||
id: bt60_v1
|
||||
name: BT60 V1 Soldered
|
||||
type: board
|
||||
arch: arm
|
||||
features:
|
||||
- keys
|
||||
- encoder
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
url: https://polarityworks.com
|
||||
@@ -1,8 +0,0 @@
|
||||
# Copyright (c) 2022 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_ENABLE_DCDC
|
||||
bool "Enable DCDC mode"
|
||||
select SOC_DCDC_NRF52X
|
||||
default y
|
||||
depends on BOARD_BT60_V2 || BOARD_BT65_V1 || BOARD_BT75_V1
|
||||
@@ -1,16 +0,0 @@
|
||||
# CKP boards configuration
|
||||
|
||||
# Copyright (c) 2022 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_BT60_V2
|
||||
bool "bt60_v2"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config BOARD_BT65_V1
|
||||
bool "bt65_v1"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config BOARD_BT75_V1
|
||||
bool "bt75_v1"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
@@ -1,28 +0,0 @@
|
||||
# Copyright (c) 2022 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD
|
||||
default "bt60_v2" if BOARD_BT60_V2
|
||||
default "bt65_v1" if BOARD_BT65_V1
|
||||
default "bt75_v1" if BOARD_BT75_V1
|
||||
config ZMK_KEYBOARD_NAME
|
||||
default "BT60 V2" if BOARD_BT60_V2
|
||||
default "BT65" if BOARD_BT65_V1
|
||||
default "BT75" if BOARD_BT75_V1
|
||||
|
||||
if BOARD_BT60_V2 || BOARD_BT65_V1 || BOARD_BT75_V1
|
||||
|
||||
if USB
|
||||
|
||||
config USB_NRFX
|
||||
default y
|
||||
|
||||
config USB_DEVICE_STACK
|
||||
default y
|
||||
|
||||
endif # USB
|
||||
|
||||
config BT_CTLR
|
||||
default BT
|
||||
|
||||
endif # BOARD_BT60_V2 || BOARD_BT65_V1 || BOARD_BT75_V1
|
||||
@@ -1,10 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2022 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
config BOARD_CORNEISH_ZEN_LEFT
|
||||
bool
|
||||
|
||||
config BOARD_CORNEISH_ZEN_RIGHT
|
||||
bool
|
||||
@@ -1,24 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2022 Darryl deHaan
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
config BOARD_CORNEISH_ZEN_V1_LEFT
|
||||
bool "corneish zen left v1"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
select BOARD_CORNEISH_ZEN_LEFT
|
||||
|
||||
config BOARD_CORNEISH_ZEN_V1_RIGHT
|
||||
bool "corneish zen right v1"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
select BOARD_CORNEISH_ZEN_RIGHT
|
||||
|
||||
config BOARD_CORNEISH_ZEN_V2_LEFT
|
||||
bool "corneish zen left v2"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
select BOARD_CORNEISH_ZEN_LEFT
|
||||
|
||||
config BOARD_CORNEISH_ZEN_V2_RIGHT
|
||||
bool "corneish zen right v2"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
select BOARD_CORNEISH_ZEN_RIGHT
|
||||
@@ -1,20 +0,0 @@
|
||||
identifier: corneish_zen_v2
|
||||
name: Corne-ish Zen v2
|
||||
type: keyboard
|
||||
arch: arm
|
||||
toolchain:
|
||||
- zephyr
|
||||
- gnuarmemb
|
||||
- xtools
|
||||
supported:
|
||||
- gpio
|
||||
- i2c
|
||||
- counter
|
||||
- spi
|
||||
- usb_device
|
||||
- lsm303dlhc
|
||||
- nvs
|
||||
- can
|
||||
- kscan
|
||||
- ble
|
||||
- adc
|
||||
@@ -1,15 +0,0 @@
|
||||
file_format: "1"
|
||||
id: corneish_zen_v2
|
||||
name: Corneish Zen v2
|
||||
url: https://lowprokb.ca/collections/keyboards/products/corne-ish-zen
|
||||
type: board
|
||||
arch: arm
|
||||
features:
|
||||
- keys
|
||||
- display
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
siblings:
|
||||
- corneish_zen_v2_left
|
||||
- corneish_zen_v2_right
|
||||
@@ -1,6 +0,0 @@
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_DZ60RGB_REV1
|
||||
bool "DZ60RGB Keyboard"
|
||||
depends on SOC_STM32F303XC
|
||||
@@ -1,11 +0,0 @@
|
||||
# DZ60RGB keyboard configuration
|
||||
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
if BOARD_DZ60RGB_REV1
|
||||
|
||||
config ZMK_KEYBOARD_NAME
|
||||
default "DZ60RGB Rev 1"
|
||||
|
||||
endif # BOARD_DZ60RGB_REV1
|
||||
@@ -1,93 +0,0 @@
|
||||
/*
|
||||
* Copyright (c) 2020 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include <st/f3/stm32f303Xc.dtsi>
|
||||
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
/ {
|
||||
model = "DZ60RGB, Rev 1";
|
||||
compatible = "dz60rgb,rev1", "st,stm32f303";
|
||||
|
||||
chosen {
|
||||
zephyr,sram = &sram0;
|
||||
zephyr,flash = &flash0;
|
||||
zephyr,console = &cdc_acm_uart;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,matrix_transform = &default_transform;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <14>;
|
||||
rows = <5>;
|
||||
map = <
|
||||
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11) RC(0,12) RC(0,13)
|
||||
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13)
|
||||
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) RC(2,10) RC(2,11) RC(2,13)
|
||||
RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,13)
|
||||
RC(4,0) RC(4,1) RC(4,2) RC(4,5) RC(4,8) RC(4,9) RC(4,10) RC(4,11) RC(4,13)
|
||||
>;
|
||||
};
|
||||
|
||||
kscan0: kscan {
|
||||
compatible = "zmk,kscan-gpio-matrix";
|
||||
label = "KSCAN";
|
||||
|
||||
diode-direction = "col2row";
|
||||
row-gpios
|
||||
= <&gpioa 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpiob 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpiob 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpiob 14 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpiob 12 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
;
|
||||
col-gpios
|
||||
= <&gpioa 6 GPIO_ACTIVE_HIGH>
|
||||
, <&gpioa 7 GPIO_ACTIVE_HIGH>
|
||||
, <&gpiob 0 GPIO_ACTIVE_HIGH>
|
||||
, <&gpiob 13 GPIO_ACTIVE_HIGH>
|
||||
, <&gpiob 15 GPIO_ACTIVE_HIGH>
|
||||
, <&gpioa 8 GPIO_ACTIVE_HIGH>
|
||||
, <&gpioa 15 GPIO_ACTIVE_HIGH>
|
||||
, <&gpiob 3 GPIO_ACTIVE_HIGH>
|
||||
, <&gpiob 4 GPIO_ACTIVE_HIGH>
|
||||
, <&gpiob 5 GPIO_ACTIVE_HIGH>
|
||||
, <&gpiob 8 GPIO_ACTIVE_HIGH>
|
||||
, <&gpiob 9 GPIO_ACTIVE_HIGH>
|
||||
, <&gpioc 13 GPIO_ACTIVE_HIGH>
|
||||
, <&gpioc 14 GPIO_ACTIVE_HIGH>
|
||||
;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
&usb {
|
||||
status = "okay";
|
||||
cdc_acm_uart: cdc_acm_uart {
|
||||
compatible = "zephyr,cdc-acm-uart";
|
||||
label = "CDC_ACM_0";
|
||||
};
|
||||
};
|
||||
|
||||
&flash0 {
|
||||
/*
|
||||
* For more information, see:
|
||||
* http://docs.zephyrproject.org/latest/guides/dts/index.html#flash-partitions
|
||||
*/
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
/* Set 6Kb of storage at the end of the 256Kb of flash */
|
||||
storage_partition: partition@3e800 {
|
||||
label = "storage";
|
||||
reg = <0x0003e800 0x00001800>;
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -1,25 +0,0 @@
|
||||
#include <behaviors.dtsi>
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
|
||||
/ {
|
||||
keymap {
|
||||
compatible = "zmk,keymap";
|
||||
|
||||
default_layer {
|
||||
// ------------------------------------------------------------------------------------------
|
||||
// | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BKSP |
|
||||
// | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | "|" |
|
||||
// | CAPS | A | S | D | F | G | H | J | K | L | ; | ' | ENTER |
|
||||
// | SHIFT | Z | X | C | V | B | N | M | , | . | SHIFT(/) | ^ | DEL |
|
||||
// | CTL | WIN | ALT | SPACE | ALT | MO(1) | <- | v | -> |
|
||||
// ------------------------------------------------------------------------------------------
|
||||
bindings = <
|
||||
&kp ESC &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp MINUS &kp EQUAL &kp BSPC
|
||||
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp LBKT &kp RBKT &kp BSLH
|
||||
&kp CLCK &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT &kp RET
|
||||
&kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &mt RSHFT FSLH &kp UP &kp DEL
|
||||
&kp LCTRL &kp LGUI &kp LALT &kp SPACE &kp RALT &mo 1 &kp LEFT &kp DOWN &kp RIGHT
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -1,29 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SOC_SERIES_STM32F3X=y
|
||||
CONFIG_SOC_STM32F303XC=y
|
||||
# 72MHz system clock
|
||||
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000
|
||||
|
||||
# enable pinmux
|
||||
CONFIG_PINMUX=y
|
||||
|
||||
# enable GPIO
|
||||
CONFIG_GPIO=y
|
||||
|
||||
# clock configuration
|
||||
CONFIG_CLOCK_CONTROL=y
|
||||
|
||||
# Clock configuration for Cube Clock control driver
|
||||
CONFIG_CLOCK_STM32_HSE_CLOCK=8000000
|
||||
CONFIG_CLOCK_STM32_SYSCLK_SRC_PLL=y
|
||||
# use HSE as PLL input
|
||||
CONFIG_CLOCK_STM32_PLL_SRC_HSE=y
|
||||
# produce 72MHz clock at PLL output
|
||||
CONFIG_CLOCK_STM32_PLL_PREDIV=1
|
||||
CONFIG_CLOCK_STM32_PLL_MULTIPLIER=9
|
||||
CONFIG_CLOCK_STM32_AHB_PRESCALER=1
|
||||
CONFIG_CLOCK_STM32_APB1_PRESCALER=2
|
||||
CONFIG_CLOCK_STM32_APB2_PRESCALER=1
|
||||
|
||||
CONFIG_ZMK_USB=y
|
||||
@@ -1,8 +0,0 @@
|
||||
# Ferris board configuration
|
||||
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_FERRIS
|
||||
bool "Ferris rev 0.2"
|
||||
depends on SOC_STM32F072XB
|
||||
@@ -1,8 +0,0 @@
|
||||
# Copyright (c) 2021 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_ENABLE_DCDC
|
||||
bool "Enable DCDC mode"
|
||||
select SOC_DCDC_NRF52X
|
||||
default y
|
||||
depends on (BOARD_GLOVE80_LH || BOARD_GLOVE80_RH)
|
||||
@@ -1,10 +0,0 @@
|
||||
# Copyright (c) 2021 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_GLOVE80_LH
|
||||
bool "Glove80 LH"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config BOARD_GLOVE80_RH
|
||||
bool "Glove80 RH"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
@@ -1,6 +0,0 @@
|
||||
# Copyright (c) 2023 The ZMK Contributors
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config BOARD_KBDFANS_TOFU65_V2
|
||||
bool "KBDfans Tofu65 2.0"
|
||||
depends on SOC_RP2040
|
||||
@@ -1,6 +0,0 @@
|
||||
|
||||
if(CONFIG_PINMUX)
|
||||
zephyr_library()
|
||||
zephyr_library_sources(pinmux.c)
|
||||
zephyr_library_include_directories(${ZEPHYR_BASE}/drivers)
|
||||
endif()
|
||||
@@ -1,8 +0,0 @@
|
||||
# mikoto board configuration
|
||||
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_MIKOTO_520
|
||||
bool "mikoto_520"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
@@ -1,5 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
board_runner_args(nrfjprog "--nrf-family=NRF52" "--softreset")
|
||||
include(${ZEPHYR_BASE}/boards/common/blackmagicprobe.board.cmake)
|
||||
include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake)
|
||||
@@ -1,6 +0,0 @@
|
||||
# Copyright (c) 2021 Nick Winans
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_NICE60
|
||||
bool "nice!60"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
@@ -1,7 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_ENABLE_DCDC
|
||||
bool "Enable DCDC mode"
|
||||
select SOC_DCDC_NRF52X
|
||||
default y
|
||||
depends on (BOARD_NICE_NANO || BOARD_NICE_NANO_V2)
|
||||
@@ -1,13 +0,0 @@
|
||||
# nice!nano board configuration
|
||||
|
||||
# Copyright (c) 2020 Pete Johanson
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_NICE_NANO
|
||||
bool "nice!nano"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config BOARD_NICE_NANO_V2
|
||||
bool "nice!nano v2"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
# Copyright (c) 2021 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
if BOARD_NICE_NANO || BOARD_NICE_NANO_V2
|
||||
|
||||
config BOARD
|
||||
default "nice_nano"
|
||||
|
||||
if USB_DEVICE_STACK
|
||||
|
||||
config USB_NRFX
|
||||
default y
|
||||
|
||||
endif # USB_DEVICE_STACK
|
||||
|
||||
config BT_CTLR
|
||||
default BT
|
||||
|
||||
endif # BOARD_NICE_NANO || BOARD_NICE_NANO_V2
|
||||
@@ -1,5 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
board_runner_args(nrfjprog "--nrf-family=NRF52" "--softreset")
|
||||
include(${ZEPHYR_BASE}/boards/common/blackmagicprobe.board.cmake)
|
||||
include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake)
|
||||
@@ -1,15 +0,0 @@
|
||||
identifier: nice_nano_v2
|
||||
name: nice!nano v2
|
||||
type: mcu
|
||||
arch: arm
|
||||
toolchain:
|
||||
- zephyr
|
||||
- gnuarmemb
|
||||
- xtools
|
||||
supported:
|
||||
- adc
|
||||
- usb_device
|
||||
- ble
|
||||
- ieee802154
|
||||
- pwm
|
||||
- watchdog
|
||||
@@ -1,10 +0,0 @@
|
||||
file_format: "1"
|
||||
id: nice_nano_v2
|
||||
name: nice!nano v2
|
||||
type: board
|
||||
arch: arm
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
url: https://nicekeyboards.com/nice-nano
|
||||
exposes: [pro_micro]
|
||||
@@ -1,9 +0,0 @@
|
||||
# Maker Diary nrf52840 M.2 board configuration
|
||||
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_NRF52840_M2
|
||||
bool "nrf52480_m2"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
|
||||
if(CONFIG_PINMUX)
|
||||
zephyr_library()
|
||||
zephyr_library_sources(pinmux.c)
|
||||
zephyr_library_include_directories(${ZEPHYR_BASE}/drivers)
|
||||
endif()
|
||||
@@ -1,10 +0,0 @@
|
||||
config BOARD_ENABLE_DCDC
|
||||
bool "Enable DCDC mode"
|
||||
select SOC_DCDC_NRF52X
|
||||
default y
|
||||
depends on (BOARD_NRFMICRO_11 || BOARD_NRFMICRO_11_FLIPPED || BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833)
|
||||
|
||||
config BOARD_NRFMICRO_CHARGER
|
||||
bool "Enable battery charger"
|
||||
default y
|
||||
depends on (BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833)
|
||||
@@ -1,20 +0,0 @@
|
||||
# nrfmicro board configuration
|
||||
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_NRFMICRO_11
|
||||
bool "nrfmicro_11"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config BOARD_NRFMICRO_11_FLIPPED
|
||||
bool "nrfmicro_11_flipped"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config BOARD_NRFMICRO_13
|
||||
bool "nrfmicro_13"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config BOARD_NRFMICRO_13_52833
|
||||
bool "nrfmicro_13_52833"
|
||||
depends on SOC_NRF52833_QIAA
|
||||
@@ -1,31 +0,0 @@
|
||||
# Electronut Labs Papyr board configuration
|
||||
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
if BOARD_NRFMICRO_11 || BOARD_NRFMICRO_11_FLIPPED || BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833
|
||||
|
||||
config BOARD
|
||||
default "nrfmicro"
|
||||
|
||||
if USB_DEVICE_STACK
|
||||
|
||||
config USB_NRFX
|
||||
default y
|
||||
|
||||
endif # USB_DEVICE_STACK
|
||||
|
||||
config BT_CTLR
|
||||
default BT
|
||||
|
||||
config PINMUX
|
||||
default y
|
||||
|
||||
if BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833
|
||||
|
||||
config BOARD_NRFMICRO_CHARGER
|
||||
default y
|
||||
|
||||
endif # BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833
|
||||
|
||||
endif # BOARD_NRFMICRO_11 || BOARD_NRFMICRO_11_FLIPPED || BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833
|
||||
@@ -1,5 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
board_runner_args(nrfjprog "--nrf-family=NRF52" "--softreset")
|
||||
include(${ZEPHYR_BASE}/boards/common/blackmagicprobe.board.cmake)
|
||||
include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake)
|
||||
@@ -1,28 +0,0 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_NRFMICRO_11_FLIPPED=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
CONFIG_PINCTRL=y
|
||||
|
||||
# enable GPIO
|
||||
CONFIG_GPIO=y
|
||||
|
||||
CONFIG_USE_DT_CODE_PARTITION=y
|
||||
CONFIG_BUILD_OUTPUT_UF2=y
|
||||
|
||||
CONFIG_MPU_ALLOW_FLASH_WRITE=y
|
||||
CONFIG_NVS=y
|
||||
CONFIG_SETTINGS_NVS=y
|
||||
CONFIG_FLASH=y
|
||||
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||
CONFIG_FLASH_MAP=y
|
||||
CONFIG_CLOCK_CONTROL_NRF=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
|
||||
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
@@ -1,10 +0,0 @@
|
||||
file_format: "1"
|
||||
id: nrfmicro_13_52833
|
||||
name: nRFMicro 1.3/1.4 (nRF52833)
|
||||
type: board
|
||||
arch: arm
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
url: https://github.com/joric/nrfmicro/
|
||||
exposes: [pro_micro]
|
||||
@@ -1,6 +0,0 @@
|
||||
# Copyright (c) 2022 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_PILLBUG
|
||||
bool "PillBug"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
@@ -1,8 +0,0 @@
|
||||
# QMK Proton-C board configuration
|
||||
|
||||
# Copyright (c) 2020 Pete Johanson
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_QMK_PROTON_C
|
||||
bool "QMK Proton-C"
|
||||
depends on SOC_STM32F303XC
|
||||
@@ -1,11 +0,0 @@
|
||||
# QMK Proton-C board configuration
|
||||
|
||||
# Copyright (c) 2020 Pete Johanson
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
if BOARD_QMK_PROTON_C
|
||||
|
||||
config BOARD
|
||||
default "proton_c"
|
||||
|
||||
endif # BOARD_QMK_PROTON_C
|
||||
@@ -1,6 +0,0 @@
|
||||
|
||||
if(CONFIG_PINMUX)
|
||||
zephyr_library()
|
||||
zephyr_library_sources(pinmux.c)
|
||||
zephyr_library_include_directories(${ZEPHYR_BASE}/drivers)
|
||||
endif()
|
||||
@@ -1,8 +0,0 @@
|
||||
# Puchi-BLE board configuration
|
||||
|
||||
# Copyright (c) 2022 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_PUCHI_BLE_v1
|
||||
bool "puchi_ble_v1"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
@@ -1,15 +0,0 @@
|
||||
identifier: puchi_ble_v1
|
||||
name: puchi_ble_v1
|
||||
type: mcu
|
||||
arch: arm
|
||||
toolchain:
|
||||
- zephyr
|
||||
- gnuarmemb
|
||||
- xtools
|
||||
supported:
|
||||
- adc
|
||||
- usb_device
|
||||
- ble
|
||||
- ieee802154
|
||||
- pwm
|
||||
- watchdog
|
||||
@@ -1,6 +0,0 @@
|
||||
# Copyright (c) 2021 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_S40NC
|
||||
bool "S40NC"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
@@ -1,7 +0,0 @@
|
||||
CONFIG_CONSOLE=n
|
||||
CONFIG_SERIAL=n
|
||||
CONFIG_UART_CONSOLE=n
|
||||
CONFIG_UART_INTERRUPT_DRIVEN=n
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=n
|
||||
CONFIG_ZMK_KSCAN_MATRIX_POLLING=y
|
||||
@@ -1,7 +0,0 @@
|
||||
CONFIG_CONSOLE=n
|
||||
CONFIG_SERIAL=n
|
||||
CONFIG_UART_CONSOLE=n
|
||||
CONFIG_UART_INTERRUPT_DRIVEN=n
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=n
|
||||
CONFIG_ZMK_KSCAN_MATRIX_POLLING=y
|
||||
9
app/boards/boardsource/blok/Kconfig.boardsource_blok
Normal file
9
app/boards/boardsource/blok/Kconfig.boardsource_blok
Normal file
@@ -0,0 +1,9 @@
|
||||
# Copyright (c) 2026 Pete Johanson
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_BOARDSOURCE_BLOK
|
||||
select ZMK_BOARD_COMPAT if BOARD_BOARDSOURCE_BLOK_RP2040_ZMK
|
||||
imply RETAINED_MEM if BOARD_BOARDSOURCE_BLOK_RP2040_ZMK
|
||||
imply RETENTION if BOARD_BOARDSOURCE_BLOK_RP2040_ZMK
|
||||
imply RETENTION_BOOT_MODE if BOARD_BOARDSOURCE_BLOK_RP2040_ZMK
|
||||
|
||||
5
app/boards/boardsource/blok/board.yml
Normal file
5
app/boards/boardsource/blok/board.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
board:
|
||||
extend: boardsource_blok
|
||||
variants:
|
||||
- name: zmk
|
||||
qualifier: rp2040
|
||||
9
app/boards/boardsource/blok/boardsource_blok.zmk.yml
Normal file
9
app/boards/boardsource/blok/boardsource_blok.zmk.yml
Normal file
@@ -0,0 +1,9 @@
|
||||
file_format: "1"
|
||||
id: boardsource_blok//zmk
|
||||
name: Boardsource Blok
|
||||
type: board
|
||||
arch: arm
|
||||
outputs:
|
||||
- usb
|
||||
url: https://boardsource.xyz/products/blok-rp2040-keyboard-controller
|
||||
exposes: [pro_micro]
|
||||
23
app/boards/boardsource/blok/boardsource_blok_zmk.dts
Normal file
23
app/boards/boardsource/blok/boardsource_blok_zmk.dts
Normal file
@@ -0,0 +1,23 @@
|
||||
/*
|
||||
* Copyright (c) 2026 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <../boards/boardsource/blok/boardsource_blok.dts>
|
||||
#include <arm/raspberrypi/rp2040-boot-mode-retention.dtsi>
|
||||
|
||||
&pro_micro_serial { status = "disabled"; };
|
||||
|
||||
&code_partition {
|
||||
reg = <0x100 (DT_SIZE_M(16) - 0x100 - DT_SIZE_K(512))>;
|
||||
};
|
||||
|
||||
&flash0 {
|
||||
partitions {
|
||||
storage_partition: partition@f80000 {
|
||||
reg = <0xf80000 DT_SIZE_K(512)>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
};
|
||||
30
app/boards/boardsource/blok/boardsource_blok_zmk_defconfig
Normal file
30
app/boards/boardsource/blok/boardsource_blok_zmk_defconfig
Normal file
@@ -0,0 +1,30 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=125000000
|
||||
|
||||
CONFIG_RESET=y
|
||||
|
||||
# Enable clock control by default
|
||||
CONFIG_CLOCK_CONTROL=y
|
||||
|
||||
# Code partition needed to target the correct flash range
|
||||
CONFIG_USE_DT_CODE_PARTITION=y
|
||||
|
||||
# Output UF2 by default, native bootloader supports it.
|
||||
CONFIG_BUILD_OUTPUT_UF2=y
|
||||
|
||||
# USB HID
|
||||
CONFIG_ZMK_USB=y
|
||||
|
||||
# Settings Support
|
||||
CONFIG_MPU_ALLOW_FLASH_WRITE=y
|
||||
CONFIG_NVS=y
|
||||
CONFIG_SETTINGS_NVS=y
|
||||
CONFIG_FLASH=y
|
||||
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||
CONFIG_FLASH_MAP=y
|
||||
|
||||
# Bootloader Support
|
||||
CONFIG_RETAINED_MEM=y
|
||||
CONFIG_RETENTION=y
|
||||
CONFIG_RETENTION_BOOT_MODE=y
|
||||
@@ -1,4 +0,0 @@
|
||||
CONFIG_CONSOLE=n
|
||||
CONFIG_SERIAL=n
|
||||
CONFIG_UART_CONSOLE=n
|
||||
CONFIG_ZMK_USB=y
|
||||
@@ -5,9 +5,9 @@ type: interconnect
|
||||
url: https://wiki.seeedstudio.com/Seeeduino-XIAO/
|
||||
manufacturer: Seeed
|
||||
description: |
|
||||
The Seeed(uino) XIAO is a popular smaller format micro-controller, that has gained popularity as an alterative
|
||||
The Seeed Studio XIAO is a popular smaller format micro-controller, that has gained popularity as an alternative
|
||||
to the SparkFun Pro Micro. Since its creation, several pin compatible controllers, such
|
||||
as the Seeeduino XIAO BLE, Adafruit QT Py and Adafruit QT Py RP2040, have become available.
|
||||
as the Seeed Studio XIAO nRF52840 (also known as XIAO BLE), Adafruit QT Py and Adafruit QT Py RP2040, have become available.
|
||||
node_labels:
|
||||
gpio: xiao_d
|
||||
i2c: xiao_i2c
|
||||
|
||||
13
app/boards/joric/nrfmicro/Kconfig.nrfmicro
Normal file
13
app/boards/joric/nrfmicro/Kconfig.nrfmicro
Normal file
@@ -0,0 +1,13 @@
|
||||
# nrfmicro board configuration
|
||||
|
||||
# Copyright (c) 2020 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_NRFMICRO
|
||||
select SOC_NRF52840_QIAA if BOARD_NRFMICRO_NRF52840_ZMK
|
||||
select SOC_NRF52840_QIAA if BOARD_NRFMICRO_NRF52840_FLIPPED_ZMK
|
||||
select SOC_NRF52833_QIAA if BOARD_NRFMICRO_NRF52833_ZMK
|
||||
select ZMK_BOARD_COMPAT if BOARD_NRFMICRO_NRF52840_ZMK || BOARD_NRFMICRO_NRF52840_FLIPPED_ZMK || BOARD_NRFMICRO_NRF52833_ZMK
|
||||
imply RETAINED_MEM if BOARD_NRFMICRO_NRF52840_ZMK || BOARD_NRFMICRO_NRF52840_FLIPPED_ZMK || BOARD_NRFMICRO_NRF52833_ZMK
|
||||
imply RETENTION if BOARD_NRFMICRO_NRF52840_ZMK || BOARD_NRFMICRO_NRF52840_FLIPPED_ZMK || BOARD_NRFMICRO_NRF52833_ZMK
|
||||
imply RETENTION_BOOT_MODE if BOARD_NRFMICRO_NRF52840_ZMK || BOARD_NRFMICRO_NRF52840_FLIPPED_ZMK || BOARD_NRFMICRO_NRF52833_ZMK
|
||||
9
app/boards/joric/nrfmicro/board.yml
Normal file
9
app/boards/joric/nrfmicro/board.yml
Normal file
@@ -0,0 +1,9 @@
|
||||
board:
|
||||
extend: nrfmicro
|
||||
variants:
|
||||
- name: zmk
|
||||
qualifier: nrf52840
|
||||
- name: flipped_zmk
|
||||
qualifier: nrf52840
|
||||
- name: zmk
|
||||
qualifier: nrf52833
|
||||
@@ -1,6 +1,6 @@
|
||||
file_format: "1"
|
||||
id: nrfmicro_11
|
||||
name: nRFMicro 1.1/1.2
|
||||
id: nrfmicro/nrf52833/zmk
|
||||
name: nRFMicro (nRF52833)
|
||||
type: board
|
||||
arch: arm
|
||||
outputs:
|
||||
@@ -8,3 +8,6 @@ outputs:
|
||||
- ble
|
||||
url: https://github.com/joric/nrfmicro/
|
||||
exposes: [pro_micro]
|
||||
revisions:
|
||||
- "1.3.0"
|
||||
default_revision: "1.3.0"
|
||||
29
app/boards/joric/nrfmicro/nrfmicro_nrf52833_zmk.dts
Normal file
29
app/boards/joric/nrfmicro/nrfmicro_nrf52833_zmk.dts
Normal file
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
* Copyright (c) 2026 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <../boards/joric/nrfmicro/nrfmicro_nrf52833.dts>
|
||||
#include <common/nordic/nrf52833_uf2_boot_mode.dtsi>
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,battery = &vbatt;
|
||||
};
|
||||
|
||||
// Node name must match original "EXT_POWER" label to preserve user settings.
|
||||
EXT_POWER {
|
||||
compatible = "zmk,ext-power-generic";
|
||||
control-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
|
||||
init-delay-ms = <50>;
|
||||
};
|
||||
|
||||
vbatt: vbatt {
|
||||
compatible = "zmk,battery-voltage-divider";
|
||||
io-channels = <&adc 2>;
|
||||
output-ohms = <2000000>;
|
||||
full-ohms = <(2000000 + 820000)>;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_NRFMICRO_11=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
@@ -25,4 +21,4 @@ CONFIG_CLOCK_CONTROL_NRF=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
|
||||
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
@@ -1,6 +1,6 @@
|
||||
file_format: "1"
|
||||
id: nrfmicro_13
|
||||
name: nRFMicro 1.3/1.4
|
||||
id: nrfmicro/nrf52840/zmk
|
||||
name: nRFMicro (nRF52840) 1.1/1.2/1.3
|
||||
type: board
|
||||
arch: arm
|
||||
outputs:
|
||||
@@ -8,3 +8,7 @@ outputs:
|
||||
- ble
|
||||
url: https://github.com/joric/nrfmicro/
|
||||
exposes: [pro_micro]
|
||||
revisions:
|
||||
- "1.1.0"
|
||||
- "1.3.0"
|
||||
default_revision: "1.3.0"
|
||||
@@ -1,6 +1,6 @@
|
||||
file_format: "1"
|
||||
id: nrfmicro_11_flipped
|
||||
name: nRFMicro 1.1 (flipped)
|
||||
id: nrfmicro/nrf52840/flipped_zmk
|
||||
name: nRFMicro nRF52840 (flipped)
|
||||
type: board
|
||||
arch: arm
|
||||
outputs:
|
||||
@@ -8,3 +8,6 @@ outputs:
|
||||
- ble
|
||||
url: https://github.com/joric/nrfmicro/
|
||||
exposes: [pro_micro]
|
||||
revisions:
|
||||
- "1.1.0"
|
||||
default_revision: "1.1.0"
|
||||
17
app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped_zmk.dts
Normal file
17
app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped_zmk.dts
Normal file
@@ -0,0 +1,17 @@
|
||||
/*
|
||||
* Copyright (c) 2026 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <../boards/joric/nrfmicro/nrfmicro_nrf52840_flipped.dts>
|
||||
#include <common/nordic/nrf52840_uf2_boot_mode.dtsi>
|
||||
|
||||
/ {
|
||||
// Node name must match original "EXT_POWER" label to preserve user settings.
|
||||
EXT_POWER {
|
||||
compatible = "zmk,ext-power-generic";
|
||||
control-gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
|
||||
init-delay-ms = <50>;
|
||||
};
|
||||
};
|
||||
@@ -1,9 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_NRFMICRO_13=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
@@ -25,4 +21,4 @@ CONFIG_CLOCK_CONTROL_NRF=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
|
||||
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
29
app/boards/joric/nrfmicro/nrfmicro_nrf52840_zmk.dts
Normal file
29
app/boards/joric/nrfmicro/nrfmicro_nrf52840_zmk.dts
Normal file
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
* Copyright (c) 2026 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <../boards/joric/nrfmicro/nrfmicro_nrf52840.dts>
|
||||
#include <common/nordic/nrf52840_uf2_boot_mode.dtsi>
|
||||
|
||||
/ {
|
||||
|
||||
chosen {
|
||||
zmk,battery = &vbatt;
|
||||
};
|
||||
|
||||
// Node name must match original "EXT_POWER" label to preserve user settings.
|
||||
EXT_POWER {
|
||||
compatible = "zmk,ext-power-generic";
|
||||
control-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
|
||||
init-delay-ms = <50>;
|
||||
};
|
||||
|
||||
vbatt: vbatt {
|
||||
compatible = "zmk,battery-voltage-divider";
|
||||
io-channels = <&adc 2>;
|
||||
output-ohms = <2000000>;
|
||||
full-ohms = <(2000000 + 820000)>;
|
||||
};
|
||||
};
|
||||
@@ -1,9 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_BLUEMICRO840_V1=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
@@ -21,6 +17,8 @@ CONFIG_SETTINGS_NVS=y
|
||||
CONFIG_FLASH=y
|
||||
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||
CONFIG_FLASH_MAP=y
|
||||
CONFIG_CLOCK_CONTROL_NRF=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
|
||||
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
@@ -0,0 +1,30 @@
|
||||
/*
|
||||
* Copyright (c) 2020 The ZMK Contributors
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,battery = &vbatt;
|
||||
};
|
||||
|
||||
// Node name must match original "EXT_POWER" label to preserve user settings.
|
||||
EXT_POWER {
|
||||
compatible = "zmk,ext-power-generic";
|
||||
control-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
|
||||
init-delay-ms = <50>;
|
||||
};
|
||||
|
||||
vbatt: vbatt {
|
||||
compatible = "zmk,battery-voltage-divider";
|
||||
io-channels = <&adc 2>;
|
||||
output-ohms = <2000000>;
|
||||
full-ohms = <(2000000 + 820000)>;
|
||||
};
|
||||
};
|
||||
|
||||
&adc {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52833_QIAA=y
|
||||
CONFIG_BOARD_NRFMICRO_13_52833=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
@@ -25,4 +21,4 @@ CONFIG_CLOCK_CONTROL_NRF=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
|
||||
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
@@ -0,0 +1,9 @@
|
||||
# Copyright (c) 2026 Pete Johanson, Derek Schmell
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config BOARD_BLUEMICRO840
|
||||
select SOC_NRF52840_QIAA
|
||||
select ZMK_BOARD_COMPAT if BOARD_BLUEMICRO840_NRF52840_ZMK
|
||||
imply RETAINED_MEM if BOARD_BLUEMICRO840_NRF52840_ZMK
|
||||
imply RETENTION if BOARD_BLUEMICRO840_NRF52840_ZMK
|
||||
imply RETENTION_BOOT_MODE if BOARD_BLUEMICRO840_NRF52840_ZMK
|
||||
@@ -1,4 +1,4 @@
|
||||
identifier: bluemicro840_v1
|
||||
identifier: bluemicro840
|
||||
name: BlueMicro840_V1
|
||||
type: mcu
|
||||
arch: arm
|
||||
@@ -1,5 +1,5 @@
|
||||
file_format: "1"
|
||||
id: bluemicro840_v1
|
||||
id: bluemicro840//zmk
|
||||
name: BlueMicro840 v1
|
||||
type: board
|
||||
arch: arm
|
||||
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
* Copyright (c) 2026 Pete Johanson, Derek Schmell
|
||||
*
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include <../boards/jpconstantineau/bluemicro840/bluemicro840.dts>
|
||||
#include <common/nordic/nrf52840_uf2_boot_mode.dtsi>
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
zmk,battery = &vbatt;
|
||||
};
|
||||
|
||||
// Node name must match original "EXT_POWER" label to preserve user settings.
|
||||
EXT_POWER {
|
||||
compatible = "zmk,ext-power-generic";
|
||||
init-delay-ms = <20>;
|
||||
control-gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
vbatt: vbatt {
|
||||
compatible = "zmk,battery-voltage-divider";
|
||||
io-channels = <&adc 7>;
|
||||
output-ohms = <2000000>;
|
||||
full-ohms = <(2000000 + 806000)>;
|
||||
};
|
||||
|
||||
};
|
||||
@@ -0,0 +1,22 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
CONFIG_PINCTRL=y
|
||||
|
||||
# enable GPIO
|
||||
CONFIG_GPIO=y
|
||||
|
||||
CONFIG_USE_DT_CODE_PARTITION=y
|
||||
CONFIG_BUILD_OUTPUT_UF2=y
|
||||
|
||||
CONFIG_MPU_ALLOW_FLASH_WRITE=y
|
||||
CONFIG_NVS=y
|
||||
CONFIG_SETTINGS_NVS=y
|
||||
CONFIG_FLASH=y
|
||||
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||
CONFIG_FLASH_MAP=y
|
||||
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
@@ -1,4 +1,5 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
board_runner_args(nrfjprog "--nrf-family=NRF52" "--softreset")
|
||||
include(${ZEPHYR_BASE}/boards/common/uf2.board.cmake)
|
||||
include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake)
|
||||
5
app/boards/jpconstantineau/bluemicro840/board.yml
Normal file
5
app/boards/jpconstantineau/bluemicro840/board.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
board:
|
||||
extend: bluemicro840
|
||||
variants:
|
||||
- name: zmk
|
||||
qualifier: nrf52840
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user