Guide: Utilisation de Homebridge avec Jeedom

couverture

Le but de ce guide est de vous présenter et vous accompagner lors de l’installation et la configuration de Homebridge sur Jeedom.

1. Qu’est ce que Homebridge ?

A. Présentation

Homebridge (https://github.com/nfarina/homebridge) est un programme open-source, développé en NodeJS, permettant de simuler des équipements compatibles Homekit d’Apple. Il a été développé en « reverse-engineering », c’est à dire en observant les trames issues d’équipements officiellement compatibles Homekit afin d’en déduire le mode de fonctionnement et pouvoir simuler le même comportement sur un équipement non compatible Homekit.

Homebridge fonctionne avec des plugins, en fonction des équipements que l’on souhaite contrôler.
Les plugins peuvent être de 2 types différents :

  • Accessories : Permet d’associer des équipements individuels. C’est le cas par exemple du plugin Sonos où il est nécessaire de configurer chaque enceinte individuellement.
    Ce type de fonctionnement est adapté aux objets connectés mais pas aux boxs domotiques qui peuvent avoir plusieurs dizaines de capteurs/actionneurs associés. Le temps de paramètrage serait colossale !
  • Platform : Permet d’associer une plateforme complète à Homebridge. Dans ce cas là, c’est la plateforme qui se charge de générer la configuration de tous les accessories.

B. Limitations

Homebridge comporte quelques limitations :

  • Toutes les dernières compatibilités Homekit n’ont pas encore été ajoutées. Par exemple, lors de la présentation de iOS10 la compatibilité avec les caméras IP a été annoncée, celle-ci n’est pas encore disponible via homekit.
  • Homebridge n’a pas la possibilité de créer des pièces sur les applications mobiles compatibles. Cette limitation n’est pas due à Homebridge directement mais au SDK de Homekit qui ne gère pas les pièces de façon « centralisée ». Chaque application compatible Homekit doit gérer les pièces elle-même.
  • Le nombre d’accessoires est limité à 99. De la même façon, cette limite n’est pas dans Homebridge mais dans Homekit. Cependant il est possible de contourner un peu cette limitation car chaque accessoire a un nombre illimité de fonctions. On peut donc regrouper certaines choses afin de ne pas atteindre la limite.
  • L’accès distant se fait obligatoirement via un appleTV 4 ou un iPad sous iOS10 configuré en tant que pont Homekit.

2. Installation & configuration

A. Installation du plugin Mobile

Afin d’utiliser Homebridge, vous devrez d’en un premier temps installer le plugin Mobile.
En effet, c’est à l’aide de celui-ci que nous allons configurer le plugin Jeedom de Homebridge ainsi que configurer les équipements.

Comme pour tous les plugins, vous devez vous rendre dans le menu « Plugins » => « Gestion des plugins » puis cliquer sur « Ajout depuis le Market ».

homebridge1

Recherchez le plugin « App Mobile » puis cliquez sur « Installer Stable ».

homebridge2

Une fois le plugin installé, vous devrez configurer au moins un équipement iOS dessus afin d’accéder à la configuration Homebridge.

homebridge3

B. Installation des dépendances

Si vous avez bien suivi les étapes précédentes, vous devriez vous retrouver sur une page semblable à celle-ci lorsque vous cliquez sur « Configuration ».

homebridge4

A ce moment là, il est nécessaire d’installer les dépendances : c’est à dire Homebridge ainsi que son plugin Homebridge-Jeedom. Pour se faire, cliquez sur le bouton « Relancer » dans la partie « Dépendances Homebridge ».

L’installation dure quelques minutes.

C. Configuration de Homebridge

Il y a peu de paramètrage pour Homebridge, les options possibles sont :

  • Vider le cache : Permet de supprimer le cache de Homebridge ainsi que les accessoires déjà découverts. Attention, le vidage du cache implique la reconfiguration des applications mobiles Homekit car les accessoires changent du coup d’ID.
  • Regénerer le fichier de configuration  : Ce bouton permet de générer le fichier de configuration pour homekit. Il est nécessaire de l’utiliser quand on change l’adresse IP de la box ou lorsque l’on modifie le code PIN de Homebridge.
  • PIN Homebridge : Permet de modifier le code PIN de Homebridge. Ce code est demandé lors de l’ajout de la plateforme.
    Attention, il est nécessaire de regénerer le fichier de configuration après avoir sauvegardé.

homebridge5

D. Configuration des équipements

Par défaut, Jeedom envoie tous ses équipements à Homebridge. Il est cependant possible de choisir uniquement les équipements que vous souhaitez.

Vous pouvez sélectionner les équipements, soit par plugin, soit par pièce, directement dans le plugin App Mobile.

homebridge6

3.Utilisation

Votre passerelle Homebridge étant configurée et opérationnelle, il est désormais temps d’utiliser celle-ci avec une application compatible. Il existe sur l’AppStore de plus en plus d’applications compatibles. La plus connue et la plus complète est l’application Eve d’Elgato.

A. L’application Elgato Eve

Pour les personnes ne disposant pas encore d’appareil sous iOS 10, cette application est une excellente alternative à celle d’Apple. Elle va même encore plus loin car elle reconnait certaines infos qui existent dans Homekit mais pas encore dans l’application d’Apple comme par exemple, la consommation éléctrique, la gestion des batteries des équipements….)

