Comment utiliser MQTT sur Arduino qui utilise le com série pour envoyer des commandes AT à ESP8266

10

Je viens de commencer à étudier le protocole MQTT.

Situation

Dans mon projet de collège, actuellement, j'utilise Arduino comme MCU principal et je fais tout le travail et j'utilise Serial Comm. pour envoyer des commandes AT à esp8266 (pour les requêtes HTTP, pour exécuter des scripts sur le serveur, etc.). J'avais essentiellement besoin de pousser des données (d'Arduino) sur une page Web (hébergée par un serveur local). J'ai cherché et trouvé sur le protocole MQTT qui permet de publier et de souscrire des données sur les clients (exactement ce que je voulais). Mais la plupart des tutoriels que je trouve sont entièrement sur Arduino (avec bouclier wifi) ou entièrement sur esp8266.

Ce que je veux savoir, c'est qu'il existe un moyen possible d'utiliser MQTT comme avec ma configuration actuelle? Autrement dit, en utilisant Arduino pour faire tout le travail et en utilisant sa communication série. Publication de données uniquement par des commandes AT sur MQTT.

Des informations supplémentaires sur mon projet sont mentionnées ici: Vous ne savez pas quelle technologie utiliser dans Smart Home System

Salim Shamim
la source
Vous pouvez envoyer MQTT via wifi entre Arduino et ESP. Pas besoin de faire la connexion physique.
Jimmy Westberg
pour cela, j'aurais aussi besoin du wifi sur Arduino, n'est-ce pas? Je n'ai pas besoin d'envoyer de données entre Arduino et ESP. J'utilise esp pour envoyer des données d'arduino au serveur local, mon arduino n'a pas de bouclier wifi
Salim Shamim
Aha, si vous avez déjà fait la connexion physique, regardez le FW ESP Easy, qui a une intégration MQTT assez solide dès le départ.
Jimmy Westberg
sonyarouje.com/2016/03/15/… J'ai trouvé ce post, est-ce ce que vous disiez: P Est-ce la voie à suivre? Désolé je suis juste super newb: D
Salim Shamim
1
J'ai essayé MQTT sur UART (pour envoyer des commandes AT à esp8266) github.com/nopnop2002/MQTT_UNO
nopnop2002

Réponses:

4

J'ai enfin trouvé un tutoriel de Sony Arouje . En fait, j'ai dû abandonner complètement l'envoi manuel de commandes esp et j'ai dû utiliser la bibliothèque (WiFiEsp.h). Astuce ... C'est mieux!

Bien qu'au départ cela ne fonctionnait pas avec mon esp8266 car il avait un firmware plus ancien et rapportait une erreur "firmware non supporté". J'ai dû flasher un firmware plus récent (fonctionne avec la version 1.54 dans mon cas). Toute personne ayant des problèmes de mise à jour du firmware peut trouver de l'aide en se référant à ce sujet: Impossible de flasher le dernier firmware ESP8266, dit "Erreur de clignotement rapide" et "Tête de paquet non valide ('')"

De plus, j'ai enregistré une copie de tous les outils de téléchargement et la page du didacticiel elle-même, donc si à l'avenir, le message est supprimé ou si quelqu'un ne trouve pas les outils pour flasher. Obtenez-moi dans les commentaires ou quelque chose (ne pas publier ici parce que je ne sais pas si c'est ok pour poster le contenu de quelqu'un d'autre)

Salim Shamim
la source