Verwendung von MQTT auf Arduino, das mithilfe von Serial Com AT-Befehle an ESP8266 sendet

10

Ich habe gerade angefangen, mich mit dem MQTT-Protokoll zu befassen.

Lage

In meinem College-Projekt verwende ich derzeit Arduino als Haupt-MCU und erledige jede Arbeit darin und verwende Serial Comm. AT-Befehle an esp8266 senden (für HTTP-Anforderungen, zum Ausführen von Skripten auf dem Server usw.). Grundsätzlich musste ich einige Daten (von Arduino) auf eine Webseite (gehostet von einem lokalen Server) übertragen. Ich habe nach dem MQTT- Protokoll gesucht und gefunden , mit dem Daten auf Clients veröffentlicht und abonniert werden können (genau das, was ich wollte). Aber die meisten Tutorials, die ich finde, sind entweder vollständig auf Arduino (mit WLAN-Schutzschild) oder vollständig auf esp8266.

Ich möchte wissen, ob es eine Möglichkeit gibt, MQTT wie bei meiner aktuellen Konfiguration zu verwenden. Das heißt, Sie verwenden Arduino, um die gesamte Arbeit zu erledigen, und verwenden die serielle Kommunikation. Veröffentlichen von Daten nur mit AT-Befehlen auf MQTT.

Zusätzliche Informationen zu meinem Projekt werden hier erwähnt: Verwirrt darüber, welche Technologie in Smart Home System verwendet werden soll

Salim Shamim
quelle
Sie können MQTT über WLAN zwischen Arduino und ESP senden. Die physische Verbindung muss nicht hergestellt werden.
Jimmy Westberg
dafür würde ich auch auf Arduino WLAN brauchen, nicht wahr? Ich muss keine Daten zwischen Arduino und ESP senden. Ich benutze esp zum Senden von Daten von Arduino an den lokalen Server. Mein Arduino hat kein WLAN-Schutzschild
Salim Shamim
Aha, wenn Sie die physische Verbindung bereits hergestellt haben, schauen Sie sich einfach die FW ESP Easy an, die eine ziemlich solide MQTT-Integration hat.
Jimmy Westberg
sonyarouje.com/2016/03/15/… Ich habe diesen Beitrag gefunden. Ist es das, was Sie gesagt haben: P Ist es der richtige Weg? Entschuldigung, ich bin einfach super Neuling: D
Salim Shamim
1
Ich habe versucht, MQTT über UART (um AT-Befehle an esp8266 zu senden) github.com/nopnop2002/MQTT_UNO
nopnop2002

Antworten:

4

Ich habe endlich ein Tutorial von Sony Arouje gefunden . Wie sich herausstellte, musste ich das manuelle Senden von esp-Befehlen vollständig aufgeben und die Bibliothek (WiFiEsp.h) verwenden. Hinweis ... Es ist besser!

Obwohl es anfangs mit meinem esp8266 nicht funktionierte, weil es eine ältere Firmware hatte und den Fehler "Firmware nicht unterstützt" meldete. Ich musste eine neuere Firmware flashen (funktioniert in meinem Fall mit Version 1.54). Jeder, der Probleme beim Flashen der Firmware hat, kann Hilfe zu diesem Thema finden: Die neueste Firmware des ESP8266 kann nicht geflasht werden. Er sagt "Fehler beim schnellen Flashen" und "Ungültiger Paketkopf ('')".

Außerdem habe ich eine Kopie aller Download-Tools und der Tutorial-Seite selbst gespeichert. Wenn also in Zukunft der Beitrag entfernt wird oder wenn jemand die Tools zum Flashen nicht findet. Erhalten Sie Kommentare oder ähnliches zu mir (nicht hier posten, weil ich nicht weiß, ob es in Ordnung ist, den Inhalt eines anderen zu posten)

Salim Shamim
quelle