ESP32 + relais + alimentation 230V AC intégrés + capteurs

Dans une installation domotique, on a souvent besoin au niveau local d’un ensemble comprenant des senseurs comme :
- un détecteur de présence,
- une mesure de luminosité
- une mesure de la température
Un ou plusieurs relais comme actionneur.
Un microcontrôleur pour le traitement.
On trouve sur le marché de nombreux relais pilotables avec leur logiciel propriétaire, mais difficile d’y rajouter un senseur ou capteur.
Les 2 cartes présentées ici rassemblent un ESP32, 1 ou 4relais, et un bloc alimentation sur la même carte.
On les trouve chez Aliexpress :
Avantages
- regroupement ESP32, relais et alimentation. Cela simplifie le câblage
- Trous de fixation de la platine
- Entrées/Sorties GPIO ou IO à câbler en dessous ou au-dessus, ce qui est très pratique
- Nombreuses pins GND, 5V et 3.3V pour connecter les senseurs

Défauts
- Pas d’accès USB pour la première programmation. Il faut une interface USB/TTL
Connexions Hardware (carte 1 relais)
Cette carte dispose d’une entrée 230V AC pour son alimentation.
4 connecteurs * 10 pins
3V3 | CLK | 5V | GND |
SD0 | SD1 | SD3 | CMD |
IO15 | IO2 | IO13 | SD2 |
IO0 | IO4 | IO14 | IO12 |
IO16 (Relais) | IO17 | IO26 | IO27 |
IO5 | IO18 | IO33 | IO25 |
IO19 | GND | IO35 | IO32 |
IO21 | RXD0 | SVN | IO34 |
TXD0 | IO22 | EN | SVP |
IO23 (LED bleue) | GND | GND | 3V3 |
Connecteur programmation
IO0 | GND | GND | RX | TX | 5V |
Autres
Relais | IO16 |
LED bleue | IO23 |
Bouton EN (Reset) | EN |
Bouton IO0 | IO0 |
Connexions Hardware (carte 4 relais)
Cette carte dispose de 3 entrées au choix pour l’alimentation :
- 230V AC
- 7V à 30V DC
- 5V DC
4 connecteurs * 10 pins
3V3 | CLK | 5V | GND |
SD0 | SD1 | SD3 | CMD |
G15 | G2 | G13 | SD2 |
G0 | G4 | G14 | G12 |
G16 | G17 | G26 (relais) | G27 |
G5 | G18 | G33 (relais) | G25 (relais) |
G19 | GND | G35 | G32 (relais) |
G21 | RXD | SVN | G34 |
TXD0 | G22 | EN | SVP |
G23 (LED ) | GND | GND | 3V3 |
Connecteur programmation
IO0 | GND | GND | RX | TX | 5V |
Autres
Bouton EN (Reset) | EN |
Bouton IO0 | IO0 |


Programmation
Pour télécharger du code, il faut connecter une interface USB / TTL avec le strap d’alimentation sur 3V3.
Pour l’alimentation de la carte ESP32 pendant la programmation, on a 2 choix :
- alimenter par l’adaptateur série sortie VCC vers le 5V de la carte ESP (bien que l’on soit en 3.3V et ne fonctionnera que pour la programmation)
- alimenter l’ESP32 en 230V et pas de liaison série sortie VCC vers carte ESP32
Pour lancer la programmation, il faut :
- rester appuyé sur le bouton IO0
- appuyez sur EN (Enable/Reset)
- relâchez les 2 boutons
Ainsi l’ESP attend la programmation. Une fois la programmation faite, re – appuyer sur EN pour relancer l’ESP32 sur le nouveau programme.
Logiciel
Ce module a l’avantage de ne pas être propriétaire, vous pouvez y mettre ce que bon vous semble.
Arduino
Avec l’outil IDE Arduino, vous pouvez développer votre propre code. Choisissez la carte ESP32 DEV module. Vous trouverez des détails sur la mise en route ici : https://f1atb.fr/index.php/fr/2023/09/20/programmation-de-lesp32-application-au-routeur-photovoltaique/
Avec l’Arduino, intégrez dans votre code le mode OTA permettant de mettre à jour le code à distance via le WIFI. Ainsi vous n’aurez plus besoin de l’interface USB/TTL
ESP Easy
Firmware permettant de programmer des ESP8266 ou ESP32 et disposant du code pour de nombreux capteurs sur le marché. Cela simplifie la programmation
https://espeasy.readthedocs.io/en/latest/index.html

ESPHome
Firmware puissant permettant de programmer son ESP32 avec de simples descriptions d’interfaces, actions; évènements etc. dans un fichier yaml. Souvent associé au système domotique Home Assistant.
https://esphome.io/index.html
Exemple de réalisation
Pilotage lumière, buzzer et mesure de température et luminosité
Ici un exemple regroupant :
- Capteur de présence Infra Rouge
- Capteur de luminosité
- Capteur (DHT22) de température et humidité
- Buzzer comme sonnette
- Interface vers un interrupteur A/M
- Relais pour la lumière
Pilotage lumières,climatisation Airton , et mesure de température.

Autre exemple avec la version 4 relais qui pilote des lumières et dispose de 4 senseurs ou effecteurs:

- Détecteur de présence PIR Infra rouge
- Mesure de la luminosité sur une entrée analogique
- Un émetteur Infra-Rouge pour piloter une climatisation Airton
- Un capteur de température et humidité DHT22
En plus 2 entrées connectées à des interrupteurs pour allumer/éteindre manuellement la lumière
Le code en yaml pour ESPHome / Home Assistant est disponible ici : https://github.com/F1ATB/Climatisation-Airton

Attention, le diagramme de directivité du IR Transmitter (disponible chez Aliexpress) est étroit, il faut pouvoir ajuster sa position afin de bien viser le climatiseur.

Bonsoir André,
Ce composant peut il être utilisé pour le routeur ? Y a t’il une limitation par le logiciel ? Je ne vois pas de problème du point de vue Hardware.
Il possède déjà un relais et surtout l’alim 220v; c’est un plus
J’en ai commandé un et je vais tester. J’ai mis en stby le développement du CI pour ça.
Bravo pour votre réactivité pour les debugs soft (V5.02, gestion du capteur de température)
Vous avez raison. C’est une solution intéressante pour le routeur avec son alimentation integrée.
Cdlt
Sympa ce module !!
Je vois une version 6 du routeur qui pointe son nez 😉.
En tout cas, André je suis admiratif devant votre capacité à produire autant de nouveaux projets en si peu de temps ! j’ai vu que vous aviez repris mon code auto discovery home assistant dans les dernières version routeur. Vous l’avez magnifiquement optimisé. Une vraie machine ! Épatant !
Merci pour ces nouveautés prometteuses et votre partage.
Votre code de l’auto discovery est parfait. C’est moi qui vous remercie