SonOff Mini – ESP Easy
Domoticz – IFTTT – Google Home
Le SonOff mini est un module très utile en domotique. Il dispose de nombreuses caractéristiques séduisantes comme:
– une taille réduite 42*42*20mm permettant de se loger à l’intérieur de boites d’interrupteurs muraux
– un relais permettant de commuter du 220v jusqu’à 10A
– une entrée permettant de recevoir une commande comme un interrupteur
– une liaison wifi permettant un contrôle à distance
– des entrées complémentaires à souder pour y raccorder des capteurs de température, présence etc…
– un microcontrôleur (ESP 8285) programmable pour gérer la logique de l’ensemble
– un prix de 5€ environ
Ci-après vous trouverez différentes méthodes de programmation et d’utilisation du SonOff mini.
Programmation – eWeLink
Une fois sortie de sa boite on alimente en 220v en entrée et sur la sortie, on peut brancher une ampoule. Sur Google Play (Android) ou l’App-Store vous téléchargez l’application eWelink pour piloter le SonOff en passant par le wifi du domicile. C’est rapide à mettre en œuvre mais on passe par un « cloud » en Chine pour piloter sa lampe. En cas de coupure d’internet, le système n’est plus opérationnel.
Il faut s’inscrire sur le site et on reçoit un code de validation par mail.
Programmation – SonOff DIY
Pour ceux qui ne souhaite pas passer par un « cloud », cela se comprend, SonOff propose de configurer le système pour le lier au système domotique de la maison qui enverra des requête HTTP par POST. C’est le mode dit DIY (Do IT Yourself).
Une fois mis sous tension, il faut appuyer sur l’interrupteur du boitier au moins 5s (voire une deuxième fois 5s si le système a déjà été programmé). La led bleu clignote rapidement, le SonOff passe en émission Wifi (Access Point « ITEAD….xxxxx ») se connecter avec un smartphone avec le mot de passe 12345678. Renseigner alors le nom du wifi local à utiliser (SSID) à l’avenir ainsi que le mot de passe de votre réseau. Un outil SonOff DIY Mode Tool pour windows permet de se familiariser avec les commandes à passer (REST API) au SonOff pour contrôler le relais depuis un système de domotique.
Suivant le système de domotique utilisé, des tutos expliquent la programmation.
Programmation – ESP Easy
ESP Easy est un micrologiciel MCU gratuit et open source pour l’Internet des objets (IoT). Il fonctionne sur les plates-formes MCU (microcontrôleur) basées sur le ESP8266 ou ESP8285 celui qui équipe le SonOff mini. On y trouve un système d’exploitation très simple qui permet de commander un relais, lire des capteurs de température, d’humidité, de présence etc…La gestion de l’heure offre d’adapter les traitements suivant l’heure, la date etc…L’ensemble est reprogrammable à distance et pilotable depuis un smartphone, un système de domotique voire par la voix avec Google Home ou Alexa. C’est ma solution préférée pour les nombreuses capacités qu’elle offre. On n’utilise plus le firmware d’origine de SonOff et on va installer le firmware ESP EASY à la place.
SonOff Mini Hardware
Ouvrir le SonOff pour accéder aux différentes broches « GPIO ».
GPIO0 | Switch | Programmation ESP |
GPIO1 | TX | |
GPIO2 | ||
GPIO3 | RX | |
GPIO4 | Entrée sur le bornier | |
GPIO12 | Relais | 1= »On »0= »Off » |
GPIO13 | LED bleue | O= »Off » 1= »On » |
GPIO16 | OTA pin |
Partie supérieure avec:
-2 bornes d’alimentation en 220v
-2 bornes pour la sortie 220v du relais
– 2 bornes (Masse et GPIO4) pour une entrée ou sortie basse tension
– une pin GPIO16 (OTA*)
– une pin de masse
– un interrupteur poussoir connecté au GPIO0
* La fonction OTA ne semble plus être utilisée.
Partie inférieure offrant la possibilité de se connecter à différents GPIO en y soudant un fil. Cette opération est délicate et peut rebuter certains. Mais suivez mes conseils pour vous faciliter la tâche.
Cablage programmateur
A l’arrière du circuit imprimé on va souder 4 fils pour le programmer avec un adaptateur USB TTL que l’on trouve pour 6€ chez Amazon, Cdiscount, Ebay… Mettre le sélecteur sur 3v3 qui alimentera le SonOff durant la programmation et non le 220v par sécurité.
Pour souder les 4 câbles, fixez le SonOff sur un support avec une pince par exemple. Prendre des fils avec des fiches Dupont mâles. Elles permettent de faciliter le soudage avec la pointe rigide que l’on peut chauffer et l’enveloppe en plastique qui évite de se bruler les doigts.
Attention la sortie TX du SonOff est à raccorder à l’entrée RX de l’adaptateur USB/TTL. L’entrée RX du SonOff se connecte au TX de l’adaptateur.
Programmation ESP EASY FIRMWARE
Allez sur Github pour télécharger la derniere version d’ESP Easy.
https://github.com/letscontrolit/ESPEasy/releases
Extraire le .zip et allez dans le dossier bin chercher la version normale pour ESP8285. Faites en une copie dans le dossier où se trouve le programme de « flashage » FlashESP8266.exe. Le même programme est utilisable pour ESP8285 et ESP8266.
Lancez le programme « FlashESP8266 », sélectionnez le port série sur lequel windows a attaché le port USB de l’adaptateur. Si l’adaptateur n’est pas visible, installez un driver dans windows pour USB / FTDI.
Pour passer le SonOff (ESP ) en mode programmation, il faut rester appuyé sur le bouton poussoir au moment de la mise sous tension en branchant le câble USB. Puis vous lancez la programmation qui prendra une minute environ.
Programmation du WIFI
Redémarrez le SonOff en coupant et en le re-alimentant soit par le 3v3 ou directement par l’entrée 220v (en étant déconnecté de l’adaptateur). A ce moment l’ESP ne sait pas à quel réseau Wifi se connecter, il va passer en mode point d’accès wifi et émettre son propre signal. Ouvrez votre téléphone ou un PC avec un Wifi et recherchez un réseau qui se nomme ESP…., connectez vous à ce réseau. Si un mot de passe est demandé c’est « configesp ». Une page web va s’ouvrir et vous verrez la liste des réseaux wifi autour de chez vous. Sélectionnez votre wifi et donnez le mot de passe de votre réseau. L’ESP va rentrer dans ses paramètres votre Wifi et basculer dessus pour continuer la programmation. Cette opération est délicate et souvent il faut s’y reprendre à plusieurs fois. Pour limiter les déboires, faites cette opération à coté de la box qui émet le signal wifi afin qu’il soit fort et pas trop perturbé par le voisinage. Repérez au moment du basculement sur votre réseau Wifi, l’adresse IP que votre box aura attribué par DHCP à l’ESP. Pour information, l’opération de connexion initiale au signal wifi de l’ESP se fait en général à l’adresse IP: 192.168.4.1. Cela peut aider dans certains cas.
Si vous alimentez le SonOff à partir de l’adaptateur USB / TTL, utilisez un programme de terminal série (ex moniteur Arduino) programmé à 115200 bauds. Il vous afficheras en temps réel le log des actions en cours sur l’ESP.
Pour configurer et programmer le SonOff, des détails sont donnés sur ce post https://f1atb.fr/controle-alimentation-a-distance-avec-sonoff/ qui traite du SonOff basic très similaire.
Sur le site d’ESP Easy https://www.letscontrolit.com/wiki/index.php/ESPEasy une documentation riche explique le fonctionnement et la programmation.
Exemples d’utilisation
Acces directe par le Web
Sans programmation particulière, on peut activer directement le relais connecté au GPIO12
http://<espeasyip>/control?cmd=GPIO,12,1 relais On
http://<espeasyip>/control?cmd=GPIO,12,0 relais Off
Utilisation d’un interrupteur
En plus d’une commande par le web on peut par exemple mettre un interrupteur qui a chaque basculement fera changer l’état du relais.
Créez dans « Devices » 2 devices de type switch.
- Switch input , Name: »relais » et values « etat » sur GPIO12
- switch input, Name: »inter » et values « etat » sur GPIO4
Dans « tools/Advanced » activez l’utilisation des règles de programmation « Rules ». Cela vous permettra d’écrire un petit script.
A chaque changement d’état de l’interrupteur , le relais changera d’état. Par le WIFI on pourra toujours forcer à On ou Off le relais.
Dans une installation domestique, on peut remplacer un système de va-et-vient avec 2 interrupteurs en implantant un SonOff qui reprendra les 2 interrupteurs existants. La liaison étant en basse tension 3.3v, on peut utiliser du fil de téléphone pour relier les interrupteurs entre eux.
Pilotage par Domoticz
Si l’on souhaite piloter le SonOff par un système centrale de domotique comme Dommoticz, il faut créer un « Dummy, Switch » et reprendre les 2 commandes par le web.
IFTTT – Google Home – ALEXA
Si l’on souhaite que le SonOff réponde à une commande vocale passée à une enceinte connecté Google Home ou Alexa il est facile de passer par le service IFTTT (If This Then That) qui se chargera du transfert de la commande.
Homebridge – Google Home – ALEXA
IFTT est une solution facile à mettre en place mais à présent fin 2020 ce service est devenu payant au delà de 3 dispositifs pilotés. Pour contourner cette difficulté on peut utiliser la passerelle « Homebridge ». Il faut sur une machine comme un raspberry installer un serveur Homebridge et le plugin Google Smart Home ou Alexa. On peut utiliser la même machine que Domoticz. Des Tutos sur le web expliquent comment installer l’ensemble. Personnellement je l’utilise avec le plugin Edomoticz qui me permet de contrôler via mes enceintes Google mes nombreux interrupteurs gérés par Domoticz.
SonOff Mini R2
A présent en 2021 une nouvelle version appelée SonOff Mini R2 se trouve sur le marché. Elle perd malheureusement 2 fonctionnalités intéressantes.
– la pin d’accès au GPIO16
– l’antenne WIFI externe
GPIO16
Le retrait de cette pin ne permet plus un branchement simple d’un capteur de température ou de présence. Il faut souder un fil sur un autre GPIO si le GPIO4 d’entrée est déjà pris.
Antenne WIFI
L’antenne wifi externe était un plus car elle garantissait une meilleure réception dans le cas de distance importante avec le point d’accès Wifi. Une comparaison des 2 modèles equipée du firmware EspEasy à montré une baisse de signal RF de -3dB à -10dB.
Premier exemple de mesure avec 3dB d’écart
Deuxième exemple avec 7dB d’écart.
Cette nouvelle version semble avoir été développée pour des raisons de sécurité. Pas de doigt qui traine autour du GPIO16 lorsque le 220v est présent. Pas d’antenne WIFI qui pourrait rentrer en contact électrique avec un fil ayant du 220v.
Bonsoir André. Connaitriez-vous un télérupteur Wifi au format DIN sur lequel on pourrait y injecter le programme ESP Easy svp ? Merci
Non, désolé, je ne connais pas.