velxio/test/esp32-emulator/README.md

930 B

ESP32 Emulation Test Suite

This directory contains tests for ESP32 emulation using QEMU compiled to WebAssembly.

Structure

  • sketches/ - Arduino sketches for ESP32 (copied from test/esp32/sketches)
  • binaries/ - Compiled firmware binaries (.bin, .elf)
  • qemu-config/ - QEMU machine configurations
  • scripts/ - Build and test scripts
  • web/ - HTML/JS wrapper for WebAssembly QEMU

Prerequisites

  1. QEMU fork built as WebAssembly (see wokwi-libs/qemu-lcgamboa/)
  2. ESP32 toolchain (arduino-cli with esp32 platform)
  3. Emscripten SDK (for building QEMU to WASM)

Initial Test

The first test is to compile the blink sketch and run it in QEMU (native) to verify basic GPIO emulation.

Goals

  • Emulate GPIO pins (digitalWrite, digitalRead)
  • Emulate Serial output (UART)
  • Emulate WiFi (station and AP modes)
  • Emulate other peripherals (SPI, I2C, ADC, etc.)
  • Run entirely in browser via WebAssembly