Test. Shield Wemos D1 Mini DHT11 ou DHT22 avec du code Arduino ou ESP Easy

Partager sur facebook
Partager sur twitter
Partager sur linkedin
Partager sur pinterest
Partager sur email
Partager sur telegram

Wemos propose une grande gamme de cartes d’extension (Shield) pour la LoLin D1 Mini. Elles sont regroupées dans cet article de présentation au fur et à mesure de leur sortie. Dans ce tutoriel rapide, nous allons découvrir comment assembler le shield DHT22 et l’utiliser dans un code Arduino ou à l’aide du firmware ESP Easy.   

Article actualisé le 21 avril 2020

Déballage du shield DHT22 pour LoLin d1 mini

Comme toutes les cartes Wemos, celle-ci est livrée avec 3 types de connecteurs à souder :

  • Pour platine de prototypage (breadboard)
  • Connecteur à superposer court
  • Connecteur à superposer long

La carte mesure 36 (longueur) x 25 (largeur) x 9.6 (hauteur) mm. Il faudra ajouter quelques millimètres supplémentaires en fonction du connecteur choisi.

shield wemos d1 mini dht22 unboxing deballage

Shield DHT22 pour Wemos D1 Mini

Une fois assemblé, on obtient cette configuration par exemple. Il est encore possible d’empiler d’autres shields (écran OLED, alimentation sur batterie…)

shield dht22 wemos d1 mini monte empile assemble

Shield DHT22 assemblé sur Wemos D1 Mini

Le Shield embarque un DHT22 tout à fait classique, le même que l’on retrouve dans les nombreux kits d’apprentissage Arduino / Raspberry Pi. On va donc pouvoir utiliser les librairies déjà développées pour les 2 plateformes, ou disons plutôt les 3 plateformes si on considère l’ESP8266 comme une plateforme à part entière. Le DHT22 (ou le DHT11) est soudé sur la carte d’extension. Il n’est donc pas possible de choisir la broche. On ira récupérer les mesures sur la broche D4, équivalent au GPIO-2 de l’Arduino.

Code Arduino

Avant de commencer, il est nécessaire d’installer la librairie Adafruit (la plus utilisée). Elle est très facile à installer depuis le gestionnaire de bibliothèque de l’IDE Arduino.

ide arduino librairie dht Créez un nouveau sketch et collez ce code. Inutile de modifier la broche.

/* DHT Shield - Simple
 *
 * Example testing sketch for various DHT humidity/temperature sensors
 * Written by ladyada, public domain
 *
 * Depends on Adafruit DHT Arduino library
 * https://github.com/adafruit/DHT-sensor-library
 */

#include "DHT.h"

#define DHTPIN D4     // what pin we're connected to

// Uncomment whatever type you're using!
#define DHTTYPE DHT12   // DHT 11
//#define DHTTYPE DHT22   // DHT 22  (AM2302)
//#define DHTTYPE DHT21   // DHT 21 (AM2301)

// Initialize DHT sensor.
// Note that older versions of this library took an optional third parameter to
// tweak the timings for faster processors.  This parameter is no longer needed
// as the current DHT reading algorithm adjusts itself to work on faster procs.
DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600);
  Serial.println("DHTxx test!");

  dht.begin();
}

void loop() {
  // Wait a few seconds between measurements.
  delay(2000);

  // Reading temperature or humidity takes about 250 milliseconds!
  // Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
  float h = dht.readHumidity();
  // Read temperature as Celsius (the default)
  float t = dht.readTemperature();
  // Read temperature as Fahrenheit (isFahrenheit = true)
  float f = dht.readTemperature(true);

  // Check if any reads failed and exit early (to try again).
  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println("Impossible de lire la sonde DHT!");
    return;
  }

  // Compute heat index in Fahrenheit (the default)
  float hif = dht.computeHeatIndex(f, h);
  // Compute heat index in Celsius (isFahreheit = false)
  float hic = dht.computeHeatIndex(t, h, false);

  Serial.print("Humidity: ");
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("Temperature: ");
  Serial.print(t);
  Serial.print(" *C ");
  Serial.print(f);
  Serial.print(" *F\t");
  Serial.print("Heat index: ");
  Serial.print(hic);
  Serial.print(" *C ");
  Serial.print(hif);
  Serial.println(" *F");
}

Source : https://github.com/wemos/D1_mini_Examples/blob/master/examples/04.Shields/DHT_Shield/Simple/Simple.ino Téléchargez le programme dans la Wemos et ouvrez le moniteur série pour recevoir les mesures. Plusieurs exemples ont été mis à disposition par Wemos sur Github ici

  • Simple.ino : exemple ci-dessus
  • SimpleServer.ino : un bon exemple pour apprendre comment développer un ESP8266 comme un serveur WEB. Un ouvre un page internet dans un navigateur pour lire les mesures renvoyées par la sonde.
  • DeepSleep.ino : un exemple intégrant la mise en sommeil et le réveil à interval régulier de l’ESP8266 pour une utilisation sur batterie.

ESP Easy R120 ou Mega : une sonde de température et humidité en 5 minutes chrono !

