[HN Gopher] Velxio 2.0 - Emulate Arduino, ESP32, and Raspberry P...
___________________________________________________________________
Velxio 2.0 - Emulate Arduino, ESP32, and Raspberry Pi 3 in the
Browser
Author : dmcrespo
Score : 44 points
Date : 2026-03-27 20:44 UTC (2 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| dmcrespo wrote:
| Hey HN, I posted Velxio here a while back and got great feedback.
| Since then I've shipped a major update
|
| What's new in v2:
|
| - 19 boards across 5 CPU architectures (AVR8, Xtensa, RISC-V, ARM
| Cortex-M0+, ARM Cortex-A53) - ESP32 emulation via QEMU (lcgamboa
| fork) -- real flash images, ROM function emulation,
| GPIO/ADC/timers - ESP32-C3 and CH32V003 run on a custom RISC-V
| core written in TypeScript, entirely in the browser - Raspberry
| Pi 3B via QEMU raspi3b -- boots real Pi OS, runs Python -
| Realistic sensor simulation: DHT22 (40-bit protocol timing), HC-
| SR04 (trigger/echo), WS2812B NeoPixel (GRB decoding) - 48+
| electronic components from wokwi-elements
|
| Architecture:
|
| - AVR, RP2040, and RISC-V emulation runs client-side (avr8js,
| rp2040js, custom TS core) - ESP32 Xtensa and Pi 3 run on backend
| QEMU - Compilation via real arduino-cli - React + Vite frontend,
| FastAPI backend - Self-hostable via Docker, no account needed
|
| Source: https://github.com/davidmonterocrespo24/velxio (AGPLv3)
|
| Happy to discuss the emulation architecture -- particularly the
| trade-offs between in-browser vs. backend QEMU emulation
| dmonterocrespo wrote:
| Velxio 2.0 is live.
|
| A free, open-source emulator for 19 embedded boards: Arduino,
| ESP32, Raspberry Pi, RISC-V , running real compiled code in your
| browser.
|
| The best part: it's fully local.
|
| No cloud dependency. No student accounts. No data leaving your
| network. Self-hostable with a single Docker container.
|
| Universities and bootcamps can deploy it on their own servers and
| give every student access to a complete embedded development
| environment, for free.
|
| I've been working on this for over a year, and just shipped v2.0
| with ESP32 emulation (via QEMU), a custom RISC-V core, and
| Raspberry Pi 3 support that runs real Python
| exe34 wrote:
| Is it easy to feed an elf or bin and run that (esp32c3)? I see
| compilation available, but I'm playing with asm and have my
| toolchain figured out already and would just like to emulate
| the firmware.
| mech422 wrote:
| just curious - if it runs from a docker container, what is the
| advantage of running the browser as opposed to just ssh'ing in
| ?
| dmcrespo wrote:
| The main advantage is accessibility and ease of use: with the
| browser, no setup is required on the user's side, no
| toolchains need to be installed, and there's no need to be
| familiar with SSH or terminal workflows
|
| It also provides a more visual and interactive environment
| (editor, peripherals, simulation controls), which is
| especially useful for teaching and for beginners.
|
| The Docker image is there so you can easily install it on
| your own machine if you want to run it locally or work on
| development
| hex4def6 wrote:
| First of all: Awesome work! Playing with it now.
|
| One suggestion: The main splash screen image is nearly 8MB big.
| It takes a noticeable time to download on my connection. I'm not
| sure what bandwidth costs these days, but seems like that could
| be something to optimize.
| dmcrespo wrote:
| Thanks a lot! Yes, that's something I have pending, I'm
| planning to replace it with an SVG or an animated GIF to
| improve loading time
| radicality wrote:
| I often write a bunch of Esphome 'code' , which I then use with
| various esp32 based devices (mostly from M5stack) via
| esphome/HomeAssistant.
|
| Can this project help me in any way during dev stage before
| uploading the code to device just to see it doesn't work ? Eg
| could I use this to somehow compile&run those esphome yamls via
| this emulator?
| dmcrespo wrote:
| That's a really interesting use case. I'm currently evaluating
| integrating the ESPHome compiler into the project, so it could
| potentially compile and run ESPHome YAMLs during the
| development stage
|
| It's still exploratory, but it could definitely go in that
| direction
| urbandw311er wrote:
| This is a great idea. It's always been inconvenient requiring
| access to the physical board just to be able to test these sort
| of projects.
| wumms wrote:
| Nice work! One minor point for me: it wasn't immediately clear
| that you need to press Compile before Play gets enabled (e.g.
| Arduino IDE let's you upload right away and compiles if needed)
___________________________________________________________________
(page generated 2026-03-27 23:00 UTC)