Arduino UNO Q - Integrierte LED-Matrix
Das Arduino UNO Q wird mit einer integrierten 8×13 LED-Matrix auf dem Board geliefert — keine zusätzliche Hardware erforderlich! In diesem Tutorial erfahren Sie Schritt für Schritt, wie Sie Ziffern und Zeichen anzeigen.
In diesem Tutorial erfahren Sie:
- Was die integrierte LED-Matrix auf Arduino UNO Q ist und wie sie funktioniert
- Wie Sie den MCU (C/C++ Arduino-Code) programmieren, um Ziffern und Zeichen auf der Matrix anzuzeigen
- Wie Sie sowohl die Linux-Seite (Python) als auch die MCU-Seite (C/C++) programmieren, um die Matrix per Bridge ferngesteuert zu steuern
- Wie Sie Telegram-Nachrichten an Arduino UNO Q senden, um Inhalte auf der LED-Matrix anzuzeigen
- Wie Sie OpenClaw auf Arduino UNO Q mit der integrierten LED-Matrix verwenden

Für die Verwendung eines externen LED-Matrix-Moduls siehe das Tutorial Arduino UNO Q - LED-Matrix.
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über die integrierte LED-Matrix
Das Arduino UNO Q verfügt über eine integrierte 8×13 LED-Matrix — ein Gitter mit 13 Spalten und 8 Reihen LEDs (insgesamt 104 LEDs). Sie wird direkt vom STM32 MCU über die Bibliothek Arduino_LED_Matrix gesteuert.
Wichtige Fakten:
- Größe: 13 Spalten × 8 Reihen (insgesamt 104 LEDs)
- Keine Verkabelung erforderlich: Sie ist direkt auf dem Arduino UNO Q Board verlötet
- Gesteuert von: dem STM32 MCU; das Linux MPU kann nicht direkt darauf zugreifen
- Bibliothek: Arduino_LED_Matrix — bietet frambasierte Rendering
- Schriftartunterstützung: Die Hilfsdatei fonts.h definiert Bitmaps für Ziffern 0–9 und Buchstaben A–Z
So funktioniert es:
- Ein flaches Array frame[104] hält Pixelwerte (0 = aus, 1 = an) und ist als frame[row * 13 + col] indiziert
- Sie rufen matrix.draw(frame) auf, um den Frame zur physischen Anzeige zu pushen
- Zeichen aus fonts.h werden mit add_to_frame(char c, int pos) in den Frame gezeichnet, wobei pos die Startspalte ist (0–12)
- Ein einzelnes 5-Pixel-breites Zeichen passt an Position 4 der Spalte für Mittenjustierung; zwei Zeichen passen an den Positionen 0 und 7

MCU-Code - Ziffern oder Zeichen anzeigen
Die unten angegebene Skizze zeigt nacheinander die Ziffern 0–9 und dann die Buchstaben A–Z einzeln in der Mitte der LED-Matrix an.
Schnelle Schritte
Erste Erfahrung mit Arduino UNO Q? Folgen Sie dem Tutorial Erste Schritte mit Arduino UNO Q, um Ihre Entwicklungsumgebung vor dem Fortfahren vorzubereiten.
- Verbindung herstellen: Stecken Sie das USB-C-Kabel in Arduino UNO Q ein — keine zusätzliche Verkabelung erforderlich.
- Arduino App Lab öffnen: Starten Sie Arduino App Lab und warten Sie, bis Ihr Arduino UNO Q erkannt wird — dies kann beim ersten Start mehrere Minuten dauern.
- Neue App erstellen: Klicken Sie auf die Schaltfläche Create New App.

- Geben Sie der App einen Namen, zum Beispiel: BuiltInLedMatrixCharacter
- Klicken Sie auf Create, um zu bestätigen.
- Sie sehen einen Satz von Ordnern und Dateien, die in Ihrer neuen App generiert wurden.

- Suchen Sie die Datei sketch/sketch.ino — hier werden Sie die MCU-Skizze einfügen.
- Suchen Sie auch den Speicherort der Datei sketch/fonts.h — Sie werden eine neue Datei mit diesem Namen erstellen.
- Install the library: Click the Add sketch library button (the open book icon with a + sign) in the left sidebar.

- Search for Arduino_RouterBridge created by Arduino and click the Install button.
- Upload: Klicken Sie auf die Schaltfläche Run in Arduino App Lab, um zu kompilieren und zum STM32 hochzuladen.

Die LED-Matrix durchläuft die Ziffern 0–9 und dann die Buchstaben A–Z!
Code-Erklärung
Im bereitgestellten Code ist es wichtig, sich auf die Funktion add_to_frame(char c, int pos) zu konzentrieren. Diese Funktion akzeptiert zwei Argumente:
- char c: Das anzuzeigende Zeichen. Gültige Werte reichen von 0 bis 9 und A bis Z.
- int pos: Die Spaltenposition, wo das Zeichen angezeigt werden soll. Gültige Werte reichen von 0 bis 12.
MCU-Code - Zwei Zeichen gleichzeitig anzeigen
Die folgende MCU-Skizze zeigt zwei Zeichen gleichzeitig auf der LED-Matrix an.
Schnelle Schritte
- Verwenden Sie die gleiche fonts.h-Datei aus dem vorherigen Abschnitt.
- Fügen Sie die obige Skizze in sketch/sketch.ino in Ihrer App ein und klicken Sie auf die Schaltfläche Run.

