Pour commander manuellement trois lampes du salon connectées à des commutateurs WiFi Sonoff par ITEAD, j'utilise une télécommande HR12A PalmPad avec l'interface CM19A de X10 branché au Raspberry Pi qui accueille le logiciel de domotique Domoticz. Dans ce billet, je montre comment installer le service Mochad, comment l'intégrer au logiciel de domotique en présentant deux façons de contrôler le commutateur WiFi qui utilise le protocole MQTT.
Ceci est une continuation du billet précédent où j'ai soutenu qu'il est le plus souvent nécessaire de fournir un moyen local pour allumer et éteindre les lampes connectées aux commutateurs WiFi Sonoff. Il y a une légère différence parce que précédemment, j'ai ajouté des interrupteurs qui contrôlent directement l'état du relais du de deux Sonoff. Ici, je décris une façon d'utiliser les Sonoff qui exige que le serveur Domoticz soit en cours d'exécution. Cela peut ne pas être acceptable dans certaines circonstances.
Table des matières
- Autre matériel
- Installation du service Mochad sur un Raspberry Pi
- Installation du matériel Mochad dans Domoticz
- Connectez-vous à la page Web de Domoticz à l'adresse
http://192.168.0.22:8080
. - Cliquez sur l'onglet Setup.
- Cliquez sur dans le menu déroulant.
- Remplissez les champs pour définir le matériel.
- Sélectionnez
Mochad CM15Pro/CM19A bridge with LAN interface
dans la liste déroulante duType
. - Donnez un nom évocateur au matériel,
Mochad
semblait être un choix évident. - Spécifiez l'adresse et le port utilisés par le service
Mochad. Ici ces valeurs sont
192.168.0.22
et1099
, mais j'ai préféré l'adresse127.0.0.1:1099
. Si jamais une adresse Ethernet différente était affectée au Raspberry Pi, il ne sera pas nécessaire d'ajuster ces champs.
- Sélectionnez
- Cliquez sur le bouton .
- Ajout d'un commutateur virtuel caché
- Cliquez sur l'onglet Switches.
- Cliquez sur le bouton en haut à droite de la page pour installer automatiquement un dispositif.
- Cliquez sur le bouton sur la télécommande associée à la lampe lorsque Domoticz affiche une invitation à appuyer sur la touche de la télécommande .... Soyez rapide, vous n'avez que quelques secondes pour appuyer sur ce bouton. Bien sûr, vous pouvez cliquer sur à nouveau et réessayer aussi souvent que vous le souhaitez.
- Remplissez les champs lorsque Domoticz affiche
une invite demandant un nom unique pour le dispositif et son type.
J'ai choisiTest Switch Remote
comme nom etOn/Off
comme type de commutateur. - Cliquez sur le bouton
Test Switch Remote
.
du nouveau
dispositif virtuel nommé - Entrer
"
http://192.168.0.22:8080/json.htm?type=command¶m=udevice&idx=1&nvalue=1
" dans le champs On Action. Notez comment la valeuridx=1
correspond à l'index du commutateur virtuel de test du commutateur virtuelTest Switch
qui contrôle le commutateur Sonoff par MQTT. - Entrer
"
http://192.168.0.22:8080/json.htm?type=command¶m=udevice&idx=1&nvalue=0
" dans le champs Off Action. Comme ci-dessus, la valeuridx=1
correspond au commutateur virtuelTest Switch
. - Cliquez sur le bouton
- Cliquez sur le bouton
- Trop compliqué pour rien ?
- Inutile de créer le dispositif virtuel
Test Switch
dans le matérielVirtual dummy hardware
comme indiqué dans MQTT avec Domoticz. D'ailleurs, il n'était pas nécessaire d'ajouter le matérielVirtual dummy hardware
en premier lieu. Il faut cependant activer MQTT dans Domoticz tel qu'expliqué ici. - Installer
Mochad
sur le Raspberry Pi et dans Domoticz comme expliqué ci-dessus aux sections 2 Installation du service Mochad sur un Raspberry Pi et 3 Installation du matériel Mochad dans Domoticz. - Ajoutez un dispositif couplé avec le bouton de la télécommande
comme indiqué aux étapes 1 à 4 de la section précédente intitulée
Ajout d'un commutateur virtuel
caché, mais ne le cachez pas. En d'autres termes, donnez-lui un nom final
(tel que
Test Switch
pour continuer avec cet exemple) qui ne commence pas par un signe de dollar. - Recherchez l'index du commutateur (
idx
) dans la liste des dispositifs. - Utilisez cet index dans configuration du commutateur Sonoff.
Alors que je décris l'utilisation de l'interface CM19A ci-dessous, je suis plutôt sûr que l'interface CM15A ActiveHome Pro pourrait être utilisé à sa place pour recevoir la transmission sans fil de la télécommande. Je ne peux pas être positif parce que, comme je l'ai mentionné précédemment, la partie RF du CM15A que j'ai acheté chez X10 était défectueuse.
En ce qui concerne la télécommande, un ou des dispositifs parmi la liste suivante devraient fonctionner.
HR12A (or PHR03) PalmPad Remote Control (photo),
KR19A (or PHR04) Keychain Remote Control,
KR22A CreditCard Thin Remote Control,
SS13A (or PHW04D) Slimline Switch Decorator White.
La combinaison du service Mochad et du serveur Domoticz peut également être utilisée pour la détection de mouvement avec le capteur de mouvement sans fil ActiveEye MS16A (ou PMS03). Les détails sont donnés ailleurs.
Cette installation a été effectuée sur un Raspberry Pi 3. Il n'y a aucune raison pour laquelle elle ne fonctionnerait pas sur un plus vieux modèle du Raspberry Pi. En fait, l'installation originale a été faite sur un Modèle B+ du Raspberry Pi sans aucun problème. Il se peut très bien que j'installe le CM19A sur un Raspberry Pi Modèle B lorsque je supprimerai tous les appareils X10 de mon réseau domotique.
N'installez pas la "dernière" version de Mochad
disponible chez Sourceforge car le logiciel fourni a des problèmes dans Raspian
Jessie. Pour une raison quelconque, Sourceforge fourni actuellement la version
0.1.16 de Mochad même si la version 0.1.17 est disponible depuis déjà plusieurs
mois (vérifié le 18 juin 2017). Ce qui suit montre comment installer cette
version ultérieure. Cependant, vous devriez vérifier si une version encore plus
récente a été créée :
https://sourceforge.net/projects/mochad/files/ et ajuster le
commandement wget
en conséquence.
Vérifiez qu'initialement, le service Mochad ne fonctionne pas, mais qu'il devient actif lorsque l'interface CM19A est branchée dans le Raspberry Pi avec un câble USB.
Testez maintenant que la passerelle peut recevoir les messages d'une télécommande comme le PalmPad HR12A de X10. La première étape dans cette vérification consiste à se connecter au service span class="tm">Mochad sur le port 1099 du Raspberry Pi avec Netcat> pour écouter les communications avec le CM19A. Ensuite, appuyez sur des boutons de la télécommande, le service doit signaler quels boutons ont été enfoncés:
Domoticz prend en charge le matériel Mochad. Cette installation ne se fait qu'une seule fois.
Le matériel ajouté devrait alors être visible dans le tableau en haut de la page.
Si l'interface CM19A ou CM15A devait être un élément permanent d'un système de domotique, veuillez lire la section suivante Trop compliqué pour rien? avant de suivre les instructions ci-dessous.
Les commutateurs virtuels dans la base de données Domoticz sont déjà associés aux commutateurs Sonoff (pour plus de
détails, voir MQTT avec Domoticz). Rappelons que le premier de ces commutateurs
virtuels s'appelait Test Switch
. Nous allons maintenant ajouter un
commutateur caché associé à un bouton de la télécommande X10 pour contrôler
le dispositif virtuel (en fait, cela n'a pas
d'importance si un Sonoff a été reprogrammé, installé et lié au dispositif
virtuel, tout ce qui compte, c'est que ce dernier ait été ajouté
à la base de données).
Voici comment ajouter un nouveau dispositif virtuel associé à une paire de boutons marche/arrêt de la télécommande X10 dans Domoticz>
J'ai essayé 'localhost' et '127.0.0.1' au lieu de l'adresse IP fixe
192.168.0.22
dans les champs On Action
et
Off Action
, mais cela n'a pas fonctionné.
S'il n'y a pas de télécommande à portée de main lors de l'étape 3 ci-dessus,
alors connectez-vous au service Mochad avec
netcat
et préparez la commande qui correspond au bouton de
la télécommande, mais attendez avant d'appuyer sur la touche Entrée jusqu'à ce que soit affiché l'invite à appuyer sur le
bouton le bouton de la télécommande:
Testez que le matériel s'active et se désactive et que les icônes des
dispositifs Test Switch Remote
et Test Switch
reflètent l'état du commutateur lorsque la télécommande est utilisée.
Si tout fonctionne, placez le signe "$" devant le nom de Test
Switch Remote
qui cachera le dispositif dans l'onglet
. Pour le rendre visible,
changez de nouveau le nom, en supprimant le "$", mais dans la liste des
dispositifs.
Certains pourraient faire valoir que ce qui précède est trop compliqué. En effet, on peut faire plus simple en suivant les étapes énumérées ci-dessous.
Je crois que tout fonctionnera : l'icône de l'ampoule suivra l'état de l'interrupteur physique alors qu'il est allumé et éteint avec son bouton-poussoir ou avec la télécommande. Et le commutateur physique s'allume et s'éteint en réponse au fait de cliquer sur l'icône de l'ampoule dans Domoticz.
S'il s'agit d'une utilisation permanente des télécommandes X10 avec l'interface CM19A, je pense que cette dernière approche serait la voie à suivre. Mais, rappelez-vous, je me débarrasse de toutes les choses X10. Il sera simple de supprimer le commutateur virtuel caché lorsque le moment viendra sans perturber le reste du réseau domotique. Si j'utilisais l'approche plus simple, je perdrais les plannings, les notifications, etc. associés à l'interrupteur factice virtuel travaillant exclusivement avec MQTT.