ESP8266 + relais + alimentation 230V AC intégrés + capteurs
ESP12F Relay X4
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.
La carte présentée ici rassemblent un ESP8266, 4 relais, et un bloc alimentation sur la même carte.
On la trouve chez Aliexpress .
Avantages
- regroupement ESP8266, 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
Connecteur programmation
GND | GND | IO0 | RX | TX | 5V |
Connecteurs Relais
Relais 1 | RY1 |
Relais 2 | RY2 |
Relais 3 | RY3 |
Relais 4 | RY4 |
Connecteurs GPIOs
ADC | EN(reset) | IO16 | IO14 | IO12 | IO13 |
IO5 | IO4 | IO0 | IO2 | IO15 | GND |
Il y a un certains nombres de contraintes sur les GPIO de l’ESP8266. Leur disponibilité est donnée dans le tableau ci-dessous, ainsi que les recommandations.
Label | GPIO | Input | Output | Notes |
D0 | GPIO16 | no interrupt | no PWM or I2C support | HIGH at boot used to wake up from deep sleep |
D1 | GPIO5 | OK | OK | often used as SCL (I2C) |
D2 | GPIO4 | OK | OK | often used as SDA (I2C) |
D3 | GPIO0 | pulled up | OK | connected to FLASH button, boot fails if pulled LOW |
D4 | GPIO2 | pulled up | OK | HIGH at boot connected to on-board LED, boot fails if pulled LOW |
D5 | GPIO14 | OK | OK | SPI (SCLK) |
D6 | GPIO12 | OK | OK | SPI (MISO) |
D7 | GPIO13 | OK | OK | SPI (MOSI) |
D8 | GPIO15 | pulled to GND | OK | SPI (CS) Boot fails if pulled HIGH |
RX | GPIO3 | OK | RX pin | HIGH at boot |
TX | GPIO1 | TX pin | OK | HIGH at boot debug output at boot, boot fails if pulled LOW |
A0 | ADC0 | Analog Input | X |
Programmation
Pour télécharger du code, il faut connecter une interface USB / TTL avec le strap d’alimentation sur 3V3. On ne câble que la masse (GND) et le TX et le RX en croisant. TX carte programmation vers RX carte ESP8266. On ne câble pas le Vcc (l’alimentation)
Pour lancer la programmation, il faut :
- mettre l’entrée IO0 temporairement à la masse
- appuyez sur EN (Enable/Reset)
- relâchez IO0 et En
Ainsi l’ESP 8266 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 Generic ESSP8266 module.
Avec l’Arduino, intégrez dans votre code le mode OTA (On The Air) 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 ESP8266 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
Bonjour, peut on piloter une vanne 3 voie avec une sonde de température ?
Cordialement
Oui pourquoi pas.
Intéressant. A toutes fins utiles il existe aussi toute la gamme Sonoff que l’on peut, soit flasher avec Tasmota soit y incorporer son propre firmware si on est un peu courageux.