Depuis que j'ai commencé à m'intéresser à la domotique, ce sont les interrupteurs qui m'embêtent le plus. Comment continuer à utiliser un interrupteur lorsque l'on a une ampoule connectée ?
Le plus simple serait en fait de domotiser l'interrupteur au lieu de l'ampoule.
Pour ça, l'utilisation d'un micro-module variateur est nécessaire. Variateur tout simplement parce que ce sont les seuls modules qui n'ont pas besoin de neutre pour fonctionner. En France, la plupart des interrupteurs n'ont que deux fils (la phase et celui qui va vers l'ampoule), et uniquement un micro-module variateur permet ce branchement.
Dans le cas ou l'ampoule associée est une ampoule LED, qui a généralement une très faible consommation, il peut être nécessaire de compléter l'installation par l'ajout d'un bypass pour éviter, à cause du courant résiduel, un effet de scintillement sur la lampe.
Et parce que sinon c'est pas très joli, il faudra également penser à remplacer l'interrupteur par un interrupteur poussoir.
J'ai regardé ce qui se faisait en Z-Wave, mais le prix m'a très vite calmé. Les modules Fibaro ou Qubino qui sont les plus connus et visiblement les plus fiables sont à 60€ pièce. Un bypass à ~10€ et un interrupteur poussoir pas trop dégueulasse et on approche les 80€ pour domotiser un interrupteur... Dans mon cas, j'en avais 8 à domotiser soit 640€ (!).
Un peu plus low-cost, il existe des micro-module en 433Mhz. Il est toujours nécessaire de rajouter un bypass (ou bipasse chez DI-O) et de changer l'interrupteur. Cette fois, on est en dessous des 50€. Mais avec un module en 433Mhz, j'aurai perdu le retour d'état.
De façon générale, cela implique aussi de caser un micro-module dans une boite d'encastrement et de devoir tout démonter et tout couper électriquement lorsque l'on doit changer la pile.
Un interrupteur en ZigBee
Si j'ai choisi le ZigBee, c'est aussi pour la fonctionnalité de binding dont je parlais dans le précédent post. ZigBee2MQTT supporte cette fonctionnalité et en parle plutôt bien dans sa documentation.
Pour résumer, cela permet à deux équipements, typiquement une télécommande et une ampoule, de communiquer ensemble sans passer par un contrôleur (ma clé ZigBee2MQTT, ou un pont propriétaire). L'ampoule reste contrôlable depuis le controleur.
Ne trouvant pas d'interrupteurs ZigBee à la fois abordable et compatible binding, mon choix s'est porté sur une solution maison basé sur la télécommande/bouton IKEA E1743 fournie en kit avec une prise connectée.
Cette télécommande est parfaitement compatible binding et ne coûte seulement que 13€. En bonus, j'aurai une prise électrique que je pourrais utiliser en remplacement de mes prises 433Mhz.
Je suis d'accord qu'à première vue ça ne ressemble pas à un interrupteur, c'est beaucoup trop petit (45x45 mm). J'ai du coup deux options :
- Remplacer l'interrupteur actuel par un obturateur et coller dessus la télécommande IKEA. Simple, rapide et pas cher à mettre en place, mais peu de chance que ça passe le WAF (et à vrai dire, je ne suis même pas sûr que ça passe mon propre facteur d'acceptation).
- Incorporer la télécommande IKEA dans un support à caser par dessus l'interrupteur existant (à voir si on garde une partie de l'interrupteur, ou si on le remplace par un domino). Il existe déjà des choses similaires pour la télécommande Philips Hue (mais je trouve cette télécommande personnellement trop grande) mais rien pour la télécommande IKEA.
Prototype
Un des prochains achats prévu après mon déménagement est celui d'une imprimante 3D. Imprimer un support pour la télécommande IKEA me semblait donc être un bon moyen de débuter en impression 3D.
Comme je ne voulais pas attendre d'avoir une imprimante 3D, j'ai fait imprimer ce prototype sur PIY3D (pour un peu plus de 20€) et j'ai été agréablement surpris du résultat. J'ai quand même fait deux erreurs :
- Le support est un peu petit pour y caser la télécommande. J'ai du gratter un peu à l'intérieur (en mode bourrin avec un cutter...) pour que la télécommande rentre
- Les trous pour les vis sont un peu petits, mais sont surtout parfaitement alignés... contrairement à ma boite d'encastrement.
Le résultat final m'a en tout cas convaincu et a, bonne nouvelle, passé le WAF !
J'ai commencé à travailler sur une nouvelle version du support que je partagerai dans un prochain article.
Le support devrait être en deux parties : une partie inférieure qui sera vissée dans la boite d'encastrement et une partie supérieure qui sera clipsée par dessus permettant de masquer les vis.
Mise en place du binding
Il est nécessaire de commencer par créer un groupe. C'est à ce groupe qu'on bindera notre interrupteur. Il est tout à fait possible de binder l'interrupteur directement à une ampoule/prise, mais on gagne un peu plus de souplesse avec un groupe.
$ mosquitto_pub -t "zigbee2mqtt/bridge/config/add_group" -h localhost -m "group_ampoules_couloir"
Par défaut le groupe créé aura l'ID 1. Cet ID peut être changé en modifiant le fichier de configuration ZigBee2MQTT et en redémarrant.
J'ajoute ensuite mes ampoules à mon groupe :
mosquitto_pub -t "zigbee2mqtt/bridge/group/group_ampoules_couloir/add" -h localhost -m 'ampoule_couloir_1'
mosquitto_pub -t "zigbee2mqtt/bridge/group/group_ampoules_couloir/add" -h localhost -m 'ampoule_couloir_2'
Puis je bind l'interrupteur au groupe :
mosquitto_pub -t "zigbee2mqtt/bridge/bind/interrupteur_couloir" -h localhost -m "group_ampoules_couloir"
Sur les vieilles versions (< 1.4) de ZigBee2MQTT, il était nécessaire de unbinder l'interrupteur du groupe 99 (qui était le groupe par défaut) avant toute opération. Pensez à mettre à jour si ça ne fonctionne pas.
Dans le prochain et dernier article, on verra plus en détails le support 3D réalisé.