Arduino UNO Q - OpenClaw
Möchten Sie Ihren Arduino UNO Q durch einfache englische Textnachrichten steuern, statt feste Bot-Befehle zu verwenden? Dieses Tutorial zeigt Ihnen, wie Sie OpenClaw mit Arduino UNO Q verwenden, damit Sie Nachrichten wie "LED einschalten" oder "Was ist der MCU-Status?" von Telegram, WhatsApp, Discord oder einer beliebigen Messaging-App, die Sie bereits verwenden, senden können.
In diesem Tutorial werden Sie lernen:
- Was OpenClaw ist und wie es mit Arduino UNO Q funktioniert
- Wie Sie OpenClaw auf der Linux-Seite von Arduino UNO Q (Debian) installieren
- Wie Sie eine benutzerdefinierte Arduino UNO Q-Fertigkeit für OpenClaw erstellen
- Wie Sie OpenClaw mit Telegram verbinden
- Wie Sie die MCU Bridge-Skizze für OpenClaw zum Steuern schreiben
- Wie Sie Arduino UNO Q-Hardware mit natürlichen Sprachnachrichten steuern

Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Was ist OpenClaw?
OpenClaw ist ein persönlicher KI-Assistent, den Sie auf Ihrem eigenen Gerät ausführen. Er stellt eine Verbindung zu Messaging-Apps her, die Sie bereits verwenden (Telegram, WhatsApp, Discord, Slack und viele mehr) und verwendet ein KI-Modell (Anthropic Claude, OpenAI usw.), um zu verstehen, was Sie sagen, und danach zu handeln.
Auf Arduino UNO Q wird OpenClaw auf der Linux-Seite ausgeführt (der Qualcomm MPU, auf der Debian Linux läuft). Sie erstellen eine benutzerdefinierte Fertigkeit, die OpenClaw beibringt, wie MCU-Funktionen über die Bridge aufgerufen werden. Danach können Sie Nachrichten in natürlicher Sprache senden und OpenClaw erledigt den Rest.
Wichtige Funktionen:
- Natürliche Sprache — keine festen Befehle; sagen Sie dasselbe auf viele Arten und OpenClaw versteht es
- Multi-Channel — funktioniert gleichzeitig auf Telegram, WhatsApp, Discord, Slack und mehr
- Erweiterbar — fügen Sie weitere Bridge-Funktionen hinzu und aktualisieren Sie die Fertigkeit, um OpenClaw von ihnen zu unterrichten
- Selbstgehostet — läuft auf der Linux-Seite von Arduino UNO Q; Ihre Daten bleiben auf Ihrem Gerät
OpenClaw vs. Telegram Bot
Sowohl OpenClaw als auch der Telegram-Bot (in anderen Tutorials behandelt) ermöglichen es Ihnen, Arduino UNO Q remote zu steuern. Der wichtigste Unterschied ist die Funktionsweise von Befehlen:
| Funktion | Telegram Bot | OpenClaw |
|---|---|---|
| Befehlsstil | Fest (z. B. /led_on) | Natürliche Sprache ("LED einschalten") |
| Verständnis | Exakte Befehlsübereinstimmung | KI-gesteuerte Absichtserkennung |
| Messaging-Kanäle | Nur Telegram | Telegram, WhatsApp, Discord, Slack und mehr |
| KI-Modell erforderlich | Nein | Ja (API-Schlüssel von Anthropic, OpenAI usw.) |
| Komplexität des Setups | Einfach | Mittel |
Voraussetzungen
Bevor Sie beginnen, stellen Sie sicher, dass Sie haben:
- Arduino UNO Q läuft: Folgen Sie zunächst dem Tutorial Erste Schritte mit Arduino UNO Q
- Arduino App Lab: installiert und funktioniert
- Vertrautheit mit der Bridge: Siehe das Tutorial Kommunikation zwischen Linux und MCU
- Ein Messaging-Konto: Dieses Tutorial verwendet Telegram, aber OpenClaw unterstützt auch WhatsApp, Discord, Slack, iMessage und mehr. Das Setup für andere Kanäle ist ähnlich.
- Ein Telegram-Bot-Token: Sie werden dies im Abschnitt OpenClaw mit Telegram verbinden unten mit @BotFather erstellen
- Ein API-Schlüssel eines KI-Anbieters: Dieses Tutorial verwendet Anthropic (Claude). Sie können auch OpenAI oder andere unterstützte Anbieter verwenden; die Setupschritte sind ähnlich. Melden Sie sich unter console.anthropic.com an, erstellen Sie einen API-Schlüssel und kopieren Sie ihn; Sie werden ihn während des OpenClaw-Onboarding-Schritts einfügen.
Wie OpenClaw + Arduino UNO Q zusammenarbeiten
※ Notiz:
OpenClaw wird auf der Qualcomm MPU (Linux-Seite) ausgeführt. Die MCU stellt Hardware-Steuerfunktionen über die Arduino Bridge genau wie in anderen Bridge-Tutorials bereit. OpenClaw ruft diese Funktionen über eine WebUI HTTP-Bridge auf, die auf der Arduino UNO Q Linux-Seite läuft.
Hier ist der Ablauf für jede Benutzernachricht:
- Benutzer sendet eine Nachricht über Telegram (oder einen anderen verbundenen Kanal): *"LED umschalten"*
- OpenClaw empfängt die Nachricht auf Telegram (oder einem anderen Kanal), sendet sie an das Anthropic Claude KI-Modell, das die Absicht versteht und die passende Arduino UNO Q-Fertigkeit auswählt
- Fertigkeit weist OpenClaw an, auszuführen: curl http://localhost:7000/api/toggle_led
- WebUI Bridge — ein Python-Skript, das als Webserver auf der Arduino UNO Q Linux-Seite läuft — empfängt diese HTTP-Anfrage und ruft Bridge.call("toggle_led", "") auf, um die MCU zu erreichen
- MCU (STM32) schaltet die LED um und gibt das Ergebnis über die Bridge zurück zum Python-Webserver
- OpenClaw empfängt das Ergebnis und sendet die Antwort an den Benutzer zurück: *"LED ist jetzt EIN"*

