Velxio
Offline Arduino, RP2040 & ESP32 simulator
Starting local backend…
Velxio
HomeDocumentationExamplesEditorAboutPricingFor schoolsDownloadBlogGitHubDiscord

Arduino Emulator
Real AVR8 & RP2040 Emulation, Free

Velxio is a cycle-accurate Arduino emulator running entirely in your browser. Every AVR opcode is faithfully executed at 16 MHz — the same silicon behavior as real hardware, without buying hardware.

Open Emulator →Emulation Details

Free & open-source · Built on avr8js & rp2040js · No signup required

Emulation accuracy

Velxio uses avr8js for AVR8 and rp2040js for RP2040 — open-source libraries developed by the Wokwi team that provide genuine hardware fidelity.

AVR8 Instruction Set

All 135 AVR instructions emulated including MUL, MULSU, FMUL, LPM, SPM, and all branch/skip instructions. 16 MHz clock.

Hardware Timers

Timer0, Timer1, Timer2 with prescaler support, overflow interrupts, and Output Compare — enabling delay(), millis(), and PWM.

USART Serial

Full USART emulation with configurable baud rate and TX/RX interrupts. Serial.print() works exactly as on real Arduino hardware.

10-bit ADC

Analog-to-digital converter emulation with analog reference support. analogRead() returns accurate values from simulated sensors.

RP2040 Dual-Core ARM

Cortex-M0+ emulation via rp2040js. Runs Arduino-pico and PlatformIO sketches for Raspberry Pi Pico and Pico W.

RISC-V (ESP32-C3)

RV32IMC emulation for ESP32-C3 at 160 MHz via the QEMU lcgamboa fork (libqemu-riscv32, esp32c3-picsimlab machine).

Supported boards

19 boards across 5 CPU architectures — AVR8, ARM Cortex-M0+, RISC-V, Xtensa LX6/LX7, and ARM Cortex-A53.

AVR8 — avr8js

Arduino Uno (ATmega328P), Arduino Nano, Arduino Mega 2560 (ATmega2560), ATtiny85, Arduino Leonardo (ATmega32u4), Arduino Pro Mini.

RP2040 — rp2040js

Raspberry Pi Pico, Raspberry Pi Pico W — dual ARM Cortex-M0+ at 133 MHz.

RISC-V — QEMU

ESP32-C3 DevKit, XIAO ESP32-C3, ESP32-C3 SuperMini, CH32V003 — RV32IMC at 160 MHz via libqemu-riscv32.

Xtensa — QEMU

ESP32 DevKit V1/C V4, ESP32-S3, ESP32-CAM, Seeed XIAO ESP32-S3, Arduino Nano ESP32 — Xtensa LX6/LX7 at 240 MHz.

ARM Cortex-A53 — QEMU

Raspberry Pi 3B — quad-core 1.2 GHz, full Linux, Python 3. Run real OS-level programs in the browser.

Frequently Asked Questions

What is an Arduino emulator?
An Arduino emulator reproduces the behavior of a physical Arduino microcontroller in software — CPU instruction execution, peripheral registers (GPIO, USART, ADC, timers, PWM), and interrupts — with no hardware required.
How accurate is Velxio's Arduino emulation?
Velxio uses avr8js, which provides cycle-accurate AVR8 instruction emulation. Every AVR opcode is faithfully emulated at 16 MHz, making it reliable for developing and debugging real firmware before flashing to hardware.
Which Arduino boards can Velxio emulate?
Arduino Uno (ATmega328P), Arduino Nano, Arduino Mega 2560 (ATmega2560), ATtiny85 (AVR8), Arduino Leonardo (ATmega32u4), Arduino Pro Mini, Raspberry Pi Pico and Pico W (RP2040), and multiple ESP32/RISC-V boards. 19 boards across 5 CPU architectures.
What peripherals are emulated?
GPIO ports (PORTB, PORTC, PORTD), hardware timers (Timer0, Timer1, Timer2), 8/16-bit PWM, USART serial, 10-bit ADC (analog inputs), SPI, and I2C. All standard Arduino library functions work correctly.
How is Velxio different from Wokwi?
Velxio is fully self-hosted and open-source under GNU AGPLv3. It uses the same avr8js emulation library as Wokwi but runs entirely on your own machine — no cloud dependency, no registration, no subscription.

Start emulating Arduino today

Open the editor and execute your firmware against a real emulated CPU — no hardware purchase, no cloud, no limits.

Launch Emulator →
Arduino SimulatorATmega328P SimulatorESP32 SimulatorRP2040 SimulatorExample Projects