Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Zephyr v4.1.0 RC1 and RC2 don't boot on tested ESP32-S3 boards (working on v4.0.0) #86192

Open
mame82 opened this issue Feb 22, 2025 · 4 comments
Assignees
Labels
bug The issue is a bug, or the PR is fixing a bug platform: ESP32 Espressif ESP32 priority: high High impact/importance bug

Comments

@mame82
Copy link

mame82 commented Feb 22, 2025

Describe the bug

Tested three ESP32-S3 boards which worked fine on zephyr v4.0.0 but none of the works on v4.1.0-RC1 and v4.1.0-RC2. I can't give any valuable input, as none of the boards manage to boot up to the *** Booting Zephyr OS build ... output, as they did on Zephyr v4.0.0.

To excclude errors with my app, I used samples/basic/minimal to verify the issue.

Boards tested:

  • Waveshare ESP32-S3-touch-lcd-1-28
  • Waveshare ESP32-S3-lcd-1-28 (custom device tree based on the touch version, basically only touch device removed and SPI pins for LCD and backlight adjusted to the board)
  • Espressif ESP32-S3-DEvKitC

To Reproduce

  • adjust west.yaml to use revision: v4.1.0-rc1 or revision: v4.1.0-rc2

  • run west update

  • run west blobs fetch hal_espressif to update binary blobs accordingly

  • build samples/basic/minimal for one of the aforementioned boards

  • flash to the board (works with no issues up till here)

  • run west espressif monitor -p <correct serial port> board boots bl, but does not progress to zephyr OS

  • build samples/

Expected behavior

ESP32-S3 boards are able to boot Zephyr

Impact

3 out of 3 ESP32-S3 boards don't boot Zephyr v4.1.0-RC1/RC2 (all of them work on v4.0.0)

Logs and console output

Here's the example output of the serial port of ESP32-S3-touch-lcd-1-28 after building and flashing (no further output after this). Board config esp32s3_touch_lcd_1_28\esp32s3\procpu:

ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x1 (POWERON),boot:0x18 (SPI_FAST_FLASH_BOOT)
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fc8f470,len:0x1700
load:0x40374000,len:0xb460
SHA-256 comparison failed:
Calculated: dea8080824eebfe36d1499325bacc8b9d60dd6fea01773a16cbdb74fadd438dd
Expected: 0000000060340000000000000000000000000000000000000000000000000000
Attempting to boot anyway...
entry 0x403791ec
I (60) soc_init: ESP Simple boot
I (60) soc_init: compile time Feb 22 2025 22:19:11
W (60) soc_init: Unicore bootloader
I (60) soc_init: chip revision: v0.2
I (62) flash_init: Boot SPI Speed : 80MHz
I (66) flash_init: SPI Mode       : DIO
I (70) flash_init: SPI Flash Size : 16MB
I (73) boot: DRAM: lma 0x00000020 vma 0x3fc8f470 len 0x1700   (5888)
I (79) boot: IRAM: lma 0x00001728 vma 0x40374000 len 0xb460   (46176)
I (86) boot: IRAM: lma 0x0000cb98 vma 0x00000000 len 0x3460   (13408)
I (92) boot: IMAP: lma 0x00010000 vma 0x42000000 len 0x50d0   (20688)
I (98) boot: IRAM: lma 0x000150d8 vma 0x00000000 len 0xaf20   (44832)
I (104) boot: DMAP: lma 0x00020000 vma 0x3c010000 len 0x1070   (4208)
I (110) boot: Image with 6 segments
I (113) boot: IROM segment: paddr=00010000h, vaddr=42000000h, size=050CEh ( 20686) map
I (121) boot: DROM segment: paddr=00020000h, vaddr=3c010000h, size=01070h (  4208) map
I (140) boot: libc heap size 339 kB.

Environment (please complete the following information):

  • Zephyr v4.1.0-RC1 / v4.1.0-RC2
  • SDK toolchain 0.17.0; arch: xtensa-espressif_esp32s3
  • OS: Windows 11
@mame82 mame82 added the bug The issue is a bug, or the PR is fixing a bug label Feb 22, 2025
Copy link

Hi @mame82! We appreciate you submitting your first issue for our open-source project. 🌟

Even though I'm a bot, I can assure you that the whole community is genuinely grateful for your time and effort. 🤖💙

@mari-rv
Copy link

mari-rv commented Feb 22, 2025

I was just writing an issue about this, also having this problem. Using v4.1.0-rc1, the samples/basic/minimal works with my ESP32S3 DevKitC board. Although, I've noticed Zephyr doesn't boot if I use sys_poweroff function (enabled by CONFIG_POWEROFF)

I have a project with ESP32 that uses the deep sleep functionality, it used to work in v4.0.0-rc3, but after implementing more functionalities into my project, it suddenly stopped working. I've tweaked some logging configuration and it would work sometimes, but I'm still unsure what's going on at all

In v4.1.0-rc1, I'm still tracking down what's causing this, but I've managed to pin the sys_poweroff function, it makes Zephyr unbootable. Also, the sample samples/boards/espressif/deep_sleep doesn't work in any of my boards (ESP32S3 and ESP32)

@mame82
Copy link
Author

mame82 commented Feb 23, 2025

Seems issue is not related to Zephyr directly. I am using "Zephyr IDE" extension for VScode. The build configuration lets one choose between "Debug", "Size" and "Speed" with "debug" set as the default (which worked on Zephyr v4.0.0). When "size" is used as build configuration, it works again.

So the issue is with CMake options -DCONFIG_DEBUG_OPTIMIZATIONS=y -DCONFIG_DEBUG_THREAD_INFO=y it isn't working.

With CMake options -DCONFIG_SIZE_OPTIMIZATIONS=y it is working.

Still not sure what the root cause is

@zhang-wenchao
Copy link
Contributor

zhang-wenchao commented Feb 23, 2025

I have this problem on esp32c3, same error. Stuck at boot: libc heap size xx kB. CONFIG_DEBUG=n can boot normally. I guess I used too many features, turned on BT and LVGL.

@kartben kartben added priority: high High impact/importance bug platform: ESP32 Espressif ESP32 labels Feb 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug The issue is a bug, or the PR is fixing a bug platform: ESP32 Espressif ESP32 priority: high High impact/importance bug
Projects
None yet
Development

No branches or pull requests

5 participants