Boite aux lettres Connectée ESP8266 : Différence entre versions

Ligne 156 : Ligne 156 :
 
|Step_Picture_03=Boite_aux_lettres_Connectée_ESP8266_IFT3.JPG
 
|Step_Picture_03=Boite_aux_lettres_Connectée_ESP8266_IFT3.JPG
 
|Step_Picture_04=Boite_aux_lettres_Connectée_ESP8266_IFT4.JPG
 
|Step_Picture_04=Boite_aux_lettres_Connectée_ESP8266_IFT4.JPG
 +
|Step_Picture_05=Boite_aux_lettres_Connectée_ESP8266_IFT5.JPG
 
|Step_Title=Le paramétrage du service IFTTT
 
|Step_Title=Le paramétrage du service IFTTT
 
|Step_Content='''IFTTT''' est un service web gratuit permettant à ses utilisateurs de créer des chaînes d'instruction simples (wikipédia).
 
|Step_Content='''IFTTT''' est un service web gratuit permettant à ses utilisateurs de créer des chaînes d'instruction simples (wikipédia).
Ligne 172 : Ligne 173 :
  
 
5/ passer au "that"
 
5/ passer au "that"
 
6/ chercher le service "mail"
 
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
|Step_Title=
+
|Step_Picture_00=Boite_aux_lettres_Connectée_ESP8266_IFTTT6.JPG
|Step_Content=
+
|Step_Picture_01=Boite_aux_lettres_Connectée_ESP8266_IFTTT7.JPG
 +
|Step_Picture_02=Boite_aux_lettres_Connectée_ESP8266_IFTTT8.JPG
 +
|Step_Title=Suite paramétrage IFTTT
 +
|Step_Content=6/ sélectionner le service mail et le définir
 +
 
 +
7/ Penser à regarder les conditions de fonctionnement et l'API du service en cliquant sur recherche (loupe), chercher Webhook, cliquer dessus puis regader la documentation qui explique comment formuler la requête GET et surtout qui vous montre votre API KEY à intégrer au message.
 
}}
 
}}
 
