feat: update esp-sr and enable ESP32-P4 rev1 builds
This commit is contained in:
@@ -14,10 +14,10 @@ As a voice interaction entry, the XiaoZhi AI chatbot leverages the AI capabiliti
|
||||
|
||||
## Recent Updates
|
||||
|
||||
- The mainline now targets ESP-IDF v6.0 or later, with v6.0.2 as the preferred stable SDK. The complete 157-variant release matrix has been validated on ESP-IDF v6.0.1.
|
||||
- The mainline now targets ESP-IDF v6.0 or later, with v6.0.2 as the preferred stable SDK. The previous 157-variant baseline was validated on ESP-IDF v6.0.1; the current matrix contains 172 variants after enabling ESP32-P4 Rev < 3 builds with ESP-SR 2.4.7.
|
||||
- MQTT and BluFi cryptographic code has migrated to PSA Crypto. IDF 6 component splits and third-party dependency compatibility have also been addressed.
|
||||
- Audio pipeline concurrency, MQTT/UDP packet validation, and release-matrix selection have been hardened.
|
||||
- ESP-IDF v5.5 is retained only for legacy hardware paths, including pre-v3 ESP32-P4 silicon. See the [ESP-IDF 6.0 Migration Guide](docs/esp-idf-6-migration.md) for full compatibility and board-validation details.
|
||||
- ESP-IDF v5.5 is retained only for documented legacy boards. ESP32-P4 Rev1 and Rev3 are both supported on IDF 6 with ESP-SR 2.4.7; see the [ESP-IDF 6.0 Migration Guide](docs/esp-idf-6-migration.md) for full compatibility and board-validation details.
|
||||
|
||||
### Features Implemented
|
||||
|
||||
@@ -47,7 +47,7 @@ Breadboard demo:
|
||||
|
||||

|
||||
|
||||
### Supports 137 Board Directories and 157 Release Variants (Partial List)
|
||||
### Supports 138 Board Directories and 172 Release Variants (Partial List)
|
||||
|
||||
- <a href="https://oshwhub.com/li-chuang-kai-fa-ban/li-chuang-shi-zhan-pai-esp32-s3-kai-fa-ban" target="_blank" title="LiChuang ESP32-S3 Development Board">LiChuang ESP32-S3 Development Board</a>
|
||||
- <a href="https://github.com/espressif/esp-box" target="_blank" title="Espressif ESP32-S3-BOX3">Espressif ESP32-S3-BOX3</a>
|
||||
|
||||
+3
-3
@@ -14,10 +14,10 @@
|
||||
|
||||
## 最近の更新
|
||||
|
||||
- メインラインはESP-IDF v6.0以降へ移行し、推奨安定版はv6.0.2です。全157リリースバリアントはESP-IDF v6.0.1でビルド検証済みです。
|
||||
- メインラインはESP-IDF v6.0以降へ移行し、推奨安定版はv6.0.2です。従来の157リリースバリアントはESP-IDF v6.0.1でビルド検証済みで、ESP-SR 2.4.7によってESP32-P4 Rev < 3を有効化した現在のマトリクスは172バリアントです。
|
||||
- MQTTとBluFiの暗号処理をPSA Cryptoへ移行し、IDF 6のコンポーネント分割およびサードパーティ依存関係にも対応しました。
|
||||
- オーディオパイプラインの並行処理、MQTT/UDPパケット検証、リリースマトリクス選択処理を強化しました。
|
||||
- ESP-IDF v5.5は、ESP32-P4 v3より前のシリコンを含む旧ハードウェア互換用途にのみ残しています。詳細な互換性とボード検証状況は、[ESP-IDF 6.0移行ガイド](docs/esp-idf-6-migration.md)を参照してください。
|
||||
- ESP-IDF v5.5は、文書で明記された旧式ボード向けにのみ残しています。ESP-SR 2.4.7を使用すると、ESP32-P4 Rev1とRev3の両方がIDF 6に対応します。詳細な互換性とボード検証状況は、[ESP-IDF 6.0移行ガイド](docs/esp-idf-6-migration.md)を参照してください。
|
||||
|
||||
### 実装済み機能
|
||||
|
||||
@@ -47,7 +47,7 @@ Feishuドキュメントチュートリアルをご覧ください:
|
||||
|
||||

