Simon Laburda und ich wurden von Areus Engineering beauftragt, ein Steuersystem für eine passive LED-Matrix mit 768 weißen LEDs (48×16 Pixel) zu entwickeln. Diese Matrix wurde an einem Maybach-Prototyp angebracht, um die Idee des Designers Michal Plata umzusetzen: das Auto „unsichtbar“ erscheinen zu lassen, indem eine Webcam-Aufnahme von einer Seite auf die andere projiziert wird – inspiriert vom James-Bond-Film Stirb an einem anderen Tag.
Das System sollte 16 Graustufen darstellen und erreichte 15 Bilder pro Sekunde bei einer Bildwiederholfrequenz von bis zu 100 Hz. Die Pixeldaten kamen von einer Webcam auf einem Linux-Netbook, wo das Bild per OpenCV skaliert und entzerrt wurde, bevor es über ledbridge an die Matrix übertragen wurde. Um die für 15 mA ausgelegten LEDs auf 240 mA zu betreiben, musste permanent durch alle 16 Reihen gescannt werden, damit die LEDs nicht durchbrennen. Für die hohe Bildrate auf dem ATMega32 entwickelte ich ein optimiertes Framebuffer-Layout und nutzte teilweise Assembler-Programmierung, da C allein nicht ausreichend schnell war.
Wir haben das Steuersystem erfolgreich für den Maybach-Prototyp realisiert, wodurch die LED-Matrix die Vision von Michal Plata auf beeindruckende Weise umsetzen konnte.