Simulator

ESP32 DevKit simulator, running in this tab

Mokxi is a free ESP32 DevKit simulator that runs in your browser, with nothing to install and no account needed. The classic ESP32, not the RISC-V ones: Mokxi models the thirty-pin DOIT DevKit V1 with its Xtensa LX6 at 240 MHz, the GPIO matrix, UART0, a twelve-bit ADC1 and the LEDC PWM controller, on our own Xtensa core. Wire the circuit, press Run.

  • 192parts on the bench
  • 25boards running now
  • 1.00xreal time, on every board
ESP32 DevKit: blinklive0.000 s 0.00x
Click to open it in the editor
Real firmware, running right now on our own core. Click it to open the circuit in the editor.
What is modeled

The numbers, not the marketing

Taken from the board's own contract document and put in plain words.

The core
Xtensa LX6 in the windowed ABI, one instruction per cycle at 240 MHz. One core, not the chip’s two.
Six pins that cannot be outputs
GPIO 34 to 39 have an input buffer and no output driver at all. A pinMode(34, OUTPUT) is refused here the way it is refused on silicon, and the board shows an amber mark rather than letting you believe otherwise.
What is not there
No radio, no second core, no FPU, no cache or flash. Your own sketch compiles in the tab. WiFi is simulated: the Arduino API over a network of ours, with no 802.11 and no real internet behind it.
Go further

The full board page

Every peripheral area, every example and the wiring notes, in one place.

ESP32 DevKit simulatorBlink, a button and the serial monitor, running.

Questions

Is it free?

Yes, with no card and no account needed to try it.

Which ESP32 is this?

The classic Xtensa one: an ESP32-WROOM-32 on the thirty-pin DOIT DevKit V1. The ESP32-C3 and ESP32-C6 here are the RISC-V parts and have their own pages.

Can I compile my own sketch?

Yes. Edit the sketch and press Run: it compiles in the tab with clang for Xtensa, and the build panel shows every step. Nothing is uploaded.

Does it simulate WiFi or Bluetooth?

Bluetooth, no. WiFi, yes. It is simulated, and it says so: the Arduino API over a network of ours. There is no radio, no 802.11 and no real internet behind it.

Can I use analogRead and analogWrite?

Yes. analogRead is ADC1 on GPIO 36, 39, 32, 33, 34 and 35, twelve bits of the real net voltage, and at the default attenuation full scale is 3.9 V, so a 3.3 V rail tops out near 3466. analogWrite is LEDC on any pin with an output driver, and it costs the core nothing.

Try your own firmware on the ESP32 DevKit

What you build here runs on the board on your desk, unchanged. Nothing to install and no account needed.