|
||||
|
||||
### 137のボードディレクトリと157のリリースバリアントに対応(一部のみ表示)
|
||||
### 138のボードディレクトリと172のリリースバリアントに対応(一部のみ表示)
|
||||
|
||||
- <a href="https://oshwhub.com/li-chuang-kai-fa-ban/li-chuang-shi-zhan-pai-esp32-s3-kai-fa-ban" target="_blank" title="立創・実戦派 ESP32-S3 開発ボード">立創・実戦派 ESP32-S3 開発ボード</a>
|
||||
- <a href="https://github.com/espressif/esp-box" target="_blank" title="楽鑫 ESP32-S3-BOX3">楽鑫 ESP32-S3-BOX3</a>
|
||||
|
||||
+3
-3
@@ -14,10 +14,10 @@
|
||||
|
||||
## 近期更新
|
||||
|
||||
- 项目主线现已迁移到 ESP-IDF v6.0 或以上版本,首选稳定版为 v6.0.2;完整的 157 个发布变体已在 ESP-IDF v6.0.1 上通过构建验证。
|
||||
- 项目主线现已迁移到 ESP-IDF v6.0 或以上版本,首选稳定版为 v6.0.2;此前的 157 个发布变体已在 ESP-IDF v6.0.1 上通过构建验证,使用 ESP-SR 2.4.7 启用 ESP32-P4 Rev < 3 后,当前矩阵包含 172 个变体。
|
||||
- MQTT 和 BluFi 加密已迁移到 PSA Crypto,同时完成了 IDF 6 组件拆分及第三方依赖兼容处理。
|
||||
- 加固了音频流水线并发、MQTT/UDP 数据包校验和发布矩阵选择逻辑。
|
||||
- ESP-IDF v5.5 仅保留用于旧版硬件兼容,包括 ESP32-P4 v3 之前的芯片版本。完整兼容性和板卡验证状态请参阅 [ESP-IDF 6.0 迁移文档](docs/esp-idf-6-migration.md)。
|
||||
- ESP-IDF v5.5 仅保留用于文档明确标注的旧版板卡;使用 ESP-SR 2.4.7 时,ESP32-P4 Rev1 和 Rev3 均支持 IDF 6。完整兼容性和板卡验证状态请参阅 [ESP-IDF 6.0 迁移文档](docs/esp-idf-6-migration.md)。
|
||||
|
||||
### 已实现功能
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
|
||||

