My Free Time

Contrôler un NodeMCU et ses périphériques avec MQTT et Home Assistant

Aujourd'hui nous allons explorer comment utiliser un NodeMCU (ESP8266) connecté à divers périphériques pour échanger des données via MQTT avec Home Assistant. Nous détaillerons l'installation, la configuration, et l'utilisation d'un script Arduino, incluant un exemple concret.

Ce qui compose le projet

Le cœur de ce montage est une carte NodeMCU, accompagnée d'un multiplexeur CD4051 qui permet de gérer plusieurs capteurs analogiques avec une seule broche (A0). Voici ce que nous allons connecter :

  • Un NodeMCU ESP8266 (ou un module équivalent)
  • LED rouge et verte
  • Bouton poussoir
  • DHT11 (capteur de température et d'humidité)
  • CD4051 (multiplexeur analogique)
  • Photocellule et potentiomètre connectés au CD4051
  • Home Assistant configuré avec un broker MQTT (par exemple, Mosquitto)

Fonctionnalités du projet

Le NodeMCU interagit avec plusieurs composants :

  • Capteurs : Le DHT11 pour la température et l'humidité, et des périphériques analogiques (photocellule et potentiomètre).
  • Actionneurs : Deux LEDs (rouge et verte) contrôlées via MQTT.
  • Bouton poussoir : Permet une interaction utilisateur locale.
  • Communication : Les données collectées sont publiées sur des topics MQTT, et les LEDs réagissent aux commandes MQTT envoyées depuis Home Assistant.

Attribution des pins du montage :

  • CD4051
    • S0, S1, S2 connectés à D1, D2, D3 pour sélectionner les entrées.
    • Y0 pour le potentiomètre.
    • Y1 pour la cellule photo-résistante.
    • Sortie A0 reliée à la broche analogique du NodeMCU.
  • LEDs
    • LED rouge sur D7, LED verte sur D8.
  • DHT11
    • Connecté à D4 pour lire les mesures.
  • Bouton poussoir
    • Relié à D5 en mode INPUT.
  • Alimentation via micro-USB pour le NodeMCU

Le code Arduino

xxxxxxx