Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 6 additions & 4 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,12 @@ on:
workflow_dispatch:
push:
paths:
- config/**
- boards/**
- build.yaml
- config/**
- boards/**
- snippets/**
- build.yaml
- .github/workflows/build.yml

jobs:
build:
uses: zmkfirmware/zmk/.github/workflows/build-user-config.yml@v0.3
uses: zmkfirmware/zmk/.github/workflows/build-user-config.yml@v0.3
8 changes: 7 additions & 1 deletion boards/shields/GeaconSolstice/Solstice_L.conf
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@ CONFIG_ZMK_RUNTIME_INPUT_PROCESSOR_STUDIO_RPC=y
# Enable non-key physical devices in Dya/ZMK Studio.
CONFIG_ZMK_PHYSICAL_LAYOUTS_FEATURE=y
CONFIG_ZMK_PHYSICAL_LAYOUTS_FEATURE_STUDIO_RPC=y
CONFIG_COMPILER_OPT="-DDT_NODE_HASH(node_id)=DT_DEP_ORD(node_id)"

# Enable dependencies
CONFIG_SETTINGS=y
Expand Down Expand Up @@ -64,3 +63,10 @@ CONFIG_ZMK_SETTINGS_SAVE_DEBOUNCE=10000
CONFIG_ZMK_BLE_MANAGEMENT_STUDIO_RPC=y
CONFIG_ZMK_SPLIT_RELAY_EVENT=y
CONFIG_ZMK_SPLIT_BLE_CENTRAL_SPLIT_RUN_STACK_SIZE=768
CONFIG_ZMK_USB=y
CONFIG_ZMK_USB_LOGGING=y
CONFIG_ZMK_STUDIO=y
CONFIG_ZMK_STUDIO_LOCKING=n
CONFIG_ZMK_SPLIT_BLE_CENTRAL_BATTERY_LEVEL_PROXY=y
CONFIG_ZMK_SPLIT_BLE_CENTRAL_BATTERY_LEVEL_FETCHING=y
CONFIG_RGBLED_WIDGET_BATTERY_SHOW_PERIPHERALS=y
4 changes: 4 additions & 0 deletions boards/shields/GeaconSolstice/Solstice_L.overlay
Original file line number Diff line number Diff line change
Expand Up @@ -187,3 +187,7 @@

&xiao_serial { status = "disabled"; };
&uart0 { status = "disabled";};

&uicr {
nfct-pins-as-gpios;
};
10 changes: 3 additions & 7 deletions boards/shields/GeaconSolstice/Solstice_R.conf
Original file line number Diff line number Diff line change
@@ -1,11 +1,7 @@
CONFIG_SPI=y

CONFIG_PMW3610=y
CONFIG_PMW3610_SWAP_XY=n
CONFIG_PMW3610_INVERT_X=n
CONFIG_PMW3610_INVERT_Y=y
CONFIG_PMW3610_REPORT_INTERVAL_MIN=12
CONFIG_PMW3610_INIT_POWER_UP_EXTRA_DELAY_MS=1000
CONFIG_INPUT_PMW3610=y
CONFIG_ZMK_SPLIT_BLE_PERIPHERAL_STACK_SIZE=2048

# CONFIG_BT_BAS=y
# CONFIG_BT_PERIPHERAL_PREF_MIN_INT=12
Expand All @@ -32,4 +28,4 @@ CONFIG_ZMK_SETTINGS_SAVE_DEBOUNCE=10000
# CONFIG_ZMK_BATTERY_HISTORY=y
CONFIG_ZMK_SETTINGS_RPC=y

CONFIG_ZMK_SPLIT_RELAY_EVENT=y
CONFIG_ZMK_SPLIT_RELAY_EVENT=y
15 changes: 10 additions & 5 deletions boards/shields/GeaconSolstice/Solstice_R.overlay
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,12 @@
compatible = "pixart,pmw3610";
reg = <0>;
spi-max-frequency = <2000000>;
irq-gpios = <&xiao_d 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
cpi = <800>;
evt-type = <INPUT_EV_REL>;
x-input-code = <INPUT_REL_X>;
y-input-code = <INPUT_REL_Y>;
motion-gpios = <&xiao_d 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
res-cpi = <800>;
zephyr,axis-x = <INPUT_REL_X>;
zephyr,axis-y = <INPUT_REL_Y>;
invert-y;
smart-mode;
force-awake;
};
};
Expand All @@ -62,3 +63,7 @@
&xiao_serial { status = "disabled"; };
&xiao_i2c { status = "disabled"; };
&uart0 { status = "disabled";};

&uicr {
nfct-pins-as-gpios;
};
21 changes: 11 additions & 10 deletions build.yaml
Original file line number Diff line number Diff line change
@@ -1,25 +1,26 @@
---
include:
- board: seeeduino_xiao_ble
- board: xiao_ble//zmk
shield: Solstice_L rgbled_adapter dongle_display
snippet: zmk-usb-logging studio-rpc-usb-uart Solstice_US
snippet: zmk-usb-logging studio-rpc-usb-uart cdc-boot battery-voltage-divider-oversampling Solstice_US
artifact-name: Solstice_L_US

- board: seeeduino_xiao_ble
- board: xiao_ble//zmk
shield: Solstice_R rgbled_adapter
snippet: zmk-usb-logging studio-rpc-usb-uart Solstice_US
snippet: Solstice_US
artifact-name: Solstice_R_US

- board: seeeduino_xiao_ble
- board: xiao_ble//zmk
shield: Solstice_L rgbled_adapter dongle_display
snippet: zmk-usb-logging studio-rpc-usb-uart Solstice_JIS
snippet: zmk-usb-logging studio-rpc-usb-uart cdc-boot battery-voltage-divider-oversampling Solstice_JIS
artifact-name: Solstice_L_JIS

- board: seeeduino_xiao_ble
- board: xiao_ble//zmk
shield: Solstice_R rgbled_adapter
snippet: zmk-usb-logging studio-rpc-usb-uart Solstice_JIS
snippet: Solstice_JIS
artifact-name: Solstice_R_JIS

- board: seeeduino_xiao_ble
shield: settings_reset
- board: xiao_ble//zmk
shield: settings_reset
artifact-name: settings_reset

69 changes: 35 additions & 34 deletions config/west.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,56 +23,57 @@ manifest:
- name: yamaryu211
url-base: https://github.com/yamaryu211
projects:
- name: zmk
- name: zmk
# remote: zmkfirmware
remote: te9no
revision: v0.3-branch+dya
revision: afe241df80b05c3f4e0cc95ada7584d24422a893
import: app/west.yml
- name: zmk-rgbled-widget
remote: caksoylar
revision: v0.3
- name: zmk-pmw3610-driver
remote: efogdev
# remote: badjeff
revision: main
# revision: zmk-0.3
- name: zmk-rgbled-widget
remote: caksoylar
revision: e6b467792a1dabef8cfa5c9fd26bfefc9c16662b
- name: zmk-analog-input-driver
remote: badjeff
revision: main
revision: 2684f22ee7e2168d4393f7e63676912210a796fc
- name: zmk-module-analoginput-rpc
remote: te9no
revision: main
revision: e065461e907fa924c0029e1d4c94cec1d9093e17
- name: zmk-dongle-display
remote: te9no
revision: main
- name: zmk-input-processor-keybind
remote: te9no
# remote: te9no
revision: main
- name: zmk-layout-shift
remote: kot149
revision: v1
- name: zmk-input-processor-temp-layer-threshold
remote: yamaryu211
revision: main
revision: f6c1c0d0b73ac7e579d6eaeec2d15a01c7c89d52
- name: zmk-input-processor-keybind
remote: te9no
# remote: te9no
revision: 10ad463f2e3c7a7dfb4b7cffd6bddd0e9e8b5bae
- name: zmk-layout-shift
remote: kot149
revision: 4d71f7cb743256ac619873dd44f510e9e9562739
- name: zmk-input-processor-temp-layer-threshold
remote: te9no
revision: 89520778db4401aea543e45c3b52817a0068666d
# - name: prospector-zmk-module
# remote: prospector
# revision: v1.1.1
# path: modules/prospector-zmk-module
- name: zmk-module-runtime-input-processor
remote: cormoran
revision: main
- name: zmk-module-battery-history
remote: cormoran
revision: main
- name: zmk-module-ble-management
remote: cormoran
revision: main
- name: zmk-module-runtime-input-processor
remote: te9no
revision: 72387b5212264d26d704dbc43c765f6485470a77
- name: zmk-module-battery-history
remote: cormoran
revision: 307755dd2ad4d320e14de162e8e5ef018f29d929
- name: zmk-module-ble-management
remote: cormoran
revision: 57738cc4fc6ba80e82a7ac57741a0339cb186cd4
- name: zmk-module-settings-rpc
remote: cormoran
revision: main
revision: 083a299dd8d31c275809c5a249b12486be24a7d2
- name: zmk-feature-module-physical-layout
remote: cormoran
revision: main
revision: 4f18de45dc27820725d267916b4cdacc0e0b6cf9
- name: zmk-feature-cdc-acm-bootloader-trigger
remote: te9no
revision: 1850754d269aab9ba73e4639371bfe59a4130e65
- name: zmk-module-battery-nrf-vddh-oversampling
remote: te9no
revision: 59fc126f859d4e7700186c9906e4645379763c34
self:
path: config
18 changes: 18 additions & 0 deletions docs/zmk-0.4-validation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# ZMK 0.4 validation

The `codex/zmk-0.4-baseline` branch is a hardware-validation branch. A green CI
matrix proves build compatibility only and does not authorize merging to
`main`.

Before promotion, verify:

- left/right split pairing and normal key input for both US and JIS builds;
- left analog stick movement, scrolling, runtime processing, and Studio RPC;
- right PMW3610 movement, scrolling, wake behavior, and split transport;
- dongle display and RGB LED widget behavior on the left central;
- CDC UF2 entry and USB logging on the left central;
- battery reporting and voltage oversampling;
- idle sleep and reconnect behavior.

Record the tested hardware revision and result on the pull request before
marking it ready for review.
11 changes: 0 additions & 11 deletions snippets/Solstice_JIS/Solstice_JIS.conf
Original file line number Diff line number Diff line change
@@ -1,13 +1,9 @@
CONFIG_ZMK_USB=y
CONFIG_ZMK_BLE=y
CONFIG_ZMK_POINTING=y
CONFIG_ZMK_MOUSE=y

CONFIG_INPUT=y
CONFIG_PINCTRL=y
CONFIG_NFCT_PINS_AS_GPIOS=y

CONFIG_ZMK_USB_LOGGING=y
CONFIG_LOG_PROCESS_THREAD_STARTUP_DELAY_MS=8000

CONFIG_RGBLED_WIDGET=y
Expand All @@ -16,21 +12,14 @@ CONFIG_RGBLED_WIDGET_BATTERY_LEVEL_HIGH=50
CONFIG_RGBLED_WIDGET_BATTERY_LEVEL_CRITICAL=10
CONFIG_RGBLED_WIDGET_SHOW_LAYER_CHANGE=y
CONFIG_RGBLED_WIDGET_LAYER_COLOR=7
CONFIG_RGBLED_WIDGET_BATTERY_SHOW_PERIPHERALS=y

CONFIG_ZMK_BATTERY_REPORTING=y
CONFIG_ZMK_SPLIT_BLE_CENTRAL_BATTERY_LEVEL_PROXY=y
CONFIG_ZMK_SPLIT_BLE_CENTRAL_BATTERY_LEVEL_FETCHING=y

CONFIG_ZMK_BLE_THREAD_STACK_SIZE=2048
CONFIG_ZMK_LOW_PRIORITY_THREAD_STACK_SIZE=2048
CONFIG_INPUT_THREAD_STACK_SIZE=2048
CONFIG_ZMK_SPLIT_BLE_PERIPHERAL_STACK_SIZE=2048
CONFIG_ZMK_SPLIT_BLE_CENTRAL_SPLIT_RUN_STACK_SIZE=3096
CONFIG_BT_CTLR_PHY_2M=n

CONFIG_ZMK_STUDIO=y
CONFIG_ZMK_STUDIO_LOCKING=n

CONFIG_ZMK_KSCAN_DEBOUNCE_PRESS_MS=5
CONFIG_ZMK_KSCAN_DEBOUNCE_RELEASE_MS=7
Expand Down
11 changes: 0 additions & 11 deletions snippets/Solstice_US/Solstice_US.conf
Original file line number Diff line number Diff line change
@@ -1,13 +1,9 @@
CONFIG_ZMK_USB=y
CONFIG_ZMK_BLE=y
CONFIG_ZMK_POINTING=y
CONFIG_ZMK_MOUSE=y

CONFIG_INPUT=y
CONFIG_PINCTRL=y
CONFIG_NFCT_PINS_AS_GPIOS=y

CONFIG_ZMK_USB_LOGGING=y
CONFIG_LOG_PROCESS_THREAD_STARTUP_DELAY_MS=8000

CONFIG_RGBLED_WIDGET=y
Expand All @@ -16,21 +12,14 @@ CONFIG_RGBLED_WIDGET_BATTERY_LEVEL_HIGH=50
CONFIG_RGBLED_WIDGET_BATTERY_LEVEL_CRITICAL=10
CONFIG_RGBLED_WIDGET_SHOW_LAYER_CHANGE=y
CONFIG_RGBLED_WIDGET_LAYER_COLOR=7
CONFIG_RGBLED_WIDGET_BATTERY_SHOW_PERIPHERALS=y

CONFIG_ZMK_BATTERY_REPORTING=y
CONFIG_ZMK_SPLIT_BLE_CENTRAL_BATTERY_LEVEL_PROXY=y
CONFIG_ZMK_SPLIT_BLE_CENTRAL_BATTERY_LEVEL_FETCHING=y

CONFIG_ZMK_BLE_THREAD_STACK_SIZE=2048
CONFIG_ZMK_LOW_PRIORITY_THREAD_STACK_SIZE=2048
CONFIG_INPUT_THREAD_STACK_SIZE=2048
CONFIG_ZMK_SPLIT_BLE_PERIPHERAL_STACK_SIZE=2048
CONFIG_ZMK_SPLIT_BLE_CENTRAL_SPLIT_RUN_STACK_SIZE=3096
CONFIG_BT_CTLR_PHY_2M=n

CONFIG_ZMK_STUDIO=y
CONFIG_ZMK_STUDIO_LOCKING=n

CONFIG_ZMK_KSCAN_DEBOUNCE_PRESS_MS=5
CONFIG_ZMK_KSCAN_DEBOUNCE_RELEASE_MS=7
Expand Down
1 change: 1 addition & 0 deletions snippets/cdc-boot/cdc-boot.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
CONFIG_ZMK_CDC_ACM_BOOTLOADER_TRIGGER=y
6 changes: 6 additions & 0 deletions snippets/cdc-boot/cdc-boot.overlay
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/ {
bootloader_trigger: bootloader_trigger {
compatible = "zmk,cdc-acm-bootloader-trigger";
cdc-port = <&snippet_zmk_usb_logging_uart>;
};
};
4 changes: 4 additions & 0 deletions snippets/cdc-boot/snippet.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
name: cdc-boot
append:
EXTRA_DTC_OVERLAY_FILE: cdc-boot.overlay
EXTRA_CONF_FILE: cdc-boot.conf
Loading