32esp32-emu
WASM dual-core Xtensa

live simulation · real firmware · no install

The ESP32, running right here in this tab.

This page boots the actual ESP32 boot ROM plus compiled Arduino firmware on a dual-core Xtensa LX6 model compiled to WebAssembly. Pick a peripheral on the left, press run, and read what the chip itself prints on its serial port. Try the UART echo demo to type at the chip yourself.

Peripheral support table
18.4 MIPS
true retired, GPIO firmware to pass mark
—
this browser, last run (live)
2 × LX6
cores per run, 240 MHz model
45
prebuilt firmware images on this page
esp32-emu running the GPIO demo in the browser: UART terminal showing ALL TESTS PASSED with live MIPS readout
Live run of the GPIO demo — real boot ROM banner, chip-printed pass mark, per-run MIPS.

Console

The terminal below is the chip’s UART0. The metrics strip shows live speed in MIPS plus program counter, simulated cycles, and UART traffic while it runs. Every run ends with its own MIPS line, and the hero keeps the latest figure.

Firmware

Module

WiFi (station + AP)

Station scans and Soft-AP init run fully offline in the emulator. Full station + AP data (DHCP, TCP, port-forward) flows through the local gateway — see Docs.

OTA / partitions

uart0 · 115200 8-N-1 idle
Press run. The boot ROM banner (ets ...) appears first, then the demo log.
—
MIPS live
—
PC core 0
—
sim cycles
—
UART bytes