Die LED-Matrix zeigt zwei Zeichen gleichzeitig an!
Bridge: Linux + MCU
Dieser Abschnitt zeigt, wie Sie beide Prozessoren des Arduino UNO Q programmieren, damit die Linux-Seite die integrierte LED-Matrix ferngesteuert steuern kann:
- Die LED-Matrix wird vom MCU (STM32) gesteuert — der MCU rendert Zeichen auf der physischen Anzeige
- Der MPU kann nicht direkt auf die LED-Matrix zugreifen — er muss Befehle über Bridge.call() an den MCU senden
- Der MPU hat Wi-Fi — Es wird volles Debian Linux ausgeführt und kann sich mit dem Internet verbinden und Matrix-Updates ferngesteuert auslösen
- Arduino_RouterBridge ermöglicht RPC-Kommunikation zwischen den beiden Prozessoren
- ⚠️ /dev/ttyHS1 (Linux) und Serial1 (MCU) sind RESERVIERT durch den Router — öffnen Sie sie niemals in Benutzercode
Kurz gesagt: MCU rendert Zeichen auf der LED-Matrix → MPU sendet Anzeigebefehle → MPU kann die Matrix von überall im Internet aus aktualisieren.
MCU-Code (Bridge)
Python-Code (Bridge)
Schnelle Schritte
- Verbindung herstellen: Stecken Sie das USB-C-Kabel in Arduino UNO Q ein — keine zusätzliche Verkabelung erforderlich.
- Arduino App Lab öffnen: Starten Sie Arduino App Lab und warten Sie, bis das Board erkannt wird.
- Neue App erstellen: Klicken Sie auf Create New App, nennen Sie es BuiltInLedMatrixBridge und klicken Sie auf Create.
- MCU-Skizze einfügen: Kopieren Sie den MCU-Bridge-Code oben und fügen Sie ihn in sketch/sketch.ino ein.
- fonts.h erstellen: Fügen Sie eine fonts.h-Datei in der Skizzenbibliothek mit der gleichen Schriftartdefinition wie im vorherigen Abschnitt hinzu.
- Python-Code einfügen: Kopieren Sie den Python-Bridge-Code oben und fügen Sie ihn in die Python-Datei in der App ein.
- Upload: Klicken Sie auf die Schaltfläche Run in Arduino App Lab.

App Lab-Konsolenausgabe
Telegram
Steuern Sie die integrierte LED-Matrix von überall mit Telegram — zeigen Sie Ziffern oder Buchstaben auf der Matrix von Ihrem Telefon an!
MCU-Skizze: Behalten Sie die gleiche MCU-Skizze aus dem vorherigen Bridge-Abschnitt.
Python-Code (Telegram)
Schnelle Schritte
- Ersetzen Sie YOUR_TELEGRAM_BOT_TOKEN durch Ihr echtes Bot-Token von BotFather.
- Ersetzen Sie YOUR_CHAT_ID durch Ihre Telegram-Chat-ID.
- Fügen Sie diesen Python-Code in die Python-Datei Ihrer App ein (behalten Sie die gleiche MCU-Skizze und fonts.h).
- Klicken Sie auf die Schaltfläche Run. Öffnen Sie Telegram und senden Sie Befehle an Ihren Bot.
App Lab-Konsolenausgabe
ArduinoBot
OpenClaw-Integration
Sie können das OpenClaw auf dieses Tutorial beziehen, indem Sie die Anleitung im Tutorial Arduino Uno Q - OpenClaw beachten
Projektideen
Sie können viele kreative Projekte mit der integrierten LED-Matrix auf Arduino UNO Q erstellen:
- Remote-Anzeigetafel: Senden Sie Score-Ziffern per Telegram an die Matrix — zeigen Sie die aktuelle Spielpunktzahl von überall an
- Benachrichtigungsanzeige: Blitzen Sie einen Buchstaben auf der Matrix auf, wenn eine neue Telegram-Nachricht oder Sensorwarnung ankommt
- Countdown-Timer: Zeigen Sie einen Countdown von 9 bis 0 auf der Matrix an, gesteuert über Bridge von Python
- Letter-of-the-Day Bot: Planen Sie ein Python-Skript, um täglich einen anderen Buchstaben auf der Matrix über einen Cron-Job auf dem Linux MPU anzuzeigen
- Zwei-Zeichen-Status-Anzeige: Zeigen Sie zweibuchstabige Statuscodes auf der Matrix an (z. B. "OK", "HI", "GO"), ausgelöst durch Telegram-Befehle
Fordern Sie sich selbst heraus
Sind Sie bereit, noch weiter mit der integrierten LED-Matrix auf Arduino UNO Q zu gehen? Versuchen Sie diese Herausforderungen:
- Einfach: Fügen Sie einen /scroll-Telegram-Befehl hinzu, der ein Wort buchstabenweise über die Matrix scrollt, mit einer konfigurierbaren Verzögerung.
- Mittel: Erstellen Sie einen /count-Telegram-Befehl, der automatisch von 0 bis 9 auf der Matrix zählt, mit einer Verzögerung von 500 ms zwischen jeder Ziffer.
- Fortgeschritten: Erstellen Sie eine Telegram-gesteuerte Scrolling-Text-Laufschrift — akzeptieren Sie eine mehrteilige Zeichenkette und scrollen Sie sie spaltenweise über die 12-Spalten-Anzeige mit Frame-Manipulation.