Telegram-Bot auf Arduino MKR WiFi 1010 bauen: IoT-Einstiegsguide
Komponenten und Zubehör
| Arduino MKR WiFi 1010 | × | 1 |
Über dieses Projekt
Dieses Projekt zeigt, wie man Arduino mit der Telegram Bot API verbindet. Basis ist das neue MKR WiFi 1010 Board mit ESP32-Modul von u-blox.
Es ist ein Proof-of-Concept – nur das Arduino-Board wird benötigt. Was ist ein Telegram-Bot? Bots sind Software-gesteuerte Telegram-Accounts (keine Menschen), oft mit KI-Funktionen. Sie können lehren, spielen, suchen, senden, erinnern, verbinden, IoT-Geräte steuern (Quelle: Telegram).
Hier übergeben wir Befehle an den Arduino – ein einfaches IoT-Gerät. Es antwortet auf einfache Befehle und schaltet die eingebaute LED ein/aus. Ihrer Fantasie sind keine Grenzen gesetzt (z. B. Relais an I/O-Pins anschließen und Heizung/Klimaanlage per Smartphone steuern).
Schritt 1: Was Sie brauchen
- Arduino MKR WiFi 1010 (Store: https://store.arduino.cc/arduino-mkr-wifi-1010)
- Arduino IDE 1.8.5 oder neuer (https://www.arduino.cc/en/Main/Software)
- Micro-USB-Kabel
- Internetverbindung (SSID & Passwort, am besten heimischer Router)
- Telegram-App auf Smartphone (auch PC/Web möglich)
Schritt 2: IDE installieren & einrichten
- Arduino IDE 1.8.5 herunterladen (ZIP oder EXE) und installieren.
- IDE starten → Werkzeuge → Board → Boardverwalter.
- Nach „Arduino SAMD Boards“ suchen (enthält MKR WiFi 1010), neueste Version installieren (inkl. Treiber).
- Sketch → Bibliothek einbinden → Bibliotheken verwalten → „WiFiNINA“ suchen & installieren.
- Board per USB anschließen, Treiberinstallation abwarten.
- Unter Werkzeuge → Board „Arduino MKR WiFi 1010“ wählen.
- Zusätzliche Bibliothek: ESP8266TelegramBot von Giancarlo Bacchio (leicht modifiziert für MKR1010, im Sketch-Ordner enthalten).
- Richtigen COM-Port wählen, mit Board-Info abrufen testen.
Schritt 3: Telegram-Bot erstellen
- Telegram öffnen, nach @BotFather suchen, Chat starten.
/start→ Hilfeliste./newbot→ Namen eingeben (Anzeigename).- Benutzernamen vergeben (5–32 Zeichen, lateinisch, Zahlen, Unterstrich, muss auf „bot“ enden, z. B.
mein_bot). - Bei Erfolg: TOKEN (langer String) erhalten – kopieren & sicher aufbewahren. Verloren?
/tokenbei BotFather generiert neuen.
Optional (Erweitert): /setuserpic (Profilbild), /setabouttext (Kurzinfo), /setdescription (Beschreibung im Chat).
Schritt 4: Sketch anpassen, hochladen, testen
- Sketch herunterladen, entpacken (Namen/Ordner nicht ändern).
- In IDE öffnen, Tab arduino_secrets.h bearbeiten:
- WLAN-SSID & Passwort eintragen.
- Bot-Name, Benutzername, Token von BotFather eintragen.
- Board & Port prüfen, kompilieren, hochladen.
- WICHTIG: Seriellen Monitor öffnen (9600 Baud). Der Code wartet auf Serial Monitor. Arduino verbindet sich mit WLAN, dann polled er Telegram-Server.
- Telegram öffnen, Bot-Namen suchen (nicht Benutzernamen), Chat starten.
/start→ Willkommensnachricht.help(ohne Slash) → Befehlsliste. Alle Befehle testen.
Zertifikats-Probleme? Falls „Bot not connected“:
- Werkzeuge → WiFi101/WiFiNINA Firmware Updater öffnen.
- Board verbinden, Port prüfen.
- Updater Sketch öffnen & hochladen.
- Neueste Firmware wählen, Update Firmware klicken.
- Im Updater: SSL Certificates → Add domain →
telegram.org:443→ OK. - Upload certificates to wifi module klicken.
- Projekt-Sketch erneut hochladen.
Schritt 5: Verbesserungen
- Neue Befehle: Für jeden Befehl eine Subroutine schreiben, die den Befehl ausführt und Status zurückgibt.
- Benutzer beschränken: Jeder Telegram-Nutzer hat eine User-ID. Im Code filtern (Whitelist), nur autorisierte UserIDs Befehle ausführen lassen.
- Hardware: Viele Sensoren/Relais an I/O-Pins anschließbar. ACHTUNG: Board ist 3,3V-tolerant! Pegelwandler nutzen. Mehr Infos: https://www.arduino.cc/en/Guide/MKRWiFi1010
Code: MKR1010Bot_V1_02.zip (C/C++)
Der Sketch ist als ZIP-Datei angehängt (keine Vorschau). Enthält Hauptprogramm und arduino_secrets.h für Zugangsdaten.
Herstellungsprozess
- GoPiGo v2 auf Windows 10 IoT Core für Raspberry Pi 3 erweitern
- Smartes Sparschwein: Münzprüfer mit Arduino Nano steuern
- Arduino Audio-Frequenz-Detektor – Lauteste Schallpeaks mit hochsensiblem Modul messen
- LED per Bluetooth mit Arduino steuern – Einfache DIY-Anleitung
- Arduino Tic Tac Toe mit MAX7219 LED-Matrix und Karton-Gehäuse
- DIY-Voltmeter mit Arduino und Nokia 5110 Display – Schritt-für-Schritt-Anleitung
- Zuverlässigen Arduino-Countdown-Timer mit SparkFun 7-Segment-Display bauen
- Sprachgesteuerte Haushaltsgeräte: Bluetooth-Steuerung mit Google Assistant
- Fridgeye-App mit Nextion-Display bauen: Schritt-für-Schritt-Anleitung
- RC Porsche selbst bauen: Arduino-Schritt-für-Schritt-Anleitung