How the Simulators Work
1. Simulation Engine Architecture
Both IoTSimulator and Wokwi use real microcontroller emulators that run in the browser through WebAssembly. They simulate the CPU at the cycle level, so the same machine code that runs in the simulator would run identically on a real Arduino or ESP32. Under the hood, they use libraries like
avr8js for AVR chips and dedicated RISC-V engines. Tinkercad Circuits takes a different approach—it runs an interpretive runtime coupled with a basic analog solver. 2. Libraries and Code Support
Getting third-party libraries to work reliably is a major part of embedded prototyping:
- IoTSimulator includes a curated catalog of pre-tested, documented libraries with integrated parameter guides and code snippets.
- Wokwi connects to the Arduino Library Manager and allows uploading external ZIP archives.
- Tinkercad is restricted to ~10 built-in basic libraries with no external import option.
3. WiFi and IoT Network Emulation
Both IoTSimulator and Wokwi support ESP32 WiFi networking—allowing you to host HTTP web servers, connect to MQTT brokers, and send REST requests directly from the simulator. Tinkercad contains no WiFi emulation.
Side-by-Side Comparison
| Feature | IoTSimulator | Wokwi | Tinkercad Circuits |
|---|---|---|---|
| Simulator Engine | Cycle-accurate WebAssembly (AVR & ESP32) | Cycle-accurate WebAssembly (AVR, ESP32, ARM) | Simplified runtime + SPICE solver |
| Primary Focus | Guided learning & IoT prototyping | Hardware sandbox & custom chips | K-12 STEM classroom basics |
| Visual Layout | 2D schematics with auto-color routing | Vector board outlines & JSON diagrams | 3D plastic models and breadboards |
| WiFi / IoT | Supported | Supported | Not Supported |
| Programming Languages | Arduino C / C++ | Arduino C++, Rust, MicroPython | Scratch blocks, Arduino C++ |