{{ {{tntn|Notes}}
 
{{ {{tntn|Notes}}

Version du 17 décembre 2017 à 19:03

Auteur avatarEric CZELADKA | Dernière modification 9/12/2019 par Clementflipo

Pas encore d'image

Ce tutoriel décrit les éléments ainsi que les étapes pour concevoir un système de BàL connectée qui détecte la remise du courrier dans la boite et prévient immédiatement par mail et telegram, son propriétaire de la dépose d'un courrier. Un petit message de remerciement est également diffusé par HP à l'attention du facteur.
Difficulté
Difficile
Durée
3 heure(s)
Catégories
Électronique, Maison
Coût
50 EUR (€)
Licence : Attribution (CC BY)

Introduction

Quoi de plus agaçant que de ne jamais savoir si le courrier est passé ou non ? surtout lorsque l'on attend LA missive pour les vacances, la réussite aux examens, les résultats du Labo etc... Et quand on fait patienter les voisins en leur demandant de retenir l’ascenseur pendant que l'on tente désespérément d'ouvrir la boite à lettre située dans l'entrée de l'immeuble ?

Tout cela est terminé. Le petit dispositif décrit ci-dessous détecte la dépose d'un pli dans la boite, émet un message sonore de remerciement à destination du facteur ou du gardien... et envoie un mail et une notification sur votre logiciel IM favori.

Matériaux

un node MCU ESP8266  : 7,5€

un Module à Ultrasons HC-SR04 4 Pin Capteur de Mesure de Distance pour Arduino : 3.45€

Module MP3 V2.0 Grove : 10.5€

un petit HP de récupération ou portable : moins de 10€

Des fils de prototypage : 4€

Une Breadboard : 1.4€

Une powerbank : 10€

un cable USB - Micro USB : 2€

Outils

Un imprimante 3D pour fabriquer la boite de rangement mais n'importe quelle boite peut convenir.

IDE Arduino pour récupérer le code et le téléverser sur le Node MCU ESP8266

Étape 1 - Rassembler les différents composants et les monter sur la platine

1/ Connexion du node MCU :

sur la platine de prototypage dans le sens de la longueur afin que les rangées de pattes du module ne soient pas connectées.

Le Node MCU fonctionne en 3.3V mais les 2 composants utilisés fonctionnent avec 5V. Une PowerBank de 5V alimentera le dispositif. Il conviendra donc de connecter le capteur à ultrason et le player MP3 sur la broche Vin du node MCU afin de bénéficier des 5V en entrée.

2/ Connexion du capteur :

Vcc sur Vin de l'ESP

Gnd sur Gnd

Trig sur D1

Echo sur D2

3/ Connexion du player Groove MP3

Vcc sur Vin

Gnd sur Gnd

Tx c'est le retour et ici nous ne l'utiliserons pas donc pas connecté

Rx sur le Tx de l'ESP mais malheureusement après de nombreux essais infructueux il s'est avéré que les pin Rx et Tx de l'ESP n'étaient pas ceux qui devaient être utilisés. Un rapide coup d'oeil sur la documentation du module permet de voir que plusieurs pin peuvent faire office de Rx et Tx

Les broches D7 et D8 de l'ESP font office également de Rx(2) et Tx(2) qui correspondent donc dans l'IDE Arduino aux GPIO 13 et 15 (ce sera important dans le code).

Nous connectons donc le Rx du player MP3 à la broche D8 (Tx) de l'ESP afin que celui ci puisse envoyer ses informations.

4/ Connexion du Jack du HP à l'entrée Jackdu player MP3

Penser à l'alimentation du HP (power bank double USB)

5/ Connexion du node au PC pour téléversement du code =) étape 2


Étape 2 - Le Code

Librairies dont il faut disposer :

avec l'ESP il y aura

#include <ESP8266WiFi.h>

Rien de particulier pour le capteur de distance.

Pour le groove MP3 aller sur github :

https://github.com/Seeed-Studio/Grove_Serial_MP3_Player_V2.0

afin de récupérer :

#include <MP3Player_KT403A.h>

et pour la doc concernant SoftwareSerial c'est là :

https://www.arduino.cc/en/Reference/SoftwareSerial

La petite astuce de déclaration des GPIO qui correspondent aux pin D7 et D8 soit RX2 et TX2 de l'ESP

D'où cette partie de code : SoftwareSerial mp3(13, 15);

Ensuite vient la connexion Wifi du module.

Dans le loop on effectue des relevés de distance. Si une lettre est glissée alors le capteur va enregistrer une variation :

if(SensorValue < d) {

// print out the value you read:

Serial.print("Alerte :  ");

Serial.println(SensorValue);

delay(500);

envoimail();  // alors on envoie la requête ifttt

Serial.println("Message début  ");

SpecifyMusicPlay(1);  // lit a première piste de la carte SD

Serial.println("Message fin  ");

}

et donc on déclenche la procédure d'envoi de mail... plus précisément on effectue une requête GET sur le serveur IFTTT avec un mot clef particulier et notre API KEY afin de déclancher 2 évènement :

1/ un envoi de mail

2/ un envoi de message sur un bot telegram

cf. étape 3




Étape 3 - Le paramétrage du service IFTTT

IFTTT est un service web gratuit permettant à ses utilisateurs de créer des chaînes d'instruction simples (wikipédia).

1/ Créer un compte

2/ En haut dans le menu aller sur "My Applet"

3/ New Applet et cliquer sur le "This" puis chercher le service Webhook

4/ cliquer dessus puis définir l'évènement car il fera partie de la chaine de caractère qui sera envoyée au serveur, celle-ci :

String url = String("/trigger/test_mailbox/with/key/Ma_Key_Perso_IFTTT");

Ici on va nommer notre évènement déclencheur "test_mailbox" + create trigger

5/ passer au "that"

Étape 4 - Suite paramétrage IFTTT

6/ sélectionner le service mail et le définir

7/ Penser à regarder les conditions de fonctionnement et l'API du service en cliquant sur recherche (loupe), chercher Webhook, cliquer dessus puis regader la documentation qui explique comment formuler la requête GET et surtout qui vous montre votre API KEY à intégrer au message.


Commentaires