OpenClaw installieren
Die Installation von OpenClaw ist zum Zeitpunkt des Schreibens dieses Tutorials nicht einfach. Sie können auf Probleme wie Endlosschleifen während des Onboarding-Assistenten, Eingabeaufforderungen, die nicht voranschreiten, oder Schritte, die je nach der installierten Version von OpenClaw unterschiedlich funktionieren, stoßen. Dieser Abschnitt zeigt Ihnen die wichtigsten Schritte, die zum Zeitpunkt des Schreibens funktioniert haben — die exakten Schritte können je nach der installierten Version unterschiedlich sein. Wenn etwas stecken bleibt, beenden Sie (Strg+C), überprüfen Sie die OpenClaw-Dokumentation und versuchen Sie es erneut.
Um SSH in Arduino UNO Q zu verwenden, benötigen Sie seine IP-Adresse. Öffnen Sie Arduino App Lab, gehen Sie zu Einstellungen und suchen Sie nach dem Feld IP-Adresse.

Node.js installieren
OpenClaw erfordert Node.js 22 oder später. Die Arduino UNO Q Linux-Seite läuft unter Debian, daher installieren Sie es über das NodeSource-Paket.
Verwenden Sie nicht das SSH-Terminal in Arduino App Lab (mindestens Version 0.7.0) — es ist instabil, wird häufig unterbrochen und kann unerwartete Eingaben injizieren. Verwenden Sie stattdessen einen externen SSH-Client.
- Öffnen Sie unter Windows PowerShell oder Windows Terminal und führen Sie Folgendes aus:
- Sie werden aufgefordert, das Linux-Passwort einzugeben, das Sie beim ersten Setup von Arduino Uno Q festgelegt haben.
- Das SSH-Terminal sieht dann so aus:
- Führen Sie diese Befehle im SSH-Terminal aus:
- Sie sollten eine Ausgabe sehen, die mit Repository configured successfully. endet. Führen Sie dann Folgendes aus:
Während der Installation kann ein "Which services should be restarted?" Dialog angezeigt werden. Lassen Sie die Standardauswahl so wie sie ist und drücken Sie Enter, um fortzufahren.

