NHacker Next
  • new
  • past
  • show
  • ask
  • show
  • jobs
  • submit
Velxio, Arduino Emulator (velxio.dev)
dmonterocrespo 13 hours ago [-]
If anyone wants a quick thing to try in the simulator, here's a simple LED blink example with Serial output:

void setup() { pinMode(13, OUTPUT); Serial.begin(9600); }

void loop() { digitalWrite(13, HIGH); Serial.println("LED ON"); delay(500);

  digitalWrite(13, LOW);
  Serial.println("LED OFF");
  delay(500);
}

In Velxio you can connect an LED to pin 13 and watch it blink, while the Serial Monitor prints the messages in the terminal.

dmonterocrespo 2 days ago [-]
I built a small emulator project called Velxio.

A fully local, open-source Arduino emulator. Write Arduino code, compile it, and simulate it with real AVR8 CPU emulation and 48+ interactive electronic components,All running in your browser. GitHub: https://github.com/davidmonterocrespo24/velxio

The goal of this project was to learn more about how emulators work internally: CPU instructions, memory management, and low-level architecture.

It's still experimental, but it already runs basic instructions and I'm continuing to improve it.

dosshell 15 hours ago [-]
What parts have you exactly built?

All I see are dependencies that are glued together with claude.

Can you clearify exactly what you have developed?

dmonterocrespo 13 hours ago [-]
I built specifically:

The browser-based IDE (editor, project handling, UI)

The circuit simulation layer that connects components to the emulator

The glue between the AVR8 emulator and the virtual peripherals (GPIO, UART, SPI, etc.)

The component interaction system (buttons, LEDs, displays, etc.)

The architecture that lets compiled Arduino sketches run and interact with the simulated hardware

Some parts like the AVR CPU emulation and the compiler toolchain obviously come from existing projects, but the goal of Velxio wasn't to re-implement an AVR core from scratch. It was to build a usable environment where all of these pieces work together in the browser.

I'm still having trouble connecting the cables and components properly. I'm looking for a better algorithm. I'm also trying to create a real-world electronics simulator in JavaScript using an engine like CircuitJS1.

tamimio 15 hours ago [-]
Thanks for the share, it looks great! Can I load my own OS in rpi?
monocasa 15 hours ago [-]
Did you see that it's an rpi pico, which doesn't really run OSes in the traditional sense?
tamimio 15 hours ago [-]
You are right, when I skimmed through I thought it’s an sbc one. Still very cool, would try it later.
dmonterocrespo 13 hours ago [-]
Yeah exactly ,the Pico (RP2040) is a microcontroller rather than a full SBC, so it doesn't run a traditional OS like Linux.

In the future I'd like to support more low-level experimentation though (bare-metal programs, custom runtimes, etc.).

Thanks for checking it out!

dmonterocrespo 2 days ago [-]
Hi HN!

I built Velxio to explore how microcontroller emulators work internally.

It's an Arduino environment that runs entirely in the browser. You can write sketches, compile them with arduino-cli, and simulate circuits using a real AVR8 CPU emulator.

Features: - Arduino Uno / Nano support - Raspberry Pi Pico (RP2040) - GPIO, SPI, I2C, UART, ADC peripherals - interactive electronic components

The goal is to create an open-source environment for experimenting with embedded systems without installing anything.

I'd love feedback from embedded developers!

dwroberts 13 hours ago [-]
*Arduino emulator front end, using the AVR emulation from https://github.com/wokwi/avr8js
dmonterocrespo 11 hours ago [-]
If it also uses screen emulation, SPI protocols, IC2, and sensors, it's built from scratch. It also integrates the Arduino CLI for compiling the project and using external libraries. I created an algorithm for the wiring (currently working on it). I've also integrated more Arduino models and the Raspberry Pi Pico. I plan to integrate ESP32, but I haven't been able to finish the emulator using QEMU as a base. It's not just an avr8js frontend
dmonterocrespo 11 hours ago [-]
If anyone wants to try it quickly, there's a live demo available here:

https://velxio.dev/editor

xx__yy 8 hours ago [-]
What a great project, thanks for sharing.
dmonterocrespo 7 hours ago [-]
Thanks!
zellyn 14 hours ago [-]
See also: https://wokwi.com (ESP32 equivalent)

[Edit] Which also does Arduino.

dmonterocrespo 13 hours ago [-]
Yes! Wokwi is great and definitely served as inspiration for Velxio. My goal with this project was mainly to explore how microcontroller emulators work internally and experiment with building parts of that stack myself.
platevoltage 16 hours ago [-]
Very cool. I can't wait to play around with this!
dmonterocrespo 13 hours ago [-]
Thanks! Hope you enjoy trying it out. feedback is always welcome.
noahnathan25 19 hours ago [-]
This is amazing!
dmonterocrespo 13 hours ago [-]
Thanks! I'm glad you like it
Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact
Rendered at 12:13:15 GMT+0000 (Coordinated Universal Time) with Vercel.