Pour envoyer un e-mail à l'aide d'une carte ESP32, d'un bouton poussoir et du protocole SMTP pour Gmail, voici un guide étape par étape.
1- Activation du service SMTP pour Gmail :
a) Activez l'option "Accès à des applications moins sécurisées" sur votre compte Gmail (https://myaccount.google.com/lesssecureapps) si elle est disponible. Si ce n'est pas possible, utilisez un mot de passe d'application :
Connectez-vous à votre compte Gmail.
Allez dans "Sécurité" > "Mots de passe des applications".
Générez un mot de passe pour "Autre (Nom personnalisé)" et copiez-le.
b) Notez vos identifiants Gmail : adresse e-mail et mot de passe.
2 - Configuration et connexion Wi-Fi
L'ESP32 est configurée pour se connecter à un réseau Wi-Fi local.
Une fois la connexion établie, l'ESP32 peut accéder à Internet et communiquer avec le serveur SMTP de Gmail.
Les identifiants Wi-Fi (SSID et mot de passe) sont nécessaires pour établir cette connexion.
3- Détection de l'appui sur le bouton poussoir
Le bouton poussoir est relié à une broche GPIO de l'ESP32.
Grâce à une résistance pull-up, la broche est maintenue à l'état logique haut (HIGH) lorsqu'aucune action n'est effectuée.
Lorsque le bouton est pressé, la broche passe à l'état bas (LOW), déclenchant une interruption ou une action dans la boucle principale.
Cette action est utilisée pour appeler une fonction d'envoi d'e-mail.
4- Envoi de l'e-mail
Si toutes les commandes sont correctement acceptées par le serveur SMTP, l'e-mail est envoyé au destinataire.
Le serveur retourne une réponse pour confirmer que l'envoi a été réussi.
Carte ESP32
La carte ESP32 gère le réseau Wi-Fi.
Elle gère la logique pour détecter l'appui du bouton et déclencher l'envoi d'e-mail.
Elle Utilise des bibliothèques comme WiFi.h pour la connexion Wi-Fi et ESP-Mail-Client pour la gestion SMTP.
Bouton poussoir
Le bouton poussoir agit comme un déclencheur pour l'envoi de l'e-mail.
Il est connecté à une broche GPIO avec une résistance pull-up pour garantir un état stable.
Lorsqu'il est pressé, l'ESP32 détecte le changement d'état (HIGH -> LOW) et exécute une action.
Câbles de Connexion (Jumper Wires)
Pour relier les broches de la carte ESP32 aux broches du capteur de gaz MQ-4
Breadboard (Plaque d'essai) :
Une breadboard est utile pour créer un circuit temporaire et connecter facilement les composants entre eux.
Wi-Fi
Il fournit l'accès à Internet pour que l'ESP32 puisse se connecter au serveur SMTP de Gmail.
protocole SMTP
Le protocole SMTP (Simple Mail Transfer Protocol) est utilisé pour envoyer des e-mails. Il fonctionne en communiquant avec un serveur de messagerie (dans ce cas, Gmail) pour transmettre un message.
Dans ce projet :
1- L'ESP32 agit comme un client SMTP.
2- Il utilise l'authentification avec vos identifiants Gmail pour accéder au serveur Gmail.
3- une fois connecté, il envoie un e-mail préconfiguré au destinataire.
1- Connectez un côté du bouton poussoir à une broche GPIO de l'ESP32 (par exemple, GPIO 21
).
2- Connectez l'autre côté du bouton poussoir à GND.
Voici le code pour envoyer un e-mail lorsque le bouton poussoir est pressé :
ConnectWifi.py : Permet à l'ESP32 de se connecter à un réseau Wi-Fi.
umail.py : Permet l'envoi d'e-mails via SMTP.
1 2 3 4 5 6 7 8 9 10 11 12 13 |
from machine import Pin button = Pin(21, Pin.IN, Pin.PULL_UP) import ConnectWifi ConnectWifi.connect() import umail while True: if not button.value(): # On appuie sur le bouton smtp = umail.SMTP('smtp.gmail.com', 587, username='adresse-émtteur@gmail.com', password='*********') smtp.to('adresse_recepteur@gmail.com') smtp.send("Message envoyé par la carte ESP32") smtp.quit() |
Fonctionnement du programme :
1- Initialisation :
La carte ESP32 démarre et établit une connexion Wi-Fi.
Les paramètres SMTP, identifiants Gmail et autres configurations sont initialisés.
2- Attente d'un événement :
L'ESP32 surveille l'état du bouton poussoir.
3- Détection de l'appui :
Lorsque le bouton est pressé, l'ESP32 appelle le protocole SMTP pour envoyer l'email.
4- Connexion au serveur SMTP :
L'ESP32 établit une connexion sécurisée avec le serveur Gmail en utilisant SSL/TLS.
5- Authentification :
L'adresse e-mail et le mot de passe (ou mot de passe d'application) sont envoyés au serveur pour l'authentification.
6- Construction et envoi de l'e-mail :
L'e-mail est construit avec les paramètres spécifiés.
L'ESP32 envoie les commandes nécessaires au serveur SMTP pour transmettre l'e-mail.
7- Confirmation et déconnexion :
Le serveur SMTP confirme l'envoi de l'e-mail.
L'ESP32 se déconnecte du serveur et attend la prochaine action.
La robotique éducative joue un rôle important dans l'éducation des enfants et des jeunes en les aidant à acquérir des compétences en science et technologie.
Dans ce cadre notre site web représente une excellente ressource pour les parents, les enseignants et les enfants qui souhaitent découvrir la robotique.
Zaouiet Kontech-Jemmel-Monastir-Tunisie
+216 92 886 231
medaliprof@gmail.com
Site robotique réalisé par Mohamed Ali-Prof Info