Führen Sie dann Folgendes aus:
Der letzte Befehl sollte v22.x.x oder höher ausdrucken. Falls ja, ist Node.js bereit.
OpenClaw installieren
- Installieren Sie OpenClaw global:
- Erstellen Sie die Config-Verzeichnisse:
Sie sollten sehen: Setup complete: local config, workspace, and session directories are ready.
- Führen Sie den Onboarding-Assistenten aus — dies ist die zuverlässigste Möglichkeit, Ihren Anthropic API-Schlüssel zu speichern:
Der Assistent führt Sie durch eine kurze Reihe von Eingabeaufforderungen:
- Wählen Sie Ja zum Starten des Setups
- Wählen Sie QuickStart
- Wählen Sie Anthropic als Modellsystemanbieter
- Wählen Sie Anthropic API-Schlüssel
- Fügen Sie Ihren Anthropic API-Schlüssel ein und drücken Sie Enter
- Wählen Sie Aktuell beibehalten für das Modell (Claude 3.5 Sonnet ist die Standardeinstellung und funktioniert gut)
Falls die SSH-Sitzung nach dem Assistenten abbricht, stellen Sie die Verbindung wieder her und fahren Sie mit dem nächsten Schritt fort.
- Starten Sie das Gateway im Hintergrund:
Sie werden eine Ausgabe wie diese sehen:
Das ist normal. Die Nummer nach [1] ist die Job-Nummer und 35925 ist die Prozess-ID. Drücken Sie einmal Enter, um die Eingabeaufforderung zurückzubekommen.
- Überprüfen Sie, ob das Gateway läuft:
Suchen Sie diese zwei Zeilen in der Ausgabe:
Sie können auch Connectivity probe: failed sehen — das ist normal, wenn nohup statt systemd verwendet wird. Das Gateway funktioniert weiterhin, solange Sie Gateway already running locally und eine PID neben Port 18789 sehen.
OpenClaw mit Telegram verbinden
Schritt 1 — Holen Sie sich ein Telegram-Bot-Token
Wenn Sie noch keinen Telegram-Bot haben, siehe Wie man einen Telegram-Bot erstellt um Ihren Bot-Token vor dem Fortfahren zu erhalten. Nach Abschluss dieses Tutorials haben Sie einen Bot-Token in diesem Format:
Schritt 2 — Fügen Sie den Bot-Token zu OpenClaw hinzu
Öffnen Sie auf der Arduino UNO Q Linux-Seite (über SSH) die OpenClaw-Konfigurationsdatei:
Suchen Sie den "channels"-Abschnitt und ersetzen Sie ihn durch:
Ersetzen Sie YOUR_BOT_TOKEN_HERE durch das Token von BotFather. Speichern und beenden Sie nano (Strg+O, Enter, Strg+X).
Schritt 3 — Starten Sie das Gateway neu
Drücken Sie einmal Enter, um die Eingabeaufforderung zurückzubekommen, nachdem die nohup-Ausgabe angezeigt wird.
Schritt 4 — Genehmigen Sie sich selbst
Öffnen Sie Telegram, suchen Sie Ihren Bot anhand seines Benutzernamens und senden Sie eine beliebige Nachricht (z. B. hello).
Das erste Mal antwortet OpenClaw mit einer "access not configured"-Nachricht mit einem Kopplungscode:
ArduinoBot
Kopieren Sie den Kopplungscode aus dieser Telegram-Nachricht und führen Sie diesen Befehl auf der Arduino UNO Q Linux-Seite aus (ersetzen Sie MWS8F4WK durch Ihren tatsächlichen Code):
Schritt 5 — Testen Sie die Verbindung
Senden Sie eine weitere Nachricht an Ihren Bot in Telegram. OpenClaw sollte jetzt normal antworten.
ArduinoBot
※ Notiz:
Warum erfordert OpenClaw Genehmigung, wenn ein normaler Telegram-Bot nicht erforderlich ist?
Ein Standard-Telegram-Bot antwortet jedem, der ihn anschreibt — Die Zugriffssteuerung wird nur hinzugefügt, wenn Sie sie selbst programmieren. OpenClaw ist anders: Es ist ein persönlicher KI-Assistent, der auf Ihrer eigenen Hardware mit Ihrem eigenen API-Schlüssel läuft. Jede Nachricht löst einen kostenpflichtigen KI-API-Aufruf aus, und die Fertigkeit kann Shell-Befehle auf Ihrer Linux-Seite ausführen. Um sowohl Ihren Geldbeutel als auch Ihr Gerät zu schützen, sperrt OpenClaw den Zugriff standardmäßig und erfordert vom Eigentümer die explizite Genehmigung jedes Benutzers, bevor dieser damit interagieren kann.
※ Notiz:
OpenClaw unterstützt auch WhatsApp, Discord, Slack, iMessage und vieles mehr. Siehe die OpenClaw-Kanal-Dokumentation für Setupanleitungen für andere Kanäle.
Zu diesem Zeitpunkt läuft OpenClaw auf Ihrem Arduino UNO Q und ist mit Telegram verbunden. Sie können bereits damit chatten, aber es kennt Ihre Hardware noch nicht.
Die nächsten Schritte bauen diese Verbindung auf:
- MCU Bridge-Skizze — eine Arduino-Skizze, die Hardware-Steuerfunktionen (LED, Sensoren usw.) über die Bridge verfügbar macht
- Python WebUI Bridge — ein Python-Skript, das in Arduino App Lab ausgeführt wird und HTTP-Anfragen von OpenClaw empfängt und diese über die Bridge an die MCU weiterleitet
- Arduino UNO Q-Fertigkeit — eine kleine Konfigurationsdatei, die OpenClaw beibringt, welche Befehle ausgeführt werden und wann sie verwendet werden
Sobald alle drei vorhanden sind, können Sie Ihre Hardware mit einfachen Sprachnachrichten steuern.
Arduino UNO Q Code
Der Arduino UNO Q-Code besteht aus zwei Teilen:
- Python-Code auf der Linux-Seite — läuft auf der Qualcomm MPU (Debian Linux); startet einen WebUI HTTP-Server, der Anfragen von OpenClaw empfängt und diese über die Bridge an die MCU weiterleitet
- Arduino C/C++-Skizze auf MCU — läuft auf dem STM32; macht Hardware-Steuerfunktionen (LED, Sensoren usw.) über die Bridge verfügbar, damit das Python-Skript sie aufrufen kann
MCU Bridge-Skizze
Die MCU stellt Hardware-Steuerfunktionen über die Bridge bereit. OpenClaw ruft diese Funktionen über die WebUI Bridge auf (nächster Abschnitt).
Schnelle Schritte
Erste Verwendung von Arduino UNO Q? Folgen Sie dem Tutorial Erste Schritte mit Arduino UNO Q um Ihre Entwicklungsumgebung vorzubereiten, bevor Sie fortfahren.
- Verbinden: Verbinden Sie den Arduino UNO Q mit einem USB-C-Kabel mit Ihrem Computer.
- Öffnen Sie Arduino App Lab: Starten Sie Arduino App Lab und warten Sie, bis es Ihren Arduino UNO Q erkennt. Dies kann beim ersten Start einige Minuten dauern.
- Erstellen Sie eine neue App: Klicken Sie auf die Schaltfläche Neue App erstellen.

