Ma domotique avec Jeedom
Identité : NGC Studio
Type : Article
Support : WordPress

Créateurs impliqués

Ma domotique avec Jeedom

Voilà maintenant plusieurs années que j’investis du temps dans la domotique et les technologies de la “maison intelligente”.

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 :

  • que le chauffage baisse
  • que toutes mes lumières s’éteignent
  • que mes périphériques multimédias se mettent en veille
  • que mon alarme s’active et que mes portes se verrouillent
  • que mes cameras de surveillances détectent les éventuels mouvements et m’envoi les images
  • etc…

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 🙂 !

Solution #0 : Les prémisses

studio-lights.jpg

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“.

Radio fréquences

diy-rf-antenna-150x150.jpg

diy-rf-circuit-150x150.jpg

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.

diy-rf-retro-inge-150x150.jpg

Nous avons ensuite découvert les ESP8266

nodeMCU-ESP8266-150x150.jpg

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 LinuxRaspbian, était une solution serveur évidente. Au moins dans un premier temps.

Solution #1 : Les solutions propriétaires

Au fil du temps, on retrouvait de plus en plus de marques qui proposaient de nombreux objets connectés :

  • lampes, colorées ou non
  • prisesinterrupteurs
  • sondes température, humidité… ou station météo
  • caméras de surveillance
  • différents détecteurs (mouvement, ouverture de porte/fenêtre, fuite d’eau…
  • Assistants vocaux (Siri, Google Home, Alexa…)
  • etc

Le soucis de toutes ces solutions, c’est qu’elles sont la plupart du temps propriétaires, incomplètes, chères et difficilement interopérablesPhilips, 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.

Solution #2 : Les solutions open source

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) :

  • Domoticz
  • OpenHab
  • Home Assistant
  • Yadoms
  • HoMIDoM
  • Eedomus
  • Vera
  • Calaos

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é :

  • Gestion d’utilisateurs
  • Prise en charge d’un maximum de protocoles
  • Une communauté large et active
  • Une interface personnalisable
  • Un code et une stack technologique stable
  • Un système de plugins permettant de développer les fonctionnalités soit même, ou ajoutées par un “store
  • Déployable facilement
  • Compatible avec HomeKit (Apple), Google Home et Alexa (Amazon)
  • Fiable et réactif
  • Prenant en charge la notion de scénarios et d’interactions
  • Gratuit dans sa base
  • Multiplateformes
  • 100% autonome (fonctionnant en local, sans internet)

Jusqu’à ce que je teste Jeedom

Jeedom

logo-jeedom.png

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’utilise Jeedom depuis maintenant plus de 4 ans.

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.

Phase 1 : 3 ans de test dans mon ancien studio

12031622_102266076795546_1509313316085060319_o.jpg

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) :

  • contrôle des lumières avec des ESP8266
  • contrôle du multimédias à l’aide d’un Harmony Hub pour la partie infrarouge (IR) : ampli home cinéma, écran motorisé, vidéo projecteur, télé, aération…
  • contrôle de bandeaux led, à l’époque simplement par IR
  • scénarios manuels : mode cinema, mode nuit, mode présent, ambiance jour, nuit, etc
  • ajout de caméras de surveillance
  • ajout de capteurs : température, humidité, ouverture de porte
  • scénarios automatiques et réactif : envoyer une image d’une caméra à l’ouverture de la boite au lettre, changement de couleurs selon les heures de la journée, alarme à la détection de mouvement en mode absence…
  • ajout de boutons physiques pour interagir avec Jeedom et le rendre accessibles à tous les utilisateurs de la maison
  • monitoring des consommations d’énergies
  • interactions avec Telegram : envoyer “Puis-je me garer ?” m’envoyais une photo des places de parking devant chez moi, réception des images des caméras, “Qui est à la maison ?“, etc…
  • création de design (tableaux de bord personnalisés)
  • accès à distance
  • etc…

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.

jeedom-old-design.jpg

Phase 2 : tests grandeur nature

studio-salle.jpg

Il y a 6 mois, j’ai investi dans un grand studio photo (12-13 pièces), qui me sert également de maison

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 !

Réseau(x)

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’utilisateursoptimisations wifi, table IP personnalisée, etc.

Serveur

Mon nouveau Jeedom tourne sur un serveur HP microserver gen 8…

… gonflé au XeonSSD 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 bluffantequasi instantanée, avec un Jeedom qui compte aujourd’hui 1250 commandes.

HP-microserver-gen-8-back-150x150.jpg

HP-microserver-gen-8-in-150x150.jpg

HP-microserver-gen-8-slots-150x150.jpg

HP-microserver-gen-8-150x150.jpg

Périphériques

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… !

jeedom-design-temperatures-150x150.jpg

jeedom-design-lumie%CC%80res-150x150.jpg

jeedom-design-energies-150x150.jpg

jeedom-design-cameras-150x150.jpg

Utilisation

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.

Et les coûts dans tout ça ?!

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é !

Phase 3 : montée en charge

Quelques projets à venir :

– 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…

Un projet novateur : l’expérimentation d’un chauffage par miners de cryptomonnaies

miners.jpeg

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.

Un projet long terme

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 !

Conclusion

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.

Ce qu’il faut retenir :

  • Jeedom est un environnement domotique completperformant, et gratuit
  • Les objets connectés utilisent une multitude de protocoles, propriétaire ou non, et se développent très vite
  • Il est possible de fabriquer soit même pas mal d’objets connectés, pour peu que l’on soit un peu bricoleur
  • Il est nécessaire de prévoir une infrastructure solide sur laquelle faire reposer son système
  • La mise en place d’une solution domotique ne coûte pas forcement chère
  • Il faut bookmarker ce site pour en apprendre plus 😉 !

Si vous avez des questions, n’hésitez pas à interagir dans les commentaires !

A bientôt !