ESP32-DevKitC and ESP32-C3-DevKitC-02 in PICSimLab: QEMU Boards

PICSimLab has two ESP32 boards: the ESP32-DevKitC and the ESP32-C3-DevKitC-02, both running on the qemu-esp32 backend. They are genuinely useful for running ESP32 firmware without hardware — but wireless support is the most exaggerated topic in PICSimLab coverage, so this page states the official position precisely, including what is not supported.

Overview

Both boards are described officially as simple boards “only with reset, serial and crystal circuits” wrapped around the chip — the ESP32 on the DevKitC and the ESP32-C3 (a riscv32 part) on the C3-DevKitC-02. The qemu-esp32 backend is PICSimLab’s adapted QEMU build, itself based on a QEMU emulation of a TTGO TDisplay ESP32 board. You can program the simulated boards the way you program real ones: the official documentation explains flashing via the serial port using the Arduino IDE or the IDF’s esptool.py.

Supported MCUs

Board Microcontroller Backend
ESP32-DevKitC ESP32 qemu-esp32
ESP32-C3-DevKitC-02 ESP32-C3 (riscv32) qemu-esp32

Backend & debugging

Debugging is remote esp32-gdb: enable debugging in the configuration window, launch the ESP32 GDB (xtensa-esp32-elf-gdb) with your .elf and connect to localhost:1234; PlatformIO in VSCode can be configured for graphical debugging with picsimlab_tool uploads. The Code Project Wizard generates VSCode + PlatformIO projects for ESP32 boards, with Arduino-framework and IDF templates for both boards.

What you can do

  • Compile ESP32 and ESP32-C3 firmware (Arduino or ESP-IDF), flash it to the simulated board over the serial workflow and watch it run and log.
  • Debug with esp32-gdb breakpoints instead of print statements.
  • On the ESP32-C3, the project CHANGELOG records concrete wireless increments: v0.9.1 “Add support to ESP32C3 WIFI and ESP-NOW protocol”, plus an option for ethernet support on the C3 board.
  • On the original ESP32, the CHANGELOG records incremental support items such as https over WiFi, an option to enable ethernet support on the DevKitC board, and individual peripheral additions (I2C, SPI, ADC, LEDC/PWM, RMT TX and more, added release by release).

Real limits

  • WiFi is incremental, not “full WiFi simulation”. The official documentation’s qemu-ESP32 page contains no WiFi chapter at all; support exists as CHANGELOG-level additions, strongest for the ESP32-C3 (WiFi + ESP-NOW). Anything claiming the DevKitC simulates complete WiFi projects “just like real hardware” is an exaggeration.
  • No Bluetooth: neither the official documentation nor the CHANGELOG contains any ESP32 Bluetooth/BLE simulation entry. Treat Bluetooth as not supported.
  • Flash modes: QEMU-ESP32 does not support the QIO and QOUT flash modes — use only DIO or DOUT, or flashing will fail.
  • Only two chips: there is no ESP32-S2, S3, C2, C6 or H2 board anywhere in PICSimLab. The C3 is also the only RISC-V chip with a real board here — see the Remote TCP page for the separate, experimental Ripes path.
  • The boards are simple reset/serial/crystal carriers; spare parts provide the rest of the circuit. (The separate ETH W5500 spare part is a wired-Ethernet part for other boards — it is not ESP32 WiFi.)

Install PICSimLab from the download page, pick ESP32-DevKitC or ESP32-C3-DevKitC-02, set your flash mode to DIO/DOUT, and keep the wireless expectations above in mind.

Similar Posts