- Benennen Sie die App: OpenClawBridge
- Klicken Sie auf Erstellen, um zu bestätigen.
- Sie sehen einen Satz von Ordnern und Dateien, die in Ihrer neuen App generiert werden.

- Suchen Sie die Datei sketch/sketch.ino — hier werden Sie die MCU-Skizze einfügen.
- 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.
- Hochladen: Klicken Sie auf die Run-Schaltfläche in Arduino App Lab, um zu kompilieren und auf den STM32 hochzuladen.

- Pro-Tipp: Halten Sie Arduino App Lab im Hintergrund laufen. Die Python WebUI Bridge muss laufen, damit OpenClaw die MCU erreichen kann.
App Lab Konsolenausgabe
Python WebUI Bridge
Das Python-Skript läuft auf der Arduino UNO Q Linux-Seite. Es startet einen WebUI HTTP-Server auf Port 7000. OpenClaw ruft diesen Server via curl auf; der Server leitet jede Anfrage an die MCU via Bridge.call() weiter.
Fügen Sie den WebUI Brick hinzu
Das Python-Skript erfordert den WebUI - HTML Brick — ein vorgefertigter Service, der als Docker-Container auf der Arduino UNO Q Linux-Seite läuft und die HTTP-Server-Infrastruktur bereitstellt. Sie müssen ihn zu Ihrer App in Arduino App Lab hinzufügen, bevor Sie das Skript ausführen.
- Öffnen Sie in Arduino App Lab Ihre OpenClawBridge App.
- Klicken Sie auf die Schaltfläche Brick hinzufügen in der Editor-Seitenleiste, um den Bricks-Katalog zu öffnen.

