Identité : NGC Studio
Type : Article
Support : WordPress
Domaines : Applications, Journalisme, actualités, Maison, Jardin, Maker, Médias, Services, Vidéo, Web
De manière générale, je souhaite utiliser l’automatisation sur les tâches rébarbatives ou chronophages, pour libérer un maximum du “temps humain” à consacrer sur les tâches plus productives. Dans mes projets de maison créative et autonome, la domotique est pour moi l’une des premières brique à developper. Elle permet d’optimiser la sobriété énergétique en gérant automatiquement – et mieux que nous – les énergies, le chauffage, les lumières, les accès… mais également toute une partie de confort et de facilité d’utilisation d’un nombre grandissant d’objets connectés.
Par exemple, lorsque je part de chez moi, je veux :
Ainsi, avec la domotique, une simple pression sur un bouton (ou même un système de détection des présences) fera tout le travail à ma place, sans que j’ai en m’en pré-occuper.
Etant assez sensibles au ambiances lumineuses, ma première problématique a été la gestion des lumières.
Mon premier mot était La Zer (ouais, j’était déjà mauvais en orthographe). Depuis tout petit, j’ai tendance à mettre des lumières un peu partout, à moduler leur allumage selon mes activités, les heures de la journée… Mais dans la pratique, quand il faut faire le tour d’une pièce pour allumer 10 lampes, la flemme nous pousse à les utiliser de moins en moins. Et c’est là que la domotique commence à intervenir 🙂 !
Mes débuts en domotiques remontent à 2013. A l’époque, je n’avais pas encore découvert Jeedom, et il y avait encore peu de périphériques disponibles dans le commerce. Et le peu existant resté trop cher : minimum 80€ pour une prise connectée. Avec Anthony, nous avons alors commencé à developper nous même des solution “DIY“.
Tout d’abord, nous avons eu une approche utilisant des prises télécommandées par radio fréquences. Disponible pour peu cher dans le commerce – environ 30€ les trois prises avec télécommande – assez simple et fiable. A l’aide d’un oscilloscope numérique, nous avons fait de la rétro ingénierie pour décoder les trames de signaux RF. Une fois décryptés, nous pouvions reproduire ces signaux à l’aide d’un Raspberry Pi et d’un émetteur/récepteur RF. Pour la partie soft, une simple interface web pour commander chaque prise. Cette solution a bien marché un moment, le temps de poursuivre nos recherches. Je voyais et sentais le marché commencer à bouger, et je préférai laisser les choses évoluer plutôt que developper une solution incomplète from scratch.
Un petit circuit électronique connectable au Wifi, permettant de piloter des relais, sondes, etc, par des ports GPIO (entrée/sortie). Ces circuits avaient surtout l’avantage de coûter moins de 5€ unité. Pour la communication, il existait bon nombre de protocoles différents, plus ou mon adaptés au objets connectés, tel que le MQTT. Mais par soucis d’accessibilité et de simplicité, et après quelques tests, nous avons choisit d’utiliser le protocole IP classique. Cela sous-entendait d’avoir une couche réseau/wifi correctement gérée, et permettait d’utiliser au minimum 254 objets : largement suffisant et assez réactif :).
Une fois en place, il suffisait d’appeler un URL pour allumer la prise, un autre pour l’éteindre.
Nous avions alors les prises connectées les moins chères du marché !
Venait le temps de trouver quelque chose pour contrôler tout ça avec un peu d’intelligence. Le Raspberry Pi, un mini ordinateur à 30€, tournant sous une distribution de Linux, Raspbian, était une solution serveur évidente. Au moins dans un premier temps.
Au fil du temps, on retrouvait de plus en plus de marques qui proposaient de nombreux objets connectés :
Le soucis de toutes ces solutions, c’est qu’elles sont la plupart du temps propriétaires, incomplètes, chères et difficilement interopérables. Philips, Ikea, Leroy Merlin, Xiaomi, Broadlink, NetGear… des centaines de marques utilisants différents protocoles, qu’il faut gérer sur différentes applications.
Certains géant comme Google, Apple, Amazon, proposent aujoud’hui de rassembler ces différents objets avec leurs propres standards
Google Home, HomeKit, Alexa… Ces outils fonctionnent bien, mais restent souvent fermés, et surtout, ils dépendent d’internet. Et récupèrent éventuellement au passage quelques données sur vos habitudes. Toujours dans l’idée de pouvoir être 100% autonome, c’était inacceptable pour moi. Une coupure d’internet, et vous vous retrouvez bien embêtés pour éteindre vos lumières…. Gênant, même si je simplifie un peu.
Développeur dans l’âme et utilisateur casi systématique de l’open source, je me suis naturellement tourné vers ce genre de solutions. Il en existe un certain nombre, plus ou moins suivis, plus ou moins aboutis, basées sur différents paradigmes. Dans les principaux, on peut citer (sans ordre précis) :
J’ai passé quelques mois à tester différentes solutions.
Certaines m’ont plus plu que d’autres, mais aucunes ne m’a vraiment convaincu avec le cahier des charges que je m’était fixé :
Jusqu’à ce que je teste Jeedom…
La présentation de Jeedom sur leur site reprenais mon cahier des charges casi point par point ! En voilà une bonne nouvelle :). Adapté au Raspberry Pi, l’installation fut facile. Entièrement gratuit, Jeedom propose également un certain nombres de services optionnels payants : DNS, sauvegarde cloud, services Google Home, plugins… Tout ces services peuvent être mis en place soit même, mais cela demande du temps, de payer des serveurs & co. De mon point de vue, je préfère soutenir un minimum la plateforme, et économiser du temps à consacrer à l’implémentation .
OPEN SOURCE
Le logiciel Jeedom est Open Source, vous avez un accès total au logiciel qui gère votre domotique. Ceci est une garantie de transparence, mais également de longévité du logiciel et de votre installation.
AUTONOME
Jeedom ne nécessite pas l’accès à des serveurs extérieurs pour fonctionner. Toute votre installation se gère en local et vous êtes donc les seuls à y avoir accès pour vous garantir une confidentialité complète.
MULTI-PROTOCOLES
Jeedom est compatible avec de nombreux protocoles comme le Z-Wave, EnOcean, KNX, Legrand Bus, RFXcom, RTS, Chacon, Edisio, etc… Le système de plugins, via le Market Jeedom, permet de garantir une compatibilité avec de nombreux protocoles actuels et futurs.
PERSONNALISABLE
Grâce à sa flexibilité et aux nombreux paramètres de personnalisation, chaque utilisateur peut créer sa propre domotique Jeedom. A l’aide des widgets, des vues et des design, vous avez une totale liberté pour imaginer votre propre interface si vous le souhaitez.
J’ai commencé par implémenter et tester le soft dans mon petit studio d’une pièce, sur Raspberry Pi 3. Jeedom est un outil très complet dans lequel il est compliqué de se retrouver au départ. La partie backoffice souffrait de pas mal de défauts d’ergonomie qu’il a fallut apprendre à maitriser, mais chaque mise à jour a apporté son lot de nouveautés et de corrections. Je préfère avoir un outils imparfait mais qui évolue régulièrement grâce à sa communauté. Et avec 4 ans de recul, je peux vous garantir que c’est la cas !
La complexité de l’interface est directement lié à la quantité impressionnante de possibilités qu’il offre.
Ce n’est clairement pas une solution clé en main, mais je me suis vite rendu compte que ça ne tenait pas qu’à l’outil : la domotique, surtout en opensource multi protocole, est une technologie pleine de possibilités et de paradigmes, et donc complexe par définition. Cela justifiait un temps de formation important, avec à la clef des compétences professionnellement exploitables, tant sur la partie software que hardware.
Un studio d’une seule pièce de 20m2. Le développement du projet s’est fait en de nombreuses itérations pour tester différents périphériques et s’assurer de la stabilité du système dans le temps. Le temps passant, on a pu commencer à tester de nouvelles sorties : Xiaomi, BroadLink, Sonoff, des choses sans marques chinées sur AliExpress, etc. Plus le temps passait, plus les mises à jour défilaient, et plus j’ajoutais de nouvelles fonctions (plus où moins par ordre chronologique) :
En 3 ans, quasiment aucuns crash, peu de reboot, pas de perte de données…
PARFAIT ! Je continu toujours de regarder la “concurrence”, mais jusqu’ici je n’ai jamais trouvé d’équivalent aussi complet et packagé. J’était alors rassuré sur l’utilisation à “grande échelle” du système, et avait une idée précise des points pouvant être bloquants : la couche réseau/wifi, et la performance du serveur. Un Raspberry pour une pièce, ça passe, mais je sentais bien qu’il faudrait un poil plus de resources pour gérer plus de pièces.
Nous parlerons de cette maison et ce projet plus en détail dans un article à part :). Nom de code : GuestAlt :). Vous pouvez déjà retrouver une présentation du projet sur la page GuestAlt. En tout cas, enfin l’occasion de déployer nos solutionse grandeur nature !
La première étape a été de déployer un réseau professionnel à l’aide de la solution Ubiquity Unify.
Comme expliqué plus haut, j’ai pris la décision d’utiliser majoritairement le wifi pour connecter mes objets. Cela fera également le sujet d’un article entier, car il y a plein de choses à dire ! Mais dans les faits, plusieurs réseaux wifi (CCTV, IoT, Privé et publique), deux connections internet load balancées (BBox + WiMax), firewall performant, gestion d’utilisateurs, optimisations wifi, table IP personnalisée, etc.
Mon nouveau Jeedom tourne sur un serveur HP microserver gen 8…
… gonflé au Xeon, SSD et 16go de mémoire vive. Comme je le disais plus haut, le Raspberry ne suffisait plus pour tout ce que je voulais intégrer dans ce serveur. Ce serveur fait en effet également tourner un contrôleur Unify (gestion réseau), un Plex (serveur multimédias), et des stacks Docker avec Portainer (développement et services additionnels). La réactivité par rapport au Rp3 est assez bluffante, quasi instantanée, avec un Jeedom qui compte aujourd’hui 1250 commandes.
On utilise aujourd’hui pas mal de choses :
Là aussi, je prendrais le temps de vous faire un détails des périphériques testés et utilisés dans un article dédié, pour que vous puissiez mettre en place votre solution 🙂
– du Xiaomi MiHome pour les interrupteurs, les sondes de température, de mouvement, de porte et de luminosité (une vingtaines de periph)
– des SP3 et SP3s de Broadlink pour les prises connectées, notamment pour une dizaine de radiateurs
– des boitiers compatibles MagicHome pour le contrôle de bandeaux Led RGBW en Wifi
– 12 cameras Ip de différentes marques, n’ayant pas encore trouver THE référence
– 1 serveur OctoPi avec camera pour l’impression 3D
– l’intégration de HomeKit et Google Home
– un Harmony Hub pour gérer vidéo proj, tv, home cinema, etc. Legacy, car aujourd’hui j’utiliserai plutôt un BroadLink : Logitech est à chier sur la partie soft…
– gestion totale du chauffage par le plugin thermostat. J’ai réalisé une économie d’énergie de plus de 30% grâce à cela !
– monitoring des consommations d’énergies avec le plugin du même nom
– monitoring de l’état du réseau… et sans doutes d’autres choses que je zape !
Le fait est que tout le système marche à merveille ! Au fil du temps, je pense developper un ensembles hardware/software qui permettra de mettre en place le système rapidement… Encore un article dédié à prévoir… et c’est pas fini… !
Et il me semble bien que c’est le paradigme choisi par Jeedom ! Pas mal technique pour résumer ça rapidement, mais on y reviendra avec un énième article à part ! Pour les plus avancés : des périphériques virtuels (n’existant que sur Jeedom) représentent l’état de ma maison (l’état des lumières, portes, modes….), et les objets réagissent au changements d’état par le biais de scénarios. Ce fonctionnement est en quelque sorte inspiré du design patern redux, pour les dev du coin.
C’est bien tout l’intérêt de cette solution : elle ne côute pas si chère comparée au autres solutions ! Le fait de pouvoir utiliser différentes marques permet de choisir les périphériques les plus rentables, et de suivre les nouvelles technos qui apparaissent tout les jours !
Mon système au complet (serveur, réseau & objets) coûte moins de 2000€, répartissables dans le temps ! Et encore, j’ai tout de même une maison assez grande remplit de contraintes et d’objectifs professionnels. Vu ma facture électrique, rien qu’avec les économies de chauffage, le tout est rentabilisé en à peine 1,5 ans (ouais, faut dire que 390 m2 à chauffer, c’est pas une paille…), sans compter le gain en confort et praticité !
– gestion d’accès avec badge RFID/keypad sur 4-5 zones
– pilotage d’un DAS light (logiciel pro de pilotage d’éclairage) pour toute ma partie éclairage en DMX (on va faire des show cases, conférences, résidence d’artiste, événementiel…)
– intégration du ZWave (un protocole répandu) pour les projets suivants. On trouve en effet beaucoup plus d’objets utilisant cette techno
– système d’alarme plus poussé
– gestion de panneaux solaires, éoliennes et de batteries
– gestion des consommations d’eau…
3 gros “serveurs” de la société d’un ami qui “minent” de la monnaie virtuelle. 200 teraflop de puissance, qui devraient dégager environs 500m3/h d’air à 30 degrés, h24, et sans payer d’électricité en plus ! Pour l’anecdote, cela représente la puissance de l’ordinateur le plus puissant du monde en 2005. Ceci dit, on est très très loins de la puissance d’autres gros miners. Cette expérimentation me tiens à coeurs, car la consommation “inutile” d’énergie par les cryptomonaie, et plus largement par les serveurs, est un vrai problème. Le fait de récupérer du chauffage ferai drastiquement baisser le coût écologique. Dans mon cas, si tout se passe bien, les miners devraient remplacer entièrement mon chauffage électrique, pour une consommation identique.
Je travail depuis le début d’année avec Axel, un développeur, sur un écosystème complet de gestion d’espace créatif et partagés, qui intègre la domotique comme interphase physique/virtuel. L’idée et d’ajouter tout un tas de modules autonomes et interopérables pour gérer une très large gamme de problématiques : gestion d’espaces, réservations, réseau social interne, wiki, gestion de jardin, de facturation, etc… Tout un tas de services que nous développerons selon les besoins de la GuestAlt House, tout en visant la mise à disposition à grande échelle de ces technos… Je vous laisse deviner… Cela fera l’objet d’au moins un article en plus !
Pas mal d’informations dans ce premier article d’une longue liste ! J’ai essayé de rendre le plus accessible possible mes explications, mais je reconnais que tout n’est pas si simple pour un néophyte ! Les articles suivant permettront de rentrer plus dans le détail et la mise en pratique.
Si vous avez des questions, n’hésitez pas à interagir dans les commentaires !
A bientôt !