From 4666ecef82260aaf43897700db1f72b61f5f52e0 Mon Sep 17 00:00:00 2001 From: Alex Szasz Date: Thu, 19 Feb 2026 10:52:47 +0200 Subject: [PATCH] Add support for both hardware versions of waveshare-s3-epaper-1.54 (#1583) * Add support for both hardware versions of waveshare-s3-epaper-1.54 * use v2 partition, reduced assets partition by 300k so that the app would fit * add manufacturer * updated readme * CONFIG_SR_WN_WN9_NIHAOXIAOZHI_TTS=n to save space * no custom font --- main/CMakeLists.txt | 5 ++++- main/Kconfig.projbuild | 7 +++++-- .../waveshare/esp32-s3-epaper-1.54/README.md | 15 +++++++++++---- .../waveshare/esp32-s3-epaper-1.54/config.json | 10 +++++++++- partitions/v2/4m.csv | 4 ++-- 5 files changed, 31 insertions(+), 10 deletions(-) diff --git a/main/CMakeLists.txt b/main/CMakeLists.txt index 249db54f..53f91c32 100644 --- a/main/CMakeLists.txt +++ b/main/CMakeLists.txt @@ -351,7 +351,10 @@ elseif(CONFIG_BOARD_TYPE_WAVESHARE_ESP32_S3_TOUCH_LCD_3_5B) set(BUILTIN_TEXT_FONT font_puhui_basic_16_4) set(BUILTIN_ICON_FONT font_awesome_16_4) set(DEFAULT_EMOJI_COLLECTION twemoji_32) -elseif(CONFIG_BOARD_TYPE_WAVESHARE_ESP32_S3_ePaper_1_54) +elseif(CONFIG_BOARD_TYPE_WAVESHARE_ESP32_S3_ePaper_1_54_v1) + set(MANUFACTURER "waveshare") + set(BOARD_TYPE "esp32-s3-epaper-1.54") +elseif(CONFIG_BOARD_TYPE_WAVESHARE_ESP32_S3_ePaper_1_54_v2) set(MANUFACTURER "waveshare") set(BOARD_TYPE "esp32-s3-epaper-1.54") set(BUILTIN_TEXT_FONT font_puhui_basic_20_4) diff --git a/main/Kconfig.projbuild b/main/Kconfig.projbuild index 70c7fc3c..ca8abf7b 100644 --- a/main/Kconfig.projbuild +++ b/main/Kconfig.projbuild @@ -323,8 +323,11 @@ choice BOARD_TYPE config BOARD_TYPE_WAVESHARE_ESP32_S3_TOUCH_LCD_3_5 bool "Waveshare ESP32-S3-Touch-LCD-3.5" depends on IDF_TARGET_ESP32S3 - config BOARD_TYPE_WAVESHARE_ESP32_S3_ePaper_1_54 - bool "Waveshare ESP32-S3-ePaper-1.54" + config BOARD_TYPE_WAVESHARE_ESP32_S3_ePaper_1_54_v1 + bool "Waveshare ESP32-S3-ePaper-1.54_v1" + depends on IDF_TARGET_ESP32S3 + config BOARD_TYPE_WAVESHARE_ESP32_S3_ePaper_1_54_v2 + bool "Waveshare ESP32-S3-ePaper-1.54_v2" depends on IDF_TARGET_ESP32S3 config BOARD_TYPE_WAVESHARE_ESP32_S3_RLCD_4_2 bool "Waveshare ESP32-S3-RLCD-4.2" diff --git a/main/boards/waveshare/esp32-s3-epaper-1.54/README.md b/main/boards/waveshare/esp32-s3-epaper-1.54/README.md index db9ac2ab..4aaebb8a 100644 --- a/main/boards/waveshare/esp32-s3-epaper-1.54/README.md +++ b/main/boards/waveshare/esp32-s3-epaper-1.54/README.md @@ -2,6 +2,12 @@ [微雪电子 ESP32-S3-ePaper-1.54](https://www.waveshare.net/shop/ESP32-S3-ePaper-1.54.htm) +```bash +esptool.py flash_id +V1: 4MB Flash, 2MB PSRAM +V2: 8MB Flash, 8MB PSRAM +``` + # 编译配置命令 **克隆工程** @@ -31,18 +37,19 @@ idf.py menuconfig **选择板子** ```bash -Xiaozhi Assistant -> Board Type -> Waveshare ESP32-S3-ePaper-1.54 +Xiaozhi Assistant -> Board Type -> Waveshare ESP32-S3-ePaper-1.54_v2 ``` **编译** -```ba -idf.py build +```bash +python ./scripts/release.py --name esp32-s3-epaper-1.54-v1 waveshare/esp32-s3-epaper-1.54 +python ./scripts/release.py --name esp32-s3-epaper-1.54-v2 waveshare/esp32-s3-epaper-1.54 ``` **下载并打开串口终端** ```bash -idf.py build flash monitor +idf.py flash monitor ``` diff --git a/main/boards/waveshare/esp32-s3-epaper-1.54/config.json b/main/boards/waveshare/esp32-s3-epaper-1.54/config.json index 72ce98fc..0ec9252a 100644 --- a/main/boards/waveshare/esp32-s3-epaper-1.54/config.json +++ b/main/boards/waveshare/esp32-s3-epaper-1.54/config.json @@ -3,11 +3,19 @@ "target": "esp32s3", "builds": [ { - "name": "esp32-s3-epaper-1.54", + "name": "esp32-s3-epaper-1.54-v2", "sdkconfig_append": [ "CONFIG_ESPTOOLPY_FLASHSIZE_8MB=y", "CONFIG_PARTITION_TABLE_CUSTOM_FILENAME=\"partitions/v2/8m.csv\"" ] + }, + { + "name": "esp32-s3-epaper-1.54-v1", + "sdkconfig_append": [ + "CONFIG_SPIRAM_MODE_QUAD=y", + "CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y", + "CONFIG_PARTITION_TABLE_CUSTOM_FILENAME=\"partitions/v2/4m.csv\"" + ] } ] } \ No newline at end of file diff --git a/partitions/v2/4m.csv b/partitions/v2/4m.csv index 0d2ceae8..e46fa757 100644 --- a/partitions/v2/4m.csv +++ b/partitions/v2/4m.csv @@ -3,5 +3,5 @@ nvs, data, nvs, 0x9000, 0x4000, otadata, data, ota, 0xd000, 0x2000, phy_init, data, phy, 0xf000, 0x1000, -factory, app, factory, 0x10000, 0x270000, -assets, data, spiffs, 0x280000, 0x180000, +factory, app, factory, 0x10000, 0x2CE000, +assets, data, spiffs, 0x2DE000, 0x122000, \ No newline at end of file