Skip to content

Latest commit

 

History

History
88 lines (76 loc) · 3.91 KB

File metadata and controls

88 lines (76 loc) · 3.91 KB

ESP8266 + DHT22 + MQTT + Home-Assistant

Un petit projet pour apprendre à fabriquer une sonde de température connectée (IoT). Vous pouvez retrouver l'intégralité de ce projet sur mon blog http://www.projetsdiy.fr/esp8266-dht22-mqtt-projet-objet-connecte/

Matériel nécessaire

Pour réaliser ce projet vous aurez besoin des éléments suivants : - Un module WiFi ESP8266 de préférence basé sur un ESP-12. J'utilise une Wemos D1 mini qui coûte 5€ environ. - Une sonde de température DHT11 ou DHT22 - Une Led - Une résistance 220 ohms - Un câble USB (pour programmer et alimenter l'ESP) - Une batterie LiPo 3.7V ou un boitier de 2 piles AA si vous voulez

Logiciels nécessaires

Pour recevoir les mesures de votre objets et piloter la led, vous aurez besoin d'un ordinateur avec les logiciels suivants d'installés. Un Raspberry Pi 3 sera parfait - Broker MQTT. Mosquitto est très simple et performant. Voici un article de présentation http://www.projetsdiy.fr/mosquitto-broker-mqtt-raspberry-pi/ - Un serveur domotique. Si vous débutez, Home-Assistant est très simple à installer et à utiliser même si l'anglais n'est pas votre fort (http://www.projetsdiy.fr/home-assistant-serveur-domotique-raspberry-pi/).

Branchement

Code

Téléchargez et ouvrez le fichier DTH22_LED.ino avec l'IDE Arduino Si vous découvrez les modules ESP8266, lisez cet article qui explique comment les programmer avec l'IDE Arduino http://www.projetsdiy.fr/esp-01-esp8266-flasher-firmware-origine/

Installer Home-Assistant

Python 3 (ou supérieur) doit être présent sur votre ordinateur puis
pip3 install homeassistant

Pour les utilisateurs de Windows 10 (ou 7)

python -m pip install homeassistant

Intégration MQTT + Home-Assistant

Allez dans le répertroire d'installation d'Home-Assistant
cd ~/.homeassistant
puis
sudo nano configuration.yaml 
Ajoutez une section mqtt
mqtt:
  broker: localhost          
  port: 1883                 #par défaut
  client_id: home-assistant-1
  keepalive: 60
  username: USERNAME  #optionnel
  password: PASSWORD   #optionnel
  protocol: 3.1              #par défaut

et maintenant deux sensors (température et humidité)

sensor:
  platform: mqtt
  state_topic: "sensor/temperature"
  name: "Température"
  qos: 0
  unit_of_measurement: "°C"
  #value_template: '{{ payload }}'

sensor 2:
  platform: mqtt
  state_topic: "sensor/humidity"
  name: "Humidité"
  qos: 0
  unit_of_measurement: "°C"
  #value_template: '{{ payload }}'

et enfin un switch pour piloter la Led

switch:
  platform: mqtt
  name: "Cuisine"
  command_topic: "homeassistant/switch1" #Topic sur lequel on publie l'état de l'interrupteur
  payload_on: "ON"      # ON pour allumer
  payload_off: "OFF"    # et OFF pour éteindre (à vous de choisir)
  optimistic: true      
  qos: 0

Rechargez la page d'Home-Assistant. Vous avez maintenant deux indicateurs (température et humidité) ainsi qu'un switch pour allumer / éteindre la Led

J'espère que ce petit projet vous sera utile pour débuter en domotique.