IMG_0276  IMG_0277

B. L’application Domicile

L’application Domicile d’Apple sera intégrée directement dans la future version d’iOS, iOS10. Elle est actuellement en beta et subit encore des modifications à chaque nouvelle beta d’Apple.

IMG_0273 IMG_0274

Son utilisation est très simple et elle est intégrée directement dans le nouveau centre de contrôle d’iOS 10.

IMG_0272
De plus, si vous disposez à votre domicile d’un Apple TV 4 ou d’un iPad configuré en tant que pont, vous pourrez configurer rapidement quelques scénarios simples directement sur l’application. Attention : ces scénarios n’apparaitront pas dans Jeedom, ils seront propres à Homekit.

IMG_0275

C. Siri & les notifications

Que ce soit sous iOS9 ou iOS10, il est tout à fait possible de contrôler Homebridge à la voix grâce à Siri.
Les commandes peuvent être des actions (« Ouvre le volet du salon à 30% » par exemple) ou des informations (« les fenêtres de la maison sont-elles fermées ? » par exemple).

homekit9

Les notifications intégrées dans Homekit se limitent pour l’instant aux alarmes.

IMG_0278

4. Problèmes connus

  • Si vous rencontrez dans les logs d’installation, ce type d’erreur : Error: Module version mismatch. Expected 47, got 48. Cela est surement dû à une installation précédente de Homebridge avec une version de NodeJS non compatible. La solution est de supprimer d’abord complètement Homebridge via ces commandes en ssh puis après le redémarrage, relancer l’installation des dépendances :
    • sudo npm rm -g homebridge
    • sudo npm rebuild
    • sudo apt-get update
    • sudo reboot
  • Domicile ou Elgato Eve ne voit pas la plateforme Jeedom. Si après redémarrage de l’appareil mobile, la plateforme Jeedom n’est toujours pas visible, il sera nécessaire de vider le cache dans la page de configuration et de relancer Homebridge.
  • Homebridge se base sur l’état d’un équipement pour lancer la commande (par ex: si lampe est sur ON alors on envoie l’ordre OFF). De ce fait, il n’est pas possible de l’utiliser avec des équipements sans retour d’état.

J’espère que ce guide vous aura permis d’installer Homebridge sur votre Jeedom et de profiter des joies de dire :

Dis Siri, allume la lumière du salon !

Cet article a été lu 35591 fois

Vous aimerez aussi...

