Ajouter un interrupteur Sonoff dans Domoticz

Dans Eclairage par Belkeen15 Commentaires

Dans cet article, le but est de vous montrer la procédure standard concernant l’intégration d’un interrupteur Sonoff dans Domoticz. Avant de commencer, il faut que votre interrupteur Sonoff soit impérativement flashé avec ESPeasy, et cela quel que soit le modèle que vous avez choisi :

Aussi, il faut que votre ROM ESPeasy soit configurée.

Un fois ces deux étapes terminées, on peut finalement avancer sur l’intégration de votre Sonoff dans Domoticz.
Cela va se dérouler en deux étapes.

Configuration dans ESPeasy

Votre interrupteur est composé d’un ESP (traditionnellement 8266, mais il y a d’autres modèles), mais aussi d’un relais qui est piloter par ce dernier. Un relais fonctionne comme un interrupteur classique, mis à part, qu’il est, ici, commandé par votre ESP, donc par Wifi (et 433MHz pour le Sonoff RF).

Ceci dit, pour que ESPeasy sache comment commander le relais, il faut lui expliquer. Connectez vous premièrement, via votre navigateur, à l’interface ESPeasy de votre Sonoff.

Ajout des devices

Nous avons 3 devices à ajouter, Submit à la fin de chaque ajout :
Attention : les names et tableau values des devices également sont réutilisés après. Ne pas les modifier.

  • Le bouton de votre boitier (petit et noir pour les Sonoff Basic et RF, et gros et blanc pour le S20)
    • Device : Switch input – Switch
    • Name : Bouton
    • Enabled : coché
    • Internal PullUp : coché
    • Inversed Logic : coché
    • 1st GPIO : GPIO-0 (D3)
    • Switch Type : Switch
    • Switch Button Type : Normal Switch
    • Send Boot state : décoché
    • Send to Controller : décoché
    • Delay : 0
    • Tableau Values Name: Bouton
  • Le relais 220v
    • Device : Switch input – Switch
    • Name : Relais
    • Enabled : coché
    • Internal PullUp : coché
    • Inversed Logic : décoché
    • 1st GPIO : GPIO-12 (D6)
    • Switch Type : Switch
    • Switch Button Type : Normal Switch
    • Send Boot state : décoché
    • Send to Controller : décoché (pour l’instant)Le relai 220v
    • Delay : 0
    • Tableau Values Name: Relais
Sonoff relais
  • La led de votre boitier (Verte pour Basic et RF, Bleu autour du bouton pour le S20)
    • Device : Switch input – Switch
    • Name : Led
    • Enabled : coché
    • Internal PullUp : coché
    • Inversed Logic : décoché
    • 1st GPIO : GPIO-2 (D4)
    • Switch Type : Switch
    • Switch Button Type : Normal Switch
    • Send Boot state : décoché
    • Send to Controller : décoché
    • Delay : 0
    • Tableau Values Name: Led

Vos devices sont configurés.

Ajout des Rules

Il faut, ensuite, expliquer à ESPeasy comment ils interagissent ensembles. Comme vu dans le cahier des charges du projet, nous souhaitons notamment que les actions « physiques » soient conservées dans la solution domotique. Afin de ne pas être esclave d’une connexion réseau ou d’une interface avec la centrale. Ainsi, on souhaite que le bouton de votre boitier fasse office de bouton « On/Off ».
Nous allons donc créer des “Rules”, pour exprimer cela.
Premièrement, il faut les activer dans l’onglet « Tools » et dans le menu “Advanced”.

Sonoff Rules

Deuxièmement, actualiser la page. Ensuite, constater d’un nouvel onglet “Rules” est apparu. Et finalement, copier coller le code suivant :

on Relais#Relais=1 do
  gpio,2,1
  endon
on Relais#Relais=0 do
  gpio,2,0
  endon
