Robot pianista · MIDI · ESP32 · Impresión 3D
Servos controlados por ESP32, piezas impresas en 3D, LEDs sincronizados con cada nota y un secuenciador MIDI web que lo orquesta todo desde el navegador.
ESP32-driven servos, 3D-printed parts, LEDs synced to every note and a web MIDI sequencer that orchestrates it all from the browser.
El robot
The robot
Por qué PianoRoll
Why PianoRoll
Envía comandos en tiempo real a servos, solenoides y motores conectados a un ESP32 via WebSocket WiFi o USB Serial. Sincronización beat-by-beat con corrección de drift.
Sends real-time commands to servos, solenoids and motors connected to an ESP32 via WebSocket WiFi or USB Serial. Beat-by-beat sync with drift correction.
Grid con arrastrar y soltar, carril de velocidades, 128 instrumentos GM, importación y exportación de archivos .mid estándar compatibles con cualquier DAW.
Drag-and-drop grid, velocity lane, 128 GM instruments, standard .mid import and export compatible with any DAW.
Detección automática de tonalidad (Krumhansl-Kessler), acordes con Tonal.js, heat map 4D y análisis de cadencias mientras compones.
Automatic key detection (Krumhansl-Kessler), chords with Tonal.js, 4D heat map and cadence analysis as you compose.
Varios proyectos abiertos con historial de deshacer independiente por pestaña.
Multiple projects open with independent undo history per tab.
100 ms de lookahead para timing sample-accurate. Sin jitter por setInterval.
100 ms lookahead for sample-accurate timing. No setInterval jitter.
Pega notación MML directamente y aparece en el grid.
Paste MML notation directly and it populates the grid.
Vista panorámica del proyecto con scrub rápido.
Full-project overview with quick scrub.
Asigna notas MIDI a servos físicos con HIT_MS garantizado por tecla.
Map MIDI notes to physical servos with guaranteed HIT_MS per key.
Funciona en Chrome, Edge y Opera. Sin npm, sin Electron, sin plugins.
Works in Chrome, Edge and Opera. No npm, no Electron, no plugins.
Demo en vivo
Live demo
El robot tocando una secuencia compuesta en PianoRoll y enviada al ESP32 en tiempo real.
The robot playing a sequence composed in PianoRoll and sent to the ESP32 in real time.
Contacto
Contact
Escríbeme por WhatsApp — respondo en menos de 24 h. Puedo fabricar una unidad, resolver dudas técnicas o hablar de colaboraciones.
Message me on WhatsApp — I reply within 24 h. I can build a unit, answer technical questions or discuss collaborations.
Escríbeme por WhatsAppMessage me on WhatsApp