Supported Hardware
Boards
Circzy supports eleven boards from five families. Every board is compiled with its official Arduino core and simulated by an emulator for its microcontroller.
- Arduino UnoATmega328P · The most popular board for learning Arduino.
- Arduino NanoATmega328P · Like the Uno, but small enough to fit on a breadboard.
- Arduino Mega 2560ATmega2560 · Lots of pins for big projects.
- Raspberry Pi PicoRP2040 · Dual-core ARM 133 MHz, 26 pin GPIO, 3.3 V.
- STM32 Blue PillSTM32F103C8 · ARM Cortex-M3 72 MHz, 32 pin GPIO, 3.3 V.
- ESP32 DevKit V1ESP32-WROOM-32 · Dual-core Xtensa 240 MHz, WiFi & Bluetooth, 3.3 V.
- WEMOS D1 Mini ESP32ESP32-WROOM-32 · ESP32 in the D1 mini size, two pin rows on each side, WiFi & Bluetooth.
- WEMOS D1 R32ESP32-WROOM-32 · ESP32 in the Arduino Uno form factor, fits Uno shields.
- NodeMCU V3 (LoLin)ESP8266 (ESP-12E) · The most common ESP8266 board, WiFi, 11 GPIO pins, 3.3 V.
- NodeMCU Amica (V2)ESP8266 (ESP-12E) · Slim NodeMCU that fits on a breadboard, WiFi, 3.3 V.
- WEMOS D1 MiniESP8266EX · Tiny ESP8266 board, WiFi, 11 GPIO pins, 3.3 V.
| Family | Emulator | Arduino core |
|---|---|---|
| Arduino (AVR) | avr8js, ATmega328P and ATmega2560 | Arduino AVR Boards |
| ESP32 | Xtensa LX6 emulator compiled to WebAssembly | arduino-esp32 3.3.10 |
| ESP8266 | Xtensa LX106 emulator (esp8266js, extended for Circzy) | ESP8266 Arduino core 3.1.2 |
| Raspberry Pi Pico | rp2040js | Arduino-Pico (Earle Philhower) |
| STM32 | Built-in Cortex-M3 emulator | STM32duino 2.12.0 |
Each family has its own page with pin tables and notes: Arduino, ESP32, ESP8266, Raspberry Pi Pico and STM32.
Parts
More than 100 parts are available in the Components panel. They are grouped into categories:
Open any category in the Parts Reference to see each part's picture, pins, wiring hint and simulation behavior.
Simulated peripherals
| Peripheral | Notes |
|---|---|
| GPIO | Digital input and output with pull-ups, on every board. |
| Interrupts | attachInterrupt() on the pins that support it on each board. |
| ADC | analogRead() with the resolution of each board (10-bit on AVR, ESP8266 and STM32 by default, 12-bit on ESP32, Pico configurable). |
| PWM | analogWrite(), ESP32 LEDC and Pico PWM slices. |
| Timers | millis(), micros(), delay(), tone(), Servo, hardware timers. |
| UART | Serial to the Serial Monitor, extra hardware serial ports, and SoftwareSerial where the core provides it. |
| I²C | Wire for displays, sensors, RTC and port expanders. |
| SPI | SPI for SD cards, RFID, TFT displays and MAX7219. |
| Non-volatile storage | EEPROM on ESP8266 and Preferences on ESP32 (kept while the simulation runs). |
| RMT / PIO | NeoPixel timing on ESP32 (RMT) and Pico. |
ESP WiFi and Bluetooth connect to the Circzy virtual network and can be tried with the virtual phone. See WiFi & Virtual Phone.
Ready to try it?
Sign in with Google, pick a board and run your first simulation in two minutes. Free during the launch period.
Start simulating free