35 réponses

  1. beber dit :

    super article, bravo le sgars

  2. JM_DomoAdepte dit :

    A mon avis, l’approche HomeKit est vraiment prometteuse en rendant accessible la domotique.
    Homebridge à la sauce jeedom à l’avantage de permettre d’incorporer nos installations plutôt facilement 🙂

    Dans la version en cours, par contre, il y a encore quelques points à améliorer. Les génériques des fenêtres ne remontent pas l’état ouvert/fermé, les génériques de batteries ou d’alimentation n’existent pas encore…
    Mais bon, c’est déjà très bien

    • Thomas Martinez dit :

      Etonnant que vous n’ayez pas la remontée des ouvrants dans Homekit, dans nos tests, tout fonctionnait correctement et le retour d’état était assez rapide (< 1s). Concernant l'état des batteries, l'application Domicile ne les prend pas encore en compte mais l'application Elgato EVE oui. (voir la capture ci-dessus où mon détecteur de fumées à 60% de batterie)

      • JM_DomoAdepte dit :

        J’ai vérifié en début de soirée et après plisser tests (effaçage de cache, génération des équipements) j’ai tjrs un souci sur les fenêtres. Seul le niveau de batterie remonte.
        Mes dépendances sont à jour (a priori) et je ne vois pas où ca pêche.

        Je vais regarder plus en détail tout ca demain

  3. clarkkent609 dit :

    SVP arrêtez de sortir des fonctions TOP et SIMPLES sur Jeedom, sinon mon HC2 va bientôt me servir de presse-papier 🙁
    Autrement, bravo pour tout ce boulot!

  4. Bphoque dit :

    Bonsoir,

    Merci pour ce guide. L’ensemble de mes équipement fonctionnement correctement à l’exception des DIMMER 2 de FIBARO.
    Je n’arrive pas à éteindre la lumière, la commande ON et la variation fonctionne quant à eux bien.

    • Thomas Martinez dit :

      Il y avait effectivement un soucis sur l’envoi du Off mais cela a normalement été corrigé mi-aout. De quand date l’installation des dépendances sur votre installation ? Si avant mi-aout, relancez l’installation des dépendances pour mettre à jour la librairie. Merci

      • BLANDIGNERES dit :

        Bonsoir, effectivement après ré-installation des dépendances, le DIMMER 2 fonctionne très bien.
        Merci de votre aide.

  5. cocapic dit :

    super job, le gros fonctionne, néanmoins quand on supprime un objet ou le rend invisible pour home bridge celui ne disparaît pas, il faut passer par un vider le cache, c’est pénible. Le citère « envoyer a homebridge » ne fonctionne pas toujours et certains module meme en utilisant un type générique compatible ne marche

    great job !

  6. Julbut dit :

    Bonjour, je n’ai pas trouvé la réponse sur le forum.. Si quelqu’un à une solution je suis preneur.
    Voici mon erreur :
    [2016-08-31 12:05:35][ERROR] : Impossible de lancer le démon homebridge, relancer le démon en debug et vérifiez la log
    sh: 1: homebridge: not found

    Par ailleurs l’application mobile marche sans problème, mais c’est pour pouvoir contrôler par iOs mes équipements

    Merci d’avance,

    Julien

    • Thomas Martinez dit :

      Bonjour,
      D’après votre message, il semble que les dépendances ne sont pas installées. Il faudrait relancer l’installation des dépendances et vérifier la log d’installation. Si cela ne fonctionne toujours pas, merci d’ouvrir un ticket.
      Cordialement

      • Julbut dit :

        En effet j’ai déjà fais quelques manipulations notamment celle-ci et desinstall, reinstall mais le démon est en statut NOK alors que tout le reste est ok … Je cherche encore apparement je ne suis pas le seul sinon j’ouvrirai un ticket

  7. Edualc dit :

    Merci à l’équipe Jeedom, super boulot. Que de chemin parcouru depuis le départ !
    I L J
    (I love Jeedom)

  8. eg737 dit :

    bonjours et bravo pour se super tuto très simple et clair meme pour un noob comme moi ,chez moi tout les periferique z-wave marche mais je n’arrive pas a voir tout mes periferique rfx seule une prise est affichée et ne marche pas la 2 eme n’apparais pas et mon store banne non plus .une idée ?
    merci d’avance

  9. Claude69 dit :

    Petite question, qui ne me semble pas avoir été abordé sur le forum.
    J’ai une serrure Danalock, et le statut ouvert / fermé est inversé. Peut on faire quelque chose ou je doit attendre la prochaine version ?
    A part ça, bravo pour le travail

  10. edivad dit :

    Petite question qui n’est pas clair pour moi : comment fait-on pour lier un ordre Siri à un dimmerZ-Wave et à quelle commande ? ?
    Si je dit « Siri allume la lumière du salon » comment faire le lien avec le bon dimmer et la bonne commande (en l’occurence dans mon exemple ON) ?
    Sinon une fois de plus bravo à l’équipe Jeedom pour ce super job.

  11. Sorg dit :

    Chez moi homebridge ne démarre pas (mon jeedom est dans un docker).

    *** WARNING *** The program ‘nodejs’ uses the Apple Bonjour compatibility layer of Avahi.
    *** WARNING *** Please fix your application to use the native API of Avahi!
    *** WARNING *** For more information see
    *** WARNING *** The program ‘nodejs’ called ‘DNSServiceRegister()’ which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
    *** WARNING *** Please fix your application to use the native API of Avahi!
    *** WARNING *** For more information see
    [9/10/2016, 6:10:03 PM] Loaded plugin: homebridge-jeedom
    [9/10/2016, 6:10:03 PM] Registering platform ‘homebridge-jeedom.Jeedom’
    [9/10/2016, 6:10:03 PM] —
    [9/10/2016, 6:10:03 PM] Loaded config.json with 0 accessories and 1 platforms.
    [9/10/2016, 6:10:03 PM] —
    [9/10/2016, 6:10:03 PM] Loading 1 platforms…
    [9/10/2016, 6:10:03 PM] [Jeedom] Initializing Jeedom platform…
    Scan this code with your HomeKit App on your iOS device to pair with Homebridge:
    [30;47m [0m
    [30;47m ┌────────────┐ [0m
    [30;47m │ 031-45-154 │ [0m
    [30;47m └────────────┘ [0m
    [30;47m [0m
    [9/10/2016, 6:10:03 PM] Homebridge is running on port 51826.
    [9/10/2016, 6:10:03 PM] [Jeedom] Fetching Jeedom Objects …
    [9/10/2016, 6:10:03 PM] [Jeedom] Server Listening…
    /usr/lib/node_modules/homebridge/node_modules/mdns/lib/advertisement.js:56
    dns_sd.DNSServiceRegister(self.serviceRef, flags, ifaceIdx, name,
    ^
    Error: dns service error: unknown
    at Error (native)
    at new Advertisement (/usr/lib/node_modules/homebridge/node_modules/mdns/lib/advertisement.js:56:10)
    at Object.create [as createAdvertisement] (/usr/lib/node_modules/homebridge/node_modules/mdns/lib/advertisement.js:64:10)
    at Advertiser.startAdvertising (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Advertiser.js:43:30)
    at Bridge.Accessory._onListening (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:510:20)
    at emitNone (events.js:80:13)
    at HAPServer.emit (events.js:179:7)
    at HAPServer._onListening (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/HAPServer.js:182:8)
    at emitNone (events.js:80:13)
    at EventedHTTPServer.emit (events.js:179:7)

    • karlo dit :

      Sur Docker aussi j’ai exactement les memes syndromes que toi. DNS service error & co

      • Ben dit :

        Essayer les commandes suivantes dans votre docker :
        service dbus start
        avahi-daemon

        Et redémarrer homebridge

        • karlo dit :

          Mais cela est valable quand on installe homebridge dans un conteneur Docker ou quand on installe homebridge à partir de l’application mobile ? Quand vous dites faire ses commandes sur Docker je suppose qu’il s’agit de le faire dans le conteneur Docker de Jeedom ?

          • Uraeus dit :

            Je parlais du docker jeedom oui 🙂 (Avec installation de homebridge via le module application mobile jeedom)

          • Karlo dit :

            DE mon coté Homebridge ne marche pas à partir de l’installation de AppMobile de JEedom. PAr contre en installant Homebridge dans un docker sur le synology j’arrive a communiquer avec un IPAD. Mais la configuration manuelle du fichier CONFIG.JSON est difficile car il est difficile de remplir le fichier a la mano quand on ne trouve pas les bonnes commandes à rentrer type « service », … Avez vous des exemples à me donner avec votre fichier automatique fait par Jeedom svp ? MErci d’avance

  12. Toleg dit :

    L’ensemble de mes équipements remontent, sauf mes prises chacon (qui remontaient correctement via homebridge installé sur un RPI indépendant).
    Une idèe pour régler le probléme ?
    merci 🙂

  13. Ethan dit :

    J’ai cette erreur en debug après une première installation du plugin appmobile :

    *** WARNING *** The program ‘nodejs’ uses the Apple Bonjour compatibility layer of Avahi.
    *** WARNING *** Please fix your application to use the native API of Avahi!
    *** WARNING *** For more information see
    *** WARNING *** The program ‘nodejs’ called ‘DNSServiceRegister()’ which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
    *** WARNING *** Please fix your application to use the native API of Avahi!
    *** WARNING *** For more information see
    [9/24/2016, 5:38:47 AM] Loaded plugin: homebridge-jeedom
    [9/24/2016, 5:38:47 AM] Registering platform ‘homebridge-jeedom.Jeedom’
    [9/24/2016, 5:38:47 AM] —
    Load homebridge-jeedom.Jeedom
    /usr/lib/node_modules/homebridge-jeedom/index.js:101
    if (config[« url »] == « undefined ») {
    ^

    TypeError: Cannot read property ‘url’ of null
    at new JeedomPlatform (/usr/lib/node_modules/homebridge-jeedom/index.js:101:12)
    at Server._loadDynamicPlatforms (/usr/lib/node_modules/homebridge/lib/server.js:294:30)
    at Server.run (/usr/lib/node_modules/homebridge/lib/server.js:73:8)
    at module.exports (/usr/lib/node_modules/homebridge/lib/cli.js:40:10)
    at Object. (/usr/lib/node_modules/homebridge/bin/homebridge:17:22)
    at Module._compile (module.js:413:34)
    at Object.Module._extensions..js (module.js:422:10)
    at Module.load (module.js:357:32)
    at Function.Module._load (module.js:314:12)
    at Function.Module.runMain (module.js:447:10)

    que dois je faire?

  14. Tikipoof dit :

    Bonjour
    au lancement les applications Domicile ou Eve cherchent un périphérique Bluetooth. Est ce que la jeedom Mini+ est censée être détectable où il faut rajouter un dongle supplémentaire ?

  15. Shyriu dit :

    Bonjour, cela fait plusieurs semaines que je test jeedom installé dans un docker de mon synology, j’aimerai surtout utiliser le homebridge intégré pour mon iphone malheureusement après les problèmes de dépendances qui ne s’installaient pad , des démons en NOK et des services dbus et avahi … tout est enfin passé au vert … mais … aucune passerelle jeedom détectée sur mon réseau par mes appareils ios.

    Pourtant les logs disent que tout va bien:

    [10/5/2016, 5:06:11 PM] Loaded plugin: homebridge-jeedom
    [10/5/2016, 5:06:12 PM] Registering platform ‘homebridge-jeedom.Jeedom’
    [10/5/2016, 5:06:12 PM] —
    [10/5/2016, 5:06:12 PM] Loaded config.json with 0 accessories and 1 platforms.
    [10/5/2016, 5:06:12 PM] —
    [10/5/2016, 5:06:12 PM] Loading 1 platforms…
    [10/5/2016, 5:06:12 PM] [Jeedom] Initializing Jeedom platform…
    [10/5/2016, 5:06:12 PM] [Jeedom] Configuring Accessory: Studio Photo
    [10/5/2016, 5:06:12 PM] [Jeedom] Configuring Accessory: Poutre RDC
    [10/5/2016, 5:06:12 PM] [Jeedom] Configuring Accessory: Extérieur SUD
    [10/5/2016, 5:06:12 PM] [Jeedom] Configuring Accessory: L LED Escalier
    [10/5/2016, 5:06:12 PM] [Jeedom] Configuring Accessory: Totake Event
    [10/5/2016, 5:06:12 PM] [Jeedom] Configuring Accessory: Eclairage Façade
    [10/5/2016, 5:06:12 PM] [Jeedom] Configuring Accessory: Lampe Canapé RDC
    [10/5/2016, 5:06:12 PM] [Jeedom] Configuring Accessory: 1er Etage
    [10/5/2016, 5:06:12 PM] [Jeedom] Configuring Accessory: Eclairage Garage
    [10/5/2016, 5:06:12 PM] [Jeedom] Configuring Accessory: L TB copine 1er
    Scan this code with your HomeKit App on your iOS device to pair with Homebridge:
    [30;47m [0m
    [30;47m ┌────────────┐ [0m
    [30;47m │ 031-45-154 │ [0m
    [30;47m └────────────┘ [0m
    [30;47m [0m
    [10/5/2016, 5:06:12 PM] [Jeedom] Fetching Jeedom Objects …
    [10/5/2016, 5:06:12 PM] [Jeedom] Server Listening…
    [10/5/2016, 5:06:12 PM] Homebridge is running on port 51826.
    [10/5/2016, 5:06:12 PM] [Jeedom] Fetching Jeedom devices …
    [10/5/2016, 5:06:12 PM] [Jeedom] Homebridge Plugin is running now !

    Mais rien n’est visible … installé désinstallé , docker compris à zero complet rien n’y fait …

    Avez-vous une idée d’où peut venir ce blocage ? ( pour info j’ai bien ouvert les ports dans le docker également )

    Merci de votre aide 😀

  16. Alexandre dit :

    Bonjour
    Voilà quelques jours que je me torture l’esprit avec sa !!!
    Je suis sur jeedom 2.4.6 base sur rpi 2
    Avec iPad en concentrâteur l’iPad voit bien jeedo par contre aucun accessoir n’apparaît !!!
    J’utilise le protocole zwave avec retour d’état pour géré température volet lumière et chauffage

    Quelqu’un a Til une solution?
    Idem sans iPad directement avec iPhone 6 ios10 clé l’iPad

  17. chris50 dit :

    Bonjour,
    je ne vois pas mes volets dans eve ou domicile sur iphone alors qu’ils sont bien cochés dans envoyer à homebrige.
    j’ai aussi plusieurs périphérique que je vois et qui change d’état sur eve quand je change d’état sur dashboard depuis mon pc , le périphérique réagit mais l’action ne se fait pas depuis eve c’est curieux ??
    Aussi j’ai des fibaro wallplug zwave qui marchent dans les 2 sens mais pas ma sirène GEN5 zwave
    j’ai redémarré le daemon , reboot etc…

    merci par avance

  18. MattOZ dit :

    Bonjour,

    Aucun accessoire visible avec l’app homekit sur Jeedom 2.4.6 installé sur une Jeedom Smart box. Tout est à jour et les accessoires sont bien envoyés à homekit. Le démon Homebridge est correctement démarré. Meme réseau local.
    Idem avec l’app Eve.

    Si quelqu’un a une idée …

  19. lOhAn dit :

    Bonsoir, tout d’abord merci pour ce Plugin bien pratique, tout fonctionne très bien, mise à part l’inversement du Haut et Bas du volet, en effet les boutons physiques sont correctement paramètrès, idem dans Jeedom, par contre lorsque j’utilise Siri et la commande exécutée est inversée !! Siri Baisse le volet du salon ! le volet Monte 🙁 !! Une idée ! merci de votre aide.

  20. BERMON Philippe dit :

    Bonjour à tous,
    Petite question de débutant inculte: si je comprends bien, homebridge est réservé aux utilisateurs de Jeedom qui possèdent par ailleurs un téléphone portable ou un Ipad marqué par la célèbre pomme, mais ne possède pas d’intérêt pour les pauvres enclumes qui, comme moi, s’obstinent à utiliser leur vulgaire portable sous Androïd!!! Est ce bien le cas?
    Sinon j’achète tout de suite le plug-in Homebridge sur le market de Jeedom car les vues de cette application présentées dans cet article sont superbes et apportent une grande lisibilité à l’information remontée depuis le centrale domotique.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *