Sistema funzionale · In sviluppo attivo2026

PLUTO Piano Brain

Sistema interattivo per apprendimento e visualizzazione MIDI

Il mio ruolo

Product design · Hardware · Firmware · Backend · UI

01

Panoramica

Ho trasformato un pianoforte digitale Roland in uno strumento connesso per apprendimento e visualizzazione usando Raspberry Pi, ESP32, display touch e LED calibrati su tutti gli 88 tasti.

Il MIDI USB in tempo reale viene elaborato da un servizio Python e distribuito via WebSocket. Le note suonate e quelle in arrivo vengono visualizzate direttamente sulla tastiera.

Il sistema funziona senza laptop. Un’interfaccia touch dedicata offre libreria MIDI, ricerca, riproduzione e stato del sistema.

02

Screenshot reali del prodotto

Qui verranno inseriti esclusivamente screenshot reali del prodotto, senza mockup o immagini stock.

01

Screenshot

Qui verranno inseriti esclusivamente screenshot reali del prodotto, senza mockup o immagini stock.

/projects/pluto-piano-brain/desktop-01.webp

03

Architettura

Pianoforte digitale Roland

Sorgente USB MIDI

Raspberry Pi

Python MIDI · Libreria · API WebSocket

ESP32 · 196 LED

Illuminazione calibrata a bassa latenza

UI touch 7 pollici · RediON²⁶

Controllo e visualizzazione

04

Stato del progetto

Realizzato

  • Acquisizione USB MIDI
  • Servizio Python su Raspberry Pi
  • Comunicazione WebSocket in tempo reale
  • Mappatura precisa LED per 88 tasti
  • Ricerca e riproduzione MIDI
  • Interfaccia kiosk Chromium
  • Avvio automatico con systemd

In sviluppo attivo

  • Scene didattiche interattive
  • Interfaccia spartiti migliorata
  • Entità Home Assistant
  • Controlli libreria estesi

Pianificato

  • Giochi per imparare il piano
  • Lezioni AI adattive
  • Visualizzatore EQ da parete
  • Profili famiglia e multiplayer

05

Decisioni tecniche

Perché Raspberry Pi e non solo ESP32?

Il Roland richiede un vero host USB MIDI, ALSA, servizi persistenti, memoria locale e uscita HDMI—responsabilità adatte a Linux.

Perché un controller LED separato?

ESP32 garantisce aggiornamenti LED prevedibili e rapidi, mentre il Pi gestisce MIDI, libreria e orchestrazione.

Perché WebSocket?

Un unico flusso eventi in tempo reale può alimentare controller LED, interfaccia touch, dashboard e visualizzatori futuri.

06

Problemi risolti

  • 01Mantenere la riproduzione MIDI durante il refresh UI
  • 02Calibrare 196 LED su 88 tasti
  • 03Alimentare i LED in modo separato e sicuro
  • 04Avviare i servizi con systemd
  • 05Evitare build pesanti sul Raspberry Pi

07

Tecnologie

Hardware

  • Piano Roland
  • Raspberry Pi
  • ESP32
  • 196 LED WS2812
  • Display touch 7 pollici

Firmware

  • C++
  • PlatformIO
  • FastLED
  • Arduino-ESP32

Backend e servizi

  • Python
  • ALSA MIDI
  • python-rtmidi
  • asyncio
  • WebSocket
  • systemd

Interfaccia

  • Next.js
  • TypeScript
  • Chromium Kiosk

08

Cosa dimostra

PLUTO Piano Brain dimostra la mia capacità di realizzare un prodotto embedded completo tra hardware, firmware, servizi Linux, rete, protocolli in tempo reale e interfaccia.

Ti serve un sistema simile?

Posso progettare e sviluppare una soluzione adatta al tuo flusso di lavoro, al team e agli obiettivi aziendali.

Parliamo del progetto