<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://www.wikidebrouillard.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Bloup</id>
	<title>Wikidebrouillard - Contributions de l’utilisateur [fr]</title>
	<link rel="self" type="application/atom+xml" href="https://www.wikidebrouillard.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Bloup"/>
	<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/wiki/Sp%C3%A9cial:Contributions/Bloup"/>
	<updated>2026-04-23T00:36:53Z</updated>
	<subtitle>Contributions de l’utilisateur</subtitle>
	<generator>MediaWiki 1.31.3</generator>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14212</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14212"/>
		<updated>2022-05-05T13:32:36Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
Les données obtenues seront envoyées sur une interface graphique (étape5) sous forme de flux de données pour les rendre visibles. &lt;br /&gt;
&lt;br /&gt;
Les particules en suspension sont toutes les particules (solides ou en aérosols) portées par l’eau ou par l’air. Les matières particulaires ou '''PM''' (acronyme de Particulate Matter en anglais) sont les particules en suspension dans l’atmosphère terrestre. &lt;br /&gt;
&lt;br /&gt;
'''PM10''' particules en suspension dans l'air, d'un diamètre aérodynamique (ou diamètre aéraulique) inférieur à 10 micromètres.&lt;br /&gt;
&lt;br /&gt;
Les particules plus fines peuvent être référencées :&lt;br /&gt;
&lt;br /&gt;
'''PM2,5''' dont le diamètre est inférieur à 2,5 micromètres, appelées « particules fines ».&lt;br /&gt;
&lt;br /&gt;
'''PM1,0''' dont le diamètre est inférieur à 1,0 micromètre, appelées « particules très fines ».&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 7.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 8.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; HM330X  by Tomoto      [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT_library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez n'installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier*&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Pour retrouver votre fichier de bibliothèque &amp;quot;libraries&amp;quot; , il est possible d'y accéder en allant sur &lt;br /&gt;
&lt;br /&gt;
Croquis &amp;gt; Afficher le dossier des croquis &amp;gt; libraries&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Pour que votre M5 se connecte au Wifi, il va falloir agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble. Vous devriez vous retrouver avec un croquis à 2 onglets : ''M5Stick.........'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Avec les capteurs de notre expérience, nous allons pouvoir récupérer les valeurs suivantes : %CO2, PM1, PM2,5 et PM10. Il va falloir créer les &amp;quot;feeds&amp;quot; correspondantes. &lt;br /&gt;
&lt;br /&gt;
Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dans le code, pour envoyer ces données, ça se traduit comme ci-dessous.&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible pour un M5StickCPLUS (C'est fait et téléchargeable). Pour un M5Stick classique, vous pouvez l'inclure vous même mais il vous faudra modifier les valeurs sur la ligne M5.Lcd.setCursor(190, 10); &amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié - CO2 est élevé.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que :&lt;br /&gt;
&lt;br /&gt;
*Votre M5Stick est branché en USB sur votre ordinateur.&lt;br /&gt;
*Le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
#Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
#Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove (Connectique blanche)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
*G+ au 5V&lt;br /&gt;
*G0 au GND&lt;br /&gt;
*TX au 26&lt;br /&gt;
*RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fera avec le bouton du M5StcikC déjà intégré après téléchargement du programme. Il suffira d'appuyer longtemps dessus jusqu'à apparition de &amp;quot;calibrage&amp;quot; sur l'écran du M5Stick.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Maintenant, vous pouvez déconnecter le câble USB et mettre votre station capteur où vous voulez si votre batterie est chargée bien  entendu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14211</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14211"/>
		<updated>2022-05-05T13:24:39Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
Les données obtenues seront envoyées sur une interface graphique (étape5) sous forme de flux de données pour les rendre visibles. &lt;br /&gt;
&lt;br /&gt;
Les particules en suspension sont toutes les particules (solides ou en aérosols) portées par l’eau ou par l’air. Les matières particulaires ou '''PM''' (acronyme de Particulate Matter en anglais) sont les particules en suspension dans l’atmosphère terrestre. &lt;br /&gt;
&lt;br /&gt;
'''PM10''' particules en suspension dans l'air, d'un diamètre aérodynamique (ou diamètre aéraulique) inférieur à 10 micromètres.&lt;br /&gt;
&lt;br /&gt;
Les particules plus fines peuvent être référencées :&lt;br /&gt;
&lt;br /&gt;
'''PM2,5''' dont le diamètre est inférieur à 2,5 micromètres, appelées « particules fines ».&lt;br /&gt;
&lt;br /&gt;
'''PM1,0''' dont le diamètre est inférieur à 1,0 micromètre, appelées « particules très fines ».&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; HM330X  by Tomoto      [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT_library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez n'installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier*&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Pour retrouver votre fichier de bibliothèque &amp;quot;libraries&amp;quot; , il est possible d'y accéder en allant sur &lt;br /&gt;
&lt;br /&gt;
Croquis &amp;gt; Afficher le dossier des croquis &amp;gt; libraries&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Pour que votre M5 se connecte au Wifi, il va falloir agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble. Vous devriez vous retrouver avec un croquis à 2 onglets : ''M5Stick.........'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Avec les capteurs de notre expérience, nous allons pouvoir récupérer les valeurs suivantes : %CO2, PM1, PM2,5 et PM10. Il va falloir créer les &amp;quot;feeds&amp;quot; correspondantes. &lt;br /&gt;
&lt;br /&gt;
Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dans le code, pour envoyer ces données, ça se traduit comme ci-dessous.&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible pour un M5StickCPLUS (C'est fait et téléchargeable). Pour un M5Stick classique, vous pouvez l'inclure vous même mais il vous faudra modifier les valeurs sur la ligne M5.Lcd.setCursor(190, 10); &amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié - CO2 est élevé.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que :&lt;br /&gt;
&lt;br /&gt;
*Votre M5Stick est branché en USB sur votre ordinateur.&lt;br /&gt;
*Le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
#Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
#Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove (Connectique blanche)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
*G+ au 5V&lt;br /&gt;
*G0 au GND&lt;br /&gt;
*TX au 26&lt;br /&gt;
*RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fera avec le bouton du M5StcikC déjà intégré après téléchargement du programme. Il suffira d'appuyer longtemps dessus jusqu'à apparition de &amp;quot;calibrage&amp;quot; sur l'écran du M5Stick.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Maintenant, vous pouvez déconnecter le câble USB et mettre votre station capteur où vous voulez si votre batterie est chargée bien  entendu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14210</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14210"/>
		<updated>2022-05-05T13:21:28Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
Les données obtenues seront envoyées sur une interface graphique (étape5) sous forme de flux de données pour les rendre visibles. &lt;br /&gt;
&lt;br /&gt;
Les particules en suspension sont toutes les particules (solides ou en aérosols) portées par l’eau ou par l’air. Les matières particulaires ou '''PM''' (acronyme de Particulate Matter en anglais) sont les particules en suspension dans l’atmosphère terrestre. &lt;br /&gt;
&lt;br /&gt;
'''PM10''' particules en suspension dans l'air, d'un diamètre aérodynamique (ou diamètre aéraulique) inférieur à 10 micromètres.&lt;br /&gt;
&lt;br /&gt;
Les particules plus fines peuvent être référencées :&lt;br /&gt;
&lt;br /&gt;
'''PM2,5''' dont le diamètre est inférieur à 2,5 micromètres, appelées « particules fines ».&lt;br /&gt;
&lt;br /&gt;
'''PM1,0''' dont le diamètre est inférieur à 1,0 micromètre, appelées « particules très fines ».&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; HM330X  by Tomoto      [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT_library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez n'installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier*&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Pour retrouver votre fichier de bibliothèque &amp;quot;libraries&amp;quot; , il est possible d'y accéder en allant sur &lt;br /&gt;
&lt;br /&gt;
Croquis &amp;gt; Afficher le dossier des croquis &amp;gt; libraries&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Pour que votre M5 se connecte au Wifi, il va falloir agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble. Vous devriez vous retrouver avec un croquis à 2 onglets : ''M5Stick.........'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Avec les capteurs de notre expérience, nous allons pouvoir récupérer les valeurs suivantes : %CO2, PM1, PM2,5 et PM10. Il va falloir créer les &amp;quot;feeds&amp;quot; correspondantes. &lt;br /&gt;
&lt;br /&gt;
Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dans le code, pour envoyer ces données, ça se traduit comme ci-dessous.&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible pour un M5StickCPLUS (C'est fait et téléchargeable). Pour un M5Stick classique, vous pouvez l'inclure vous même mais il vous faudra modifier les valeurs sur la ligne M5.Lcd.setCursor(190, 10); &amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié - CO2 est élevé.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que :&lt;br /&gt;
&lt;br /&gt;
*Votre M5Stick est branché en USB sur votre ordinateur.&lt;br /&gt;
*Le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
#Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
#Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove (Connectique blanche)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
*G+ au 5V&lt;br /&gt;
*G0 au GND&lt;br /&gt;
*TX au 26&lt;br /&gt;
*RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fera avec le bouton du M5StcikC déjà intégré après téléchargement du programme.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14209</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14209"/>
		<updated>2022-05-05T13:08:51Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
Les données obtenues seront envoyées sur une interface graphique (étape5) sous forme de flux de données pour les rendre visibles. &lt;br /&gt;
&lt;br /&gt;
Les particules en suspension sont toutes les particules (solides ou en aérosols) portées par l’eau ou par l’air. Les matières particulaires ou '''PM''' (acronyme de Particulate Matter en anglais) sont les particules en suspension dans l’atmosphère terrestre. &lt;br /&gt;
&lt;br /&gt;
'''PM10''' particules en suspension dans l'air, d'un diamètre aérodynamique (ou diamètre aéraulique) inférieur à 10 micromètres.&lt;br /&gt;
&lt;br /&gt;
Les particules plus fines peuvent être référencées :&lt;br /&gt;
&lt;br /&gt;
'''PM2,5''' dont le diamètre est inférieur à 2,5 micromètres, appelées « particules fines ».&lt;br /&gt;
&lt;br /&gt;
'''PM1,0''' dont le diamètre est inférieur à 1,0 micromètre, appelées « particules très fines ».&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; HM330X  by Tomoto      [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT_library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez n'installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier*&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Pour retrouver votre fichier de bibliothèque &amp;quot;libraries&amp;quot; , il est possible d'y accéder en allant sur &lt;br /&gt;
&lt;br /&gt;
Croquis &amp;gt; Afficher le dossier des croquis &amp;gt; libraries&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Pour que votre M5 se connecte au Wifi, il va falloir agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble. Vous devriez vous retrouver avec un croquis à 2 onglets : ''M5Stick.........'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Avec les capteurs de notre expérience, nous allons pouvoir récupérer les valeurs suivantes : %CO2, PM1, PM2,5 et PM10. Il va falloir créer les &amp;quot;feeds&amp;quot; correspondantes. &lt;br /&gt;
&lt;br /&gt;
Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dans le code, pour envoyer ces données, ça se traduit comme ci-dessous.&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove (Connectique blanche)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
*G+ au 5V&lt;br /&gt;
*G0 au GND&lt;br /&gt;
*TX au 26&lt;br /&gt;
*RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fera avec le bouton du M5StcikC déjà intégré après téléchargement du programme (étape 8).&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que :&lt;br /&gt;
&lt;br /&gt;
* Votre M5Stick est branché en USB sur votre ordinateur.&lt;br /&gt;
* Le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
#Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
#Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible pour un M5StickCPLUS (C'est fait et téléchargeable). Pour un M5Stick classique, vous pouvez l'inclure vous même mais il vous faudra modifier les valeurs sur la ligne M5.Lcd.setCursor(190, 10); &amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14208</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14208"/>
		<updated>2022-05-05T13:06:54Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
Les données obtenues seront envoyées sur une interface graphique (étape5) sous forme de flux de données pour les rendre visibles. &lt;br /&gt;
&lt;br /&gt;
Les particules en suspension sont toutes les particules (solides ou en aérosols) portées par l’eau ou par l’air. Les matières particulaires ou '''PM''' (acronyme de Particulate Matter en anglais) sont les particules en suspension dans l’atmosphère terrestre. &lt;br /&gt;
&lt;br /&gt;
'''PM10''' particules en suspension dans l'air, d'un diamètre aérodynamique (ou diamètre aéraulique) inférieur à 10 micromètres.&lt;br /&gt;
&lt;br /&gt;
Les particules plus fines peuvent être référencées :&lt;br /&gt;
&lt;br /&gt;
'''PM2,5''' dont le diamètre est inférieur à 2,5 micromètres, appelées « particules fines ».&lt;br /&gt;
&lt;br /&gt;
'''PM1,0''' dont le diamètre est inférieur à 1,0 micromètre, appelées « particules très fines ».&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; HM330X  by Tomoto      [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT_library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez n'installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier*&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Pour retrouver votre fichier de bibliothèque &amp;quot;libraries&amp;quot; , il est possible d'y accéder en allant sur &lt;br /&gt;
&lt;br /&gt;
Croquis &amp;gt; Afficher le dossier des croquis &amp;gt; libraries&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Pour que votre M5 se connecte au Wifi, il va falloir agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble. Vous devriez vous retrouver avec un croquis à 2 onglets : ''M5Stick.........'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Avec les capteurs de notre expérience, nous allons pouvoir récupérer les valeurs suivantes : %CO2, PM1, PM2,5 et PM10. Il va falloir créer les &amp;quot;feeds&amp;quot; correspondantes. &lt;br /&gt;
&lt;br /&gt;
Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dans le code, pour envoyer ces données, ça se traduit comme ci-dessous.&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove (Connectique blanche)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
*G+ au 5V&lt;br /&gt;
*G0 au GND&lt;br /&gt;
*TX au 26&lt;br /&gt;
*RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que :&lt;br /&gt;
&lt;br /&gt;
* Votre M5Stick est branché en USB sur votre ordinateur.&lt;br /&gt;
* Le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
#Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
#Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible pour un M5StickCPLUS (C'est fait et téléchargeable). Pour un M5Stick classique, vous pouvez l'inclure vous même mais il vous faudra modifier les valeurs sur la ligne M5.Lcd.setCursor(190, 10); &amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14207</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14207"/>
		<updated>2022-05-05T13:02:24Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
Les données obtenues seront envoyées sur une interface graphique (étape5) sous forme de flux de données pour les rendre visibles. &lt;br /&gt;
&lt;br /&gt;
Les particules en suspension sont toutes les particules (solides ou en aérosols) portées par l’eau ou par l’air. Les matières particulaires ou '''PM''' (acronyme de Particulate Matter en anglais) sont les particules en suspension dans l’atmosphère terrestre. &lt;br /&gt;
&lt;br /&gt;
'''PM10''' particules en suspension dans l'air, d'un diamètre aérodynamique (ou diamètre aéraulique) inférieur à 10 micromètres.&lt;br /&gt;
&lt;br /&gt;
Les particules plus fines peuvent être référencées :&lt;br /&gt;
&lt;br /&gt;
'''PM2,5''' dont le diamètre est inférieur à 2,5 micromètres, appelées « particules fines ».&lt;br /&gt;
&lt;br /&gt;
'''PM1,0''' dont le diamètre est inférieur à 1,0 micromètre, appelées « particules très fines ».&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; HM330X  by Tomoto      [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT_library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez n'installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier*&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Pour retrouver votre fichier de bibliothèque &amp;quot;libraries&amp;quot; , il est possible d'y accéder en allant sur &lt;br /&gt;
&lt;br /&gt;
Croquis &amp;gt; Afficher le dossier des croquis &amp;gt; libraries&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Pour que votre M5 se connecte au Wifi, il va falloir agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble. Vous devriez vous retrouver avec un croquis à 2 onglets : ''M5Stick.........'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Avec les capteurs de notre expérience, nous allons pouvoir récupérer les valeurs suivantes : %CO2, PM1, PM2,5 et PM10. Il va falloir créer les &amp;quot;feeds&amp;quot; correspondantes. &lt;br /&gt;
&lt;br /&gt;
Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dans le code, pour envoyer ces données, ça se traduit comme ci-dessous.&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
#Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
#Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible pour un M5StickCPLUS (C'est fait et téléchargeable). Pour un M5Stick classique, vous pouvez l'inclure vous même mais il vous faudra modifier les valeurs sur la ligne M5.Lcd.setCursor(190, 10); &amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14206</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=14206"/>
		<updated>2022-05-05T12:50:48Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; HM330X  by Tomoto      [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT_library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez n'installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier*&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;Pour retrouver votre fichier de bibliothèque &amp;quot;libraries&amp;quot; , il est possible d'y accéder en allant sur &lt;br /&gt;
&lt;br /&gt;
Croquis &amp;gt; Afficher le dossier des croquis &amp;gt; libraries&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Pour que votre M5 se connecte au Wifi, il va falloir agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble. Vous devriez vous retrouver avec un croquis à 2 onglets : ''M5Stick.........'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dans votre programme, sélectionner les flux* que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
Avec les capteurs de notre expérience, nous allons pouvoir récupérer les valeurs suivantes : %CO2, PM1, PM2,5 et PM10. Il va falloir créer les &amp;quot;feeds&amp;quot; correspondantes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dans le code, pour envoyer ces données, ça se traduit comme ci-dessous.&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
#Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
#Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible pour un M5StickCPLUS (C'est fait et téléchargeable). Pour un M5Stick classique, vous pouvez l'inclure vous même mais il vous faudra modifier les valeurs sur la ligne M5.Lcd.setCursor(190, 10); &amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13652</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13652"/>
		<updated>2022-03-22T15:22:30Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Pour que votre M5 se connecte au Wifi, il va falloir agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble. Vous devriez vous retrouver avec un croquis à 2 onglets : ''M5Stick.........'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
Avec les capteurs de notre expérience, nous allons pouvoir récupérer les valeurs suivantes : %CO2, PM1, PM2,5 et PM10. Il va falloir créer les &amp;quot;feeds&amp;quot; correspondantes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dans le code, pour envoyer ces données, ça se traduit comme ci-dessous.&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
#Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
#Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible pour un M5StickCPLUS (C'est fait et téléchargeable). Pour un M5Stick classique, vous pouvez l'inclure vous même mais il vous faudra modifier les valeurs sur la ligne M5.Lcd.setCursor(190, 10); &amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13651</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13651"/>
		<updated>2022-03-22T15:16:22Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Pour que votre M5 se connecte au Wifi, il va falloir agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble. Vous devriez vous retrouver avec un croquis à 2 onglets : ''M5Stick.........'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
Avec les capteurs de notre expérience, nous allons pouvoir récupérer les valeurs suivantes : %CO2, PM1, PM2,5 et PM10. Il va falloir créer les &amp;quot;feeds&amp;quot; correspondantes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dans le code, pour envoyer ces données, ça se traduit comme ci-dessous.&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
#Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
#Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13650</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13650"/>
		<updated>2022-03-22T15:13:48Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Pour que votre M5 se connecte au Wifi, il va falloir agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble. Vous devriez vous retrouver avec un croquis à 2 onglets : ''M5Stick.........'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
Avec les capteurs de notre expérience, nous allons pouvoir récupérer les valeurs suivantes : %CO2, PM1, PM2,5 et PM10. Il va falloir créer les &amp;quot;feeds&amp;quot; correspondantes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dans le code, pour envoyer ces données, ça se traduit comme ci-dessous.&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13649</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13649"/>
		<updated>2022-03-22T15:12:19Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Pour que votre M5 se connecte au Wifi, il va falloir agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble. Vous devriez vous retrouver avec un croquis à 2 onglets : ''M5Stick.........'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
Avec les capteurs de notre expérience, nous allons pouvoir récuper les valeurs suivantes : %CO2, PM1, PM2,5 et PM10.&lt;br /&gt;
&lt;br /&gt;
Dans le code, ça se traduit comme ci-dessous.CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
//    PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
//    PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13648</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13648"/>
		<updated>2022-03-22T15:02:59Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Pour que votre M5 se connecte au Wifi, il va falloir agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble. Vous devriez vous retrouver avec un croquis à 2 onglets : ''M5Stick.........'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
//    PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
//    PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13647</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13647"/>
		<updated>2022-03-22T15:00:19Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Maintenant, vous allez agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble. Vous devriez vous retrouver avec un croquis à 2 onglets : ''M5Stick.........'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
//    PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
//    PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13646</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13646"/>
		<updated>2022-03-22T14:58:31Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Maintenant, vous allez agir sur le programme lui-même avec l'interface Arduino. &lt;br /&gt;
&lt;br /&gt;
Pour un M5Stick classique,  le programme à télécharger est [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip ici] :&lt;br /&gt;
&lt;br /&gt;
Pour un M5StickCPlus, [https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip la dernière version est là].&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
//    PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
//    PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13645</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13645"/>
		<updated>2022-03-22T14:50:48Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Maintenant, vous allez agir sur le programme lui-même avec l'interface Arduino. Ouvrir le fichier .ino dans Arduino. Vous allez découvrir le code dans son ensemble.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rechercher et remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
//    PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
//    PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13599</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13599"/>
		<updated>2022-03-18T09:21:07Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
//    PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
//    PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancer un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13598</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13598"/>
		<updated>2022-03-18T09:20:13Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2. Une petite description en étape 10.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
//    PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
//    PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Alarme - air vicié&lt;br /&gt;
|Step_Content=Comme il y a un piézo incorporé dans le M5StickCPlus, on en profite pour lancé un son bien désagréable lorsque le % correspond à un air vicié&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*************** Gestion Alarme ***********************/&lt;br /&gt;
int freq = 1800;&lt;br /&gt;
int channel = 0;&lt;br /&gt;
int resolution_bits = 8;&lt;br /&gt;
int buzzer = 2;&lt;br /&gt;
&lt;br /&gt;
/****************************** SETUP *******************************************/&lt;br /&gt;
void setup() {&lt;br /&gt;
 ledcSetup(channel, freq, resolution_bits); // alarme&lt;br /&gt;
 ledcAttachPin(buzzer, channel);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/****************************** LOOP *******************************************/&lt;br /&gt;
void loop() {&lt;br /&gt;
  ledcWrite(channel, 0);&lt;br /&gt;
&lt;br /&gt;
if (co2_val.toInt() &amp;gt;= 1500) {&lt;br /&gt;
    M5.Lcd.drawRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.fillRoundRect(185, 30, 44.75, 15, 2, RED);&lt;br /&gt;
    M5.Lcd.setTextColor(RED);&lt;br /&gt;
    M5.Lcd.setCursor(160, 55);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;VICIE&amp;quot;);&lt;br /&gt;
    ledcWrite(channel, 128);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;CO2 est élevé.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&amp;diff=13597</id>
		<title>Fichier:M5Stick - CO2- capteur de particules - MQTT Capture d e cran 2022-03-18 a 10.14.23.png</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23.png&amp;diff=13597"/>
		<updated>2022-03-18T09:14:50Z</updated>

		<summary type="html">&lt;p&gt;Bloup : M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.23&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&amp;diff=13596</id>
		<title>Fichier:M5Stick - CO2- capteur de particules - MQTT Capture d e cran 2022-03-18 a 10.14.10.png</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10.png&amp;diff=13596"/>
		<updated>2022-03-18T09:14:39Z</updated>

		<summary type="html">&lt;p&gt;Bloup : M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-18_a_10.14.10&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13595</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13595"/>
		<updated>2022-03-17T18:04:59Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition d'autres liens pour télécharger des codes pour un M5StickCplus :&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip :  Indication niveau et gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
- M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip : Un buzzer en plus lorsqu'il y a trop de CO2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-BattMini-IOAdafruit-V2.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
//    PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
//    PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13582</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13582"/>
		<updated>2022-03-14T14:11:28Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition un autre lien pour télécharger le code pour un M5StickCplus. Celui-ci inclut en plus la gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5StickCPlus-CO2-PM-Date-Batterie-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
//    PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
//    PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&amp;diff=13581</id>
		<title>Fichier:M5Stick - CO2- capteur de particules - MQTT Capture d e cran 2022-03-14 a 15.10.39.png</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39.png&amp;diff=13581"/>
		<updated>2022-03-14T14:11:06Z</updated>

		<summary type="html">&lt;p&gt;Bloup : M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.39&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&amp;diff=13580</id>
		<title>Fichier:M5Stick - CO2- capteur de particules - MQTT Capture d e cran 2022-03-14 a 15.10.31.png</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31.png&amp;diff=13580"/>
		<updated>2022-03-14T14:10:54Z</updated>

		<summary type="html">&lt;p&gt;Bloup : M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-14_a_15.10.31&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_BME280-_MQTT&amp;diff=13579</id>
		<title>M5Stick - CO2- BME280- MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_BME280-_MQTT&amp;diff=13579"/>
		<updated>2022-03-14T11:59:54Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-03_a_13.36.25.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs SensAirS8 et un capteur BME280 (température, humidité, pression) au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme.&lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;.''' Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-BM280-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier ce fichier si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition un autre lien pour télécharger le code pour un M5StickCplus. Celui-ci inclut en plus la gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + Particules en suspension [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=BME280&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- capteur de particules - MQTT&lt;br /&gt;
}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-bme280-mqtt/-/blob/main/M5Stick-test-CO2-BM280-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-bme280-mqtt/-/blob/main/M5StickCPlus-test-CO2-BM280-Date-BATT-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;  Grove BME280      [[Item:BME280]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*********** Configuration pour utiliser MQTT Adafruit ************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;ActiveKey&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ********************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ********************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/************ CrÃ©ation des flux de données ***********/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/temperature&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/humidite&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish pression = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/pression&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur BME-BMP280 en grove&lt;br /&gt;
&lt;br /&gt;
* VCC-&amp;gt;VOUT&lt;br /&gt;
* GND-&amp;gt;G&lt;br /&gt;
* SDA_PIN-&amp;gt;32&lt;br /&gt;
* SCL_PIN-&amp;gt;33&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_02=Item-BME280_Bmp280.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=Indication du % de la batterie en charge et décharge plus mise en veille si la batterie est trop faible.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-14_a_12.49.32.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-14_a_12.49.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_BME280-_MQTT&amp;diff=13578</id>
		<title>M5Stick - CO2- BME280- MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_BME280-_MQTT&amp;diff=13578"/>
		<updated>2022-03-14T11:50:54Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-03_a_13.36.25.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs SensAirS8 et un capteur BME280 (température, humidité, pression) au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme.&lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;.''' Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-BM280-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier ce fichier si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition un autre lien pour télécharger le code pour un M5StickCplus. Celui-ci inclut en plus la gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.  Une petite description en étape 9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + Particules en suspension [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=BME280&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- capteur de particules - MQTT&lt;br /&gt;
}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-bme280-mqtt/-/blob/main/M5Stick-test-CO2-BM280-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-bme280-mqtt/-/blob/main/M5StickCPlus-test-CO2-BM280-Date-BATT-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;  Grove BME280      [[Item:BME280]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*********** Configuration pour utiliser MQTT Adafruit ************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;ActiveKey&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ********************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ********************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/************ CrÃ©ation des flux de données ***********/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/temperature&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/humidite&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish pression = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/pression&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur BME-BMP280 en grove&lt;br /&gt;
&lt;br /&gt;
* VCC-&amp;gt;VOUT&lt;br /&gt;
* GND-&amp;gt;G&lt;br /&gt;
* SDA_PIN-&amp;gt;32&lt;br /&gt;
* SCL_PIN-&amp;gt;33&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_02=Item-BME280_Bmp280.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de la batterie&lt;br /&gt;
|Step_Content=&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;M5StickCPlus.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
/*************** Gestion Batterie ***********************/&lt;br /&gt;
float b, c = 0; // b = batterie interne, c si en charge&lt;br /&gt;
int batterie = 0; //valeur batterie en %&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  M5.begin();&lt;br /&gt;
  M5.Lcd.setRotation(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop() {&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.setCursor(190, 10);&lt;br /&gt;
  M5.Lcd.setTextSize(1.5);&lt;br /&gt;
  c = M5.Axp.GetVapsData() * 1.4 / 1000;&lt;br /&gt;
  b = M5.Axp.GetVbatData() * 1.1 / 1000;&lt;br /&gt;
  batterie = ((b - 3.0) / 1.2) * 100;&lt;br /&gt;
&lt;br /&gt;
  if (c &amp;gt;= 4.5) {&lt;br /&gt;
    M5.Lcd.setTextColor(TFT_YELLOW, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;CHG:&amp;quot;); //Indique CHG en jaune si cable USB branché&lt;br /&gt;
  }&lt;br /&gt;
  else {&lt;br /&gt;
    M5.Lcd.setTextColor(GREEN, BLACK);&lt;br /&gt;
    M5.Lcd.print(&amp;quot;BAT:&amp;quot;); //Indique BAT en vert si M5 non branché&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  if (batterie &amp;gt; 100)&lt;br /&gt;
    batterie = 100;&lt;br /&gt;
  else if (batterie &amp;lt; 100 &amp;amp;&amp;amp; batterie &amp;gt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  else if (batterie &amp;lt; 9)&lt;br /&gt;
    M5.Lcd.print(&amp;quot;&amp;quot;);&lt;br /&gt;
  if (batterie &amp;lt; 10)&lt;br /&gt;
    M5.Axp.DeepSleep();  // Si la batterie est trop faible = mise en veille&lt;br /&gt;
&lt;br /&gt;
  M5.Lcd.print(batterie);&lt;br /&gt;
  M5.Lcd.print(&amp;quot;%&amp;quot;); // % de batterie&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-14_a_12.49.32.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-14_a_12.49.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-14_a_12.49.43.png&amp;diff=13577</id>
		<title>Fichier:M5Stick - CO2- BME280- MQTT Capture d e cran 2022-03-14 a 12.49.43.png</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-14_a_12.49.43.png&amp;diff=13577"/>
		<updated>2022-03-14T11:50:14Z</updated>

		<summary type="html">&lt;p&gt;Bloup : M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-14_a_12.49.43&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-14_a_12.49.43&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-14_a_12.49.32.png&amp;diff=13576</id>
		<title>Fichier:M5Stick - CO2- BME280- MQTT Capture d e cran 2022-03-14 a 12.49.32.png</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-14_a_12.49.32.png&amp;diff=13576"/>
		<updated>2022-03-14T11:50:00Z</updated>

		<summary type="html">&lt;p&gt;Bloup : M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-14_a_12.49.32&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-14_a_12.49.32&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_BME280-_MQTT&amp;diff=13575</id>
		<title>M5Stick - CO2- BME280- MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_BME280-_MQTT&amp;diff=13575"/>
		<updated>2022-03-14T11:41:03Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-03_a_13.36.25.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs SensAirS8 et un capteur BME280 (température, humidité, pression) au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme.&lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;.''' Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-BM280-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier ce fichier si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous avez en plus à votre disposition un autre lien pour télécharger le code pour un M5StickCplus. Celui-ci inclut en plus la gestion de la batterie : indication du % en charge et décharge et mise en veille si le niveau est trop faible.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + Particules en suspension [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=BME280&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- capteur de particules - MQTT&lt;br /&gt;
}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-bme280-mqtt/-/blob/main/M5Stick-test-CO2-BM280-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-bme280-mqtt/-/blob/main/M5StickCPlus-test-CO2-BM280-Date-BATT-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;  Grove BME280      [[Item:BME280]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*********** Configuration pour utiliser MQTT Adafruit ************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;ActiveKey&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ********************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ********************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/************ CrÃ©ation des flux de données ***********/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/temperature&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/humidite&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish pression = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/pression&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur BME-BMP280 en grove&lt;br /&gt;
&lt;br /&gt;
* VCC-&amp;gt;VOUT&lt;br /&gt;
* GND-&amp;gt;G&lt;br /&gt;
* SDA_PIN-&amp;gt;32&lt;br /&gt;
* SCL_PIN-&amp;gt;33&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_02=Item-BME280_Bmp280.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_BME280-_MQTT&amp;diff=13574</id>
		<title>M5Stick - CO2- BME280- MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_BME280-_MQTT&amp;diff=13574"/>
		<updated>2022-03-14T11:37:20Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-03_a_13.36.25.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs SensAirS8 et un capteur BME280 (température, humidité, pression) au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme.&lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;.''' Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-BM280-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier ce fichier si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
* CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
* CO2 + Particules en suspension [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
* SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=BME280&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- capteur de particules - MQTT&lt;br /&gt;
}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-bme280-mqtt/-/blob/main/M5Stick-test-CO2-BM280-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-bme280-mqtt/-/blob/main/M5StickCPlus-test-CO2-BM280-Date-BATT-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;  Grove BME280      [[Item:BME280]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*********** Configuration pour utiliser MQTT Adafruit ************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;ActiveKey&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ********************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ********************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/************ CrÃ©ation des flux de données ***********/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/temperature&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/humidite&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish pression = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/pression&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur BME-BMP280 en grove&lt;br /&gt;
&lt;br /&gt;
* VCC-&amp;gt;VOUT&lt;br /&gt;
* GND-&amp;gt;G&lt;br /&gt;
* SDA_PIN-&amp;gt;32&lt;br /&gt;
* SCL_PIN-&amp;gt;33&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_02=Item-BME280_Bmp280.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13562</id>
		<title>M5Stick - SGP30 - DHT - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13562"/>
		<updated>2022-03-08T11:08:46Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.24.23.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec un capteur SGP30  (mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2) ) et un capteur de type DHT (température, humidité)  au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme.&lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2)  et un capteur de type DHT (température, humidité).'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;.''' Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-SGP30-DHT-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*CO2 + capteur de particules HM3301 [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de température et d'humidité DHT11&lt;br /&gt;
}}{{ItemList}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-sgp30-dht-mqtt/-/blob/main/M5Stick-SGP30-DHT-Date-IOAdafruit.zip&lt;br /&gt;
}}{{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-sgp30-dht-mqtt/-/blob/main/M5StickCPLUS-SGP30-DHT-Date-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; Adafruit_SGP30.h&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; DHT sensor library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.29.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes :&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/********* Configuration pour utiliser MQTT Adafruit ****************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;ActiveKey&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ********************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe / Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ****************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/************* CrÃ©ation des flux de données **********/&lt;br /&gt;
// Création des objets eCO2, TVOC, temp, hum&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot; / feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Temp&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Hum&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish eCO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish TVOC = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/TVOC&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_12.18.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SensAirS8_-_DHT_-_MQTT&amp;diff=13550</id>
		<title>M5Stick - SensAirS8 - DHT - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SensAirS8_-_DHT_-_MQTT&amp;diff=13550"/>
		<updated>2022-03-08T10:10:52Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_SensAirS8_-_DHT_-_MQTT_20220223_150253.jpg&lt;br /&gt;
|Licences=Attribution + Pas d'utilisation commerciale + Partage dans les mêmes conditions (CC-BY-NC-SA)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement.&lt;br /&gt;
 &lt;br /&gt;
Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs SensAirS8  et DHT au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure de la température, l'humidité et le pourcentage de CO2.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme avec la date et l'horloge est aussi à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;.''' Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-BM280-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : M5Stick-S8-DHT-IO-Date et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 9 pour voir comment modifier ce fichier si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + Particules en suspension [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de température et d'humidité DHT11&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- capteur de particules - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments&lt;br /&gt;
|Attachment=M5Stick_-_SensAirS8_-_DHT_-_MQTT_M5Stick-CO2-DHT-IOAdafruit.ino&lt;br /&gt;
}}{{Tuto Attachments&lt;br /&gt;
|Attachment=M5Stick_-_SensAirS8_-_DHT_-_MQTT_M5Stick-DHT-2.ino&lt;br /&gt;
}}{{Tuto Attachments&lt;br /&gt;
|Attachment=M5Stick_-_SensAirS8_-_DHT_-_MQTT_M5Stick-SensairS8-test.ino&lt;br /&gt;
}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-s8-dht-io-date&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; DHT sensor library&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit Unified Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier &lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_00_annotation={&amp;quot;version&amp;quot;:&amp;quot;3.5.0&amp;quot;,&amp;quot;objects&amp;quot;:[{&amp;quot;type&amp;quot;:&amp;quot;image&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;3.5.0&amp;quot;,&amp;quot;originX&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;originY&amp;quot;:&amp;quot;top&amp;quot;,&amp;quot;left&amp;quot;:0,&amp;quot;top&amp;quot;:-0.24,&amp;quot;width&amp;quot;:736,&amp;quot;height&amp;quot;:268,&amp;quot;fill&amp;quot;:&amp;quot;rgb(0,0,0)&amp;quot;,&amp;quot;stroke&amp;quot;:null,&amp;quot;strokeWidth&amp;quot;:0,&amp;quot;strokeDashArray&amp;quot;:null,&amp;quot;strokeLineCap&amp;quot;:&amp;quot;butt&amp;quot;,&amp;quot;strokeDashOffset&amp;quot;:0,&amp;quot;strokeLineJoin&amp;quot;:&amp;quot;miter&amp;quot;,&amp;quot;strokeMiterLimit&amp;quot;:4,&amp;quot;scaleX&amp;quot;:0.82,&amp;quot;scaleY&amp;quot;:0.82,&amp;quot;angle&amp;quot;:0,&amp;quot;flipX&amp;quot;:false,&amp;quot;flipY&amp;quot;:false,&amp;quot;opacity&amp;quot;:1,&amp;quot;shadow&amp;quot;:null,&amp;quot;visible&amp;quot;:true,&amp;quot;clipTo&amp;quot;:null,&amp;quot;backgroundColor&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;fillRule&amp;quot;:&amp;quot;nonzero&amp;quot;,&amp;quot;paintFirst&amp;quot;:&amp;quot;fill&amp;quot;,&amp;quot;globalCompositeOperation&amp;quot;:&amp;quot;source-over&amp;quot;,&amp;quot;transformMatrix&amp;quot;:null,&amp;quot;skewX&amp;quot;:0,&amp;quot;skewY&amp;quot;:0,&amp;quot;crossOrigin&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;cropX&amp;quot;:0,&amp;quot;cropY&amp;quot;:0,&amp;quot;src&amp;quot;:&amp;quot;https://www.wikidebrouillard.org/images/5/5f/M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&amp;quot;,&amp;quot;filters&amp;quot;:[]}],&amp;quot;height&amp;quot;:218,&amp;quot;width&amp;quot;:600}&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
|Step_Picture_02_annotation={&amp;quot;version&amp;quot;:&amp;quot;3.5.0&amp;quot;,&amp;quot;objects&amp;quot;:[{&amp;quot;type&amp;quot;:&amp;quot;image&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;3.5.0&amp;quot;,&amp;quot;originX&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;originY&amp;quot;:&amp;quot;top&amp;quot;,&amp;quot;left&amp;quot;:0,&amp;quot;top&amp;quot;:0.01,&amp;quot;width&amp;quot;:728,&amp;quot;height&amp;quot;:148,&amp;quot;fill&amp;quot;:&amp;quot;rgb(0,0,0)&amp;quot;,&amp;quot;stroke&amp;quot;:null,&amp;quot;strokeWidth&amp;quot;:0,&amp;quot;strokeDashArray&amp;quot;:null,&amp;quot;strokeLineCap&amp;quot;:&amp;quot;butt&amp;quot;,&amp;quot;strokeDashOffset&amp;quot;:0,&amp;quot;strokeLineJoin&amp;quot;:&amp;quot;miter&amp;quot;,&amp;quot;strokeMiterLimit&amp;quot;:4,&amp;quot;scaleX&amp;quot;:0.82,&amp;quot;scaleY&amp;quot;:0.82,&amp;quot;angle&amp;quot;:0,&amp;quot;flipX&amp;quot;:false,&amp;quot;flipY&amp;quot;:false,&amp;quot;opacity&amp;quot;:1,&amp;quot;shadow&amp;quot;:null,&amp;quot;visible&amp;quot;:true,&amp;quot;clipTo&amp;quot;:null,&amp;quot;backgroundColor&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;fillRule&amp;quot;:&amp;quot;nonzero&amp;quot;,&amp;quot;paintFirst&amp;quot;:&amp;quot;fill&amp;quot;,&amp;quot;globalCompositeOperation&amp;quot;:&amp;quot;source-over&amp;quot;,&amp;quot;transformMatrix&amp;quot;:null,&amp;quot;skewX&amp;quot;:0,&amp;quot;skewY&amp;quot;:0,&amp;quot;crossOrigin&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;cropX&amp;quot;:0,&amp;quot;cropY&amp;quot;:0,&amp;quot;src&amp;quot;:&amp;quot;https://www.wikidebrouillard.org/images/e/e2/M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&amp;quot;,&amp;quot;filters&amp;quot;:[]}],&amp;quot;height&amp;quot;:122,&amp;quot;width&amp;quot;:600}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi *************************************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight line=&amp;quot;1&amp;quot; lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit &lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;Active Key&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/******** Création des objets MQTT et Wifi *********/&lt;br /&gt;
&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/******* Création des flux de données *******/&lt;br /&gt;
&lt;br /&gt;
// Création des objets temp, hum et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/temperature&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/humidite&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur DHT en grove&lt;br /&gt;
&lt;br /&gt;
Pour un capteur 3 broches, il vous faudra le brancher au GND, 5V pour l'alimentation et le signal à la pin 33&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V &lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=DataLab_-_Chapitre_3_-_Connecter_ses_capteurs_DHT11.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_20220223_161622.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SensAirS8_-_DHT_-_MQTT&amp;diff=13547</id>
		<title>M5Stick - SensAirS8 - DHT - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SensAirS8_-_DHT_-_MQTT&amp;diff=13547"/>
		<updated>2022-03-07T11:44:30Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_SensAirS8_-_DHT_-_MQTT_20220223_150253.jpg&lt;br /&gt;
|Licences=Attribution + Pas d'utilisation commerciale + Partage dans les mêmes conditions (CC-BY-NC-SA)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement.&lt;br /&gt;
 &lt;br /&gt;
Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs SensAirS8  et DHT au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure de la température, l'humidité et le pourcentage de CO2.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
* CO2 + Particules en suspension [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
* SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
* CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de température et d'humidité DHT11&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- capteur de particules - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments&lt;br /&gt;
|Attachment=M5Stick_-_SensAirS8_-_DHT_-_MQTT_M5Stick-CO2-DHT-IOAdafruit.ino&lt;br /&gt;
}}{{Tuto Attachments&lt;br /&gt;
|Attachment=M5Stick_-_SensAirS8_-_DHT_-_MQTT_M5Stick-DHT-2.ino&lt;br /&gt;
}}{{Tuto Attachments&lt;br /&gt;
|Attachment=M5Stick_-_SensAirS8_-_DHT_-_MQTT_M5Stick-SensairS8-test.ino&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; DHT sensor library&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit Unified Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier &lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_00_annotation={&amp;quot;version&amp;quot;:&amp;quot;3.5.0&amp;quot;,&amp;quot;objects&amp;quot;:[{&amp;quot;type&amp;quot;:&amp;quot;image&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;3.5.0&amp;quot;,&amp;quot;originX&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;originY&amp;quot;:&amp;quot;top&amp;quot;,&amp;quot;left&amp;quot;:0,&amp;quot;top&amp;quot;:-0.24,&amp;quot;width&amp;quot;:736,&amp;quot;height&amp;quot;:268,&amp;quot;fill&amp;quot;:&amp;quot;rgb(0,0,0)&amp;quot;,&amp;quot;stroke&amp;quot;:null,&amp;quot;strokeWidth&amp;quot;:0,&amp;quot;strokeDashArray&amp;quot;:null,&amp;quot;strokeLineCap&amp;quot;:&amp;quot;butt&amp;quot;,&amp;quot;strokeDashOffset&amp;quot;:0,&amp;quot;strokeLineJoin&amp;quot;:&amp;quot;miter&amp;quot;,&amp;quot;strokeMiterLimit&amp;quot;:4,&amp;quot;scaleX&amp;quot;:0.82,&amp;quot;scaleY&amp;quot;:0.82,&amp;quot;angle&amp;quot;:0,&amp;quot;flipX&amp;quot;:false,&amp;quot;flipY&amp;quot;:false,&amp;quot;opacity&amp;quot;:1,&amp;quot;shadow&amp;quot;:null,&amp;quot;visible&amp;quot;:true,&amp;quot;clipTo&amp;quot;:null,&amp;quot;backgroundColor&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;fillRule&amp;quot;:&amp;quot;nonzero&amp;quot;,&amp;quot;paintFirst&amp;quot;:&amp;quot;fill&amp;quot;,&amp;quot;globalCompositeOperation&amp;quot;:&amp;quot;source-over&amp;quot;,&amp;quot;transformMatrix&amp;quot;:null,&amp;quot;skewX&amp;quot;:0,&amp;quot;skewY&amp;quot;:0,&amp;quot;crossOrigin&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;cropX&amp;quot;:0,&amp;quot;cropY&amp;quot;:0,&amp;quot;src&amp;quot;:&amp;quot;https://www.wikidebrouillard.org/images/5/5f/M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&amp;quot;,&amp;quot;filters&amp;quot;:[]}],&amp;quot;height&amp;quot;:218,&amp;quot;width&amp;quot;:600}&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
|Step_Picture_02_annotation={&amp;quot;version&amp;quot;:&amp;quot;3.5.0&amp;quot;,&amp;quot;objects&amp;quot;:[{&amp;quot;type&amp;quot;:&amp;quot;image&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;3.5.0&amp;quot;,&amp;quot;originX&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;originY&amp;quot;:&amp;quot;top&amp;quot;,&amp;quot;left&amp;quot;:0,&amp;quot;top&amp;quot;:0.01,&amp;quot;width&amp;quot;:728,&amp;quot;height&amp;quot;:148,&amp;quot;fill&amp;quot;:&amp;quot;rgb(0,0,0)&amp;quot;,&amp;quot;stroke&amp;quot;:null,&amp;quot;strokeWidth&amp;quot;:0,&amp;quot;strokeDashArray&amp;quot;:null,&amp;quot;strokeLineCap&amp;quot;:&amp;quot;butt&amp;quot;,&amp;quot;strokeDashOffset&amp;quot;:0,&amp;quot;strokeLineJoin&amp;quot;:&amp;quot;miter&amp;quot;,&amp;quot;strokeMiterLimit&amp;quot;:4,&amp;quot;scaleX&amp;quot;:0.82,&amp;quot;scaleY&amp;quot;:0.82,&amp;quot;angle&amp;quot;:0,&amp;quot;flipX&amp;quot;:false,&amp;quot;flipY&amp;quot;:false,&amp;quot;opacity&amp;quot;:1,&amp;quot;shadow&amp;quot;:null,&amp;quot;visible&amp;quot;:true,&amp;quot;clipTo&amp;quot;:null,&amp;quot;backgroundColor&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;fillRule&amp;quot;:&amp;quot;nonzero&amp;quot;,&amp;quot;paintFirst&amp;quot;:&amp;quot;fill&amp;quot;,&amp;quot;globalCompositeOperation&amp;quot;:&amp;quot;source-over&amp;quot;,&amp;quot;transformMatrix&amp;quot;:null,&amp;quot;skewX&amp;quot;:0,&amp;quot;skewY&amp;quot;:0,&amp;quot;crossOrigin&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;cropX&amp;quot;:0,&amp;quot;cropY&amp;quot;:0,&amp;quot;src&amp;quot;:&amp;quot;https://www.wikidebrouillard.org/images/e/e2/M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&amp;quot;,&amp;quot;filters&amp;quot;:[]}],&amp;quot;height&amp;quot;:122,&amp;quot;width&amp;quot;:600}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi *************************************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight line=&amp;quot;1&amp;quot; lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit &lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;Active Key&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/******** Création des objets MQTT et Wifi *********/&lt;br /&gt;
&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/******* Création des flux de données *******/&lt;br /&gt;
&lt;br /&gt;
// Création des objets temp, hum et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/temperature&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/humidite&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur DHT en grove&lt;br /&gt;
&lt;br /&gt;
Pour un capteur 3 broches, il vous faudra le brancher au GND, 5V pour l'alimentation et le signal à la pin 33&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V &lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=DataLab_-_Chapitre_3_-_Connecter_ses_capteurs_DHT11.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_20220223_161622.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_BME280-_MQTT&amp;diff=13546</id>
		<title>M5Stick - CO2- BME280- MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_BME280-_MQTT&amp;diff=13546"/>
		<updated>2022-03-07T11:37:19Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-03_a_13.36.25.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs SensAirS8 et un capteur BME280 (température, humidité, pression) au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme.&lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;.''' Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-BM280-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier ce fichier si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
* CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
* CO2 + Particules en suspension [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
* SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=BME280&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- capteur de particules - MQTT&lt;br /&gt;
}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-bme280-mqtt/-/blob/main/M5Stick-test-CO2-BM280-Date-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;  Grove BME280      [[Item:BME280]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*********** Configuration pour utiliser MQTT Adafruit ************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;ActiveKey&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ********************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ********************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/************ CrÃ©ation des flux de données ***********/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/temperature&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/humidite&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish pression = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/pression&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur BME-BMP280 en grove&lt;br /&gt;
&lt;br /&gt;
* VCC-&amp;gt;VOUT&lt;br /&gt;
* GND-&amp;gt;G&lt;br /&gt;
* SDA_PIN-&amp;gt;32&lt;br /&gt;
* SCL_PIN-&amp;gt;33&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_02=Item-BME280_Bmp280.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13545</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13545"/>
		<updated>2022-03-07T11:33:22Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;'''. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
//    PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
//    PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13544</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13544"/>
		<updated>2022-03-07T11:33:00Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
//    PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
//    PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13543</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13543"/>
		<updated>2022-03-07T11:32:29Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
* CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
* CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
* SGP30 + DHT [[M5Stick_-_SGP30_-_DHT_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
//    PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
//    PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13542</id>
		<title>M5Stick - SGP30 - DHT - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13542"/>
		<updated>2022-03-07T11:27:26Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.24.23.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec un capteur SGP30  (mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2) ) et un capteur de type DHT (température, humidité)  au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme.&lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2)  et un capteur de type DHT (température, humidité).'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;.''' Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-SGP30-DHT-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*CO2 + capteur de particules HM3301 [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de température et d'humidité DHT11&lt;br /&gt;
}}{{ItemList}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-sgp30-dht-mqtt/-/blob/main/M5Stick-SGP30-DHT-Date-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; Adafruit_SGP30.h&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; DHT sensor library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.29.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes :&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/********* Configuration pour utiliser MQTT Adafruit ****************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;ActiveKey&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ********************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe / Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ****************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/************* CrÃ©ation des flux de données **********/&lt;br /&gt;
// Création des objets eCO2, TVOC, temp, hum&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot; / feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Temp&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Hum&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish eCO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish TVOC = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/TVOC&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_12.18.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13541</id>
		<title>M5Stick - SGP30 - DHT - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13541"/>
		<updated>2022-03-07T11:26:19Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.24.23.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec un capteur SGP30  (mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2) ) et un capteur de type DHT (température, humidité)  au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme.&lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2)  et un capteur de type DHT (température, humidité).'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-SGP30-DHT-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*CO2 + capteur de particules HM3301 [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de température et d'humidité DHT11&lt;br /&gt;
}}{{ItemList}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-sgp30-dht-mqtt/-/blob/main/M5Stick-SGP30-DHT-Date-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; Adafruit_SGP30.h&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; DHT sensor library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.29.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes :&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/********* Configuration pour utiliser MQTT Adafruit ****************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;ActiveKey&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ********************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe / Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ****************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/************* CrÃ©ation des flux de données **********/&lt;br /&gt;
// Création des objets eCO2, TVOC, temp, hum&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot; / feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Temp&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Hum&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish eCO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish TVOC = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/TVOC&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_12.18.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13540</id>
		<title>M5Stick - SGP30 - DHT - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13540"/>
		<updated>2022-03-07T11:20:58Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.24.23.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec un capteur SGP30  (mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2) ) et un capteur de type DHT (température, humidité)  au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme.&lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2)  et un capteur de type DHT (température, humidité).'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-SGP30-DHT-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*CO2 + capteur de particules HM3301 [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de température et d'humidité DHT11&lt;br /&gt;
}}{{ItemList}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; Adafruit_SGP30.h&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; DHT sensor library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.29.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes :&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/********* Configuration pour utiliser MQTT Adafruit ****************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;ActiveKey&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ********************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe / Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ****************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/************* CrÃ©ation des flux de données **********/&lt;br /&gt;
// Création des objets eCO2, TVOC, temp, hum&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot; / feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Temp&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Hum&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish eCO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish TVOC = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/TVOC&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_12.18.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13539</id>
		<title>M5Stick - SGP30 - DHT - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13539"/>
		<updated>2022-03-07T11:19:45Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.24.23.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec un capteur SGP30  (mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2) ) et un capteur de type DHT (température, humidité)  au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme.&lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2)  et un capteur de type DHT (température, humidité).'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-SGP30-DHT-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*CO2 + capteur de particules HM3301 [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de température et d'humidité DHT11&lt;br /&gt;
}}{{ItemList}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; Adafruit_SGP30.h&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; DHT sensor library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.29.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes :&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/********* Configuration pour utiliser MQTT Adafruit ****************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;ActiveKey&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ********************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe / Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ****************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/************* CrÃ©ation des flux de données **********/&lt;br /&gt;
// Création des objets eCO2, TVOC, temp, hum&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot; / feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Temp&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Hum&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish eCO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish TVOC = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/TVOC&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_12.18.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_12.18.43.png&amp;diff=13538</id>
		<title>Fichier:M5Stick - SGP30 - DHT - MQTT Capture d e cran 2022-03-07 a 12.18.43.png</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_12.18.43.png&amp;diff=13538"/>
		<updated>2022-03-07T11:19:35Z</updated>

		<summary type="html">&lt;p&gt;Bloup : M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_12.18.43&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_12.18.43&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13537</id>
		<title>M5Stick - SGP30 - DHT - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13537"/>
		<updated>2022-03-07T11:00:22Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.24.23.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec un capteur SGP30  (mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2) ) et un capteur de type DHT (température, humidité)  au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme.&lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2)  et un capteur de type DHT (température, humidité).'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-SGP30-DHT-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets capteurs avec un M5StickC :'''&lt;br /&gt;
&lt;br /&gt;
*CO2 + DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*CO2 + BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
*CO2 + capteur de particules HM3301 [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de température et d'humidité DHT11&lt;br /&gt;
}}{{ItemList}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; Adafruit_SGP30.h&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; DHT sensor library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.29.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes :&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/********* Configuration pour utiliser MQTT Adafruit ****************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;ActiveKey&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ********************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe / Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ****************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/************* CrÃ©ation des flux de données **********/&lt;br /&gt;
// Création des objets eCO2, TVOC, temp, hum&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot; / feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Temp&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Hum&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish eCO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish TVOC = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/TVOC&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13536</id>
		<title>M5Stick - SGP30 - DHT - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SGP30_-_DHT_-_MQTT&amp;diff=13536"/>
		<updated>2022-03-07T10:58:42Z</updated>

		<summary type="html">&lt;p&gt;Bloup : Page créée avec « {{Tuto Details |Main_Picture=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.24.23.png |Licences=Attribution (CC-BY) |Description=Crowdsourcing pour tous : P... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.24.23.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec un capteur SGP30  (mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2) ) et un capteur de type DHT (température, humidité)  au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme.&lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure des composés organiques volatils totaux (COVT) et CO2 équivalent (eCO2)  et un capteur de type DHT (température, humidité).'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-SGP30-DHT-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets avec un M5StickC pour récupérer le pourcentage de CO2 et la mesure de la température, l'humidité  avec un capteur de type :'''&lt;br /&gt;
&lt;br /&gt;
* DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
* BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
* capteur de particules HM3301 [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de température et d'humidité DHT11&lt;br /&gt;
}}{{ItemList}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; Adafruit_SGP30.h&lt;br /&gt;
&lt;br /&gt;
  -&amp;gt; DHT sensor library&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.29.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes :&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/********* Configuration pour utiliser MQTT Adafruit ****************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;ActiveKey&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ********************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe / Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ****************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/************* CrÃ©ation des flux de données **********/&lt;br /&gt;
// Création des objets eCO2, TVOC, temp, hum&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot; / feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Temp&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/Hum&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish eCO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish TVOC = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/TVOC&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur SGP30 en grove&lt;br /&gt;
&lt;br /&gt;
* Vin au 5V&lt;br /&gt;
* GND au G&lt;br /&gt;
* SCL au 33&lt;br /&gt;
* SDA au 32&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur DHT &lt;br /&gt;
&lt;br /&gt;
*  Le signal sur G26 du m5stick-C&lt;br /&gt;
*   VCC sur 3V3 pin du m5stick-C&lt;br /&gt;
*   GND sur GND du m5stick-C&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Draft&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&amp;diff=13535</id>
		<title>Fichier:M5Stick - SGP30 - DHT - MQTT Capture d e cran 2022-03-07 a 11.57.40.png</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40.png&amp;diff=13535"/>
		<updated>2022-03-07T10:57:51Z</updated>

		<summary type="html">&lt;p&gt;Bloup : M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.57.40&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.47.png&amp;diff=13534</id>
		<title>Fichier:M5Stick - SGP30 - DHT - MQTT Capture d e cran 2022-03-07 a 11.43.47.png</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.47.png&amp;diff=13534"/>
		<updated>2022-03-07T10:44:16Z</updated>

		<summary type="html">&lt;p&gt;Bloup : M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.47&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.47&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.29.png&amp;diff=13533</id>
		<title>Fichier:M5Stick - SGP30 - DHT - MQTT Capture d e cran 2022-03-07 a 11.43.29.png</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.29.png&amp;diff=13533"/>
		<updated>2022-03-07T10:44:00Z</updated>

		<summary type="html">&lt;p&gt;Bloup : M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.29&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.43.29&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_BME280-_MQTT&amp;diff=13532</id>
		<title>M5Stick - CO2- BME280- MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_BME280-_MQTT&amp;diff=13532"/>
		<updated>2022-03-07T10:40:35Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-03_a_13.36.25.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs SensAirS8 et un capteur BME280 (température, humidité, pression) au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme.&lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-BM280-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier ce fichier si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets avec un M5StickC pour récupérer :'''&lt;br /&gt;
&lt;br /&gt;
- le pourcentage de CO2 et la mesure de la température, l'humidité  avec un capteur de type DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
&lt;br /&gt;
- le pourcentage de CO2 et la mesure de particules en suspension [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=BME280&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- capteur de particules - MQTT&lt;br /&gt;
}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-bme280-mqtt/-/blob/main/M5Stick-test-CO2-BM280-Date-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;  Grove BME280      [[Item:BME280]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/*********** Configuration pour utiliser MQTT Adafruit ************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;ActiveKey&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ********************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ********************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/************ CrÃ©ation des flux de données ***********/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/temperature&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/humidite&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish pression = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/pression&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur BME-BMP280 en grove&lt;br /&gt;
&lt;br /&gt;
* VCC-&amp;gt;VOUT&lt;br /&gt;
* GND-&amp;gt;G&lt;br /&gt;
* SDA_PIN-&amp;gt;32&lt;br /&gt;
* SCL_PIN-&amp;gt;33&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_02=Item-BME280_Bmp280.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SensAirS8_-_DHT_-_MQTT&amp;diff=13531</id>
		<title>M5Stick - SensAirS8 - DHT - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_SensAirS8_-_DHT_-_MQTT&amp;diff=13531"/>
		<updated>2022-03-07T10:40:02Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_SensAirS8_-_DHT_-_MQTT_20220223_150253.jpg&lt;br /&gt;
|Licences=Attribution + Pas d'utilisation commerciale + Partage dans les mêmes conditions (CC-BY-NC-SA)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement.&lt;br /&gt;
 &lt;br /&gt;
Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs SensAirS8  et DHT au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure de la température, l'humidité et le pourcentage de CO2.'''&lt;br /&gt;
&lt;br /&gt;
Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets avec un M5StickC pour récupérer :'''&lt;br /&gt;
&lt;br /&gt;
- le pourcentage de CO2 et la mesure de la température, l'humidité  et la pression avec un capteur de type BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
&lt;br /&gt;
- le pourcentage de CO2 et la mesure de particules en suspension [[M5Stick_-_CO2-_capteur_de_particules_-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de température et d'humidité DHT11&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- capteur de particules - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments&lt;br /&gt;
|Attachment=M5Stick_-_SensAirS8_-_DHT_-_MQTT_M5Stick-CO2-DHT-IOAdafruit.ino&lt;br /&gt;
}}{{Tuto Attachments&lt;br /&gt;
|Attachment=M5Stick_-_SensAirS8_-_DHT_-_MQTT_M5Stick-DHT-2.ino&lt;br /&gt;
}}{{Tuto Attachments&lt;br /&gt;
|Attachment=M5Stick_-_SensAirS8_-_DHT_-_MQTT_M5Stick-SensairS8-test.ino&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; DHT sensor library&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit Unified Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier &lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_00_annotation={&amp;quot;version&amp;quot;:&amp;quot;3.5.0&amp;quot;,&amp;quot;objects&amp;quot;:[{&amp;quot;type&amp;quot;:&amp;quot;image&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;3.5.0&amp;quot;,&amp;quot;originX&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;originY&amp;quot;:&amp;quot;top&amp;quot;,&amp;quot;left&amp;quot;:0,&amp;quot;top&amp;quot;:-0.24,&amp;quot;width&amp;quot;:736,&amp;quot;height&amp;quot;:268,&amp;quot;fill&amp;quot;:&amp;quot;rgb(0,0,0)&amp;quot;,&amp;quot;stroke&amp;quot;:null,&amp;quot;strokeWidth&amp;quot;:0,&amp;quot;strokeDashArray&amp;quot;:null,&amp;quot;strokeLineCap&amp;quot;:&amp;quot;butt&amp;quot;,&amp;quot;strokeDashOffset&amp;quot;:0,&amp;quot;strokeLineJoin&amp;quot;:&amp;quot;miter&amp;quot;,&amp;quot;strokeMiterLimit&amp;quot;:4,&amp;quot;scaleX&amp;quot;:0.82,&amp;quot;scaleY&amp;quot;:0.82,&amp;quot;angle&amp;quot;:0,&amp;quot;flipX&amp;quot;:false,&amp;quot;flipY&amp;quot;:false,&amp;quot;opacity&amp;quot;:1,&amp;quot;shadow&amp;quot;:null,&amp;quot;visible&amp;quot;:true,&amp;quot;clipTo&amp;quot;:null,&amp;quot;backgroundColor&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;fillRule&amp;quot;:&amp;quot;nonzero&amp;quot;,&amp;quot;paintFirst&amp;quot;:&amp;quot;fill&amp;quot;,&amp;quot;globalCompositeOperation&amp;quot;:&amp;quot;source-over&amp;quot;,&amp;quot;transformMatrix&amp;quot;:null,&amp;quot;skewX&amp;quot;:0,&amp;quot;skewY&amp;quot;:0,&amp;quot;crossOrigin&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;cropX&amp;quot;:0,&amp;quot;cropY&amp;quot;:0,&amp;quot;src&amp;quot;:&amp;quot;https://www.wikidebrouillard.org/images/5/5f/M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&amp;quot;,&amp;quot;filters&amp;quot;:[]}],&amp;quot;height&amp;quot;:218,&amp;quot;width&amp;quot;:600}&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
|Step_Picture_02_annotation={&amp;quot;version&amp;quot;:&amp;quot;3.5.0&amp;quot;,&amp;quot;objects&amp;quot;:[{&amp;quot;type&amp;quot;:&amp;quot;image&amp;quot;,&amp;quot;version&amp;quot;:&amp;quot;3.5.0&amp;quot;,&amp;quot;originX&amp;quot;:&amp;quot;left&amp;quot;,&amp;quot;originY&amp;quot;:&amp;quot;top&amp;quot;,&amp;quot;left&amp;quot;:0,&amp;quot;top&amp;quot;:0.01,&amp;quot;width&amp;quot;:728,&amp;quot;height&amp;quot;:148,&amp;quot;fill&amp;quot;:&amp;quot;rgb(0,0,0)&amp;quot;,&amp;quot;stroke&amp;quot;:null,&amp;quot;strokeWidth&amp;quot;:0,&amp;quot;strokeDashArray&amp;quot;:null,&amp;quot;strokeLineCap&amp;quot;:&amp;quot;butt&amp;quot;,&amp;quot;strokeDashOffset&amp;quot;:0,&amp;quot;strokeLineJoin&amp;quot;:&amp;quot;miter&amp;quot;,&amp;quot;strokeMiterLimit&amp;quot;:4,&amp;quot;scaleX&amp;quot;:0.82,&amp;quot;scaleY&amp;quot;:0.82,&amp;quot;angle&amp;quot;:0,&amp;quot;flipX&amp;quot;:false,&amp;quot;flipY&amp;quot;:false,&amp;quot;opacity&amp;quot;:1,&amp;quot;shadow&amp;quot;:null,&amp;quot;visible&amp;quot;:true,&amp;quot;clipTo&amp;quot;:null,&amp;quot;backgroundColor&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;fillRule&amp;quot;:&amp;quot;nonzero&amp;quot;,&amp;quot;paintFirst&amp;quot;:&amp;quot;fill&amp;quot;,&amp;quot;globalCompositeOperation&amp;quot;:&amp;quot;source-over&amp;quot;,&amp;quot;transformMatrix&amp;quot;:null,&amp;quot;skewX&amp;quot;:0,&amp;quot;skewY&amp;quot;:0,&amp;quot;crossOrigin&amp;quot;:&amp;quot;&amp;quot;,&amp;quot;cropX&amp;quot;:0,&amp;quot;cropY&amp;quot;:0,&amp;quot;src&amp;quot;:&amp;quot;https://www.wikidebrouillard.org/images/e/e2/M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&amp;quot;,&amp;quot;filters&amp;quot;:[]}],&amp;quot;height&amp;quot;:122,&amp;quot;width&amp;quot;:600}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi *************************************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight line=&amp;quot;1&amp;quot; lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit &lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;Username&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;Active Key&amp;quot;      //Votre clef AdafruitIO &lt;br /&gt;
&lt;br /&gt;
/******** Création des objets MQTT et Wifi *********/&lt;br /&gt;
&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/******* Création des flux de données *******/&lt;br /&gt;
&lt;br /&gt;
// Création des objets temp, hum et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish temp = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/temperature&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish hum = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/humidite&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur DHT en grove&lt;br /&gt;
&lt;br /&gt;
Pour un capteur 3 broches, il vous faudra le brancher au GND, 5V pour l'alimentation et le signal à la pin 33&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V &lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=DataLab_-_Chapitre_3_-_Connecter_ses_capteurs_DHT11.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_20220223_161622.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13530</id>
		<title>M5Stick - CO2- capteur de particules - MQTT</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=M5Stick_-_CO2-_capteur_de_particules_-_MQTT&amp;diff=13530"/>
		<updated>2022-03-07T10:39:33Z</updated>

		<summary type="html">&lt;p&gt;Bloup : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Tuto Details&lt;br /&gt;
|Main_Picture=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.33.png&lt;br /&gt;
|Licences=Attribution (CC-BY)&lt;br /&gt;
|Description=Crowdsourcing pour tous : Programmation et visualisation de capteurs fixes pour permettre aux citoyen.nes de produire diverses mesures dans un programme de santé environnement. Programme pour envoyer des données en MQTT entre un M5Stick-C avec les capteurs CO2 SensAirS8 et un capteur de particules HM3301 au site AdafruitIO&lt;br /&gt;
|Disciplines scientifiques=Arduino, Computing, Life Sciences&lt;br /&gt;
|Difficulty=Easy&lt;br /&gt;
|Duration=1&lt;br /&gt;
|Duration-type=hour(s)&lt;br /&gt;
}}&lt;br /&gt;
{{Introduction&lt;br /&gt;
|Introduction=L’air constitue le premier des éléments nécessaires à la vie.&lt;br /&gt;
&lt;br /&gt;
Chaque jour, un être humain adulte inhale 10 000 à 20 000 litres d’air en fonction de sa morphologie, de ses activités.&lt;br /&gt;
&lt;br /&gt;
En plus de l’oxygène (O2) et le diazote (N2), qui représentent en moyenne 99 % de sa composition, cet air que nous respirons contient aussi des polluants, sous forme gazeuse, liquide ou solide d’origine naturelle (embruns marins, poussières, pollens…) ou résultant d’activités humaines (trafic routier, production d’énergie, industrie, agriculture…).&lt;br /&gt;
&lt;br /&gt;
La pollution de l'air a des effets significatifs et multiples sur la santé et l'environnement.&lt;br /&gt;
&lt;br /&gt;
La pénétration de ces polluants dans l’organisme peut avoir des conséquences sur la santé à court et long terme. &lt;br /&gt;
&lt;br /&gt;
La qualité de l'air et la pollution de l'air sont donc des enjeux majeurs pour la santé.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Ici, nous allons programmer un M5StickC pour obtenir une meilleure connaissance de la qualité de l’air avec mesure du pourcentage de CO2 et la mesure de particules en suspension.'''&lt;br /&gt;
&lt;br /&gt;
Le programme est à télécharger dans l'onglet &amp;quot;Fichiers&amp;quot;. Il vous suffira de le télécharger, de le décompresser et de mettre le dossier contenant 2 fichiers (M5Stick-test-CO2-PM-Date-IOAdafruit.ino + time_zones.h) dans le dossier de croquis de Arduino.&lt;br /&gt;
&lt;br /&gt;
Lorsque vous ouvrirez ce projet dans Arduino, vous vous retrouverez avec un croquis à 2 onglets : ''M5Stick-test-CO2-PM-Date-IOAdafruit'' et ''time_zones.h''&lt;br /&gt;
&lt;br /&gt;
Ce 2ème onglet permet d'afficher la date et l'heure sur l'écran. Vous pouvez aller à l'étape 7 pour voir comment modifier votre localisation si vous n'êtes pas dans le même fuseau horaire.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''D'autres projets avec un M5StickC pour récupérer le pourcentage de CO2 et la mesure de la température, l'humidité  avec un capteur de type :'''&lt;br /&gt;
&lt;br /&gt;
*DHT [[M5Stick - SensAirS8 - DHT - MQTT]]&lt;br /&gt;
*BME-BMP280 [[M5Stick_-_CO2-_BME280-_MQTT]]&lt;br /&gt;
}}&lt;br /&gt;
{{Materials&lt;br /&gt;
|ItemList={{ItemList&lt;br /&gt;
|Item=M5StickC&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Capteur de CO2 SENSEAIR S8&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=HM3301&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Ordinateur&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Fer à souder&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Câble Dupont&lt;br /&gt;
}}{{ItemList&lt;br /&gt;
|Item=Breadboard&lt;br /&gt;
}}&lt;br /&gt;
|Prerequisites={{Prerequisites&lt;br /&gt;
|Prerequisites=Installer l'environnement Arduino sur votre système&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer de nouvelles cartes dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Importer des bibliothèques dans l'interface Arduino&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Créer un compte chez AdafruitIO pour envoyer des données dans le web&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Envoyer des données sur le WEB grâce à MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Un capteur de CO2 avec UIFLOW et M5STICK&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=Capteur de particules&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=DataLab - Chapitre 3 - Connecter ses capteurs&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - SensAirS8 - DHT - MQTT&lt;br /&gt;
}}{{Prerequisites&lt;br /&gt;
|Prerequisites=M5Stick - CO2- BME280- MQTT&lt;br /&gt;
}}&lt;br /&gt;
|Tuto_Attachments={{Tuto Attachments}}{{Tuto Attachments}}&lt;br /&gt;
|ExternalAttachmentsLinks={{ExternalAttachmentsLinks&lt;br /&gt;
|ExternalAttachmentsLinks=https://lab.debrouillonet.org/g.apremont/m5stick-co2-capteur-de-particules-mqtt/-/blob/main/M5Stick-test-CO2-PM-Date-IOAdafruit.zip&lt;br /&gt;
}}&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Installation M5Stick-C&lt;br /&gt;
|Step_Content=Bien entendu, il faut avoir installé Arduino&lt;br /&gt;
&lt;br /&gt;
[[Installer l'environnement Arduino sur votre système]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importer de nouvelles cartes dans l'interface Arduino'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1-Ajout d'un catalogue de cartes dans l'interface de développement Arduino'''&lt;br /&gt;
&lt;br /&gt;
[[Importer de nouvelles cartes dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Préférences -&amp;gt; URL de gestionnaire de cartes supplémentaires&lt;br /&gt;
&lt;br /&gt;
https://dl.espressif.com/dl/package_esp32_index.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2-Ajout de la carte'''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Outils -&amp;gt; Type de carte -&amp;gt; Gestionnaire de carte -&amp;gt; Rechercher et installer ESP32&lt;br /&gt;
|Step_Picture_00=Item-M5StickC_m5stickc_03_large.png&lt;br /&gt;
|Step_Picture_01=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-00-32.png&lt;br /&gt;
|Step_Picture_02=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-00.png&lt;br /&gt;
|Step_Picture_03=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-01-20.png&lt;br /&gt;
|Step_Picture_04=Importer_de_nouvelles_cartes_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_12-07-34.png&lt;br /&gt;
|Step_Picture_05=M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Import bibliothèque&lt;br /&gt;
|Step_Content=Pour notre projet, nous aurons besoin d'ajouter les bibliothèques suivantes  via l'interface Arduino :&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; M5SticKC (M5SticKCPlus si vous utilisez ce modèle)&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; EspSoftwareSerial&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Tomoto_HM330X.h         [[Item:HM3301]]&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Adafruit_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Importer des bibliothèques dans l'interface Arduino]]&lt;br /&gt;
&lt;br /&gt;
Vous pouvez installer que les bibliothèques ci-dessus.&lt;br /&gt;
|Step_Picture_00=Importez_des_biblioth_ques_de_programme_dans_l_interface_Arduino_Capture_d_cran_du_2020-09-04_10-58-27.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.45.43.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Modification d'une bibliothèque pour la gestion de plusieurs capteurs sur le M5Stick-C&lt;br /&gt;
|Step_Content=Pour pouvoir utiliser les 2 capteurs (DHT et SensAIrS8) en même temps, il va falloir modifier le fichier '''''AirGradient.cpp''''' qui se trouve dans la bibliothèque AirGradient_Air_Quality_Sensor fraichement installer.&lt;br /&gt;
&lt;br /&gt;
Pour le modifier, il faut aller dans votre dossier&lt;br /&gt;
&lt;br /&gt;
Arduino -&amp;gt; libraries -&amp;gt; AirGradient_Air_Quality_Sensor&lt;br /&gt;
&lt;br /&gt;
Ouvrir le fichier AirGradient.cpp avec un éditeur de texte.&lt;br /&gt;
&lt;br /&gt;
Pour ne pas supprimer les lignes, nous allons tout simplement mettre certaines lignes en commentaire. Pour se faire il suffit de mettre '''&amp;lt;big&amp;gt;//&amp;lt;/big&amp;gt;''' en début de ligne.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver PMS_Init(D5,D6); (Ligne 60) mettre cette ligne  en commentaire '''''//PMS_Init(D5,D6)''''';&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver CO2_Init(D4,D3); (Ligne 569) mettre en commentaire '''''//  CO2_Init(D4,D3);'''''&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Trouver Wire.begin(); (Ligne45) mettre en commentaire '''''//Wire.begin();'''''&lt;br /&gt;
|Step_Picture_00=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.14.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_16.31.46.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_SensAirS8_-_DHT_-_MQTT_Capture_d_e_cran_2022-02-23_a_15.52.47.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Configuration du Wifi&lt;br /&gt;
|Step_Content=Remplacer dans le code &amp;quot;LENOMDETABOX &amp;quot; par le nom de votre réseau WIFI et le &amp;quot;LEMDPDETABOX&amp;quot; par votre clé Wifi.&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour le Wifi ************************/&lt;br /&gt;
const char* ssid = &amp;quot;LENOMDETABOX &amp;quot;;        // Nom de votre réseau WIFI&lt;br /&gt;
const char* password = &amp;quot;LEMDPDETABOX&amp;quot;;    // Clef Wifi&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.20.32.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=AdafruitIO&lt;br /&gt;
|Step_Content=Retrouvez toutes les informations sur les 2 pages suivantes&lt;br /&gt;
&lt;br /&gt;
[[Créer un compte chez AdafruitIO pour envoyer des données dans le web]]&lt;br /&gt;
&lt;br /&gt;
[[Envoyer des données sur le WEB grâce à MQTT]]&lt;br /&gt;
&lt;br /&gt;
Remplacer &amp;quot;Username&amp;quot;  avec votre nom d'utilisateur sur io.adafruit et  &amp;quot;ActiveKey&amp;quot;  la clef généré sur AdafruitIO.&lt;br /&gt;
&lt;br /&gt;
Ligne 157 du programme    // Sélectionner les flux que vous voulez faire apparaitre sur votre bureau ioAdafruit. Attention à la limite de données envoyées.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CO2.publish(valCO2);&lt;br /&gt;
&lt;br /&gt;
//    PM1.publish(sensor.std.getPM1());&lt;br /&gt;
&lt;br /&gt;
//    PM2_5.publish(sensor.std.getPM2_5());&lt;br /&gt;
&lt;br /&gt;
PM10.publish(sensor.std.getPM10());&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;c++&amp;quot;&amp;gt;&lt;br /&gt;
/************************* Configuration pour utiliser MQTT Adafruit *********************************/&lt;br /&gt;
#define AIO_SERVER      &amp;quot;io.adafruit.com&amp;quot;&lt;br /&gt;
#define AIO_SERVERPORT  1883&lt;br /&gt;
&lt;br /&gt;
// Suivre ce tuto pour récupérer les infos nécessaires https://www.wikidebrouillard.org/wiki/Cr%C3%A9er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn%C3%A9es_dans_le_web&lt;br /&gt;
#define AIO_USERNAME    &amp;quot;USERNAME&amp;quot;        //Votre nom d'utilisateur sur io.adafruit&lt;br /&gt;
#define AIO_KEY         &amp;quot;KEY&amp;quot;      //Votre clef AdafruitIO&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets pour l'horloge ******************************************************/&lt;br /&gt;
const char* ntpServer = &amp;quot;pool.ntp.org&amp;quot;;&lt;br /&gt;
const char* location  = &amp;quot;Europe/Paris&amp;quot;;  // voir dans l'onglet time_zones.h si vous n'êtes pas sur le même fuseau horaire&lt;br /&gt;
&lt;br /&gt;
/************ Création des objets MQTT et Wifi ******************************************************/&lt;br /&gt;
WiFiClient client;                                                                      // Création d'un objet client wifi, nécessaire pour initier la connexion avec le serveur Adafruit MQTT.&lt;br /&gt;
Adafruit_MQTT_Client mqtt(&amp;amp;client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);  // Création de l'objet mqtt nécessaire à la connexion avec le serveur&lt;br /&gt;
&lt;br /&gt;
/****************************** CrÃ©ation des flux de données ****************************************/&lt;br /&gt;
// Création des objets PM1.0, PM2.5 PM10 et CO2&lt;br /&gt;
// Renseigner les chemins de vos flux de données &amp;quot;/feeds/******&lt;br /&gt;
// voir tuto https://www.wikidebrouillard.org/wiki/Envoyer_des_donn%C3%A9es_sur_le_WEB_gr%C3%A2ce_%C3%A0_MQTT&lt;br /&gt;
&lt;br /&gt;
Adafruit_MQTT_Publish CO2 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/CO2&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM1 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM1&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM2_5 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM2_5&amp;quot;);&lt;br /&gt;
Adafruit_MQTT_Publish PM10 = Adafruit_MQTT_Publish(&amp;amp;mqtt, AIO_USERNAME &amp;quot;/feeds/PM10&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Adafruit-IO-Logo.png&lt;br /&gt;
|Step_Picture_01=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-23-11.png&lt;br /&gt;
|Step_Picture_02=Cr_er_un_compte_chez_AdafruitIO_pour_envoyer_des_donn_es_dans_le_web_Capture_d_cran_du_2020-09-04_16-36-30.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Branchement des capteurs&lt;br /&gt;
|Step_Content=-&amp;gt; Capteur HM3301 en grove&lt;br /&gt;
&lt;br /&gt;
-&amp;gt; Capteur CO2 -&amp;gt; Étape un peu de soudure&lt;br /&gt;
&lt;br /&gt;
Dans l'étape 1 de la page [[Un capteur de CO2 avec UIFLOW et M5STICK]], un peu de soudure pour pouvoir connecter simplement votre capteur de CO2 au M5Stick.&lt;br /&gt;
&lt;br /&gt;
* G+ au 5V&lt;br /&gt;
* G0 au GND&lt;br /&gt;
* TX au 26&lt;br /&gt;
* RX au 36&lt;br /&gt;
&lt;br /&gt;
La calibration du capteur se fait avec le bouton du M5StcikC déjà intégré.&lt;br /&gt;
&lt;br /&gt;
'''D'autres capteurs ici :''' [[DataLab - Chapitre 3 - Connecter ses capteurs]]&lt;br /&gt;
|Step_Picture_00=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_PXL_20220127_092811583_3.jpg&lt;br /&gt;
|Step_Picture_01=Capteur_de_particules_IMG_20190915_140558.jpg&lt;br /&gt;
|Step_Picture_02=Un_capteur_de_CO2_avec_UIFLOW_et_M5STICK_m5stickOK.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-02_a_17.02.45.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Gestion de l'horloge&lt;br /&gt;
|Step_Content=Vous pouvez remplacer '''''&amp;quot;Europe/Paris&amp;quot;''''' sur la ligne &lt;br /&gt;
&lt;br /&gt;
-&amp;gt; const char* location  = &amp;quot;'''''Europe/Paris'''''&amp;quot;; &lt;br /&gt;
&lt;br /&gt;
par une autre localisation.&lt;br /&gt;
&lt;br /&gt;
Il suffit de récupérer dans l'onglet '''''time_zones.h''''', la destination de votre choix.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.31.24.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_capteur_de_particules_-_MQTT_Capture_d_e_cran_2022-03-03_a_09.37.25.png&lt;br /&gt;
}}&lt;br /&gt;
{{Tuto Step&lt;br /&gt;
|Step_Title=Envoyer le programme dans le M5Stick-C&lt;br /&gt;
|Step_Content=Avant de téléverser le programme dans votre carte électronique, vous devez vous assurer que le bon type de carte est sélectionné (ici '''M5Stick-C''') et que le bon port COM est sélectionné.&lt;br /&gt;
&lt;br /&gt;
Pour se faire, il vous suffit d'aller dans l'onglet &amp;quot;'''''Outils'''''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Puis &amp;quot;'''''Type de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''Gestionnaire de carte'''''&amp;quot;-&amp;gt; &amp;quot;'''''ESP32 Arduino'''''&amp;quot; -&amp;gt; &amp;quot;'''''M5Stick-C'''''&amp;quot; (Sélectionner la carte avec laquelle vous travaillez)&lt;br /&gt;
# Choisir le Port sur lequel est branché votre carte&lt;br /&gt;
# &lt;br /&gt;
&lt;br /&gt;
Il ne vous reste plus qu'à téléverser.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vous pouvez suivre l'avancée du processus en ouvrant la console et/ou regarder ce qui se passe sur l'écran du M5Stick-C.&lt;br /&gt;
|Step_Picture_00=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.20.40.png&lt;br /&gt;
|Step_Picture_01=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.30.04.png&lt;br /&gt;
|Step_Picture_02=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.27.43.png&lt;br /&gt;
|Step_Picture_03=M5Stick_-_CO2-_BME280-_MQTT_Capture_d_e_cran_2022-03-04_a_09.34.52.png&lt;br /&gt;
}}&lt;br /&gt;
{{Notes}}&lt;br /&gt;
{{Tuto Status&lt;br /&gt;
|Complete=Published&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
	<entry>
		<id>https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&amp;diff=13529</id>
		<title>Fichier:M5Stick - SGP30 - DHT - MQTT Capture d e cran 2022-03-07 a 11.35.16.png</title>
		<link rel="alternate" type="text/html" href="https://www.wikidebrouillard.org/w/index.php?title=Fichier:M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16.png&amp;diff=13529"/>
		<updated>2022-03-07T10:38:35Z</updated>

		<summary type="html">&lt;p&gt;Bloup : M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;M5Stick_-_SGP30_-_DHT_-_MQTT_Capture_d_e_cran_2022-03-07_a_11.35.16&lt;/div&gt;</summary>
		<author><name>Bloup</name></author>
		
	</entry>
</feed>