Interaktives LED-Kunstobjekt

IcosaLED

Ein Ikosaederstumpf aus Licht –
540 LEDs, Infinity-Mirror, Musik-Reaktivität und WLAN-Steuerung.
Auf einem fünfbeinigen Stativ – passend zur Fünffach-Symmetrie des Körpers.

540 WS2812B LEDs 32 Infinity-Flächen ESP32-S3 Audio-reaktiv
Mehr erfahren

Geometrie trifft Licht

Der Ikosaederstumpf – auch als Fußball-Polyeder bekannt – vereint mathematische Präzision mit sinnlichem Lichtspiel. Alle 90 Kanten sind mit WS2812B-LEDs bestückt, alle 32 Flächen mit halbdurchlässigen Spiegeln verkleidet. Das Ergebnis: ein scheinbar grenzenloses Universum aus Licht.

IcosaLED – Gesamtansicht des Objekts
540
WS2812B LEDs
6 LEDs je Kante, 5 unabhängige Datenstripes – jede LED einzeln adressierbar
32
Spiegelflächen
12 Pentagone + 20 Hexagone mit Infinity-Mirror-Effekt
90
Kanten
Jede einzeln adressierbar mit Farbgradient
60
Vertices
Ikosaederstumpf-Geometrie aus dem Goldenen Schnitt φ

17 Lichtprogramme

Alle Effekte sind über die PWA live steuerbar – Farben, Geschwindigkeit, Intensität und Audio-Reaktivität lassen sich in Echtzeit anpassen.

RunningLight

Ein Lichtsegment läuft durch alle 90 Kanten. Beat-synchronisierter Geschwindigkeitsschub.

EdgeWave

Sinuswelle breitet sich über alle Kanten aus. Amplitude reagiert auf Mikrofon-Energie.

EdgeBlitz

12 zufällige Kanten blitzen gleichzeitig auf – synchron zum Beat.

🌈

ColorChase

Regenbogen-Farbverlauf wandert kontinuierlich durch alle Kanten.

Per App – von überall

Die PWA läuft direkt im Browser – keine Installation nötig. Über http://icosaled.local ist das Objekt im WLAN sofort erreichbar. Alle Parameter lassen sich in Echtzeit über WebSocket anpassen.

  • 🎨 Farbwahl mit HSV-Farbrad
  • Effektwechsel per Tap
  • 🎚️ Geschwindigkeit, Intensität, Audio-Sensitivität
  • 📋 Playlist mit automatischer Reihenfolge
  • 📡 WLAN-Konfiguration direkt in der App
  • 🔄 OTA-Firmware-Update über WLAN
IcosaLED – Gesamtansicht

Unter der Oberfläche

🧠

Controller

  • ESP32-S3, Dual-Core 240 MHz
  • 8 MB PSRAM, 16 MB Flash
  • FreeRTOS – 4 parallele Tasks
  • ST7796 320×480 Touch-Display (Capacitive)
  • 2 Screens: Status-Ansicht & 3D-Visualizer
💡

LEDs & Optik

  • 540 × WS2812B – jede einzeln adressierbar
  • 5 custom-designed LED-Strips (Eigenproduktion)
  • 74AHCT125 Level-Shifter
  • Halbdurchlässige Spiegel (Infinity)
🎵

Audio

  • ES8311 Onboard-Mikrofon
  • I²S, 44,1 kHz, 16 Bit
  • 512-Punkt-FFT in Echtzeit
  • 8 Frequenzbänder + Beat-Detection
📡

Netzwerk

  • WiFi AP + STA-Modus
  • mDNS: icosaled.local
  • WebSocket-Protokoll (JSON)
  • PWA mit Service Worker (Offline)
🔧

Software

  • C++ / Arduino Framework
  • FastLED, AsyncWebServer
  • Vanilla JS Frontend (kein Framework)
  • OTA-Updates über WLAN
📐

Geometrie

  • 60 Vertices, 90 Kanten, 32 Flächen
  • Goldener Schnitt φ = (1+√5)/2
  • 3D-Echtzeit-Projektion im Browser
  • Tiefenbasierte Helligkeitsskalierung

Onboard-Display: 2 Screens per Touch

Das 3,5" Touchdisplay (320×480 px) zeigt Live-Systemdaten oder einen interaktiven 3D-Visualizer – per Fingertipp umschaltbar.

Screen 1 – Statusansicht
IcosaLED LIVE Effekt: ColorChase FPS: 60 Heap: 184 kB Clients: 2 BPM: 124 Mikrofon BEAT WiFi: STA · Heimnetz icosaled.local 192.168.1.42 Uptime: 1:23:47 Tippen zum Wechseln
Screen 2 – 3D-Visualizer
ColorChase < Tippen zum Wechseln >

Systemarchitektur

ESP32-S3 Core 0 + Core 1
LED-Task
60 fps / Core 1
Audio-Task
100 fps / Core 1
Display-Task
15 fps / Core 0
WiFi / OTA
loop() / Core 0
540 WS2812B
FFT + Beat
ST7796 Display
WebSocket → PWA

Custom LED-Strips – selbst designed & produziert

Ein handelsüblicher LED-Strip wäre hier keine Option: Die 90 Kanten des Ikosaederstumpfs verlaufen in alle Raumrichtungen, treffen in Winkeln aufeinander, die keine gerade Kabelführung erlauben. Jede Kante muss einzeln angesteuert werden – mit einem durchgehenden Strip wäre die Verkabelung im Inneren des Körpers ein unlösbares Gewirr aus Leitungen, Schleifen und Rückleitungen.

Die Lösung: vollständig eigens entwickelte LED-Module, die direkt auf die Geometrie des Körpers abgestimmt sind. Jedes Modul trägt exakt 6 WS2812B-LEDs – passend zu den 6 LEDs je Kante – und ist so dimensioniert, dass es bündig in die Kante eingesetzt werden kann. Die Datenleitung wird innerhalb des Moduls durchgeschliffen; Strom- und Signalführung laufen geordnet an den Knotenpunkten zusammen, ohne dass freie Kabel durch den Körper verlegt werden müssen.

Je Stripe sind 18 solcher Module in Reihe geschaltet – 108 LEDs pro Stripe, 5 Stripes insgesamt. Alle 540 LEDs sind einzeln adressierbar und werden vom ESP32-S3 in Echtzeit mit bis zu 60 Frames pro Sekunde angesteuert.

Custom LED-Strip – Fertigung
Gefertigter LED-Strip – 6 LEDs je Modul · 18 Module je Stripe · 5 Stripes im Projekt
Custom LED-Strip – PCB-Render
PCB-Design – maßgeschneidert für die Kantengeometrie

Interesse? Fragen?

Dieses Projekt ist ein handgefertigtes Einzelstück.
Bei Interesse an einer Zusammenarbeit oder weiteren Informationen gerne melden.