on Bouton#Bouton=1 do
  if [Relais#Relais]=0
    gpio,12,1
  else
    gpio,12,0
  endif
endon

Un fois confirmé, vous pouvez donc tester votre bouton. Si vous n’avez pas branché d’appareil sur le Output de votre Sonoff, un clac (le relais) devrait, par conséquent, s’entendre à chaque appui.
Attention, les boutons du Basic et du RF se montrent, des fois, un peu récalcitrant à enregistrer l’appui.

Ajout de votre Sonoff dans Domoticz

Finalement au tour de Domoticz d’apprendre à contrôler votre interrupteur.
On va se rendre, pour cela, dans l’onglet “Réglages”, puis dans le menu “Matériel”.
Si ce n’est pas déjà fait, vous devez, en effet, ajouter un matériel avec la config suivante :

Sonoff dans Domoticz Config Matériel

Une fois le matériel ajouté, vous constaterez donc qu’une nouvelle ligne est apparue dans le tableau en haut de page, avec les informations que vous venez de saisir.

Sonoff dans Domoticz Materiel

Il faut créer un capteur virtuel. Mettez le nom que vous voulez, et aussi “interrupteur” dans le type.

Sonoff dans Domoticz Config dispositif

Vous avez maintenant un nouvel interrupteur qui a apparu dans votre onglet “Interrupteurs”. Facile ! … Cependant, c’est pas fini… Afin que Domoticz envoie des commandes au Sonoff, il faut lui donner le chemin, mais aussi l’action à effectuer. C’est pourquoi nous allons modifier l’interrupteur :

Sonoff dans Domoticz config Actions

Dans les deux lignes action ON et OFF, nous allons donc ajouter des commandes qui se construisent de la manière suivante :

  • Action ON : http://[adresseIpSonoff]/control?cmd=GPIO,12,1
  • Action OFF : http://[adresseIpSonoff]/control?cmd=GPIO,12,0

Expliquons ces lignes. Votre Sonoff a un mini serveur Web (interface ESPeasy), et est en conséquence capable de recevoir des requètes. Ainsi, nous lui demandons de passer le GPIO 12 soit à 1 ou 0. GPIO 12, qui est celui qui commande le relais.

Il reste ensuite une dernière étape.

Le retour de l’état

Afin que Domoticz soit capable de connaitre l’état de votre relais (ON ou OFF), le serveur attribue un identifiant IDX à votre dispositif. Pour le connaitre, il faut se rendre dans l’onglet “Réglages” et le menu “Dispositifs”. Puis dans le tableau l’interrupteur qui vus interesse et regarder le chiffre de la première colonne.

Il ne reste plus qu’à retourner sur votre Sonoff, et sur le Device du relais :

Ainsi, même si vous utilisez un interrupteur 433MHz ou que vous appuyez sur le bouton du boitier, Domoticz recevra la nouvelle valeur de votre relais en direct.

La config de votre Sonoff dans Domoticz est terminée.

Ne vous arrêtez pas là, et consultez nos autres guides qui sont en relation avec celui-ci :

Commentaires

  1. Merci pour ce tuto très détaillé
    Une petite erreur que empêche le bouton de fonctionner.
    Il faut bien nommer Relais avec un “S” à la fin dans tous les champs de la config
    Si le nom dans ESP easy et dans Domoticz n’est pas strictement identique, ça ne fonctionne pas …

    1. Author

      Merci Urbann pour l’alerte.
      Il y a effectivement une erreur sur la capture d’écran, il manque un “s” au mot relais. On corrige ça dès qu’on peut.

  2. Bonjour, merci encore pour ce tuto des plus clairs, qui m’a permis de mettre en place mes premiers Sonoff flashés.

    Seulement, je n’ai aucun modification du retour d’état dans domoticz… si les sonoff sont actionnés manuellement.

    Il y a-t-il un point à vérifier ?

    Et meilleurs voeux !!!

    1. Author

      Bonjour Eric,

      Es-tu sur de ta configuration de ton Sonoff flashé ?
      Normalement, les IdX des différents devices de ton Sonoff servent justement à faire le retour d’état dans Domoticz.
      Désolé pour la réponse tardive, si tu n’as pas trouvé, n’hésite pas à nous le faire savoir.

      1. Bonsoir Belkeen,

        Oui, je suis bien sûr de ma configuration de mes sonoff flashé.
        Tous mes sonoff sont bien commandés par Domoticz, mais si j’actionne un sonoff manuellement, pas de retour d’état dans Domoticz.
        l’IDX de chacun de mes sensors est bien renseigné dans esp-easy de chacun de mes devices.
        Malheureusement, j’ai le même problème pour le retour d’état de ma DHT22 raccordé sur un Wemos flashé.
        L’ESP lit bien les valeurs T°C et Humidité, est bien enable, mais rien n’arrive dans Domoticz…
        J’ai renseigné « réseaux locaux » dans paramètres de domoticz, pensant que ça venait de là, mais non.

      2. C’est bon je viens de trouver… Dans controller, l’adresse IP du serveur domoticz n’était pas renseigné….
        Dans tous les cas, merci pour tous ces partages d’information !!!

        1. Author

          Bien ! Le principal c’est d’avoir trouvé. Tu vas pouvoir profiter de tout tes ESPeasy !

  3. Bonjour,

    Enfin un guide clair et précis pour les novices comme moi. J’ai pu poursuivre une installation débutée il y a peu et je vais pouvoir la généraliser et l’achever.

    Merci aussi pour l’aide via facebook 😉

    1. Author

      Merci pour ce commentaire ! ça fait plaisir !!
      ça a été un plaisir de pouvoir t’aider dans l’utilisation de ton matériel… exotique dirons nous. 🙂
      Comme vu ensemble, on exclut pas l’idée de faire un article dessus prochainement. C’est ça aussi l’objectif de ce blog.

      On reste à ta dispo si tu as besoin d’aide dans ta future intégration.

  4. Bonsoir,
    Je reviens vers vous car je voudrai sajouter des rules car de temps en temps mon boitier raspberry flanche…
    Je dois changer le disque dur SSD en USB par une carte SD + clé USB.

    En attendant j’ai une prise flashée par votre aide .
    Mais au niveau des rules celle ci ne focntionne pas :
    Pouvez vous me dire ce qui bloque ?
    je veux que la prise soit à On pendant 5 minutes à 23:00

    on clock#Time=All,23:00 do
    gpio,5,1 // met en route la pompe
    timerSet 1,300 // durant 5 minutes
    endon

    on Rules#Timer=1 do
    gpio,5,0 // arrete la pompe
    endon

    Merci

    1. Author

      Bonjour Puzzle,

      Je t’avoue pas savoir si le code des Rules est sensible à la casse (majuscule/minuscule en particulier). Je me suis permis de refaire ton code pour que tu le testes.

      On Clock#Time=All,23:00 do
      gpio,5,1
      timerSet 1,300 // durant 5 minutes
      endon

      On Rules#Timer=1 do
      gpio,5,0
      endon

      Si ça ne fonctionne toujours pas, je me pose une autre question : Mes Sonoff ne sont pas sur le réseau “internet”, et donc n’ont pas accès à l’heure. Est-ce le cas pour toi aussi ? Parce que dans ce cadre, il ne pourra jamais se déclencher à 23:00.

      J’espère avoir pu t’aider.

      1. Merci !
        Ils ont accès à Internet, j’ai réglé le NTP.
        Cependant je ne comprends pas pourquoi ca n’a pas fonctionné…
        Je poursuis mes recherches.
        Merci encore !

        1. Author

          Je vais tenter aussi de mon coté, et je te dirais ce que je trouve.
          Hésite pas à revenir nous dire si tu as trouvé une solution.

          1. Ce n’est pas grave, j’ai contourné cet élément avec un scénario dans domoticz pour mettre en route et couper la prise.
            Je vais voir maintenant pour résoudre le souci que j’avais avec le bouton qui était inactif sur les SWA1.
            J’ai eu une réponse (https://nathan.chantrell.net/20170528/lingan-swa1-plug-in-wi-fi-socket-with-mqtt-esp8266)
            qui me précise que le bouton es bien le GPIO0. Cependant je suppose que désormais il faut une règle, rule, pour gérér cette action.
            Merci

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.