Skip to content

Conversation

@laride
Copy link
Collaborator

@laride laride commented Aug 6, 2025

此 PR 将 release.py 获取开发版的逻辑修改为遍历 main/boards/ 获取。release.py 保留了旧版本兼容性。

新增开发版需要定义 config.json 文件,并且 sdkconfig_append 需要包含 CONFIG_BOARD_TYPE_

另见 #1030

@laride laride marked this pull request as draft August 6, 2025 06:49
@laride laride force-pushed the ci/generate-from-config branch from 9436fdb to aeb0ba8 Compare August 6, 2025 06:53
@laride laride marked this pull request as ready for review August 6, 2025 07:28
@78
Copy link
Owner

78 commented Aug 6, 2025

那些没有 config.json 的 board,是因为一些原因无法直接编译,比如 bread-compact-wifi-lcd 是因为需要用户从 20 种屏幕类型里进行选择,然后才能编译固件。不知道有没有不动 config.json 的方案?

@laride
Copy link
Collaborator Author

laride commented Aug 7, 2025

那些没有 config.json 的 board,是因为一些原因无法直接编译,比如 bread-compact-wifi-lcd 是因为需要用户从 20 种屏幕类型里进行选择,然后才能编译固件。不知道有没有不动 config.json 的方案?

这种就编译一个默认的?

最近几个 PR 新增的 CI 是为了避免某个 PR 导致其他 board 出现编译问题的,没有自动发布之类的操作。

@78
Copy link
Owner

78 commented Aug 7, 2025

那些没有 config.json 的 board,是因为一些原因无法直接编译,比如 bread-compact-wifi-lcd 是因为需要用户从 20 种屏幕类型里进行选择,然后才能编译固件。不知道有没有不动 config.json 的方案?

这种就编译一个默认的?

最近几个 PR 新增的 CI 是为了避免某个 PR 导致其他 board 出现编译问题的,没有自动发布之类的操作。

之前的做法就是跳过,不编译,这类板子的固件也没有在 Releases 里发布。

@laride laride force-pushed the ci/generate-from-config branch from aeb0ba8 to 1ccac47 Compare August 8, 2025 11:42
@laride
Copy link
Collaborator Author

laride commented Aug 8, 2025

现在会自动跳过没有 config.json 的 board

for line in f:
if line.startswith("set(PROJECT_VER"):
return line.split("\"")[1].split("\"")[0].strip()
return line.split("\"")[1]
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

这里去掉了后面的还能工作吗?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

在目前的语法/版本号体系下可以工作

@laride laride force-pushed the ci/generate-from-config branch from 1ccac47 to ea98270 Compare August 22, 2025 09:32
@78
Copy link
Owner

78 commented Aug 22, 2025

我看到把 CONFIG_BOARD_TYPE_ESP_BOX_3 放到 config.json 的 sdkconfig_append 里了。最早是只有 board type,后来出现了变体,才在 config.json 里增加了 builds 来定义不同的变体。board type 应该是跟开发板目录相关的,所以不同的 builds 应该是同一个 board type,CONFIG_BOARD_TYPE_xxx 不应该用来区分变体,不然这个命名可能需要调整,以避免混淆。

@laride
Copy link
Collaborator Author

laride commented Aug 22, 2025

board type 应该是跟开发板目录相关的,所以不同的 builds 应该是同一个 board type,CONFIG_BOARD_TYPE_xxx 不应该用来区分变体,不然这个命名可能需要调整,以避免混淆。

#1030 里有几个开发版是 board type (目录) 相同用 CONFIG_BOARD_TYPE_ 区分的,为了兼容才将 CONFIG_BOARD_TYPE_ 加到了 config.json

@78
Copy link
Owner

78 commented Aug 22, 2025

除了将 CONFIG_BOARD_TYPE_ 加到了 config.json 还有别的办法吗? 或者我认为可以跳过有变体的这个场景。

@laride
Copy link
Collaborator Author

laride commented Aug 22, 2025

除了将 CONFIG_BOARD_TYPE_ 加到了 config.json 还有别的办法吗? 或者我认为可以跳过有变体的这个场景。

可能需要引入一些约定,比如在解析 CMakeLists.txt 时遇到一个 board type 对应多个 CONFIG_BOARD_TYPE_ 时应当选择哪一个编译等等。

@laride laride force-pushed the ci/generate-from-config branch from ea98270 to 97ee929 Compare September 25, 2025 03:50
@78 78 merged commit e7fc9ed into 78:main Sep 25, 2025
2 checks passed
Wvirgil123 added a commit to Wvirgil123/xiaozhi-esp32 that referenced this pull request Sep 30, 2025
* main: (43 commits)
  OTTO 左右腿反了 (78#1239)
  Bump to 2.0.3 (78#1241)
  fix emote display errors (78#1240)
  fix:小智云聊some bugfix (78#1238)
  ci: support multiple variants per board (78#1036)
  添加太极派双声道配置 (78#1235)
  fix multiple wakenet words and custom wake word (78#1226)
  添加 Waveshare ESP32-S3-Touch-LCD-3.49 (78#1227)
  New Waveshare ESP32-S3-Touch-LCD-4B third party board, 86 box form. (78#1199)
  feat: add emote style for v2 (78#1217)
  ESP32 Wifi And 4G Merge In All (78#1219)
  fix: Add function to handle local asset file paths
  Detect wake word model from index.json (78#1211)
  fix: Corrected the inverted touch screen parameter configuration of lichuang_S3_dev, which caused touch offset. (78#1209)
  fix multinet model for v2 (78#1208)
  fix: ESP-HI audio sampling problem (78#1207)
  feat: build default assets instead of downloading and v2 tables for esp-hi, echoear (78#1203)
  regenerate jpeg encoder (78#1198)
  Bump to 2.0.1
  feat: add snapshot mcp tool (78#1196)
  ...
Cmdmac pushed a commit to Cmdmac/xiaozhi-esp32 that referenced this pull request Oct 14, 2025
78 pushed a commit that referenced this pull request Nov 3, 2025
78 added a commit that referenced this pull request Nov 3, 2025
* fix: Corrected the inverted touch screen parameter configuration of lichuang_S3_dev, which caused touch offset. (#1209)

* ci: support multiple variants per board (#1036)

* fix release.py

* OTTO 左右腿反了 (#1239)

* Change the button array to ADC buttons as in the board for esp32s3-korv2 (#1256)

* Change the button array to ADC buttons as in the board for esp32s3-korv2

* Add MuteVol function to control audio volume

* Optimize AdcBatteryMonitor to work without charge detection pin. (#1276)

Co-authored-by: Yuv Zhao <[email protected]>

* 修复charging_pin为NC充电时Battery Level不更新的问题 (#1316)

Co-authored-by: Yuv Zhao <[email protected]>

* Bump to 1.9.4

---------

Co-authored-by: ZhouShaoYuan <[email protected]>
Co-authored-by: laride <[email protected]>
Co-authored-by: Toby <[email protected]>
Co-authored-by: masc2008 <[email protected]>
Co-authored-by: konglingboy <[email protected]>
Co-authored-by: Yuv Zhao <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants