Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
V

velxio

> 编程语言
Open source

Emulate Arduino, ESP32 & Raspberry Pi. in your browser. Write code, compile, and run on 19 real boards — Arduino Uno, ESP32, ESP32-C3, Raspberry Pi Pico, Raspbe

2.5K stars0 likes3 views
WebsiteGitHub

About

Emulate Arduino, ESP32 & Raspberry Pi. in your browser. Write code, compile, and run on 19 real boards — Arduino Uno, ESP32, ESP32-C3, Raspberry Pi Pico, Raspbe

Velxio: Arduino & Embedded Board Emulator

Live at velxio.dev

An open-source multi-board emulator and circuit simulator. Write Arduino C++, MicroPython, ESP-IDF or Python, compile it, and run it against real CPU emulation with 150+ interactive electronic components — all in your browser.

40 boards · 5 CPU families: AVR8 (ATmega / ATtiny), ARM Cortex-M (RP2040 / RP2350 / STM32), Xtensa LX6/LX7 (ESP32 / ESP32-S3), RISC-V (ESP32-C3 / ESP32-C6) and ARM Cortex-A Linux (Raspberry Pi Zero to 5).



Support the Project

Velxio is free and open-source. Building and maintaining a full multi-board emulator takes a lot of time — if it saves you time or you enjoy the project, sponsoring me directly helps keep development going.

Platform Link
GitHub Sponsors (preferred) github.com/sponsors/davidmonterocrespo24
PayPal paypal.me/odoonext

Your support helps cover server costs, library maintenance, and frees up time to add new boards, components, and features. Thank you!


Hardware Partners

These companies have supported Velxio and provided their hardware so their components can be emulated accurately:

       

Their hardware is in the catalog today: the M5Stack Cardputer and Core, the Pimoroni Badger 2350 and Galactic Unicorn, the Seeed Studio XIAO family and Grove modules, the DFRobot UNIHIKER and Gravity sensors, and the whole Espressif ESP32 line up to the ESP32-C6. Of these, the M5Stack, Pimoroni and DFRobot boards, the Seeed XIAO Sense, C6 and RP2040, and the ESP32-C6 DevKit are only available online at velxio.dev; the self-hosted image ships the Arduino, Raspberry Pi Pico and ESP32 families (see Supported Boards).


Try it now

https://velxio.dev — no installation needed. Open the editor, write your sketch, and simulate directly in the browser.

To self-host with Docker (single command):

bash
docker run -d \
  --name velxio \
  -p 3080:80 \
  -v velxio-data:/app/data \
  -v velxio-arduino-libs:/root/.arduino15 \
  -v velxio-arduino-user-libs:/root/Arduino \
  -v velxio-ccache:/var/cache/ccache \
  -v velxio-build:/var/lib/velxio-build \
  ghcr.io/davidmonterocrespo24/velxio:master

Then open http://localhost:3080. Tail logs any time with docker logs -f velxio.

The self-hosted image runs the Arduino, Raspberry Pi Pico and ESP32 families. STM32, Raspberry Pi Linux, the ESP32-C6 and the partner boards are only available online at velxio.dev.

The named volumes are what make compile times reasonable on subsequent runs — without them, every container restart wipes the ESP-IDF build cache and the first compile after each restart takes 5-7 minutes instead of 5-30 seconds.


Screenshots

ESP32 weather station — a BMP280 over I2C, a DHT22 on a GPIO and an ILI9341 TFT over SPI wired on the canvas, three buses working at once while the display updates live.

The editor: Monaco on the left, the circuit canvas on the right, compiler output and Serial Monitor at the bottom. Here an ESP32 DevKit blinks an external LED and prints over UART.

Component picker — every board and module with a live preview, search and category filters. The catalog is over 150 parts: displays, sensors, motors, logic ICs, analog parts, breadboards and branded modules.

Examples gallery — more than 400 ready-to-run projects filtered by board, difficulty and topic, including the 100 Days 100 IoT Projects collection.

MicroPython — the same ESP32, now running main.py, with the REPL in the terminal panel. ESP32 boards also accept pure ESP-IDF projects.

Emulated WiFi — the ESP32 joins the virtual access point, gets an IP and round-trips messages through a public MQTT broker.

Instruments — oscilloscope channels on any pin, plus a SPICE-based electrical layer that shows currents, voltages and shorts on the wires you draw.

Custom chips — write your own IC in C, compile it to WebAssembly and drop it on the canvas next to the boards.


Supported Boards


Arduino Uno

Arduino Nano

Arduino Mega 2560

ATtiny85

Raspberry Pi 3

Raspberry Pi 5

Raspberry Pi Pico

Raspberry Pi Pico W

ESP32 DevKit V1

ESP32-S3

ESP32-C3

ESP32-CAM

XIAO ESP32-S3

XIAO ESP32-C3

Arduino Nano ESP32

STM32 Blue Pill

STM32 Black Pill

STM32F4 Discovery

M5 Cardputer ADV

M5Stack Core

Pimoroni Badger 2350

XIAO ESP32S3 Sense

ESP32-C6 DevKit

DFRobot UNIHIKER M10

Boards run in one of two places. Browser boards (AVR, RP2040) are emulated entirely in the page with avr8js and rp2040js — nothing leaves your machine. Server boards (ESP32 family, STM32, Raspberry Pi Linux) boot a real QEMU machine on the backend and stream GPIO and serial to the canvas. Both feel the same: press Play.

