Créer votre sonde d'humidité du sol autonome et solaire pour Home Assistant

Vous en avez marre d’arroser votre pelouse ou vos plantes à l’aveugle ? Vous souhaitez optimiser votre consommation d’eau tout en gardant un jardin verdoyant ? Aujourd’hui, je vous présente un projet passionnant et très utile : la fabrication d’une sonde d’humidité du sol connectée, 100% autonome grâce à l’énergie solaire et parfaitement intégrée à Home Assistant. 💧☀️

Ce tutoriel vous guidera pas à pas, du choix des composants à la configuration logicielle, pour que vous puissiez vous aussi surveiller la santé de votre jardin intelligemment.

Le projet : objectif autonomie et fiabilité

L’idée de base est simple : mesurer le taux d’humidité de la terre et remonter l’information à Home Assistant. Mais le véritable défi est de rendre ce système complètement autonome en énergie pour pouvoir le placer n’importe où dans le jardin, sans se soucier des câbles ou de changer les piles.

Pour y parvenir, notre stratégie repose sur trois piliers :

  1. Alimentation solaire : un petit panneau solaire couplé à une batterie rechargeable.

  2. Très basse consommation : utilisation du mode deep sleep (sommeil profond) de l’ESP32 pour ne consommer quasiment rien entre les mesures.

  3. Fiabilité des composants : choisir du matériel adapté à un usage en extérieur.

Ce projet vous permettra d’obtenir des données précieuses pour déclencher un arrosage automatique, recevoir des notifications, ou simplement suivre l’état de votre sol au fil des saisons.

Le matériel nécessaire

Voici la liste des composants que j’ai utilisés. J’ai opté pour un bon rapport qualité/prix, avec du matériel facile à trouver.

  • Le cerveau : une carte de développement ESP32. Son Wi-Fi intégré, sa faible consommation en sommeil profond et ses nombreux ports en font le candidat idéal.

  • Le module d’alimentation : un module de charge solaire pour batterie 18650 (type TP4056 ou similaire). C’est la pièce maîtresse de notre système d’alimentation. Il gère la charge de la batterie via le panneau solaire et fournit une sortie stable pour alimenter l’ESP32.

  • La batterie : une batterie lithium-ion de type 18650. Choisissez-en une avec une bonne capacité (ex: 2500-3400mAh) pour une meilleure autonomie, surtout en hiver.

  • Le panneau solaire : un petit panneau solaire de 6V. Sa tension est parfaite pour le module de charge.

  • La sonde d’humidité : une sonde d’humidité capacitive. C’est un choix crucial ! Contrairement aux sondes résistives (celles avec deux broches apparentes), les capacitives ne se corrodent pas au contact de la terre et de l’eau, assurant une bien meilleure fiabilité sur le long terme.

  • La sonde de température/humidité (optionnel) : un capteur DHT11 ou DHT22 pour mesurer la température et l’humidité de l’air. C’est un petit plus pour avoir des données météo locales.

  • Le boîtier : un boîtier de dérivation étanche (IP65 ou plus) pour protéger l’électronique des intempéries.

  • Divers : des câbles de prototypage (fils Dupont), un fer à souder (optionnel mais recommandé), et un piquet (un tuteur en bambou fait parfaitement l’affaire) pour monter le panneau solaire.

L'assemblage électronique

Le montage est assez simple. Le cœur du système est le module de charge qui fait le lien entre le panneau solaire, la batterie et l’ESP32.

Voici le schéma des connexions :

  1. Panneau solairemodule de charge : soudez les fils du panneau solaire aux bornes d’entrée « SOLAR +/- » du module.

  2. Batterie 18650module de charge : insérez la batterie dans son support sur le module, en respectant la polarité.

  3. Module de chargeESP32 : connectez la sortie 5V du module à la broche VIN de l’ESP32, et la masse GND du module à une broche GND de l’ESP32.

  4. Sonde d’humidité capacitiveESP32 :

    • VCCGPIO26 (on utilisera ce port pour n’alimenter la sonde que lors des mesures)

    • GNDGND

    • AOUT (Signal) → GPIO33

  5. Sonde DHT11ESP32 :

    • VCC3V3

    • GNDGND

    • DATAGPIO27

  6. Mesure de la tension batterieESP32 : le module de charge inclut un pont diviseur de tension. Connectez la broche BAT du module (souvent au milieu) à la broche GPIO35 de l’ESP32 pour lire la tension.

Une fois tout connecté, placez l’ensemble dans le boîtier étanche, en faisant sortir proprement les câbles du panneau solaire et de la sonde.

La configuration avec ESPHome

ESPHome est un outil fantastique qui transforme un code complexe en une configuration simple sous forme de fichier YAML. Voici le code complet, que nous allons décortiquer juste après.

Note : n’oubliez pas de créer un fichier secrets.yaml dans votre dossier ESPHome pour y stocker vos informations sensibles (clé API, mots de passe Wi-Fi…).

Explications clés du code

  • deep_sleep : c’est la fonction magique ! L’ESP32 va se réveiller toutes les heures (sleep_duration: 1h), se connecter au Wi-Fi, envoyer ses données, puis se rendormir. La consommation pendant le sommeil est infime (quelques microampères).

  • output: gpio_sensor : on configure le GPIO26 comme un interrupteur. Dans le script, on allume ce port (output.turn_on) juste avant la mesure et on l’éteint (output.turn_off) juste avant de dormir. Cela permet de ne pas alimenter la sonde d’humidité en continu, économisant ainsi de précieux milliampères.

  • Calibrage de la sonde (calibrate_linear) : cette partie est essentielle. Pour obtenir un pourcentage d’humidité fiable, vous devez calibrer la sonde.

    1. Flashez une première fois le code en commentant (avec un #) les lignes unit_of_measurement: '%' et le filtre calibrate_linear pour lire la tension brute.

    2. Notez la valeur (moisture_min) quand la sonde est à l’air libre (complètement sèche).

    3. Notez la valeur (moisture_max) quand la sonde est plongée dans un verre d’eau.

    4. Reportez ces valeurs dans la section substitutions et décommentez les lignes.

  • Mesure de la batterie (multiply: 2) : le module de charge intègre un pont diviseur de tension pour ne pas envoyer plus de 3.3V à l’ESP32. Le filtre multiply: 2 rétablit la tension réelle de la batterie (qui peut monter jusqu’à 4.2V). On utilise ensuite un autre calibrate_linear pour transformer cette tension en un pourcentage plus parlant.

Intégration à Home Assistant et fiabilité

  • Une fois votre ESP32 flashé et connecté à votre Wi-Fi, Home Assistant le découvrira automatiquement via l’intégration ESPHome. Vous n’aurez plus qu’à l’ajouter et toutes les entités (humidité, batterie, température…) apparaîtront.

    Sur la fiabilité, ce montage a fait ses preuves.

    • Le choix d’une sonde capacitive évite la corrosion et garantit des mesures stables sur le long terme.

    • Le boîtier étanche est indispensable pour protéger l’électronique de la pluie et de l’humidité.

    • L’autonomie est excellente. Même avec plusieurs jours de temps gris, la batterie 18650 et la très faible consommation due au deep sleep permettent au système de continuer à fonctionner sans interruption. En été, la batterie reste constamment à 100%.

    Vous voilà avec une sonde sur-mesure, économique, et parfaitement autonome pour prendre soin de votre jardin comme un pro ! N’hésitez pas à poser vos questions en commentaire si vous vous lancez dans l’aventure. Bon bricolage !