Si vous n’avez qu’une petite sonde de température connectée à développer, ESP Easy suffira amplement. Les capteurs DHT11/DHT22 sont très bien gérés. Si vous débutez avec ESP Easy, suivez ce tutoriel pour installer le firmware et vous configurer la connexion Wi-Fi de la Wemos D1 Mini. Un fois connecté, allez à l’onglet Device et cliquer sur un Edit (n’importe quelle ligne). Dans la liste des Devices, choisissez Temperature & Humidity – DHT, puis ajustez les paramètres comme ceci

  • Name : donnez un nom.
  • Delay : le délai de rafraichissement des mesures. Inutile d’aller trop vite.
  • IDX / Var : choisissez un identifiant (1 à 255), différent de 0 sinon ça ne fonctionne pas. Si vous utilisez Domoticz, ce sera l’identifiant interne
  • GPIO : obligatoirement GPIO-2
  • DHT Type : sélectionnez le type de votre carte
  • Cochez Send Data si vous voulez envoyer les mesures à un serveur domotique
  • Formula : pas vraiment utilise
  • Decimals : vous pouvez limiter à un chiffre après la virgule. C’est bien assez.
  • Nommez les variables 1 et 2. Choisissez un nom court, sans espace ni caractères accentués. Il est utilisé pour identifier les variables pour communiquer avec un serveur domotique, MQTT, etc…

esp easy configuration device dht22 wemos d1 mini shield Vous pouvez maintenant intégrer très facilement votre sonde à une serveur domotique (Jeedom, Domoticz) ou récupérer les mesures avec Node-RED pour créer de graphiques avec Grafana.

Tous les shields compatibles LoLin d1 mini

La liste détaillée et les informations techniques des cartes d’extension pour L’ESP8266 LoLin d1 mini sont mises à jour régulièrement sur cette page.

-13% ProtoBoard Shield For WeMos D1 Mini Double Sided Perf PCB Extension Board...
0,32 0,37
Esp8266 pour WeMos D1 module WS2812B RGB bouclier pour WeMos D1 mini...
0,33
-13% ESP8266 Relay Shield V2 WeMos D1 Mini ESP8266 Development Board For WeMos...
0,37 0,43
-11% 1-Button Shield Module for WeMos D1 mini button
0,40 0,45
-11% Double Socket Dual Base Shield for WeMos D1 Mini NodeMCU ESP8266 For...
0,46 0,52
-11% Micro SD Card Shield IoT Wireless Control for D1 Mini ESP8266 WiFi...
0,46 0,52
TFT I2C Connecteur Bouclier V1.1.0 pour LOLIN (WEMOS) D1 mini 1x TFT,...
0,64
-18% Tripler Base V1.0.0 Module Board with Pins For WEMOS D1 Mini
0,84 1,03
-6% DHT Shield for WeMos D1 mini DHT11 Single-bus digital temperature and humidity...
0,87 0,93
Lumière ambiante Bouclier V1.0.0 pour LOLIN D1 mini BH1750 BH1750FVI I2C numérique...
1,10
-10% For Wemos D1 Mini Buzzer Shield V1.0.0 Development Board For Wemos D1...
1,16 1,29
-7% Matrix LED Shield V1.0.0 8 Step Adjustable Intensity for WEMOS D1 mini...
1,19 1,28
-15% Micro SD pour Wemos D1 Mini horloge en temps réel enregistreur de...
1,21 1,43
IR Contrôleur Bouclier V1.0.0 pour LOLIN D1 mini Infrarouge capteurs 4x 940nm...
1,28
Barométrique Pression Bouclier V1.0.0 pour LOLIN (WEMOS) D1 mini HP303B I2C numérique...
1,37
PIR Bouclier V1.0.0 pour LOLIN D1 mini infrarouge passif capteur module
1,46
-14% Bouclier OLED V2.0.0 pour WeMos D1 mini 0.66
1,67 1,96
TFT 1.4 Bouclier V1.0.0 pour WeMos D1 mini 1.44
1,79
SGP30 officiel (TVOC + eCO2)
1,79
-10% For WEMOS D1 Mini DC Power Shield V1.1.0 Development Board For Wemos...
2,34 2,60
Motor Shield For WeMos D1 mini I2C Dual Motor Driver TB6612FNG (1A)...
2,45
-7% DHT Pro Shield for WeMos D1 mini DHT22 Single-bus digital temperature and...
2,50 2,69
2pcs Wemos® DHT Shield V2.0.0 For WEMOS D1 Mini DHT12 I2C Digital...
5,19
TFT 2.4 Tactile Bouclier V1.0.0 pour LOLIN (WEMOS) d1 mini 2.4
5,39
EPaper 2.13 bouclier V1.0.0 pour LOLIN (WEMOS) D1 mini D32-2.13 pouce 250X122...
9,04

Avez-vous aimé cet article ?
[Total: 0 Moyenne: 0]
Partager sur facebook
Partager sur twitter
Partager sur linkedin
Partager sur pinterest
Partager sur email
Partager sur telegram

Vous avez aimé ce projet ? Ne manquez plus aucun projet en vous abonnant à notre lettre d’information hebdomadaire!

Ressources utiles
quel modèle esp8266 choisir
Quel modèle d'ESP8266EX choisir en 2020 ?
guide choix esp32 development board
Quel ESP32 choisir en 2020 ?
2 Commentaires
  1. Hello,

    L’article date quelque peu maintenant, mais je souhaiterais connaitre la hauteur total de l’ensemble.
    Hauteur qui commence du dessous de la wemos d1 au dessus du dht 22 (je n’utiliserai pas l’extension de PIN)

    merci par avance l’ami 🙂

    Laisser un commentaire

    Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

    Domotique et objets connectés à faire soi-même