Hi Waveshare team — thanks for the ESP32-P4-Platform examples. They were the authoritative source that let me bring up several peripherals in MicroPython on the ESP32-P4-NANO, and I wanted to (a) say the configs match the hardware exactly, and (b) offer a MicroPython reference back to the community.
Specifically, the pin/LDO values in:
examples/esp-idf/06_sdmmc — Kconfig.projbuild: P4 CLK=43 CMD=44 D0=39 D1=40 D2=41 D3=42, SD_PWR_CTRL_LDO_IO_ID=4
examples/esp-idf/07_I2SCodec — ES8311 @ I2C 0x18, amp enable GPIO53, I2S MCLK=13 BCLK=12 WS=10 DOUT=9 DIN=11
all match, and let me drive the microSD slot (native SDMMC slot 0 + on-chip LDO ch 4) and the ES8311/NS4150B speaker under MicroPython v1.29.0-preview.
I've published a MicroPython hardware test bench for the P4-NANO (WiFi, Ethernet, CPU/mem/flash, microSD, I2C, sleep/wake, audio, GPIO), each test a small package with a one-shot report and an interactive menu:
👉 https://github.com/Tangerino/Waveshare-P4-Test-Bench
Two things that might help other users:
- Would you be open to an
examples/micropython/ folder, or a wiki link to a community MicroPython reference for this board? Happy to contribute.
- (Minor, FYI) The microSD slot is unusable from MicroPython unless the firmware exposes the P4
ldo kwarg, which was added to MicroPython master in commit dc44bdbac (2026-04-02) — worth noting for users on older images, who otherwise hit ESP_ERR_TIMEOUT because the card IO LDO never powers on.
Thanks again for the examples — they saved a lot of reverse-engineering.
Hi Waveshare team — thanks for the
ESP32-P4-Platformexamples. They were the authoritative source that let me bring up several peripherals in MicroPython on the ESP32-P4-NANO, and I wanted to (a) say the configs match the hardware exactly, and (b) offer a MicroPython reference back to the community.Specifically, the pin/LDO values in:
examples/esp-idf/06_sdmmc—Kconfig.projbuild: P4CLK=43 CMD=44 D0=39 D1=40 D2=41 D3=42,SD_PWR_CTRL_LDO_IO_ID=4examples/esp-idf/07_I2SCodec— ES8311 @ I2C0x18, amp enableGPIO53, I2SMCLK=13 BCLK=12 WS=10 DOUT=9 DIN=11all match, and let me drive the microSD slot (native SDMMC slot 0 + on-chip LDO ch 4) and the ES8311/NS4150B speaker under MicroPython
v1.29.0-preview.I've published a MicroPython hardware test bench for the P4-NANO (WiFi, Ethernet, CPU/mem/flash, microSD, I2C, sleep/wake, audio, GPIO), each test a small package with a one-shot report and an interactive menu:
👉 https://github.com/Tangerino/Waveshare-P4-Test-Bench
Two things that might help other users:
examples/micropython/folder, or a wiki link to a community MicroPython reference for this board? Happy to contribute.ldokwarg, which was added to MicroPython master in commitdc44bdbac(2026-04-02) — worth noting for users on older images, who otherwise hitESP_ERR_TIMEOUTbecause the card IO LDO never powers on.Thanks again for the examples — they saved a lot of reverse-engineering.