Family Boards Languages Where it runs
Arduino / AVR Uno, Nano, Mega 2560, ATtiny85 Arduino C++ Browser — self-hosted and velxio.dev
Raspberry Pi Pico Pico, Pico W Arduino C++, MicroPython Browser — self-hosted and velxio.dev
ESP32 ESP32 DevKit V1, DevKit-C V4, ESP32-CAM, Wemos Lolin32 Lite Arduino C++, MicroPython, ESP-IDF Self-hosted (QEMU) and velxio.dev
ESP32-S3 ESP32-S3 DevKit, XIAO ESP32-S3, Arduino Nano ESP32 Arduino C++, MicroPython, ESP-IDF Self-hosted (QEMU) and velxio.dev
ESP32-C3 ESP32-C3 DevKit, XIAO ESP32-C3, ESP32-C3 SuperMini Arduino C++, MicroPython, ESP-IDF Self-hosted (QEMU) and velxio.dev
STM32 Blue Pill (F103C8 / F103CB), Black Pill (F411CE / F401CE), STM32F4 Discovery, Olimex STM32-H405, Netduino 2 / Plus 2 Arduino C++ Online only: velxio.dev (paid plan) or Velxio Desktop, not in the self-hosted image
Raspberry Pi (Linux) Zero, 1B+, 2B, 3B, 4B, 5 — boot a real Linux and run Python in a full terminal Python Online only: velxio.dev (paid plan) or Velxio Desktop, not in the self-hosted image
Branded boards M5Stack Cardputer ADV and Core, Pimoroni Badger 2350, Galactic Unicorn and Pico Plus 2 W, Seeed XIAO ESP32S3 Sense, XIAO ESP32C6 and XIAO RP2040, Espressif ESP32-C6 DevKit, DFRobot UNIHIKER M10 Arduino C++, MicroPython, ESP-IDF Online only: velxio.dev (free plan; UNIHIKER needs a paid plan), not in the self-hosted image

The self-hosted image runs the first five families out of the box. Everything else is only available online at velxio.dev: STM32 and Raspberry Pi Linux need licensed emulator binaries and multi-GB boot images (they also run in Velxio Desktop with a paid plan), and the branded boards boot their factory firmware (the M5 launcher, BadgeOS) from the hosted catalog. The OSS picker shows these boards as links to the online editor. The full list with pinouts, languages and quirks is in the boards reference.


Features

Code Editing

  • Monaco Editor — Full C++ / Python editor with syntax highlighting, autocomplete, minimap, and dark theme
  • Multi-file workspace — create, rename, delete, and switch between multiple .ino / .h / .cpp / .py files
  • Arduino compilation via arduino-cli backend — compile sketches to .hex / .bin files
  • Compile / Run / Stop / Reset toolbar buttons with status messages
  • Compilation console — resizable output panel showing full compiler output, warnings, and errors

Multi-Board Simulation

AVR8 (Arduino Uno / Nano / Mega / ATtiny85)

  • Real ATmega328p / ATmega2560 / ATtiny85 emulation at native clock speed via avr8js
  • Full GPIO — PORTB, PORTC, PORTD (Uno/Nano/Mega); all ATtiny85 ports (PB0–PB5)
  • Timer0/Timer1/Timer2 — millis(), delay(), PWM via analogWrite()
  • USART — full transmit and receive, auto baud-rate detection
  • ADC — analogRead(), voltage injection from potentiometers on canvas
  • SPI — hardware SPI peripheral (ILI9341, SD card, etc.)
  • I2C (TWI) — hardware I2C with virtual device bus
  • ATtiny85 — all 6 I/O pins, USI (Wire), Timer0/Timer1, 10-bit ADC; uses AttinyCore
  • ~60 FPS simulation loop via requestAnimationFrame

RP2040 (Raspberry Pi Pico / Pico W)

  • Real RP2040 emulation at 133 MHz via rp2040js — ARM Cortex-M0+
  • All 30 GPIO pins — input/output, event listeners, pin state injection
  • UART0 + UART1 — serial output in Serial Monitor; Serial input from UI
  • ADC — 12-bit on GPIO 26–29 (A0–A3) + internal temperature sensor (ch4)
  • I2C0 + I2C1 — master mode with virtual device bus (DS1307, TMP102, EEPROM)
  • SPI0 + SPI1 — loopback default; custom handler supported
  • PWM — available on any GPIO pin
  • WFI optimization — delay() skips ahead in simulation time instead of busy-waiting
  • Oscilloscope — GPIO transition timestamps at ~8 ns resolution
  • Compiled with the earlephilhower arduino-pico core

See docs/RP2040_EMULATION.md for full technical details.

ESP32, STM32 and Raspberry Pi Linux

The ESP32 family (Xtensa and RISC-V), the STM32 family and the Raspberry Pi Linux boards run on QEMU-based backends with the same canvas, Serial Monitor and instruments as the browser boards. Their setup, peripherals and quirks are covered board by board in the documentation; the technical notes for the QEMU bridges live in docs/ESP32_EMULATION.md, docs/RISCV_EMULATION.md and docs/RASPBERRYPI3_EMULATION.md.

Example Projects

  • Hundreds of ready-to-run examples in the gallery (400+ on velxio.dev), filtered by board, difficulty and topic — from Blink and Traffic Light to TFT dashboards, e-paper displays, MQTT over emulated WiFi and Pi + Arduino serial links
  • The 100 Days 100 IoT Projects collection, imported as runnable projects
  • One-click loading into the editor

Self-Hosting

Pick the install path that matches your appetite for setup. All three work out-of-the-box without an .env file — defaults are picked automatically.

Path Boards available Build time Best for
A. Docker (prebuilt image) AVR, RP2040 and the whole ESP32 family (Xtensa + RISC-V) ~30 s download Just want it running
B. Docker Compose (build from source) Same as A ~10–15 min first build Want to modify the code
C. Manual install Browser-only boards (AVR, RP2040) ~5 min Frontend / backend dev

ESP32 emulation relies on QEMU .so libraries t

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

TypeScriptarduinoesp32simulationvelxio

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言