- Suchen Sie WebUI - HTML in der Liste und wählen Sie es aus, folgen Sie dann allen Konfigurationsaufforderungen.

- Arduino App Lab fügt den Brick-Eintrag automatisch zu Ihrer app.yaml-Datei hinzu — bearbeiten Sie diesen Eintrag nicht manuell.
※ Notiz:
Ein Brick ist ein vorgefertigter, sofort einsatzbereiter Service, der auf der Arduino UNO Q Linux-Seite läuft. Der WebUI - HTML Brick verwaltet den HTTP-Server, sodass Sie Flask oder ein anderes Web-Framework nicht manuell installieren müssen. Siehe Informationen zu Bricks für weitere Details.
Python-Code
Ausführen
- Hochladen und ausführen: Klicken Sie auf die Schaltfläche Ausführen in Arduino App Lab. Diese einzelne Schaltfläche macht beides: Sie kompiliert und lädt die Arduino-Skizze auf den STM32 MCU hoch und startet gleichzeitig die Python WebUI Bridge auf der Linux-Seite.

- Überprüfen Sie die Python-Konsole — Sie sollten WebUI started on http://0.0.0.0:7000 sehen, was bestätigt, dass der HTTP-Server läuft und bereit ist, von OpenClaw aufgerufen zu werden.
- Pro-Tipp: Halten Sie Arduino App Lab im Hintergrund laufen. Die Python WebUI Bridge muss laufen, damit OpenClaw die MCU erreichen kann.
Erstellen Sie die Arduino UNO Q-Fertigkeit
Eine Fertigkeit ist ein kleiner Ordner mit einer SKILL.md-Datei, die OpenClaw beibringt, wie und wann Sie Ihren Arduino UNO Q verwendet.
- Erstellen Sie den Fertigkeitsordner:
- Erstellen Sie SKILL.md:
Fügen Sie diesen Inhalt ein:
Speichern und beenden Sie nano (Strg+O, Enter, Strg+X).
- Laden Sie OpenClaw neu:
- Überprüfen Sie, ob die Fertigkeit geladen wurde:
Sie sollten arduino-uno-q in der Liste sehen.
Testen Sie es
Stellen Sie sicher, dass die MCU Bridge-Skizze hochgeladen ist und die Python WebUI Bridge auf der Arduino UNO Q Linux-Seite läuft. Öffnen Sie dann Telegram (oder Ihren gewählten Kanal) und senden Sie Nachrichten an Ihren OpenClaw-Bot:
- "LED umschalten" — OpenClaw sollte die LED umschalten und antworten "LED ist jetzt EIN" oder "LED ist jetzt AUS"
- "Was ist der MCU-Status?" — OpenClaw sollte antworten "MCU ist laufen. LED: EIN"
- "LED einschalten" — dasselbe wie umschalten; OpenClaw versteht verschiedene Formulierungen
- "Läuft der Arduino?" — OpenClaw bildet dies auf die Statusüberprüfung ab
Falls OpenClaw antwortet, dass es die MCU nicht erreichen kann, überprüfen Sie, ob Arduino App Lab offen ist und das Python-Bridge-Skript läuft.