|
||||
|
||||
### 支持 137 个板卡目录、157 个固件发布变体(仅展示部分)
|
||||
### 支持 138 个板卡目录、172 个固件发布变体(仅展示部分)
|
||||
|
||||
- <a href="https://oshwhub.com/li-chuang-kai-fa-ban/li-chuang-shi-zhan-pai-esp32-s3-kai-fa-ban" target="_blank" title="立创·实战派 ESP32-S3 开发板">立创·实战派 ESP32-S3 开发板</a>
|
||||
- <a href="https://github.com/espressif/esp-box" target="_blank" title="乐鑫 ESP32-S3-BOX3">乐鑫 ESP32-S3-BOX3</a>
|
||||
|
||||
+15
-13
@@ -1,20 +1,21 @@
|
||||
# ESP-IDF 6.0 Migration and Board Compatibility Status
|
||||
|
||||
> Last updated: 2026-07-17
|
||||
> Last updated: 2026-07-24
|
||||
> Validated SDK: ESP-IDF v6.0.1
|
||||
> Scope: 137 board directories and 157 supported build variants defined by `main/boards/**/config.json`.
|
||||
> Scope: 138 board directories and 172 supported build variants defined by `main/boards/**/config.json`.
|
||||
|
||||
## Current Status
|
||||
|
||||
All 157 IDF 6 variants are build-compatible with ESP-IDF 6.0.1 and passed the latest complete GitHub Actions matrix. Fourteen legacy ESP32-P4 Rev < 3 variants are excluded from the IDF 6 matrix but remain available when building with ESP-IDF < 6. Component versions that use ranges are resolved from the Component Registry at build time; until per-target lock snapshots are committed, this is a source-reproducible build rather than a bit-for-bit dependency-reproducible build.
|
||||
The current IDF 6 release selection contains 172 variants. The previous 157-variant baseline passed the latest complete GitHub Actions matrix on ESP-IDF 6.0.1. ESP-SR 2.4.7 adds IDF 6 support for ESP32-P4 Rev < 3, so the 14 unsuffixed Rev1 variants now join their existing `-p4x` Rev3 counterparts in the IDF 6 matrix. Component versions that use ranges are resolved from the Component Registry at build time; until per-target lock snapshots are committed, this is a source-reproducible build rather than a bit-for-bit dependency-reproducible build.
|
||||
|
||||
| Status | Variants | Meaning |
|
||||
|---|---:|---|
|
||||
| ✅ Build-compatible | 157 | All 157 full builds completed in GitHub Actions with ESP-IDF 6.0.1; this does not imply hardware or complete peripheral validation |
|
||||
| ✅ Previously matrix-validated | 157 | All 157 baseline builds completed in GitHub Actions with ESP-IDF 6.0.1; this does not imply hardware or complete peripheral validation |
|
||||
| 🟡 Added since full-matrix validation | 15 | Includes the 14 newly enabled P4 Rev1 variants; representative validation is recorded below and a complete 172-variant CI run remains pending |
|
||||
| 🟡 Feature-degraded subset | 1 | `esp-vocat` builds on IDF 6, but its PCB capacitive slider/button support is disabled pending compatible touch-sensor components |
|
||||
| 🔴 Build-blocked | 0 | No supported release variant remains blocked at compile or link time |
|
||||
|
||||
There are no remaining IDF 6 build blockers. [`78/esp_lcd_nv3023 1.0.1`](https://components.espressif.com/components/78/esp_lcd_nv3023/versions/1.0.1) and [`wvirgil123/sscma_client 1.0.3`](https://components.espressif.com/components/wvirgil123/sscma_client/versions/1.0.3/readme) are consumed directly from the Component Registry, so local copies under the ignored `components/` directory are not required. ESP32-P4 Rev < 3 remains on the ESP-IDF 5.5 legacy build path, while the IDF 6 matrix supports ESP32-P4 v3.x.
|
||||
There are no known remaining IDF 6 build blockers. [`78/esp_lcd_nv3023 1.0.1`](https://components.espressif.com/components/78/esp_lcd_nv3023/versions/1.0.1) and [`wvirgil123/sscma_client 1.0.3`](https://components.espressif.com/components/wvirgil123/sscma_client/versions/1.0.3/readme) are consumed directly from the Component Registry, so local copies under the ignored `components/` directory are not required. ESP32-P4 Rev1 and Rev3 now share the IDF 6 build path while retaining separate artifact names and silicon-selection settings.
|
||||
|
||||
Representative local full-build results are shown below. Firmware size and free space are reported by ESP-IDF 6.0.1 `check_sizes.py`. The authoritative per-variant compatibility result is the full GitHub Actions matrix in the next section.
|
||||
|
||||
@@ -33,16 +34,17 @@ Representative local full-build results are shown below. Firmware size and free
|
||||
| ESP32-S3 | `otto-robot` | `0x37ff70` | 11% |
|
||||
| ESP32-S3 | `esp-vocat` | `0x2742f0` | 38% |
|
||||
| ESP32-S3 | `sensecap-watcher` | `0x2faff0` | 25% |
|
||||
| ESP32-P4 v3.x | `esp-p4-function-ev-board-p4x` | `0x385420` | 11% |
|
||||
| ESP32-P4 Rev1 | `esp-p4-function-ev-board` | `0x345a90` | 17% |
|
||||
| ESP32-P4 Rev3 | `esp-p4-function-ev-board-p4x` | `0x34a150` | 16% |
|
||||
| ESP32-P4 v3.x | `m5stack-tab5-p4x` | `0x380790` | 11% |
|
||||
|
||||
As a negative test, `esp-p4-function-ev-board` (legacy P4 Rev < 3) was rejected as expected by `esp-sr 2.4.6` during IDF 6.0.1 configuration. Legacy P4 variants are therefore version-gated to ESP-IDF < 6 instead of being carried as permanent IDF 6 blockers.
|
||||
The old negative result for `esp-p4-function-ev-board` came from ESP-SR 2.4.6. ESP-SR 2.4.7 supplies the missing ESP32-P4 Rev < 3 libraries for IDF 6, so the project no longer version-gates the unsuffixed P4 variants.
|
||||
|
||||
For backward-compatibility regression coverage, `xmini-c3` also completed a full build with ESP-IDF 5.5.4 (application size `0x234920`, 44% free in the smallest app partition). The legacy `esp-p4-function-ev-board` release variant subsequently completed the same 5.5.4 release flow (application size `0x38a130`, 10% free), including merged-binary packaging. This confirms that the compatibility changes for I2S port numbering, LCD I2C configuration, the UHCI DMA dependency, and the pre-v3 P4 selection did not break the existing 5.5 build chain.
|
||||
|
||||
## Full-Matrix CI Validation
|
||||
|
||||
GitHub Actions run [29534954031](https://github.com/78/xiaozhi-esp32/actions/runs/29534954031) built the complete matrix with the `espressif/idf:v6.0.1` container. The matrix-generation job and all 157 board builds passed.
|
||||
GitHub Actions run [29534954031](https://github.com/78/xiaozhi-esp32/actions/runs/29534954031) built the then-current matrix with the `espressif/idf:v6.0.1` container. The matrix-generation job and all 157 board builds passed. This historical run predates the 172-variant matrix.
|
||||
|
||||
Results by chip target:
|
||||
|
||||
@@ -60,14 +62,14 @@ Results by chip target:
|
||||
|
||||
## ESP32-P4 Silicon Scope and Naming
|
||||
|
||||
The IDF 6 release matrix supports only ESP32-P4 v3.x silicon. Each legacy Rev < 3 build keeps its original name and contains `idf_version: "<6.0"`. Variant selection behaves as follows:
|
||||
The IDF 6 release matrix supports both ESP32-P4 Rev < 3 and Rev >= 3 silicon. The two silicon families keep distinct artifact names and sdkconfig settings:
|
||||
|
||||
| SDK | ESP32-P4 Rev < 3 | ESP32-P4 Rev >= 3 |
|
||||
|---|---|---|
|
||||
| ESP-IDF < 6 | Original name without a suffix; adds `CONFIG_ESP32P4_SELECTS_REV_LESS_V3=y` and `CONFIG_ESP32P4_REV_MIN_100=y` | Original name plus `-p4x` |
|
||||
| ESP-IDF >= 6 | Not listed or built | `-p4x` |
|
||||
| ESP-IDF >= 6 | Original name without a suffix; adds `CONFIG_ESP32P4_SELECTS_REV_LESS_V3=y` and `CONFIG_ESP32P4_REV_MIN_100=y` | Original name plus `-p4x` |
|
||||
|
||||
This restores the historical artifact names and keeps the IDF 6 matrix at 157 variants. The IDF 5.5 selection contains 171 variants: 14 P4 `-p4x` artifacts, 14 legacy-P4 artifacts with their original unsuffixed names, and 143 non-P4 variants.
|
||||
Both ESP-IDF 5.5 and ESP-IDF 6 now select 172 variants: 14 P4 `-p4x` artifacts, 14 Rev < 3 P4 artifacts with their original unsuffixed names, and 144 non-P4 variants.
|
||||
|
||||
Espressif's current chip-identification table lists v0.0, v1.0, v1.3, v3.0, v3.1, and v3.2, with no v4.0 revision. The public errata history added v3.0/v3.1 information on 2026-02-12 and v3.2 information on 2026-04-20. ESP-IDF 6.0 release notes explicitly describe support for "ESP32-P4 Version3 silicon." See the official [chip revision identification](https://docs.espressif.com/projects/esp-chip-errata/en/latest/esp32p4/01-chip-identification/index.html), [errata revision history](https://docs.espressif.com/projects/esp-chip-errata/en/latest/esp32p4/revision-history/index.html), and [ESP-IDF releases](https://github.com/espressif/esp-idf/releases).
|
||||
|
||||
@@ -94,7 +96,7 @@ Espressif's current chip-identification table lists v0.0, v1.0, v1.3, v3.0, v3.1
|
||||
| BluFi security negotiation (conditional path) | PSA FFDH + SHA-256 + AES-CTR | ✅ Ported | Uses the ESP-IDF 6 security scheme with ffdhe3072 and passed local full ESP32-S3 builds with BluFi enabled on IDF 5.5.4 and 6.0.1. Legacy 1024-bit BluFi clients are not compatible and must be upgraded |
|
||||
| `espressif/bmi270_sensor` | [`0.1.2`](https://components.espressif.com/components/espressif/bmi270_sensor/versions/0.1.2/readme?language=en) | ✅ Upstream support | Provides IDF 6.0 prebuilt libraries for ESP32-C5 and ESP32-S3; validated by a full `esp-spot-c5` build |
|
||||
| `touch_slider_sensor` / `touch_button_sensor` | Disabled for IDF 6 | 🟡 Feature gap | Their manifests require IDF < 6.0, so ESP Vocat omits its PCB capacitive slider/button path on IDF 6. CST816 display touch is unaffected |
|
||||
| ESP32-P4 Rev < 3 / `espressif/esp-sr` | Version-gated to IDF < 6 | 🟡 Legacy SDK path | The 14 legacy variants are restored for IDF 5.5 builds. They remain excluded from IDF 6 because `esp-sr 2.4.6` rejects the old-silicon configuration; ESP32-P4 v3.x is unaffected |
|
||||
| ESP32-P4 Rev < 3 / `espressif/esp-sr` | `~2.4.7` | ✅ Upstream support | The 14 unsuffixed Rev1 variants are available on IDF 5.5 and IDF 6; `-p4x` continues to select Rev >= 3 |
|
||||
|
||||
## Per-Board Progress
|
||||
|
||||
@@ -234,7 +236,7 @@ In the table below, "Board" is the source directory and "Build variant" is the f
|
||||
| `esp32s3` | `zhengchen-1.54tft-wifi` | `zhengchen-1.54tft-wifi` | ✅ Full build passed | GitHub Actions IDF 6.0.1 full build | Hardware smoke/peripheral regression pending |
|
||||
| `esp32s3` | `zhengchen-cam` | `zhengchen-cam` | ✅ Full build passed | GitHub Actions IDF 6.0.1 full build | Hardware smoke/peripheral regression pending |
|
||||
| `esp32s3` | `zhengchen-cam-ml307` | `zhengchen-cam-ml307` | ✅ Full build passed | GitHub Actions IDF 6.0.1 full build | Hardware smoke/peripheral regression pending |
|
||||
| `esp32p4` | `esp-p4-function-ev-board` | `esp-p4-function-ev-board-p4x` | ✅ Full build passed | IDF 6.0.1 `idf.py build` | Hardware smoke/peripheral regression pending |
|
||||
| `esp32p4` | `esp-p4-function-ev-board` | `esp-p4-function-ev-board`<br>`esp-p4-function-ev-board-p4x` | ✅ Full builds passed | IDF 6.0.1 canonical release builds with ESP-SR 2.4.7 for Rev1 and Rev3 | Hardware smoke/peripheral regression pending |
|
||||
| `esp32p4` | `m5stack-tab5` | `m5stack-tab5-p4x` | ✅ Full build passed | GitHub Actions IDF 6.0.1 full build | Hardware smoke/peripheral regression pending |
|
||||
| `esp32p4` | `waveshare/esp32-p4-nano` | `waveshare-esp32-p4-nano-10.1-a-p4x` | ✅ Full build passed | GitHub Actions IDF 6.0.1 full build | Hardware smoke/peripheral regression pending |
|
||||
| `esp32p4` | `waveshare/esp32-p4-wifi6-touch-lcd` | `waveshare-esp32-p4-wifi6-touch-lcd-4b-p4x`<br>`waveshare-esp32-p4-wifi6-touch-lcd-4.3-p4x`<br>`waveshare-esp32-p4-wifi6-touch-lcd-5-p4x`<br>`waveshare-esp32-p4-wifi6-touch-lcd-7b-p4x`<br>`waveshare-esp32-p4-wifi6-touch-lcd-3.4c-p4x`<br>`waveshare-esp32-p4-wifi6-touch-lcd-4c-p4x`<br>`waveshare-esp32-p4-wifi6-touch-lcd-7-p4x`<br>`waveshare-esp32-p4-wifi6-touch-lcd-8-p4x`<br>`waveshare-esp32-p4-wifi6-touch-lcd-10.1-p4x` | ✅ Full build passed | GitHub Actions IDF 6.0.1 full build | Hardware smoke/peripheral regression pending |
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
"builds": [
|
||||
{
|
||||
"name": "esp-p4-function-ev-board",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_SLAVE_IDF_TARGET_ESP32C6=y",
|
||||
"CONFIG_ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD=y",
|
||||
|
||||
@@ -8,16 +8,17 @@
|
||||
|
||||
## 基础使用
|
||||
|
||||
* idf version: v5.5.2 or above (recommended: v6.0-dev)
|
||||
* idf version: v5.5.2 or above (recommended: v6.0.2)
|
||||
|
||||
* No dependency override needed — the project already specifies the correct `esp_video` and `esp_ipa` versions in `main/idf_component.yml`. Do NOT change the dependency versions unless you are also modifying the source code to match the older API.
|
||||
|
||||
`release.py` 会根据当前 ESP-IDF 版本选择芯片版本:
|
||||
|
||||
- ESP-IDF < 6:`m5stack-tab5` 面向 Rev < 3,并包含 `CONFIG_ESP32P4_SELECTS_REV_LESS_V3=y` 和 `CONFIG_ESP32P4_REV_MIN_100=y`;`m5stack-tab5-p4x` 面向 Rev >= 3。
|
||||
- ESP-IDF >= 6:只提供面向 Rev >= 3 的 `m5stack-tab5-p4x`。
|
||||
- `m5stack-tab5` 面向 Rev < 3,并包含 `CONFIG_ESP32P4_SELECTS_REV_LESS_V3=y` 和 `CONFIG_ESP32P4_REV_MIN_100=y`。
|
||||
- `m5stack-tab5-p4x` 面向 Rev >= 3。
|
||||
- ESP-IDF 6 构建需要 `esp-sr` 2.4.7 或更高版本,两个芯片修订版均可用。
|
||||
|
||||
不要把 IDF 6 生成的固件强制刷入 Rev 1.x 芯片;正常情况下烧录工具会报告:`bootloader/bootloader.bin requires chip revision in range [v3.0 - v3.99] (this chip is revision v1.x)`。
|
||||
不要把 `m5stack-tab5-p4x` 固件强制刷入 Rev 1.x 芯片;应改用无后缀的 `m5stack-tab5` 固件。误用 P4X 固件时,正常情况下烧录工具会报告:`bootloader/bootloader.bin requires chip revision in range [v3.0 - v3.99] (this chip is revision v1.x)`。
|
||||
|
||||
1. 使用 release.py 编译
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
"builds": [
|
||||
{
|
||||
"name": "m5stack-tab5",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_BOARD_TYPE_M5STACK_CORE_TAB5=y",
|
||||
"CONFIG_CAMERA_SC202CS=y",
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
"builds": [
|
||||
{
|
||||
"name": "esp32-p4-nano-10.1-a",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_USE_WECHAT_MESSAGE_STYLE=y",
|
||||
"CONFIG_CAMERA_OV5647=y",
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
"builds": [
|
||||
{
|
||||
"name": "esp32-p4-wifi6-touch-lcd-3.5",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=0",
|
||||
"CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH=y",
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
"builds": [
|
||||
{
|
||||
"name": "esp32-p4-wifi6-touch-lcd-4b",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=0",
|
||||
"CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH=y",
|
||||
@@ -35,7 +34,6 @@
|
||||
},
|
||||
{
|
||||
"name": "esp32-p4-wifi6-touch-lcd-4.3",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=0",
|
||||
"CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH=y",
|
||||
@@ -66,7 +64,6 @@
|
||||
},
|
||||
{
|
||||
"name": "esp32-p4-wifi6-touch-lcd-5",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=0",
|
||||
"CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH=y",
|
||||
@@ -97,7 +94,6 @@
|
||||
},
|
||||
{
|
||||
"name": "esp32-p4-wifi6-touch-lcd-7b",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=0",
|
||||
"CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH=y",
|
||||
@@ -134,7 +130,6 @@
|
||||
},
|
||||
{
|
||||
"name": "esp32-p4-wifi6-touch-lcd-3.4c",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=0",
|
||||
"CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH=y",
|
||||
@@ -165,7 +160,6 @@
|
||||
},
|
||||
{
|
||||
"name": "esp32-p4-wifi6-touch-lcd-4c",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=0",
|
||||
"CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH=y",
|
||||
@@ -196,7 +190,6 @@
|
||||
},
|
||||
{
|
||||
"name": "esp32-p4-wifi6-touch-lcd-7",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=0",
|
||||
"CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH=y",
|
||||
@@ -227,7 +220,6 @@
|
||||
},
|
||||
{
|
||||
"name": "esp32-p4-wifi6-touch-lcd-8",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=0",
|
||||
"CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH=y",
|
||||
@@ -258,7 +250,6 @@
|
||||
},
|
||||
{
|
||||
"name": "esp32-p4-wifi6-touch-lcd-10.1",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=0",
|
||||
"CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH=y",
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
"builds": [
|
||||
{
|
||||
"name": "wireless-tag-wtp4c5mp07s",
|
||||
"idf_version": "<6.0",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_USE_WECHAT_MESSAGE_STYLE=n",
|
||||
"CONFIG_SLAVE_IDF_TARGET_ESP32C5=y",
|
||||
|
||||
@@ -33,7 +33,7 @@ dependencies:
|
||||
78/xiaozhi-fonts: ~2.0.0
|
||||
espressif/led_strip: ~3.0.2
|
||||
espressif/esp_codec_dev: ~1.5.6
|
||||
espressif/esp-sr: ~2.4.6
|
||||
espressif/esp-sr: ~2.4.7
|
||||
espressif/button: ~4.2.0
|
||||
espressif/knob: ^1.0.0
|
||||
esphome/esp-hub75:
|
||||
|
||||
@@ -21,15 +21,17 @@ class VersionTests(unittest.TestCase):
|
||||
with self.assertRaises(ValueError):
|
||||
release._version_matches((6, 0, 1), "~=6.0")
|
||||
|
||||
def test_current_matrix_counts_and_uniqueness(self):
|
||||
def test_current_matrix_uniqueness_and_p4_variants(self):
|
||||
idf5 = release._collect_variants(idf_version=(5, 5, 4))
|
||||
idf6 = release._collect_variants(idf_version=(6, 0, 1))
|
||||
self.assertEqual(len(idf5), 172)
|
||||
self.assertEqual(len(idf6), 158)
|
||||
for variants in (idf5, idf6):
|
||||
names = [variant["full_name"] for variant in variants]
|
||||
self.assertEqual(len(names), len(set(names)))
|
||||
|
||||
idf6_names = {variant["full_name"] for variant in idf6}
|
||||
self.assertIn("esp-p4-function-ev-board", idf6_names)
|
||||
self.assertIn("esp-p4-function-ev-board-p4x", idf6_names)
|
||||
|
||||
|
||||
class BoardSelectionTests(unittest.TestCase):
|
||||
def setUp(self):
|
||||
|
||||
Reference in New Issue
Block a user