Request: Port for Lolin ESP32-S3 Pro (16MB flash, 8MB SPRAM)
Description
I notice a few ports for the ESP32 family, including a couple of lower-spec Lolin boards, plus generic ESP32-S3 ports. But these don't accommodate boards like the Lolin ESP32-S3 Pro with its 16MB Flash and 8MB PSRAM.
Is there any possibility of ports in the near future, for this board, and other newer/higher models of ESP32?
Code Size
No response
Implementation
I hope the MicroPython maintainers or community will implement this feature
Code of Conduct
Yes, I agree
/esp32/boards: Add LOLIN_S3_PRO board definition.
Summary
Added a board definition for the Wemos Lolin S3 Pro.
Testing
I deployed the firmware to my S3 Pro, it appeared to work fine. Tested the filesystem (since a key feature of this board is the 16MB flash) and the GRB (not RGB) LED:
MicroPython v1.25.0-preview.575.g076e07197 on 2025-05-12; LOLIN_S3_PRO with ESP32S3
Type "help()" for more information.
>>>
paste mode; Ctrl-C to cancel, Ctrl-D to finish
=== import os
=== fs_stat = os.statvfs('/')
=== fs_size = fs_stat[0] * fs_stat[2]
=== fs_free = fs_stat[0] * fs_stat[3]
=== print(f"File System Size {fs_size:,} - Free Space {fs_free:,}")
===
File System Size 14,680,064 - Free Space 14,667,776
>>> from machine import Pin
>>> from neopixel import NeoPixel
>>> neo = NeoPixel(Pin.board.RGB_LED, 1)
>>> NeoPixel.ORDER = (0, 1, 2, 3) # GRB rather than RGB
>>> neo[0] = (40, 0, 0)
>>> neo.write() # Red
>>> neo[0] = (0, 40, 0)
>>> neo.write() # Green
>>> neo[0] = (0, 0, 40)
>>> neo.write() # Blue
Trade-offs and Alternatives
A user could define their own custom board. We could also extend ESP32_GENERIC_S3 to support 16MB models (which may be wroth doing as well).
See #17217 for a request for this board.