Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
Bonjour et bienvenue dans mon premier Instructable.
Je vais vous montrer comment envoyer des e-mails à partir de n'importe quel module wifi ESP8266 à l'aide du serveur Gmail.
Cette instructable s'appuie sur le noyau Arduino pour la puce WiFi ESP8266, qui en fait un microcontrôleur autonome (pas besoin de commandes AT et de dispositifs maîtres).
Vous pouvez connecter des capteurs et être averti par e-mail des changements.
Mise à jour 2018:
Voici un code plus récent écrit en tant que lib arduino. Il prend en charge plusieurs destinataires. De plus, il n'est pas nécessaire d'encoder le login et le mot de passe en base64, il utilise désormais la bibliothèque ESP core base64. github
Mise à jour 2019:
- Ce code ne fonctionne pas avec le noyau ESP8266 pour Arduino version 2.5.0 !
- La solution temporaire utilise la version principale 2.4.2
Avant que nous commencions
Matériel requis:
- Tout ESP8266 (j'utilise le lien ebay ESP8266-07).
- Dans mon cas, la carte UART USB (j'utilise le module adaptateur série FT232RL FTDI ebay). Pas nécessaire si votre carte a un port USB.
- Quelques câbles de démarrage.
- Routeur WIFI bien sûr.
La liste peut être incomplète.
Logiciel requis:
- Logiciel Arduino
- Noyau Arduino pour puce WiFi ESP8266
- Esquisse avec projet et code de test (ESP8266_Gmail_Sender.zip).
Étape 1: Configuration du compte Gmail
Nous allons utiliser SMTP pour envoyer des messages.
En utilisant l'authentification SMTP, nous ne fournissons que l'e-mail et le mot de passe, par défaut, Google utilise des méthodes de vérification plus complexes, nous devons donc modifier les paramètres.
Accédez aux paramètres de votre compte Google et activez "Autoriser les applications moins sécurisées" en bas de la page.
Cela signifie que les applications n'ont besoin que de votre e-mail et de votre mot de passe lorsque vous vous connectez à votre compte gmail.
Si vous êtes préoccupé par la sécurité, utilisez simplement un compte différent
Étape 2: Modifier l'esquisse
J'ai écrit un petit croquis qui envoie un message de test pour vérifier si tout fonctionne comme il se doit
Lorsque tous les logiciels téléchargés et installés:
- Décompressez ESP8266_Gmail_Sender.zip
- Recherchez et ouvrez ESP8266_Gmail_Sender.ino
- Définissez le nom de votre point d'accès wifi (SSID) et votre mot de passe. Devrait être comme ceci:
const char* ssid = "MonWiFi";
const char* mot de passe = "12345678";
Dans la fonction setup() rechercher
if(gsender->Subject(subject)->Send("[email protected]", "Setup test"))
Le premier paramètre de la fonction Send() est l'e-mail du destinataire, le deuxième texte du message.
Changez le destinataire de [email protected] à votre email qui recevra un message.
Je reçois de nombreux e-mails chaque jour parce que certains d'entre vous ne sont pas attentifs, N'OUBLIEZ PAS DE CHANGER L'E-MAIL DU DESTINATAIRE
La fonction Sujet est facultative ! Le sujet est défini une fois et stocké jusqu'à ce que vous le changiez.
Vous pouvez envoyer des mails sans objet ou s'il est déjà défini
gsender->Envoyer(à, message);
Ouvrez maintenant l'onglet Gsender.h
Nous avons besoin de l'adresse e-mail codée en Base64 et du mot de passe du compte gmail qui seront utilisés pour envoyer des e-mails
Vous pouvez utiliser base64encode.org pour l'encodage, le résultat doit être quelque chose comme:
const char* EMAILBASE64_LOGIN = "Y29zbWkxMTExMUBnbWFpbC5jb20=";
const char* EMAILBASE64_PASSWORD = "TGFzZGFzZDEyMzI=";
Définissez maintenant le champ FROM
const char* FROM = "[email protected]";
C'est tout pour cette partie.
Étape 3: Téléchargement et test du code
Sauvegarder les modifications. N'oubliez pas de définir votre tableau dans le menu Outils.
Téléchargez le croquis sur votre carte ESP8266.
Ouvrez le moniteur série, la carte imprimera les messages du journal.
C'est tout ce que j'espère que vous recevrez "Message envoyer.". Merci…