FAQ
Q: Which screens are supported by the development board?
A: Please first check the component documentation to confirm compatible screen types: esp32_p4_platform
If you have requirements for adapting other screens or wish to inquire about support for specific screens, you can submit an issue via Waveshare's official after-sales support or the following address:
We will follow up and respond to your requests promptly.
Q: How do I determine my ESP32-P4 chip revision?
A: Check the silkscreen marking on the chip and the boot log from the serial port. The ESP32-P4 Platform examples provide build configurations for rev v3.0 and later chips, rev v3.1 and later chips, and rev v0.x / v1.x engineering samples. Before flashing, make sure the firmware configuration matches the actual chip revision.
Q: I get a chip revision mismatch error when flashing. How do I fix it?
A: This message means the firmware's ESP32-P4 chip revision configuration doesn't match the chip on your board. Do not use --force to skip the check — rebuild with the correct chip revision instead.
The ESP32-P4 Platform repository provides shared configuration files:
- rev v3.1 or later:
config/esp32p4_rev_v3_1.defaults - rev v3.0 or later:
config/esp32p4_rev_v3_0.defaults - rev v0.x / v1.x engineering sample:
config/esp32p4_rev_pre_v3.defaults
Specify the matching config in the example directory via SDKCONFIG_DEFAULTS. See the detailed instructions under ESP-IDF examples.
Q: How to flash firmware onto the ESP32-C6?
The ESP32-C6 ships with factory firmware. Typically you do not need to flash the ESP32-C6 separately. If an upgrade is necessary, please verify the firmware source, version, and recovery method first.
A: 1. Before power‑on, short the C6 programming port IO9 to GND.
2. Connect a TTL to the C6 programming port: TX -> RXD (TTL), RX -> TXD (TTL).
3. Before powering on the whole system, press and hold the BOOT button to prevent the ESP32-P4 from controlling the C6 reset.
4. After performing the above steps, you can flash the C6 firmware normally.

Q: Are there example codes for other application scenarios?
A:
- During functionality testing, we have validated several features. Some applications, like using a Cat-4 module for network access or using P4's MIPI-DSI to expand the host screen, are progressing but not yet stable enough to release. Once these functionalities are refined, we will add examples to the wiki.
- If you have ideas or partially validated application scenarios, feel free to share them with us for feasibility assessment.
Q: Can I develop using PlatformIO or MicroPython?
A:
- Due to stability requirements, in order for PlatformIO to support ESP32-P4, it is also necessary for the PlatformIO community to support the Arduino-esp32 SDK V3.1x version
- During development, we tested MPY firmware for ESP32-P4, which can run some basic commands. However, this is just a preliminary verification; actual interface and peripheral applications are not yet adapted. Once fully adapted and stable, we will release ESP32-P4 usage examples in MicroPython.