Skip to content

Add support for the Waveshare ESP32-S3-Zero N8R8 board#138

Open
WestYao666 wants to merge 1 commit into
espressif:masterfrom
WestYao666:master
Open

Add support for the Waveshare ESP32-S3-Zero N8R8 board#138
WestYao666 wants to merge 1 commit into
espressif:masterfrom
WestYao666:master

Conversation

@WestYao666

Copy link
Copy Markdown

Description

Add support for the Waveshare ESP32-S3-Zero N8R8 board in the ESP-Claw board manager.

This PR introduces a new board definition for waveshare_esp32_s3_zero_n8r8, covering the board metadata, device declarations, peripheral layout, board-specific SDK defaults, and generated device include setup.

The board is based on the ESP32-S3-PICO-1-N8R8 module, with 8 MB flash and 8 MB Octal PSRAM. The configuration enables the native USB Serial/JTAG console over the USB-C connector and uses the 8 MB partition table.

Main changes:

  • Add Waveshare ESP32-S3-Zero N8R8 board metadata.
  • Configure board defaults for ESP32-S3, 8 MB QIO flash, 8 MB Octal PSRAM, and USB Serial/JTAG console.
  • Declare onboard devices:
    • WS2812 RGB LED on GPIO21.
    • BOOT button on GPIO0.
    • UART0 header pins on GPIO43/GPIO44.
    • Native USB D-/D+ pins on GPIO19/GPIO20.
  • Leave peripherals empty because this board has no fixed I2C, SPI, audio, display, or storage wiring.
  • Add setup_device.c with board manager includes for generated device support.

The onboard WS2812 LED is marked init_skip: true, so Board Manager does not take ownership of it during boot. Lua scripts or custom application code can initialize and control it on demand.

Testing

It runs normally on the ESP32-S3-Zero N8R8 development board and can successfully call LLM.

Suggested validation command:

cd application/edge_agent
idf.py bmgr -c ./boards -b waveshare_esp32_s3_zero_n8r8
idf.py menuconfig
idf.py build
idf.py flash monitor

Checklist

Before submitting a Pull Request, please ensure the following:

  • 🚨 This PR does not introduce breaking changes.
  • All CI checks (GH Actions) pass.
  • Documentation is updated as needed.
  • Tests are updated or added as necessary.
  • Code is well-commented, especially in complex areas.
  • Git history is clean — commits are squashed to the minimum necessary.

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.

1 participant