Skip to content

boards/esp32s3: add support to M5Stack Cardputer board#19251

Merged
xiaoxiang781216 merged 1 commit into
apache:masterfrom
JorgeGzm:add_esp32s3_cardputer
Jul 2, 2026
Merged

boards/esp32s3: add support to M5Stack Cardputer board#19251
xiaoxiang781216 merged 1 commit into
apache:masterfrom
JorgeGzm:add_esp32s3_cardputer

Conversation

@JorgeGzm

@JorgeGzm JorgeGzm commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

Summary

Initial NuttX board port for the M5Stack Cardputer (M5Stamp S3 / ESP32-S3FN8, dual Xtensa LX7 @ 240 MHz, 8 MB flash, no PSRAM).

NSH console over USB-Serial-JTAG (/dev/ttyACM0)
1.14" ST7789 240x135 display (framebuffer and LVGL)
microSD card over SPI3 (FAT)
Native Wi-Fi: station and SoftAP (with DHCP server)
Ships six configurations: nsh, sdcard, fb, wifi, softap, lvgl.

Impact

With this port users can start developing on the M5Stack Cardputer using the documented pin map as a starting point, reusing the common ESP32-S3 board helpers. The remaining peripherals (NS4168 speaker, matrix keyboard, IR, RGB LED) are documented in the pin map and can be added in follow-up work.

Testing

All six configurations build clean:

./tools/configure.sh esp32s3-m5-cardputer:<nsh|sdcard|fb|wifi|softap|lvgl>
make -j
make flash ESPTOOL_PORT=/dev/ttyACM0

ostest runs to completion on the board with all tests passing:

nsh> ostest
.....

Final memory usage:
VARIABLE  BEFORE   AFTER
======== ======== ========
arena       5e8a0    5e8a0
ordblks         2        5
mxordblk    5a0f8    557e8
uordblks     4750     47e0
fordblks    5a150    5a0c0
user_main: Exiting
ostest_main: Exiting with status 0

@github-actions github-actions Bot added Area: Build system Size: XL The size of the change in this PR is very large. Consider breaking down the PR into smaller pieces. Board: xtensa labels Jul 1, 2026
@github-actions

github-actions Bot commented Jul 1, 2026

Copy link
Copy Markdown

MemBrowse Memory Report

No memory changes detected for:

@linguini1 linguini1 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Cool! Could you please include an OSTest log from the board in your PR description?

acassis
acassis previously approved these changes Jul 1, 2026
cederom
cederom previously approved these changes Jul 1, 2026

@cederom cederom left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Thank you @JorgeGzm amazing work :-)

I would add "m5" to the board name to mark vendor (i.e. esp32s3-m5-cardputer) but its up to you :-)

This port adds support for the M5Stack Cardputer (M5Stamp S3 /
ESP32-S3FN8, dual Xtensa LX7 @ 240 MHz, 8 MB flash, no PSRAM).

It reuses the common ESP32-S3 board helpers and ships these
configurations:

  - nsh:    NuttShell over the USB-Serial-JTAG console
  - sdcard: microSD card on SPI3 (FAT)
  - fb:     ST7789 240x135 display exposed as a framebuffer
  - wifi:   Wi-Fi station
  - softap: Wi-Fi SoftAP with DHCP server
  - lvgl:   LVGL graphics on the ST7789 (lvgldemo)

Signed-off-by: Jorge Guzman <jorge.gzm@gmail.com>
@JorgeGzm JorgeGzm dismissed stale reviews from cederom and acassis via 57547c9 July 1, 2026 20:43
@JorgeGzm JorgeGzm force-pushed the add_esp32s3_cardputer branch from 4032a9e to 57547c9 Compare July 1, 2026 20:43

@cederom cederom left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Wow thank you for the rapid refactor @JorgeGzm !! =)

@xiaoxiang781216 xiaoxiang781216 merged commit 1ddbeee into apache:master Jul 2, 2026
54 checks passed
@JorgeGzm JorgeGzm deleted the add_esp32s3_cardputer branch July 2, 2026 09:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area: Build system Board: xtensa Size: XL The size of the change in this PR is very large. Consider breaking down the PR into smaller pieces.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants