Funktionsfähiges System · In aktiver Entwicklung2026

PLUTO Piano Brain

Interaktives MIDI-Lern- und Visualisierungssystem

Meine Rolle

Produktdesign · Hardware · Firmware · Backend · UI

01

Projektübersicht

Ich habe ein Roland-Digitalpiano mit Raspberry Pi, ESP32, Touchdisplay und einem kalibrierten LED-System für alle 88 Tasten in ein vernetztes Lerninstrument verwandelt.

Live-USB-MIDI wird von einem Python-Dienst verarbeitet und über WebSockets verteilt. Gespielte und kommende Noten werden direkt über der Tastatur visualisiert.

Das System funktioniert ohne Laptop. Eine eigene Touch-Oberfläche bietet MIDI-Bibliothek, Suche, Wiedergabe und Systemstatus.

02

Reale Produkt-Screenshots

Hier werden ausschließlich reale Produkt-Screenshots ergänzt—keine Mockups oder Stockbilder.

01

Screenshot

Hier werden ausschließlich reale Produkt-Screenshots ergänzt—keine Mockups oder Stockbilder.

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

03

Systemarchitektur

Roland Digitalpiano

USB-MIDI-Quelle

Raspberry Pi

Python MIDI · Bibliothek · WebSocket API

ESP32 · 196 LEDs

Kalibrierte Beleuchtung mit geringer Latenz

7-Zoll-Touch-UI · RediON²⁶

Steuerung und Visualisierung

04

Projektstatus

Umgesetzt

  • USB-MIDI-Erfassung
  • Python-Dienst auf Raspberry Pi
  • WebSocket-Kommunikation in Echtzeit
  • Präzise LED-Zuordnung für 88 Tasten
  • MIDI-Suche und Wiedergabe
  • Chromium-Kioskoberfläche
  • Automatischer Start mit systemd

In aktiver Entwicklung

  • Interaktive Lernszenen
  • Verbesserte Notenoberfläche
  • Home-Assistant-Entitäten
  • Erweiterte Bibliothekssteuerung

Geplant

  • Klavier-Lernspiele
  • Adaptive AI-Lektionen
  • Wandmontierter EQ-Visualizer
  • Familien- und Mehrspielerprofile

05

Technische Entscheidungen

Warum Raspberry Pi statt nur ESP32?

Das Piano benötigt einen echten USB-MIDI-Host, ALSA, dauerhafte Dienste, lokalen Speicher und HDMI-Ausgabe—Aufgaben für ein Linux-System.

Warum ein separater LED-Controller?

Der ESP32 liefert vorhersehbare LED-Aktualisierungen mit geringer Latenz, während der Pi MIDI, Bibliothek und Orchestrierung übernimmt.

Warum WebSockets?

Ein Echtzeit-Ereignisstrom kann LED-Controller, Touch-Oberfläche, Dashboard und künftige Visualisierungen gleichzeitig versorgen.

06

Gelöste Herausforderungen

  • 01MIDI-Wiedergabe bei UI-Neuladen erhalten
  • 02196 LEDs physisch auf 88 Tasten kalibrieren
  • 03LED-System separat und sicher versorgen
  • 04Dienste zuverlässig mit systemd starten
  • 05Builds vom begrenzten Raspberry Pi fernhalten

07

Technologien

Hardware

  • Roland Piano
  • Raspberry Pi
  • ESP32
  • 196 WS2812 LEDs
  • 7-Zoll-Touchdisplay

Firmware

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

Backend & Dienste

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

Oberfläche

  • Next.js
  • TypeScript
  • Chromium Kiosk

08

Was es demonstriert

PLUTO Piano Brain zeigt meine Fähigkeit, ein Embedded-Produkt über Hardware, Firmware, Linux-Dienste, Netzwerke, Echtzeitprotokolle und UI hinweg vollständig umzusetzen.

Benötigen Sie ein ähnliches System?

Ich kann eine Lösung passend zu Ihren Abläufen, Ihrem Team und Ihren Geschäftszielen konzipieren und umsetzen.

Projekt besprechen