Closed
feat: switch to CX40 dongle board and ZMK main (v0.4)#10
Conversation
Swap board from raytac_mdbt50q_rx to raytac_mdbt50q_cx_40 and point zmk-component-raytac-dongle to perrwa fork with CX40 support. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Test add cx40 and zmk0.4 changes
feat: switch to CX40 dongle board and ZMK main (v0.4)
Apr 12, 2026
There was a problem hiding this comment.
Pull request overview
Updates this ZMK config to test against upcoming ZMK v0.4 by switching all upstream references to main, and changes the dongle target to the CX-40 board variant.
Changes:
- Update
config/west.ymlto track ZMKmainand switch the Raytac dongle module remote toperrwa(also onmain). - Update
build.yamlto build the dongle firmware forraytac_mdbt50q_cx_40. - Update CI/release workflows to use ZMK’s reusable build workflow from
@main.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| config/west.yml | Moves ZMK/module revisions to main and switches dongle module remote to perrwa. |
| build.yaml | Changes dongle board in the build matrix to raytac_mdbt50q_cx_40. |
| .github/workflows/build.yml | Updates reusable workflow ref from @v0.3 to @main. |
| .github/workflows/release.yml | Updates reusable workflow ref from @v0.3 to @main. |
- build.yaml: raytac_mdbt50q_rx → raytac_mdbt50q_cx_40 - config/west.yml: zmk v0.3 → main, raytac dongle rschenk/v0.3 → perrwa/main - workflows: reusable workflow @v0.3 → @main Agent-Logs-Url: https://github.com/perrwa/zmk-config/sessions/74bb02a0-3a79-4f40-9a3a-15d2aa6edbfc Co-authored-by: perrwa <7255333+perrwa@users.noreply.github.com>
- nice_nano_v2 → nice_nano//zmk (revision-based naming + ZMK variant) - raytac_mdbt50q_cx_40 → mdbt50q_cx_40 (vendor prefix is now directory, not board name) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Zephyr 4.1's BLE controller + USB stack exceeds 256 KB RAM on this board without tuning. Disable logging, shrink BLE buffers, and reduce stack/heap sizes to fit within nRF52840 SRAM. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This reverts commit 5030f7a.
Add mdbt50q_rx + corne_dongle and mdbt50q_rx + settings_reset to build matrix to determine if Zephyr 4.1 RAM overflow affects all standalone nRF52840 boards or only CX-40. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
RX test complete — both boards need the extend variant fix. RX fails with Missing ZMK Compat (not RAM overflow). Results documented in perrwa/zmk-component-raytac-dongle#5. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Update build.yaml board name: mdbt50q_cx_40 → raytac_mdbt50q_cx_40_dongle//zmk Point west.yml to perrwa/fix-ram-overflow branch for testing. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Upstream Zephyr board raytac_mdbt50q_cx_40_dongle doesn't exist in ZMK's Zephyr fork (v4.1.0+zmk-fixes). Reverting to standalone board with ZMK_BOARD_COMPAT + RAM tuning in the dongle component. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
perrwa
force-pushed
the
copilot/test-add-cx40-zmk04-changes
branch
from
April 12, 2026 21:05
2de823a to
160a0dd
Compare
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Dongle: MDBT50Q-RX → MDBT50Q-CX-40, rschenk → perrwa fork - Board names: raytac_mdbt50q_rx → mdbt50q_cx_40, nice_nano_v2 → nice_nano//zmk - Release trigger: tag push v* → push to main - West manifest: ZMK v0.3 → ZMK main (v0.4) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
perrwa
force-pushed
the
copilot/test-add-cx40-zmk04-changes
branch
from
April 12, 2026 22:25
e6893d6 to
dd82bd7
Compare
Owner
|
✅ Build and draw both pass on ZMK v0.4 (main). CX-40 dongle config validated — closing since this was a test branch. |
perrwa
removed their request for review
April 13, 2026 03:34
unified board (nRF52840). Keep CX40 dongle as BLE central with corne_dongle shield unchanged. Changes: - Add boardsource/wireless-corne_zmk_config as west module - Update raytac dongle pin to latest main - Add blecorne.keymap wrapper (#include corne.keymap) - Add blecorne.conf symlink to corne.conf - Update build.yaml: blecorne_left/right with central=n override Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Symbol was removed in ZMK 0.4. RGB underglow=n is sufficient to disable LED driver. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Test branch combining CX-40 dongle support with ZMK main (upcoming v0.4). Rebased on
perrwa/cx40and points all ZMK references atmainbranch.build.yaml: Board names updated for ZMK v0.4 HWMv2 (nice_nano_v2→nice_nano//zmk,raytac_mdbt50q_rx→mdbt50q_cx_40)config/west.yml: ZMKv0.3→main, raytac dongleperrwa/add-cx40→perrwa/fix-ram-overflow@v0.3→@mainin bothbuild.ymlandrelease.ymlRelease workflow trigger
release.ymlnow triggers on push tomain(auto-builds firmware on merge) plus manualworkflow_dispatchwith an optional tag input for versioned releases. This replaces the previous tag-push (v*) trigger.main— intentional for testing. Pin tov0.4tags once ZMK cuts a release.