C'est latwingo qui nous a fait découvrir ce module sur ce post viewtopic.php?f=185&t=25017&start=120
Sa dénomination exacte est "Wifi IoT Relay Board SPDT Based on ESP8266" et on le trouve chez Electrodragon.
le SPDT est important, il caractérise les contacts des relais.
Single Pole Double Throw en anglais, je traduirais par inverseur unipolaire ou inverseur simple.
et c'est là , l’intérêt de ce module. Contrairement au module Sonoff basic qui dispose pour les contacts du relais d'un simple interrupteur (SPST) dont un des contacts est relié à la phase, ici les contacts sont dit "sec" (absence de toute tension).
schéma des différentes dénominations des contacts relais:
Voici une photo pour vous donner une idée de la taille du module.
Largeur = 42.5mm Hauteur = 26mm Longueur = 111mm
Les relais sont données pour 10A,
Mais Attention, je vous déconseille d'utiliser ce module pour des intensités aussi élevées, les borniers sont beaucoup trop petits.
Je réserverais ce module pour:
--commander un moteur de volet roulant.
--commander un télérupteur (pour l'éclairage).
--commander un contacteur Heure creuse (gestion du ballon eau chaude).
--commander une porte de garage ou un portail en mode pulse.
--commander un relais din de puissance.
Une fois le capot plastique déclipsé (il n'y a pas de vis), voila ce que l'on trouve:
--le module s'alimente en 230VAC.
--Il dispose de deux relais avec les sorties COM/NO/NF.
--les gpio 4/5/14/15 sont disponibles sur les 2X6 broches.
--il est aussi possible de souder un DHT 22 ou DS18b20 sur la platine (gpio14).
--il dispose aussi de deux BP (inaccessible boitier fermé) gpio 0 et gpio 2.
La Programmation pour ESPEasy
La programmation se fait en basse tension (ne brancher pas le 230VAC).
Il vous faudra récupérer les sources ici pour les plus récentes: https://github.com/letscontrolit/ESPEasy/releases
et disposer d'un convertisseur usb/série en 3.3v comme ce modèle par exemple
Avec un chip FTDI plutôt que CH340.
et de 4 câbles Dupont pour relier:
--TX vers RX
--RX vers TX
--GND vers GND
--VCC3.3v vers VCC3.3v
une fois le convertisseur FTDI relier et connecté sur l'usb du PC,
4 leds doivent s'allumer, 3 s'éteignent se rallument et s'éteignent à nouveau pour ne laisser que la led du bloc alim allumée.
Attention, Vous n'êtes pas en mode programmation !
Pour passer en mode programmation, il faut:
--débrancher le VCC3.3v
--appuyer et rester appuyer sur le BP (gpio 0) marqué BTN2
--rebrancher le VCC3.3v
--relâcher le BP
vous devez avoir deux leds d'allumées (IO16 et le bloc alim)
Vous êtes maintenant en mode programmation.
Ouvrer le dossier des sources que vous avez décompressé.
lancer le programme FlashESP8266.exe
vérifier que le port sélectionné est bien celui de votre convertisseur (normalement, c'est le bon)
choisir le fichier ESPEasy_v2.0.0-dev12_normal_4096.bin
les leds du convertisseur série doivent clignoter et le message "Flash complete" apparaitre.
à la fin du flash, une seul led reste allumée (celle du bloc alim)
Pour passer à la phase configuration, il faut débrancher puis rebrancher le module.
--Le plus simple est maintenant de passer sur l'alim 230VAC en supprimant les connexions avec le convertisseur FTDI
et de ne pas oublier de refermer le capot ! Attention au 230VAC !
La procédure est la même que pour un sonoff ou un wemos et je vous invite à suivre ici la procédure "Après le Flash":
viewtopic.php?f=185&t=28327
Si vous avez suivi le tuto, votre module est maintenant accessible sur votre réseau avec son IP.
La configuration avec ESPEasy
--Dans le menu Config:
donner lui un N° de 1 à 31 (Unit Number)
--Dans le menu Controllers
éditer la première ligne
choisir:
Protocol----------------Generic HTTP
Controller IP----------IP de votre Jeedom
Controller Port-------8121
Controller Publish---device=%sysname%&taskid=%id%&cmd=%valname%&value=%value%
Cocher Enabled et enregistrer par Submit
--Dans le menus Hardware
Si vous voulez utiliser les gpio 4 et 5 pour autre chose que l'interface I2C.
il faut sélectionner None dans la zone I2C pour les deux gpio (SDA et SCL)
Enregistrer par Submit.
--Dans le menu Tools
on choisi Advanced et on coche:
-Rules pour avoir la possibilité d’effectuer des règles comme par exemple si BP à 0 activer le relais.
-Use NTP et DST pour avoir l'heure.
-Global Sync et on attribue un N° de port libre (le même sur chaque module ESPEasy pour qu'ils puissent communiquer entre eux)
Enregistrer par Submit, un nouveau menu "Rules" doit apparaitre.
--Dans le menu Devices
la configuration minimum étant les deux relais et deux Boutons Poussoirs mais chaque gpio (en dehors des gpio relais) peuvent être configurés pour ce que vous voulez (dans la liste).
Configuration des Relais:
les deux relais sont sur les gpio 12 et 13
Pour le deuxième il suffit de changer le nom Relais2 le gpio 13 et la valeur Switch2.
Configuration des BP:
J'ai choisi les gpio 4 et 5 en cochant pull up et inversed (d'après le schéma et observation de ma platine, les gpio 4/5 sont déjà en pull up avec une 4.7K) les BP seront donc actifs en reliant le gpio sur gnd.
Pour le deuxième, changer le nom BP2 le gpio 5 et la valeur BP2.
résumé de la configuration:
Votre page Devices doit ressembler à ça:
--Dans le menu Rules
vous pouvez copier ceci pour:
--qu'à l'initialisation les deux gpio (relais) se trouvent à 0
--qu'à la mise à la masse (gnd) du gpio4 (BP1) le relais1 commute
--qu'à la mise à la masse (gnd) du gpio5 (BP2) le relais2 commute
ça facilitera aussi l'intégration dans Jeedom.
Code : Tout sélectionner
On System#boot do
gpio,12,0
gpio,13,0
endon
On BP1#BP1=1 do
if [Relais1#Switch1]=0
gpio,12,1
else
gpio,12,0
endif
endon
On BP2#BP2=1 do
if [Relais2#Switch2]=0
gpio,13,1
else
gpio,13,0
endif
endon
Vous pouvez déjà tester votre module avec (capot ouvert) trois câbles sur gpio4, gpio5 et gnd.
si vous reliez gpio4 sur gnd (sur cette zone, vous ne risquez rien, c'est du 3.3v mais attention ! le 230 n'est pas loin !)
un des deux relais doit coller et la led correspondante s'allumer.
pareil avec le gpio5 et l'autre relais.
Et dans Jeedom ?
si le plugin ESPEasy est installé et fonctionnel.
il suffit de passer en mode inclusion et de faire fonctionner les relais avec les BP pour qu'un module soit détecté et les commandes créées.
Si vous voulez une commande action pour les relais, il faut la créer manuellement en tapant dans "Task et Variable" gpio,12,1 puis sauvegarder pour activer le relais sur le gpio12. ou pour un commande type bouton poussoir (on/off rapide) pulse,12,1,300 le relais passera à 1 puis 300msc plus tard à 0.
Exemples d'utilisation
---Module pour commander le moteur d'un volet roulant--
le câblage des sorties relais interdit d'avoir la phase sur monter et descente en même temps.
voir ici ou le module est utilisé :viewtopic.php?f=185&t=25017&start=100
---Module pour commander un télérupteur--
On pourra rajouter des BP si besoin et on utilisera la commande pulse.
si le télérupteur est en basse tension, il est facile de séparer l'alimentation 230 du contact relais.
---Module gestion du chauffe eau (ballon)--
ce schéma correspond exactement à ce qui a été décrit ici :viewtopic.php?f=59&t=12168
il permet de gérer le ballon par le contacteur de puissance heure creuse tout en gardant la configuration d'origine.
relais 1 = 0------------le ballon par le contacteur heure creuse est piloté par le contact edf du compteur.
relais 1 = 1------------le ballon ne peut plus être commandé par le contact edf du compteur.
relais 2 = 0-----------Aucun changement sur la commande du ballon.
relais 2 = 1 ----------Marche forcé, le ballon par le contacteur heure creuse est activé quelque soit la position du contact edf du compteur.
pour simplifier, ce câblage permet (par scénario) de diminuer la période de chauffe (23h30/6h30) donc d'économiser quelques KW/h.
et/ou de couper/activer la chauffe du ballon à distance.
--Module gestion thermostat chaudière--
Schéma assez simple comme le relais est dit "sec" (sans tension sur les contacts) le raccordement se fait sur la sortie thermostat d'ambiance de la chaudière.
Il est même possible de rajouter un Bouton poussoir pour activer le relais et donc le thermostat manuellement (en cas de panne wifi la gestion restera active).
Pour la configuration du BP sur le gpio 15 (le gpio15 est en Pull down par une Résistance de 10K vers gnd) il ne faudra pas activer le Pull Up ni inversed.
et d'utiliser la règle pour activer le relais à chaque appui.
Code : Tout sélectionner
On BP1#BP1=1 do
if [Relais1#Switch1]=0
gpio,12,1
else
gpio,12,0
endif
endon
--Module gestion Fil Pilote--
Petit rappel des commandes nécessaires pour piloter un (ou des) radiateur par le fil pilote.
Nous utiliserons avec Jeedom et le plugin thermostat que deux ordres, confort pour chauffer et Hors-gel pour ne plus chauffer.
la fonction hors-gel est préférable à arrêt pour éviter que la température ne descende sous les 4/5°.
Le plugin thermostat aura besoin d'une sonde de température pour que celle-ci puisse remonter dans Jeedom.
Avec ce câblage, (en utilisant le contact NF)
si relais=0 le fil pilote est en Hors-gel
si relais=1 le fil pilote est en confort
de cette manière le relais n'est alimenté que lorsque le radiateur doit chauffer, ce qui n'est pas le cas avec les modules type sonoff basic ou shelly1 le relais doit être alimenté pour que le radiateur ne chauffe pas.