fix: migrate eyelash_sofle board to Zephyr 4.x board format#3
Conversation
…board.yml Agent-Logs-Url: https://github.com/DarinRowe/zmk-sofle/sessions/d6c6f475-e7cc-4f82-a464-389bb5f94a68 Co-authored-by: DarinRowe <5706314+DarinRowe@users.noreply.github.com>
|
@copilot 还是会错误喔 |
Agent-Logs-Url: https://github.com/DarinRowe/zmk-sofle/sessions/4baf6f63-64ac-45cf-a730-89c6f816808c Co-authored-by: DarinRowe <5706314+DarinRowe@users.noreply.github.com>
找到了第二个问题:外部模块 由于 |
|
@copilot 检查下 |
- Remove CONFIG_WS2812_STRIP=y (undefined symbol in Zephyr 4.x; WS2812 SPI driver is auto-selected from DTS compatible node) - Remove deprecated SOC_DCDC_NRF52X/SOC_DCDC_NRF52X_HV Kconfig selects from Kconfig.defconfig; replace with DTS-based DCDC via ®0 - Remove deprecated BT_CTLR default from Kconfig.defconfig - Remove CONFIG_EC11=y/EC11_TRIGGER_GLOBAL_THREAD=y from left defconfig and user conf (auto-selected from DT; right board has no encoder) - Remove CONFIG_BT_CTLR_TX_PWR_PLUS_8=y from left defconfig (causes warning in settings_reset build where BLE is disabled) - Remove user-preference configs from board defconfig (passkey, bonds, USB manufacturer name) — kept in eyelash_sofle.conf where appropriate Agent-Logs-Url: https://github.com/DarinRowe/zmk-sofle/sessions/5c31c00a-c57d-4d5c-bc6f-41a90bda7a0d Co-authored-by: DarinRowe <5706314+DarinRowe@users.noreply.github.com>
找到并修复了第二轮构建错误(commit 问题根源(多个 Kconfig 警告在 Zephyr 4.x 中导致构建中止):
Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
Agent-Logs-Url: https://github.com/DarinRowe/zmk-sofle/sessions/5c31c00a-c57d-4d5c-bc6f-41a90bda7a0d Co-authored-by: DarinRowe <5706314+DarinRowe@users.noreply.github.com>
|
@copilot 现在的修改后还兼容我之前的键盘吗? |
兼容现有硬件,可以放心:这几次修改主要是把板卡描述迁到 Zephyr 4.x 要求的新格式,没有改矩阵引脚、左右半区板名、keymap 入口或 build.yaml 里的 需要区分两件事:
唯一我不敢 100% 打包票的是:如果你之前那把键盘额外依赖某个“靠旧 Kconfig 强行打开”的功能(尤其左侧 EC11 编码器),那部分我建议我再单独帮你核对一次;但就普通按键矩阵、左右分体、显示、RGB/背光这些,这次改动没有改硬件定义本身。 |
但我现在也没有旧版的固件备份,也没法试用这个新版,否则无法恢复 |
Agent-Logs-Url: https://github.com/DarinRowe/zmk-sofle/sessions/0cdeacf7-f861-480b-af36-85ec924cc539 Co-authored-by: DarinRowe <5706314+DarinRowe@users.noreply.github.com>
你这个担心是对的,我重新逐项核对后发现迁移时左侧 encoder 的启用行被我误删了,这确实会影响“旧键盘直接刷新版”的安全性。我已经在 所以结论更新为:
我会继续把这次修复的构建状态盯完,再给你一个明确的可刷/不可刷结论。 |
构建是通过了。 |
There was a problem hiding this comment.
Pull request overview
Migrates the eyelash_sofle split board definition to the Zephyr 4.x “new board format” (multi-board via board.yml + per-SOC DTS/defconfig + per-board Kconfig stubs), and updates the ZMK config to align with that layout.
Changes:
- Switch to Zephyr 4.x board discovery by adding
boards/arm/eyelash_sofle/board.ymland introducingKconfig.eyelash_sofle_left/right. - Restructure defconfigs to the per-SOC naming scheme (add
*_left_nrf52840_defconfig, trim redundant symbols from right defconfig, remove legacy left defconfig file). - Minor device-tree and config cleanups (enable
®0, remove trailing blank lines, updateeyelash_sofle.conf, and drop the extra west manifest project).
Reviewed changes
Copilot reviewed 13 out of 13 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| config/west.yml | Removes the eyelash_sofle project entry from the west manifest. |
| config/eyelash_sofle.conf | Updates board/user config options (notably trims some previously-set symbols and repositions ext power config). |
| boards/arm/eyelash_sofle/Kconfig.eyelash_sofle_right | Adds Zephyr-4-style per-board Kconfig entry for the right half. |
| boards/arm/eyelash_sofle/Kconfig.eyelash_sofle_left | Adds Zephyr-4-style per-board Kconfig entry for the left half. |
| boards/arm/eyelash_sofle/Kconfig.defconfig | Simplifies board defconfig defaults for Zephyr 4.x layout. |
| boards/arm/eyelash_sofle/Kconfig.board | Removes legacy board Kconfig definitions (replaced by per-board Kconfig files). |
| boards/arm/eyelash_sofle/eyelash_sofle.dtsi | Enables ®0 and adjusts node closure to fit the new addition. |
| boards/arm/eyelash_sofle/eyelash_sofle_right_nrf52840.dts | Removes a trailing blank line. |
| boards/arm/eyelash_sofle/eyelash_sofle_right_nrf52840_defconfig | Removes redundant SOC/BOARD symbols (now expected to come from board selection). |
| boards/arm/eyelash_sofle/eyelash_sofle_left_nrf52840.dts | Removes a trailing blank line. |
| boards/arm/eyelash_sofle/eyelash_sofle_left_nrf52840_defconfig | Adds per-SOC left defconfig file required by the new board format. |
| boards/arm/eyelash_sofle/eyelash_sofle_left_defconfig | Removes legacy left defconfig (replaced by per-SOC defconfig). |
| boards/arm/eyelash_sofle/board.yml | Adds Zephyr 4.x board metadata for eyelash_sofle_left/right with nrf52840. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| # SPDX-License-Identifier: MIT | ||
| # | ||
|
|
||
| config BOARD_EYELASH_SOFLE_RIGHT |
There was a problem hiding this comment.
BOARD_EYELASH_SOFLE_RIGHT is being defined here but the entry is missing a Kconfig type (e.g., bool). In the previous Kconfig.board this symbol was a bool, and without a type Kconfig can fail to parse or leave the symbol undefined. Add a bool (optionally with a prompt) before the select statements.
| config BOARD_EYELASH_SOFLE_RIGHT | |
| config BOARD_EYELASH_SOFLE_RIGHT | |
| bool |
| # SPDX-License-Identifier: MIT | ||
| # | ||
|
|
||
| config BOARD_EYELASH_SOFLE_LEFT |
There was a problem hiding this comment.
BOARD_EYELASH_SOFLE_LEFT is being defined here but the entry is missing a Kconfig type (e.g., bool). The removed Kconfig.board defined this as a bool, and omitting the type can cause Kconfig parse errors or leave the symbol undefined. Add a bool (optionally with a prompt) before the select statements.
| config BOARD_EYELASH_SOFLE_LEFT | |
| config BOARD_EYELASH_SOFLE_LEFT | |
| bool |
Uh oh!
There was an error while loading. Please reload this page.