keyboard_arrow_up
language

Si vous cherchez à intégrer les périphériques Homekit en réseau dans Jeedom, ce n’est pas le bon plugin, dans ce cas, il faut utiliser #plugin-hkControl !!

Présentation Homebridge

Le plugin Homebridge est un démon qui permet d’interagir avec un système domotique via l’assistant vocal Siri sous iOS. Le HomeKit a été introduit depuis iOS 8, mais est véritablement opérationnel depuis iOS 10 via l’application Maison.

homekit-logo

Le plugin Homebridge de Jeedom permet donc d’exposer des équipements Jeedom qui seront vus comme des accessoires compatibles au protocole HomeKit.

Homebridge n’est pas officiellement supporté par Apple. A tout moment, Apple peut bloquer ce protocole.

Que peut-on faire avec Homebridge ?

schemaHomebrdige

Homebridge peut s’utiliser avec une application compatible HomeKit (Maison ou Eve) ou avec l’assistant vocal Siri.

Depuis iOS 10, l’application Maison (inclue par défaut avec iOS) permet le pilotage d’équipements compatibles HomeKit. Il existe aussi l’application Eve qui permet d’afficher beaucoup plus de types génériques et des graphiques pour certains (si l’option est cochée dans la configuration du plugin)

cuisine-homekit cuisine-homekit cuisine-homekit

Les équipements peuvent être classés par pièce. Il est également possible de mettre des accessoires en favoris sur la page d’accueil. Une page spécifique indique l’ensemble des états des accessoires.

piece-homekit piece-homekit etat

Beaucoup d’accessoires sont pris en charge.

garage-homekit

Siri peut aussi interagir. Il répond aux questions et fait des actions.

siri-01 siri-02

Le plugin prend en charge les scénarios. Il est possible de les exécuter directement depuis l’app Maison d’Apple.

HomeKit a l’avantage d’être utilisable à l’extérieur du domicile. Seule condition: il faut disposer d’un concentrateur. L’AppleTV et le HomePod peuvent servir de concentrateur (Plus l’iPad depuis la nouvelle infrastructure homekit de 16.2). Pour cela, ils doivent être connectés au même compte iCloud.

Pour un fonctionnement optimal, il est recommandé d’utiliser une AppleTV ou un Homepod en tant que concentrateur. Ces équipements étant alimentés sur secteur, ils sont beaucoup plus fiables.

HomeKit est le nom officiel du protocole développé par Apple. Homebridge est son équivalent Open Source développé par nfarina. Ce dernier a étendu le projet HAP-NodeJS qui est le moteur d’Homebridge.

Installation et activation du plugin Homebridge

Le plugin Homebridge doit être installé via le market Jeedom.

pluginHB pluginHB

Une fois le plugin installé, il suffit de l’activer en cliquant sur “Activer”.

activationHB

Installation des dépendances

Les dépendances sont installées automatiquement par Jeedom dans les 5 min. Elles seront également réinstallées lors d’une mise à jour du plugin si besoin.

installationDep

Le temps d’installation des dépendances peut varier en fonction du matériel utilisé.

Systèmes compatibles avec Homebridge :

  • Raspberry Pi 3 et 4

  • Box Jeedom smart

  • Box Jeedom pro V2

  • Tout système basé sur Debian 9 ou 10

Les installations sous Docker, la Jeedom Mini+ et Raspberry Pi zero, 1 & 2 ainsi que Debian 8 (Jessie) et les système x86 32bits ne sont pas supportés.

Une fois les dépendances installées, le démon se lance (dans les 5 min). Si le statut n’est pas sur “OK”, il faut cliquer sur “(Re)Démarrer”.

demon-homebridge

Mise à jour manuelle des dépendances

Pour mettre à jour manuellement les dépendances, il faut cliquer sur “Relancer”.

dependances-homebridge

Fichiers LOG

Les fichiers log permettent d’analyser pas à pas l’activité interne du processus et ses interactions avec son environnement.

Ces fichiers peuvent être nécessaires en cas de dysfonctionnement du plugin.

log

  • Homebridge : Historise toutes les communications avec le démon Homebridge.

  • Homebridge_daemon : Historise les actions effectuées par Homebridge (par exemple si un accessoire est envoyé à Homebridge mais n’apparaît pas dans l’application Maison, c’est ici qu’il faut aller voir).

  • Homebridge_dep : Historise toutes les étapes de l’installation des dépendances. Si le démon refuse de démarrer par exemple, un coup d’oeil peut aider).

  • Homebridge_start : Contient le log de création des équipements dans homekit, il peut vous indiquer la raison pour laquelle un équipement n’apparait pas ou pas bien dans homekit

  • DebugInfo : Il ne s’agit pas vraiment d’un Log mais plutôt d’informations de debuggage qui peuvent aider à diagnostiquer votre problème. Pour avoir ces informations, il faut passer les logs du démon en “Debug” ou en “Info” puis actualiser la fenêtre (F5). A côté de “Configuration” dans le plugin Homebridge, vous avez l’icône DebugInfo qui est apparue. Il vous suffit de cliquer dessus et attendre que le relevé des informations s’effectue. Vous pouvez ensuite copier tout ou bien la catégorie qui vous est demandée.

ExempleDebugInfo

Configuration du plugin Homebridge

Création du pont Homebridge

Pour créer le pont Homebridge, il faut aller dans la rubrique “Gestion”, et cliquer sur “Configuration”.

gestion

Pour créer le pont, il suffit de lui donner un nom et un code “PIN”.

image

  • Nom Homebridge : Permet de nommer le pont Homebridge.

Le changement de nom Homebridge obligera à reconfigurer les applications HomeKit.

  • PIN Homebridge : Permet de personnaliser le code PIN Homebridge.

Les PIN suivants ne sont pas acceptés par Apple : 000-00-000, 111-11-111 -> 999-99-999, 123-45-678, 876-54-321. Son changement obligera la reconfiguration des applications HomeKit.

  • Réparer : Permet une réparation de Homebridge en modifiant les identifiants.

Il faut retirer le bridge de l’application “Maison”.

  • Réparer & réinstaller : Supprime et réinstalle complètement Homebridge et modifie les identifiants et supprime le cache

A n’effectuer que sur conseil d’un membre du forum et il faut retirer le pont de l’application “Maison”.

  • Réinstaller : Supprime et réinstalle complètement Homebridge SANS modifier les identifiants et SANS supprimer le cache.

A n’effectuer que sur conseil d’un membre du forum

  • Gérer les plugins pour Homebridge : Permet de gérer les modules npm homebridge-xxx installés sur le système.

  • Importer Cameras du plugin Hikvision (BETA) : Permet d’importer automatiquement les caméras du plugin Hikvision dans les plateformes supplémentaires (En test, à vérifier).

  • Importer Cameras de Synology Surveillance Station (BETA) : Permet d’importer automatiquement les caméras du plugin Synology Surveillance Station dans les plateformes supplémentaires (En test, à vérifier).

  • Importer Cameras du plugin Camera (BETA) : Permet d’importer automatiquement les caméras du plugin Camera dans les plateformes supplémentaires (En test, à vérifier).

L’importation risque de vous faire un doublon si vous avez déjà inclu votre caméra précédemment, une fois importée, une caméra ne sera plus modifiée par cet import. (grace au “serialNumber”). Pour le plugin Camera, la caméra doit avoir le champ “URL de flux” rempli.

  • Plateforme Homebridge supplémentaire : Permet de rajouter manuellement un plugin Homebridge de type plateforme (homebridge-camera-ffmpeg ou homebridge-nest par exemple).

  • Accessoire Homebridge supplémentaire : Permet de rajouter manuellement un plugin Homebridge de type accessoire (homebridge-freemote par exemple).

  • Lancer l’interface de configuration Config-UI-X (Local seulement) : Permet de lancer l’interface de homebridge-config-ui-x qui est maintenant pré-installée et configurée. Les modifications effectuées dans cette interface sont maintenant prises en compte. Excepté : celles sur homebridge-jeedom, sur le bridge, sur homebridge-config-ui-x et la mise à jour de Homebridge qui est plus que déconseillée (en fait elle installe un second homebridge sur votre système !!!) (Si vous l’avez fait, relancez les dépendances, elles remettront tout en ordre). Si vous ne voyez pas l’interface, tentez avec http://votreIP:33221/

  • Authentification Config-UI-X : Active l’authentification dans Config-UI-X, si vous vous êtes déjà loggué dans cette interface avant, votre cookie reste valide tant que vous ne vous êtes pas déconnecté. Sinon par défaut, c’est : Utilisateur : admin et mot de passe : admin. Pour modifier, dans Config-UI-X, le menu trois points en haut à droite > Comptes Utilisateurs

Réservé à un public averti. Il n’y aura aucun support pour ces configurations de plugins supplémentaires et imports.

  • Activer le debug intégré de homebridge (très verbeux) et de ses plugins : Permet d’activer le mode de debug complet de Homebridge et des autres plugins, rarement nécessaire donc il est maintenant séparé pour augmenter la lisibilité du log, même en débug. (Il s’agit du mode DEBUG=* de Homebridge, un redémarrage du démon est nécessaire)

  • Envoyer les nouveaux équipements Jeedom dans Homebridge par défaut : Nouveau comportement, en décochant cette case, tout nouvel équipement ajouté à Jeedom ne sera pas ajouté à Homebridge au prochain redémarrage du démon. Il faudra cocher manuellement la case devant le nom de l’équipement (voir chapitre suivant). Coché par défaut pour coller au précédent comportement.

  • Activer les graphiques dans Eve (Alpha) : Permet de relever les données pour être utilisées dans Eve en tant que graphiques. (Aucun Support) Fonctionne seulement pour Température, Humidité, Pression, Porte/Fenêtre, Présence. Les graphiques ont été développés par ingénierie inversée des composants Elgato Eve et il peut y avoir des incohérences. Les données des graphiques sont les données collectées lorsque le démon Homebridge est démarré, il peut donc manquer certaines informations. Les graphiques sont uniquement à titre informatif.

Une fois les cases nom Homebridge et PIN Homebridge correctement renseignées, la configuration se finalise en cliquant sur Sauvegarder. Le démon redémarre.

Un QR code est généré automatiquement. Cela améliore l’intégration du pont jeedom dans Homekit. Voir la partie “Ajout de Jeedom dans HomeKit”.

Ajout des accessoires et scénarios dans Homebridge

Les équipements seront à ajouter manuellement.

config-piece

Assurez-vous que la pièce soit bien activée. (Cocher la case activer la pièce case en haut)

choix-acc

scenario

Afin d’ajouter un équipement ou un scénario à Homebridge, il suffit de cocher la case “Envoyer à Homebridge” se trouvant en face de l’équipement. Ensuite, Pour sauvegarder, il suffit de cliquer sur la petite disquette verte ou le bouton Sauvegarder. Les scénarios seront créés sous forme d’interrupteurs. En l’activant, vous lancerez le scénario. En le désactivant, vous le stopperez (s’il tournait toujours). L’interrupteur reste activé tant que le scénario tourne.

Il est possible de modifier le nom de l’équipement dans Homekit. Si celui-ci est déja installé sous l’ancien nom, il sera supprimé. Un nouvelle accessoire sera alors crée. Il apparaîtra dans la pièce où se situe le pont.

newid

Si des modifications ont été faites, comme le changement du type générique, la modification d’un paramètre, l’ajout d’un accessoire, il faut impérativement redémarrer le Démon pour la prise en compte dans Homebridge.

Configuration des types génériques

Généralités

En cliquant sur l’équipement, les types génériques utilisés pour la communication entre votre Jeedom et Homebridge apparaissent.

typegen-1

La majorité des types génériques est déjà renseignée. Dans certains cas, une configuration manuelle sera nécessaire (pour le plugin Virtuel ou si le développeur du plugin ne les a pas renseignés).

Voici les types génériques disponibles :

Lumière

Type générique Obligatoire Valeurs possibles
Info/Lumière Etat OUI Soit Luminosité
0-100 Ou 0-99 ou 0-255
(en fonction du max de Action/Lumière Slider)
ou Soit Binaire
0 = Eteint
autre que 0 = Allumé
Info/Lumière Etat (Binaire) NON Ajout uniquement pour les lumières dont la luminosité ne change pas lorsqu’elle est éteinte (Yeelight, Ikea, …)
0 ou off = Eteint
Autre = Allumé
Utiliser uniquement avec Lumière Etat
Info/Lumière Luminosité NON Supporté depuis 2023
Luminosité
0-100 Ou 0-99 ou 0-255
(en fonction du max de Action/Lumière Slider)
Utiliser avec Lumière Etat sur la commande binaire
(et pas Lumière Etat (Binaire) !!
Action/Lumière Slider Si Luminosité variable Réf. vers Lumière Luminosité ou Lumière Etat
Action/Lumière Bouton On OUI Réf. vers Lumière Etat :
- Binaire s’il est présent
- Etat sinon
Action/Lumière Bouton Off OUI Réf. vers Lumière Etat :
- Binaire s’il est présent
- Etat sinon
Info/Lumière Couleur NON Format #RRGGBB
Action/Lumière Couleur Si Info/Lumière Couleur Réf. vers Info/Lumière Couleur
Info/Lumière Température Couleur NON Format Mired (<=500) ou Kelvin (>500)
Action/Lumière Température Couleur Si Info/Lumière Température Couleur Réf. vers
- Info/Lumière Température Couleur
Min&Max Obligatoire
Action/Lumière Toggle NON Utilisé N/A
Action/Lumière Mode NON Utilisé N/A

(Voir Exemples en 9.1 pour explications)

Prises

Type générique Obligatoire Valeurs possibles
Info/Prise
Etat
OUI 0 = Eteint
1 = Allumé
Action/Prise
Bouton On
OUI Réf. vers Info/Prise Etat
Action/Prise
Bouton Off
OUI Réf. vers Info/Prise Etat
Action/Prise
Slider
NON Utilisé N/A

Ventilateur

Type générique Obligatoire Valeurs possibles
Info/Ventilateur
Etat
OUI 0 = Eteint
1 = Allumé
ou pourcentage si vitesse
Action/Ventilateur
Bouton On
OUI Réf. vers Info/Ventilateur Etat
Action/Ventilateur
Bouton Off
OUI Réf. vers Info/Ventilateur Etat
Action/Ventilateur
Vitesse
Rotation
NON 0-100
Réf. vers Info/Ventilateur Etat

Valves

Type générique Obligatoire Valeurs possibles
Info/Robinet
Etat
OUI 0 = Eteint
1 = Allumé
Action/Robinet
Bouton On
OUI Réf. vers Info/Robinet Etat
Action/Robinet
Bouton Off
OUI Réf. vers Info/Robinet Etat
Type générique Obligatoire Valeurs possibles
Info/Irrigation
Etat
OUI 0 = Eteint
1 = Allumé
Action/Irrigation
Bouton On
OUI Réf. vers Info/Irrigation Etat
Action/Irrigation
Bouton Off
OUI Réf. vers Info/Irrigation Etat
Type générique Obligatoire Valeurs possibles
Info/Valve
Générique
Etat
OUI 0 = Eteint
1 = Allumé
Action/Valve
Générique
Bouton On
OUI Réf. vers Info/Valve Générique Etat
Action/Valve
Générique
Bouton Off
OUI Réf. vers Info/Valve Générique Etat
Info/Valve
générique
Durée
NON 0-3600 Secondes
Info/Valve
générique
Durée Restante
NON 0-3600 Secondes

Interrupteurs

Type générique Obligatoire Valeurs possibles
Info/Interrupteur
Etat
OUI 0 = Eteint
1 = Allumé
Action/Interrupteur
Bouton On
OUI Réf. vers Info/Interrupteur Etat
Action/Interrupteur
Bouton Off
OUI Réf. vers Info/Interrupteur Etat

Bouton poussoir

Type générique Obligatoire Valeurs possibles
Action/Bouton
poussoir
NON type = “Défaut” dans jeedom

Volets

Type générique Obligatoire Valeurs possibles
Info/Volet Etat NON mais état unique Si Binaire :
0 = Fermé
1 = Ouvert
Si Binaire Inversé :
1 = Fermé
0 = Ouvert
Si Numérique :
min du Bouton Slider(sinon 0) = Fermé
max du Bouton Slider(sinon 100) = Ouvert
Info/Volet Etat Fermeture NON mais état unique Si Binaire :
1 = Fermé
0 = Ouvert
Si Binaire Inversé :
0 = Fermé
1 = Ouvert
Si Numérique :
min du Bouton Slider(sinon 0) = Ouvert
max du Bouton Slider(sinon 100) = Fermé
Action/Volet Bouton Monter Si Descendre Si pas d’état -> Interrupteur
Si Etat: Réf. vers Info/Volet Etat
Action/Volet Bouton Descendre Si Monter Si pas d’état -> Interrupteur
Si Etat: Réf. vers Info/Volet Etat
Action/Volet Bouton Stop NON Utilisé Si pas d’état -> Interrupteur
Si Etat: N/A
Action/Volet Bouton Slider Si seul Réf. vers Info/Volet Etat
Info/Volet Etat Inclinaison Horizontale NON Angle 0->90°
Action/Volet Slider Inclinaison Horizontale Si Etat Inclinaison H Angle 0->90°
modifiable via min-max du slider
Info/Volet Etat Inclinaison Verticale NON Angle 0->90°
Action/Volet Slider Inclinaison Verticale Si Etat Inclinaison V Angle 0->90°
modifiable via min-max du slider

Volets BSO

Pas encore supportés (mais possible via Volets normaux et les inclinaisons)

Fenêtres Motorisées

Type générique Obligatoire Valeurs possibles
Info/Fenêtre Motorisée Etat OUI 0 = Fermé
100 = Ouvert
Action/Fenêtre Motorisée Monter Si Descendre Réf. vers Info/Fenêtre Motorisée Etat
Action/Fenêtre Motorisée Descendre Si Monter Réf. vers Info/Fenêtre Motorisée Etat
Action/Fenêtre Motorisée Slider Si seul Réf. vers Info/Fenêtre Motorisée Etat

Chauffage fil pilote

Utiliser le plugin Thermostat.

Serrures

Type générique Obligatoire Valeurs possibles
Info/Serrure Etat OUI 0 = Non Sécurisée (Non Verrouillée)
1 = Sécurisée (Verrouillée)
Action/Serrure Bouton Ouvrir OUI Réf. vers Info/Serrure Etat
Action/Serrure Bouton Fermer NON Réf. vers Info/Serrure Etat

Alarme

Type générique Obligatoire Valeurs possibles
Info/Alarme état OUI 1 = Déclenchée
(prioritaire sur activée et modes)
Info/Alarme état activée OUI 0 = Désarmée
(prioritaire sur modes)
Info/Alarme mode OUI si associé mode homekit
NON sinon
Exactement le nom d’une Action/Alarme Mode
à associer à Nuit ou Present ou Absent
Action/Alarme armée OUI Arme l’alarme
Action/Alarme libérée OUI Désarme l’alarme
Action/Alarme Mode NON Mode à associer à un mode homekit (max 3)

Sirènes

Type générique Obligatoire Valeurs possibles
Info/Sirène Etat OUI Pas 1 = Sonne pas
1 = Sonne

Thermostats

Type générique Obligatoire Valeurs possibles
Info/Thermostat Etat (BINAIRE) NON Utilisé 0 = Eteint
1 = Allumé
Info/Thermostat Etat (HUMAIN) NON ‘off’ ou ‘arrêté’ ou ‘arret’
‘heat’ ou ‘chauffage’
‘cool’ ou ‘climatisation’
Info/Thermostat Mode OUI si associé mode homekit ‘Off’ ou ‘Arret’ = OFF
‘Aucun’ ou ‘Thermostat’ = AUTO
Exactement le nom d’une Action/Thermostat Mode
à associer à HEAT ou COOL
Action/Thermostat Mode NON Mode à associer à un mode homekit (max 2)
Info/Thermostat Température Extérieur NON utilisé N/A
Info/Thermostat Température ambiante NON -50 → 100
Info/Thermostat Consigne OUI 10 → 38
Action/Thermostat Consigne OUI 10 → 38
Info/Thermostat Verrouillage NON 0 = Non Verrouillé
1 = Verrouillé
Action/Thermostat Verrouillage OUI si Info/Verrouillage N/A
Action/Thermostat Déverrouillage OUI si Info/Verrouillage N/A

Portails ou Garages

Type générique Obligatoire Valeurs possibles
Info/Portail état ouvrant
Info/Garage état ouvrant
(même traitement)
OUI 0 = Fermé
252 = Fermeture en cours
253 = Stoppé
254 = Ouverture en cours
255 = Ouvert
(Configurable numérique ou chaîne)
Action/Portail ou garage bouton toggle Si seul Réf. vers Info/Portail état ouvrant
ou
Réf. vers Info/Garage état ouvrant
Action/Portail ou garage bouton d’ouverture Si pas Toggle Réf. vers Info/Portail état ouvrant
ou
Réf. vers Info/Garage état ouvrant
Action/Portail ou garage bouton de fermeture Si pas Toggle Réf. vers Info/Portail état ouvrant
ou
Réf. vers Info/Garage état ouvrant

Haut-Parleurs (Eve Seulement)

Type générique Obligatoire Valeurs possibles
Info/Haut-Parleur Mute NON 1 = Pas de son
0 = Son
Action/Haut-Parleur Mute Si pas Toggle Réf. vers Info/Haut-Parleur Mute
Action/Haut-Parleur UnMute Si pas Toggle Réf. vers Info/Haut-Parleur Mute
Action/Haut-Parleur Toggle Mute Si seul Réf. vers Info/Haut-Parleur Mute
Info/Haut-Parleur Volume OUI %
Action/Haut-Parleur Volume OUI Réf. vers Info/Haut-Parleur Volume

Multimedia (Eve Seulement)

Type générique Obligatoire Valeurs possibles
Info/Volume OUI Même chose que Info/Haut-Parleur Volume
Action/Volume OUI Réf. vers Info/Volume
Même chose que Action/Haut-Parleur Volume

Interrupteur programmable Multi-Valeurs

Type générique Obligatoire Valeurs possibles
Info/Interrupteur programmable
(multi-valeur)
NON Valeurs correspondantes
(une colonne par bouton)
Séparer par ;

Interrupteur programmable Binaires

Type générique Obligatoire Valeurs possibles
Info/Interrupteur programmable “binaire”
(Double Click)
NON Numéro du bouton
pour groupage
Info/Interrupteur programmable “binaire”
(Long Click)
NON Numéro du bouton
pour groupage
Info/Interrupteur programmable “binaire”
(Simple Click)
NON Numéro du bouton
pour groupage

Generic/Environnement/Météo

Type générique Obligatoire Valeurs possibles
Info/Présence Occupation NON 0 = Personne
1 = Quelqu’un
Info/Qualité d’air (Indice AQI) NON indice AQI
Info/Qualité d’air (Indice Personnalisable) NON ppb ou µg/m3
Info/Détecteur CO NON 0 = CO normal
1 = CO anormal
Info/Luminosité NON 0 → 100000 lux
Info/Présence NON 0 = Pas de mouvement
1 = Mouvement
Info/Humidité NON %
Info/CO2 (ppm) NON PPM
Info/Météo Index UV NON Générique (Eve Seulement)
Info/Météo Pluie NON 0 = Pas de Pluie
1 = Pluie
(Eve Seulement)
Info/Météo Neige NON 0 = Pas de Neige
1 = Neige
(Eve Seulement)
Info/Météo Visibilité NON Générique (Eve Seulement)
Info/Puissance Electrique NON Watts (Eve Seulement)

à ajouter à un équipement existant
Pas seule commande d’un équipement
Info/Consommation Electrique NON KWh (Eve Seulement)

à ajouter à un équipement existant
Pas seule commande d’un équipement
Info/Température NON -50 → 300 °C
Info/Batterie NON %
Info/Batterie en charge NON 0 = NON
Pas 0 = OUI
Non présent = Non Rechargable
Info/Détection de fumée NON 0 = Pas de fumée
1 = Fumée détectée
Info/Inondation
Info/Fuite d’eau
NON 0 = Pas de fuite détectée
1 = Fuite détectée
Info/Porte
Info/Fenêtre
(même traitement)
NON Si pas inversé :
0 = Pas de contact (ouvert)
1 = Contact (fermé)
Si inversé :
0 = Contact (fermé)
1 = Pas de contact (ouvert)
Info/Sabotage NON Si pas inversé :
1 = Pas de sabotage
0 = Sabotage
Si inversé :
0 = Pas de sabotage
1 = Sabotage

à ajouter à un équipement existant
Pas seule commande d’un équipement
Info/Choc NON Générique (Eve Seulement)
Info/Pression NON Générique (Eve Seulement)
Info/Son (dB) NON Générique (Eve Seulement)
Info/Pluie (accumulation) NON Générique (Eve Seulement)
Info/Vent (direction) NON Générique (Eve Seulement)
Info/Vent (vitesse) NON Générique (Eve Seulement)
Info/Générique NON Valeur <64 charactères
avec Unité indiquée ou pas
(Eve Seulement)
Action/Générique NON Type “Défaut”
uniquement

Comme un Bouton poussoir

Statuts d’équipements

Ces types génériques s’ajoutent à un équipement, ils ne peuvent pas être seuls dans un équipement.

Type générique Obligatoire Valeurs possibles
Info/Statut Actif NON 0 = inactif
1 = actif
Info/Connectivité En Ligne NON 0 = hors ligne
1 = en ligne
Info/Statut Défectueux NON 0 = non
1 = oui

Des exemples de configurations sont disponibles à la fin de la documentation

Pour valider, il faut aller dans la configuration du plugin et relancer le démon Homebridge en cliquant sur “(Re)Démarrer”.

demon-homebridge

Ajout de Jeedom dans HomeKit

Il existe plusieurs applications sur l’appstore compatibles HomeKit. L’application “Maison” d’Apple sera utilisée pour la rédaction de la documentation.

app-domicile

Le pont peut être inclus manuellement en entrant ou scannant le code PIN et en sélectionnant le pont ou automatiquement en scannant le QR code.

Ajout du pont par QR code

Pour ajouter le pont dans Homekit, il suffit de scanner le QR code avec l’application “Appareil photo”. Une notification est affichée en haut de l’écran. Il suffit de cliquer dessus et le pont est inclus automatiquement dans Homekit.

qr-code qr-code1 qr-code21

Comme expliqué plus haut dans la doc, Homebridge n’est pas reconnu officiellement par Apple. Un message indique que l’accessoire n’est pas certifié, il faut valider l’inclusion en cliquant sur “Poursuivre l’ajout”.

Le pont est maintenant intégré dans Homekit.

Ajout manuel du pont

L’inclusion de Jeedom dans HomeKit, se fait en ouvrant l’application “Maison” et en cliquant sur “Ajouter un accessoire”.

home-1

Dans l’exemple, le domicile s’appelle “Test”. Son nom peut être modifié en allant dans les réglages de l’application.

Il faut scanner le code PIN et sélectionner le pont à inclure. Le pont Jeedom sera intégré à Homekit

home-2 home-3 home-4

Le code PIN peut être également rentré manuellement en cliquant sur “Code absent ou impossible à scanner ?”

Les plateformes et accessoires supplémentaires doivent être inclus manuellement (pas via le QRcode)

Il n’est pas possible d’inclure le pont Jeedom sur plusieurs appareils IOS. Pour utiliser Homebridge sur plusieurs appareils IOS, il suffit de partager le domicile en suivant la procédure suivante :

partage

Rangement des accessoires dans HomeKit

Les accessoires doivent être rangés correctement dans HomeKit. Il faudra créer des pièces pour y intégrer les accessoires.

Les pièces dans Jeedom ne sont pas importées dans Homebridge. Ceci n’est pas dû à Jeedom mais à la gestion des pièces par Apple.

Le premier accessoire à “ranger” est le pont Jeedom. Il faut sélectionner la pièce où il sera installé. Si elle n’existe pas, il faudra la créer en cliquant sur “Créer”. Ensuite, il faut définir le nom de la nouvelle pièce. Il est également possible de lui attribuer un fond d’écran dédié. Pour finaliser la création de la pièce, il faut cliquer sur “Enregistrer”.

home-5 home-05 home-051

Maintenant, il ne reste plus qu’à ranger tous les accessoires dans les différentes pièces.

home-052

La fonction “Inclure dans les favoris” permet d’afficher l’accessoire dans la page principale de l’application

home-053

Les accessoires doivent être “rangés” un par un. Si il y en a beaucoup, cette partie prendra du temps.

La documentation complète de l’application “Maison” d’Apple est disponible à cette adresse : https://support.apple.com/fr-fr/HT204893.

Installer des Plugins Pour Homebridge

Attention : réservé aux utilisateurs avancés et qui comprennent l’anglais.

Il arrive parfois que les types génériques ne suffisent pas pour intégrer votre équipement car celui-ci n’a pas un comportement générique mais vraiment spécifique ou bien encore qu’il n’existe pas de plugin dans jeedom pour l’intégrer, dans ces cas là, vous pouvez passer par un “Plugin pour homebridge”.

Attention vocabulaire : vous l’aurez compris, on risque vite de s’emmêler les pinceaux dans les termes plugins… de quel plugin parle-t-on ? Pour jeedom ? Pour homebridge ? Donc la dénomination suivante a été choisie :

  • Plugin pour homebridge : module s’ajoutant à homebridge pour se connecter à votre équipement.
  • Plugin homebridge : le plugin jeedom qui s’appelle homebridge installé sur jeedom via le Market.
  • Plugin Jeedom xxx : un plugin xxx installé sur jeedom via le Market (ou autre)

En effet, le logiciel homebridge a été conçu de manière modulaire et vous pouvez ajouter à celui-ci des modules (plugins) qui se connectent directement à vos équipements (un exemple est le plugin pour homebridge nommé homebridge-caméra-ffmpeg qui est déjà intégré par les dépendances et permet d’importer vos camera du plugin jeedom caméra). Un autre exemple sont les plugins et homebridge-alexa (pré-installés également) qui sont un peu différents des autres, vous pouvez consulter le Tutoriel pour homebridge-gsh sur Communauté et le Tutoriel pour homebridge-alexa sur Communauté.

schema partiel

Première Méthode (Via la config du plugin)

Cette méthode peut être effectuée aussi bien quand vous êtes chez vous (en local) que à distance car elle utilise l’interface habituelle Jeedom.

Pour ajouter un plugin pour homebridge, il faut d’abord trouver le plugin qui vous convient… pour ce faire il faut faire une recherche dans cette liste : http://www.homebridge.io puis dans “Find a plugin” ( il y en a des centaines !!). Vous en trouverez peut être plusieurs, comparez les et regardez ceux qui ont été mis à jour récemment, ceux qui sont toujours actifs, ceux qui ont les fonctionnalités que vous désirez. findAPlugin.png

Une fois que vous avez trouvé celui qui vous convient, il faut aller dans la configuration du plugin homebridge et cliquer sur le bouton “Gérer les plugins pour Homebridge”. manageHomebridgePlugins

Le début est déjà noté (puisque tous les plugins pour homebridge commencent par le mot homebridge-), ajoutez donc le reste du nom du plugin derrière le homebridge- deja existant et cliquer sur “Installer”.

installPlugin

Première étape effectuée ;-) sur la page github du plugin pour homebridge que vous avez trouvé, il indique probablement une commande de type npm install … ne la faite pas !, cette première étape l’a faite pour vous :-) (certains indiquent aussi comment installer homebridge, vous vous doutez que c’est déjà fait aussi…)

noNPM

Seconde étape on va devoir donner la configuration du plugin pour homebridge… sur leur github, la plupart des plugins indiquent une structure json de configuration, il faut la recopier dans les Plateformes supplémentaires ou Accessoires supplémentaires que vous trouverez dans la configuration du plugin homebridge.

platformAccessories

Il est possible que le plugin pour homebridge ne soit pas une plateforme mais un accessoire

thisIsAccessorythisIsPlatform

Dans ce cas là, il faut l’ajouter dans les Accessoires supplémentaires

Attention, il faut recopier uniquement l’objet platform (un objet commence par { et terminé par }), pas tout le tableau platforms (avec s !!). (Idem avec accessories et accessory)

onlyPlatformonlyAccessory

Attention, si vous avez déjà d’autres plateformes (ou accessoires), il faut les séparer par le caractère | (qui s’appelle pipe).

pipe

Attention, le format json est assez difficile à écrire, recopiez bien les “ et les , à la fin des lignes etc !!! Un validateur vous aidera.

notValid

Une fois copié, il faut l’adapter à votre système… modifier des logins/pass ou des clés ou des ip’s etc… (je ne peux pas vous aider pour cette partie… chaque plugin pour homebridge a sa propre spécificité… il faut bien lire la marche à suivre sur le github du plugin en question…).

Quand c’est fait vous pouvez sauvegarder et relancer le démon… et prier ;-) non, en fait il faut regarder dans le log homebridge_daemon qui vous indiquera s’il y a des erreurs (normalement les lignes commenceront avec le nom du plugin entre crochets…).

logEx

Si vous avez des erreurs, c’est généralement un problème de mot de passe ou de clé ou d’ip… vérifiez vos données et le github pour voir comment les obtenir. Si vous ne résolvez toujours pas vous pouvez faire un post dans communauté avec le tag #plugin-homebridge pour que je regarde si tout me semble cohérent … si c’est cohérent il est fort probable que je vous redirige vers le github du plugin pour homebridge en question afin de leur poser des questions (en anglais…). (Vous comprendrez que je ne peux pas faire le support pour des centaines de plugins développés par plein de gens dans le monde…)

Si tout se passe bien, voilà vous avez configuré votre plugin pour homebridge ! Enjoy ;-)

Seconde Méthode (Via l’interface Config-UI-X)

Cette méthode ne peut être effectuée que à partir de chez vous (en local) car cette interface utilise un port différent de jeedom (33221) et ne sera donc par défaut pas accessible (via DNS Jeedom par ex) sans redirection de port (déconseillé !) ou reverse proxy (mieux déjà :))

Depuis peu, l’interface Config-UI-X a été ajoutée au plugin homebridge, celle-ci est accessible via le bouton suivant :

configuixButton

Le plugin peut aussi s’installer via l’onglet “Plugins” de cette interface, vous recherchez dans la barre supérieure :

cuixPlugins

Et cliquez sur “installer”.

pluginEx

Une fois le plugin pour homebridge installé, soit il ne le prévoit pas de Réglages (dans ce cas, cliquez sur “Ouvrir L’éditeur de config” et référez-vous à la première méthode sur les rêgles d’écriture dans le fichier configuration JSON (sauf le | évidemment))

manualPlugin

soit celui-ci prévoit un bouton “Réglages” pour vous aider à le configurer (malheureusement en anglais pas encore traduisible) :

pluginExOK

Une fois que vous avez terminé la configuration cliquez sur Enregistrer en bas de cette fenêtre.

enregistrer

Il vous suffit maintenant de relancer le démon afin que la nouvelle configuration soit prise en compte, vous pouvez le faire soit dans jeedom soit dans l’interface via le bouton power en haut à droite

image

Troubleshooting

Support

Merci de passer par le forum, de créer un sujet par demande et de lire les autres sujets s’ils ressemblent au votre (ceux créés après la sortie de ce plugin, c’est logique :-))

Point important si multi-prise/multi-relay

Les références vers l’état dans les actions sont primordiales dans le cas où vous avez un équipement avec des états semblables multiples (multi-prise, multi-relay) !! Sinon pas de lien entre l’état et ses actions liées possible.

Pour un “virtuel” :

RefEtat

Pour un accessoire physique (Dimmer 2 de Fibaro par exemple) :

Dimmer

FAQ

-> Le pont Homebridge n’apparaît pas dans l’application Maison !

Vérifiez que le statut du démon Homebridge est sur OK.

demon-homebridge.png

Pour inclure votre Jeedom dans HomeKit, via une application compatible (par exemple Maison ou Eve), vérifiez que votre appareil iOS est connecté au même réseau que votre Jeedom. (Il ne peut y avoir aucun routage entre jeedom et votre appareil iOS)

config-pluginhb

-> Le démon Homebridge ne veut pas démarrer !

Vérifiez que vous disposez de la dernière version des dépendances. En cas de doute, il est possible de les réinstaller en cliquant sur “Relancer”. Si la réinstallation des dépendances ne fonctionne pas ou indique une erreur dans le log des dépendances, cliquez sur “Réparer et Réinstaller”.

dependances-homebridge

-> Mon équipement n’apparaît pas dans Homebridge !

Vérifiez que la case “Envoyer à Homebridge” est cochée dans la configuration de la pièce du plugin Homebridge.

-> La case “Envoyer à Homebridge” est bien cochée mais mon équipement n’apparaît toujours pas !

Vérifiez dans la configuration de votre équipement que celui-ci est activé, et dans une pièce.


Vérifiez que les types génériques sont bien configurés. Chaque équipement envoyé à Homebridge doit avoir au moins un type générique “Etat”.

ypegelumi

-> J’ai mon Homebridge qui n’exécute pas les commandes !

Il faut bien mettre à jour le plugin. Vérifiez le type générique de la commande.

-> J’ai bien le retour d’état d’un équipement mais impossible de le piloter !

Vérifiez que les types génériques sont bien configurés. Il doit y avoir une cohérence entre les types. Si vous avez le type “Info Lumière Etat”, vérifiez que les actions sont de types “Action / Lumière Bouton On” etc… Voir aussi la référence à l’état (le point important ci-dessus)

-> Le message “sans réponse” apparaît dans l’application Maison ou Eve sur plusieurs équipements

sans-reponse

  1. Redémarrez votre iPhone,iPad, Mac (celui qui vous indique “sans réponse”). Si ce n’est pas réglé, passez au point suivant.
  2. Si vous avez des concentrateurs HomeKit (iPad(si ancienne infra homekit)/AppleTV/HomePod), redémarrez-les tous !
  3. Si vous n’avez pas de concentrateur HomeKit (iPad(si ancienne infra homekit)/AppleTV/HomePod), vérifiez que vous êtes connecté au même réseau que votre Jeedom. (Pas de routage supporté par le protocol HomeKit)
  4. Si ce n’est pas réglé, relancez votre box/routeur.
  5. Si ce n’est pas réglé, vérifiez que le démon est activé. Si ce n’est pas le cas, redémarrez le. Vérifiez qu’il n’y a aucune erreur dans le log.
  6. Si ce n’est pas réglé, lancez une réparation dans la configuration du plugin (il faut retirer le pont dans Maison).
  7. Si ce n’est pas réglé, vous avez un problème réseau, veillez à activer le multicast/multicast DNS/mDNS sur tout le trajet entre Jeedom et votre iPhone/iPad/… et votre concentrateur HomeKit (iPad(si ancienne infra homekit)/AppleTV/HomePod). Aucun routage entre ces trois périphériques n’est supporté. Testez aussi le paramètre IGMP Snooping, s’il est activé, désactivez-le et inversément (mais gardez une cohérence entre vos périphériques).

Beaucoup d’informations se trouvent dans les logs, le prochain chapitre vous expliquera comment les analyser.

Interprétation des LOGS Homebridge

----
[Mon Jul 17 2017 19:35:08 GMT+0000 (UTC)] [Jeedom] ┌──── Maison > Accessoire 1 (111)
[Mon Jul 17 2017 19:35:08 GMT+0000 (UTC)] [Jeedom] │ Accessoire visible, pas coché pour Homebridge
[Mon Jul 17 2017 19:35:08 GMT+0000 (UTC)] [Jeedom] │ KO : Accessoire Ignoré
[Mon Jul 17 2017 19:35:08 GMT+0000 (UTC)] [Jeedom] └─────────
----

L’Accessoire 1 est visible mais la case “Envoyer vers Homebridge” n’est pas cochée. L’accessoire ne sera donc pas ajouté dans Homebridge.

----
[Mon Jul 17 2017 19:35:08 GMT+0000 (UTC)] [Jeedom] ┌──── Maison > Accessoire 2 (222)
[Mon Jul 17 2017 19:35:08 GMT+0000 (UTC)] [Jeedom] │ Nouvel accessoire (Accessoire 2)
[Mon Jul 17 2017 19:35:08 GMT+0000 (UTC)] [Jeedom] │ OK : Ajout de l'accessoire (Accessoire 2)
[Mon Jul 17 2017 19:35:08 GMT+0000 (UTC)] [Jeedom] └─────────
----

ou

----
[Mon Jul 17 2017 19:35:08 GMT+0000 (UTC)] [Jeedom] ┌──── Maison > Accessoire 2 (222)
[Mon Jul 17 2017 19:35:08 GMT+0000 (UTC)] [Jeedom] │ OK :  Mise à jour de l'accessoire (Accessoire 2)
[Mon Jul 17 2017 19:35:08 GMT+0000 (UTC)] [Jeedom] └─────────
----

L’Accessoire 2 est visible et la case “Envoyer vers Homebridge” est cochée. L’accessoire sera donc ajouté dans Homebridge.

----
[Mon Jul 17 2017 19:45:27 GMT+0000 (UTC)] [Jeedom] ┌──── Maison > Accessoire 3 (333)
[Mon Jul 17 2017 19:45:27 GMT+0000 (UTC)] [Jeedom] [WARN] Pas de type générique "Info/Prise Etat"
[Mon Jul 17 2017 19:45:27 GMT+0000 (UTC)] [Jeedom] │ Accessoire sans Type Générique
[Mon Jul 17 2017 19:45:27 GMT+0000 (UTC)] [Jeedom] │ KO : Accessoire Ignoré
[Mon Jul 17 2017 19:45:27 GMT+0000 (UTC)] [Jeedom] └─────────
----

L’Accessoire 3 est visible et la case “Envoyer vers Homebridge” est cochée. Mais il n’y a pas de type générique “Etat” (ou celui-ci n’est pas visible). L’accessoire ne sera donc pas intégré dans Homebridge. Pour corriger ce problème, ajoutez le type générique “Info / Prise Etat” à l’accessoire (ou cochez la case “visible”).

----

[Mon Jul 17 2017 19:49:49 GMT+0000 (UTC)] [Jeedom] ┌──── Maison > Accessoire 4 (444)
[Mon Jul 17 2017 19:49:49 GMT+0000 (UTC)] [Jeedom] [WARN] Pas de type générique "Info/Lumière Etat" ou "Info/Lumière Couleur"
[Mon Jul 17 2017 19:49:49 GMT+0000 (UTC)] [Jeedom] [WARN] Pas de type générique "Action/Prise Bouton On" ou reférence à l'état non définie sur la commande On
[Mon Jul 17 2017 19:49:49 GMT+0000 (UTC)] [Jeedom] │ Nouvel accessoire (Accessoire 4)
[Mon Jul 17 2017 19:49:49 GMT+0000 (UTC)] [Jeedom] │ OK : Ajout de l'accessoire (Accessoire 4)
[Mon Jul 17 2017 19:49:49 GMT+0000 (UTC)] [Jeedom] └─────────
----

Il y a une incohérence entre les types génériques. Les types “actions” ne correpondent pas au type “info”. Pour corriger le problème, modifiez les types génériques de l’accessoire en gardant une cohérence entre les types actions et info.

----
HAP Warning: Characteristic E863F129-079E-48FF-8F27-9C2605A29F52 not in required or optional characteristics for service 00000080-0000-1000-8000-0026BB765291. Adding anyway.
----

Cet avertissement peut être ignoré.

----
sh: 1: homebridge: not found
----

Les dépendances Homebridge ne sont pas installées ou certains fichiers sont manquants. Cliquez sur “Relancer”

dependances-homebridge

Exemple de configuration

Lumière

Type d’accessoire : Dimmer 2 de Fibaro (Z-Wave)

lumiere

Type d’accessoire : Double contact de Nodon (EnOcean)

lumiere-2

Si les deux contacts sont utilisés, copier-coller les types génériques On-1 sur On-2, Off-1 sur Off-2 et Etat-1 sur Etat-2.

Exemple Lumière simple 3 commandes : info d’état binaire (0 ou 1)/bouton allumer/bouton fermer :

Type générique Sur quelle commande appliquer
Info/Lumière Etat Sur la commande info indiquant l’état binaire de la lumière
0 = Eteint
1 = Allumé
Action/Lumière Bouton On Sur la commande qui permet d’allumer la lumière
Action/Lumière Bouton Off Sur la commande qui permet d’éteindre la lumière


Exemple Lumière avec variateur de luminosité :

Type générique Sur quelle commande appliquer
Info/Lumière Etat Sur la commande info indiquant la valeur de la luminosité
Ce type générique DOIT être utilisé, sinon votre équipement ne sera pas considéré comme une lumière !
Info/Lumière Etat (Binaire) Sur la commande info indiquant l’état binaire de la lumière
0 = Eteint
1 = Allumé
S’il y en a pas, c’est la commande qui a le type générique Info/Lumière Etat ci-dessus qui indique cet état d’allumage avec :
0 = Eteint
autre que 0 = Allumé
Action/Lumière Slider Sur la commande action de variation de la luminosité
Action/Lumière Bouton On Sur la commande qui permet d’allumer la lumière
Action/Lumière Bouton Off Sur la commande qui permet d’éteindre la lumière


ou (nouvelle possibilité depuis 2023) :

Type générique Sur quelle commande appliquer
Info/Lumière Etat Sur la commande info indiquant l’état binaire de la lumière
0 = Eteint
1 = Allumé
Ce type générique DOIT être utilisé, sinon votre équipement ne sera pas considéré comme une lumière !
Info/Lumière Luminosité Sur la commande info indiquant la valeur de la luminosité
Action/Lumière Slider Sur la commande action de variation de la luminosité
Action/Lumière Bouton On Sur la commande qui permet d’allumer la lumière
Action/Lumière Bouton Off Sur la commande qui permet d’éteindre la lumière

Température et hydrométrie

Type d’accessoire : Sonde Oregon (RfxCom) et Xiaomi Aqara

temperature

Détecteur d’ouverture

Type d’accessoire : Détecteur Fibaro (Z-Wave)

Fenêtre

fenetre

Si un capteur de température est utilisé, mettre “Info / Température” sur le nom de la commande Température.

Porte

porte

Si un capteur de température est utilisé, mettre “Info / Température” sur le nom de la commande Température.

Détecteur de fuite

Type d’accessoire : Détecteur Fibaro (Z-Wave)

fuite

Détecteur de fumées

Type d’accessoire : Détecteur Fibaro (Z-Wave)

fumee

Volets roulants

Type d’accessoire : Détecteur Fibaro FGR-222 (Z-Wave)

volet

Porte de garage

Type d’accessoire : Aeotec - Contrôleur de porte de garage (GEN5) (Z-Wave)

garage

Interrupteur programmable

Interrupteur programmable multi-valeur

Type d’accessoire : NODON Interrupteur mural Z-Wave Plus

bouton

La tableau ci dessus indique les valeurs renvoyées par l’interrupteur pour chaque type d’appuie. Il faudra reporter les valeurs dans les paramètres du plugin.

tg-inter

Voici le résultat dans l’app maison :

inter01 inter02

Type d’accessoire : Bouton simple Click XIAOMI Aquara

bouton-xiaomi

Interrupteur programmable binaire

Ce type générique possède 3 options (Simple click, long click et double click). Il faut que l’accessoire possède une info par type générique. Cette action doit être binaire.

Type d’accessoire : NODON Interrupteur mural ENOCEAN

L’interrupteur enocean de NODON, possède 4 informations (bt1, bt2, bt3 et bt4). Chaque information est de type binaire :

enocean

Voici les paramètres pour cet accessoire :

tg-bouton02

Homebridge va créer 1 accessoires mais avec 4 boutons :

bt01

Type d’accessoire : EDISIO interrupteur 4 boutons :

Cet accessoire possède 2 actions par bouton mais avec 2 ID binaires différents (1 ID par action).

edisio

Voici les paramètres pour cet accessoire :

edisio02

Homebridge va créer 1 accessoires, avec 4 boutons et 2 actions par boutons :

edisio03

Bouton poussoir

Ce type générique est utilisé par des accessoires qui ne nécessitent pas de retour d’état. Le bouton poussoir est le parfait exemple. Dans cet exemple, un simple appui sur le bouton poussoir permet de lancer un script (avec le plugin script).

Le Bouton poussoir sera crée à l’aide du plugin virtuel.

BP

Voici les paramètres pour cet accessoire :

TGBP

Dans l’application Maison, le Bouton poussoir sera représenté comme un interrupteur. Un appui dessus permet le lancement du script et l’interrupteur repasse à OFF (0) tout seul.

Les commandes de camera (Zoom, Dézoom, Haut, Bas, Gauche, Droite, Présets) et les Action/Générique (de type “Défaut”) sont automatiquement créées comme des boutons poussoir.

Virtuel

Type d’accessoire : Interrupteur bistable avec le plugin virtuel

virtuel

virtuel-tg

Caméra

Homebrige prend en charge les caméras.

camera2.

En touchant la capture de la caméra souhaitée, elle s’affiche en plein écran et en live !

camera3

Suivant les configurations matérielles, la qualité de la transmission peut varier. Par exemple, sur un NUC gen7 core i7, c’est quasiment du live ! La latence est très faible.

Notification Photo

Celles-ci peuvent afficher une notification lorsqu’un mouvement est détecté par un capteur de présence.

notif

Avant iOS 13 : Il fallait que la caméra et le capteur soient configurés dans la même pièce et que les notifications du capteur soient activées.

Depuis iOS 13 : Le capteur de mouvement doit faire partie du même équipement. Pour contourner ce problème, il faut :

  1. Ajouter “motion”:true, dans le json de votre camera comme dans l’exemple (Cela va créer un détecteur de mouvement et un interrupteur “virtuels” dans votre caméra. En actionnant l’interrupteur, le détecteur intégré à la caméra s’active.).
  2. Créer une Automation dans Maison pour activer l’interrupteur de la camera si votre détecteur de mouvement Jeedom est activé.
  3. Activer les notifications dans la Caméra (roue crantée > Notification).
  4. Faire déclencher votre détecteur de mouvement Jeedom, vous avez une notification

{
   "platform":"Camera-ffmpeg",
   "cameras":[
      {
         "name":"Camera-Salon",
	 "motion":true,
         "videoConfig":{
            [...]
         }
      }
   ]
}

Plus d’informations (en anglais) ici : Wiki Homebridge-Camera-FFMPEG

Exemples de configuration

Les caméras décrites ci-dessous ont été testées. Elles sont donc fonctionnelles dans Homebridge.

L’intégration des caméras se fait via la bouton rouge “Plateforme Homebridge supplémentaire”.

plateforme-hb

Il suffira ensuite d’ajouter les caméras configurées depuis le menu “Maison” de l’application “Maison” : sélectionner le bouton “+”, puis “Ajouter un accessoire”. Il faut alors scanner le code PIN Homebridge du plugin et sélectionner la caméra à ajouter (Attention, il ne faut pas scanner le QR Code sinon le message “Accessoire déjà ajouté” apparaîtra et l’ajout ne sera donc pas possible).

Depuis homebridge-camera-ffmpeg > 2.0.0 les cameras sont ajoutées automatiquement, plus besoin de faire l’ajout manuel !!!

Foscam C1

Cette caméra pose problème à cause d’une taille de pixel non conforme, il est donc quasi impossible de la faire fonctionner correctement, elles est déconseillée !

{
   "platform":"Camera-ffmpeg",
   "cameras":[
      {
         "name":"Camera-Salon",
         "videoConfig":{
            "source":"-rtsp_transport tcp -i rtsp://login:password@xxx.xxx.xxx.xxx:554/videoMain",
            "stillImageSource":"-i http://192.168.1.121:88/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=login&pwd=password",
            "maxStreams":2,
            "maxWidth":1280,
            "maxHeight":720,
            "maxFPS":30,
            "vcodec": "h264"
         }
      }
   ]
}

Remplacer les valeurs xxx.xxx.xxx.xxx par l’adresse IP de la caméra, login par le login de connexion à la caméra et password par le mot de passe de connexion à la caméra.

Foscam C1 V2

Cette caméra pose problème à cause d’une taille de pixel non conforme, il est donc quasi impossible de la faire fonctionner correctement, elles est déconseillée !

{
   "platform":"Camera-ffmpeg",
   "cameras":[
      {
         "name":"Son nom",
         "videoConfig":{
            "source":"-rtsp_transport tcp -i rtsp://login:password@xxx.xxx.xxx.xxx:Portrtsp/videoMain",
            "stillImageSource":"-i http://login:password@xxx.xxx.xxx.xxx:Port/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=login&pwd=password",
            "maxStreams":2,
            "maxWidth":1280,
            "maxHeight":720,
            "maxFPS":30
         }
      }
   ]
}

Remplacer les valeurs xxx.xxx.xxx.xxx par l’adresse IP de la caméra, login par le login de connexion à la caméra et password par le mot de passe de connexion à la caméra.

Foscam FI9821P

{
   "platform":"Camera-ffmpeg",
   "cameras":[
      {
         "name":"son nom",
         "videoConfig":{
            "source":"-rtsp_transport tcp -i rtsp://login:password@xxx.xxx.xxx.xxx:Port/videoMain",
            "stillImageSource":"-i http://login:password@xxx.xxx.xxx.xxx:Port/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=login&pwd=password",
            "maxStreams":2,
            "maxWidth":1280,
            "maxHeight":720,
            "maxFPS":30
         }
      }
   ]
}

Remplacer les valeurs xxx.xxx.xxx.xxx par l’adresse IP de la caméra, login par le login de connexion à la caméra et password par le mot de passe de connexion à la caméra.

Foscam FI9803 V3

{
   "platform":"Camera-ffmpeg",
   "cameras":[
      {
         "name":"Son nom",
         "videoConfig":{
            "source":"-rtsp_transport tcp -i rtsp://login:password@xxx.xxx.xxx.xxx:Portrtsp/videoMain",
            "stillImageSource":"-i http://login:password@xxx.xxx.xxx.xxx:Port/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=login&pwd=password",
            "maxStreams":2,
            "maxWidth":1280,
            "maxHeight":720,
            "maxFPS":30
         }
      }
   ]
}

wanscam rtsp HW0043

{
 "platform":"Camera-ffmpeg",
   "cameras":[
      {
         "name":"Camera-Arrière",
         "videoConfig":{
            "source":"-rtsp_transport tcp -i rtsp://login:password@xxx.xxx.xxx.xxx:554/1",
            "stillImageSource":"-i http://login:password@xxx.xxx.xxx.xxx/web/tmpfs/snap.jpg",
            "maxStreams":2,
            "maxWidth":1280,
            "maxHeight":720,
            "maxFPS":30,
            "vcodec": "h264"
         }
      }
   ]
}

Remplacer les valeurs xxx.xxx.xxx.xxx par l’adresse IP de la caméra, login par le login de connexion à la caméra et password par le mot de passe de connexion à la caméra.

{
  "platform": "Camera-ffmpeg",
  "cameras": [
	{
	  "name": "Camera Cellier",
	  "videoConfig": {
		"source": "-f mjpeg -i http://login:password@xxx.xxx.xxx.xxx/mjpeg.cgi",
		"stillImageSource": "-f mjpeg -i http://login:password@xxx.xxx.xxx.xxx/image/jpeg.cgi",
		"maxStreams": 2,
		"maxWidth": 640,
		"maxHeight": 480,
		"maxFPS": 30,
		"vcodec": "h264"
	  }
	}
  ]
}

Remplacer les valeurs xxx.xxx.xxx.xxx par l’adresse IP de la caméra, login par le login de connexion à la caméra et password par le mot de passe de connexion à la caméra.

DCS-932L

 {
   "platform":"Camera-ffmpeg",
   "cameras":[
      {
         "name":"Camera Garage1",
         "videoConfig":{
            "source":"-i http://login:password@xxx.xxx.xxx.xxx:port/video.cgi",
 "stillImageSource":"-i http://login:password@xxx.xxx.xxx.xxx:port/image.jpg",
           "maxStreams":5,
     "maxWidth": 1280,
      	"maxHeight": 720,
"vcodec": "h264_omx",
      "maxFPS":30
         }
      }
   ] 
} 

Remplacer les valeurs xxx.xxx.xxx.xxx par l’adresse IP de la caméra, login par le login de connexion à la caméra et password par le mot de passe de connexion à la caméra. Merci à gui59169 pour l’intégration de cette caméra.

Synology Surveillance Station

 {
   "platform":"Camera-ffmpeg",
   "cameras":[
      {
         "name":"Camera-Salon",
         "videoConfig":{
            "source":"-rtsp_transport tcp -i rtsp://login:password@xxx.xxx.xxx.xxx:554/Sms=CAMID.unicast",
            "stillImageSource":"-rtsp_transport tcp -i rtsp://login:password@IP:554/Sms=CAMID.unicast -updatefirst",
            "maxStreams":2,
            "maxWidth":2688,
            "maxHeight":1520,
            "maxFPS":20,
            "vcodec": "h264"
         }
      }
   ]
}

Remplacer les valeurs xxx.xxx.xxx.xxx par l’adresse IP de la caméra, login par le login de connexion à la caméra et password par le mot de passe de connexion à la caméra. Merci à mguyard pour l’intégration de cette caméra.

Dans Surveillance Station, clic droit sur la caméra et puis choisir “Share streaming Path”

Netatmo Welcome

Cette caméra deviendra officielement compatible HomeKit courant 2018. Son intégration dans Homebridge est néanmoins possible.

{
	"platform": "Camera-ffmpeg",
	"cameras": [
		{
		"name": "Camera Name",
		"videoConfig": {
			"source": "-i http://xxx.xxx.xxx.xxx/Local_Access_Key/live/files/high/index.m3u8",
			"stillImageSource": "-i http://xxx.xxx.xxx.xxx/Local_Access_Key/live/snapshot_720.jpg",
			"maxStreams": 2,
			"maxWidth": 1280,
			"maxHeight": 720,
			"maxFPS": 30
			}
		}
	]
}

Remplacer les valeurs xxx.xxx.xxx.xxx par l’adresse IP la caméra et Local_Access_Key -> voir dans le plugin Caméra l’URL de capture /Local_Access_Key/live/snapshot_720.jpg.

camera

Configurer plusieurs caméras (ou plateformes)

Pour configurer plusieurs plateformes, il suffit de mettre une barre | entre les deux configurations. Pour configurer plusieurs caméras, il faut les placer toutes les deux dans le tableau “cameras” séparées par une virgule (ou par simplicité, dans une nouvelle platform: “Camera-ffmpeg”, elles seront fusionnées automatiquement.

{
  "platform": "Camera-ffmpeg",
  "cameras": [
	{
	  "name": "Cellier 1",
	  "videoConfig": {
		"source": "-f mjpeg -i http://login:password@adresseIP/mjpeg.cgi",
		"stillImageSource": "-f mjpeg -i http://login:password@adresseIP/image/jpeg.cgi",
		"maxStreams": 2,
		"maxWidth": 640,
		"maxHeight": 480,
		"maxFPS": 30,
		"vcodec": "h264"
	  }
	},{
	  "name": "Salon 1",
	  "videoConfig": {
		"source": "-i http://adresseip/xxxxxxx/live/files/high/index.m3u8",
		"stillImageSource": "-i http://adresseIP/xxxxxx/live/snapshot_720.jpg",
		"maxStreams": 2,
		"maxWidth": 1280,
		"maxHeight": 720,
		"maxFPS": 30
	  }
	}
  ]
}
|
{
    "platform": "Alexa",
    "name": "Alexa",
    "username": "....",
    "password": "...."
}

Cela est également valable pour toute autre plateforme comme le thermostat NEST, alexa ou google smarthome par exemple.

Si vous avez un | quelque part dans votre plateforme, celui-ci peut être donc confondu avec une séparation de plateforme, dans ce cas, il faut le remplacer par [pipe]

Migration des caméras dans homebridge-camera-ffmpeg > 2.0.0

Depuis la dernière version du plugin homebridge-camera-ffmpeg, les caméras s’affichent automatiquement dans maison sans besoin de les ajouter manuellement dans maison. Néanmoins, si vous les aviez déjà ajoutées manuellement, vous allez avoir des doublons. Voici la procédure pour détecter l’ancienne caméra et la supprimer de Maison :

ProcedureMigrationCameras

(cette procédure s’affichera également dans la configuration de homebridge si le démon est démarré et que vous n’avez pas encore cliqué sur “J’ai fait ces modifications, merci!”)

Station météo NETATMO

Type d’accessoires : Module intérieur, module extérieur et module intérieur additionnel.

Module intérieur

netatmo-1

Module extérieur

netatmo-2

Module intérieur additionnel

netatmo-3

Représentation graphique dans Maison :

netatmo-4

Représentation graphique dans Eve avec les courbes :

netatmo-5

Type Générique Info/Générique

Le type générique “Info/Générique” permet de faire remonter n’importe quelle valeur “info” de tout type dans Homebridge. Quelques exemples sont décrits dans ce chapitre.

L’information à remonter dans Homebridge ne doit pas dépasser 64 caractères.

Seule l’application d’Elgato Eve est compatible avec ce type générique. Les équipements utilisant ce type générique n’apparaitront pas dans l’application Maison d’Apple.

Les interactions avec Siri ainsi que les automations ne sont pas possibles avec ce type générique

Il est n’est pas possible de renommer l’accessoire

custom-2

Utilisation avec le plugin vigilance méteo

custom-7

custom-6

Plugins spécifiques

Plugin “Thermostat”

Pour configurer le plugin “Thermostat”, il faut se référer à la documentation du plugin à cette adresse : (https://doc.jeedom.com/fr_FR/plugins/wellness/thermostat/).

Configuration

Seuls les modes “Chauffer” et “Refroidir” sont à configurer. Il faut attribuer un mode du plugin “Thermostat” à un mode de HomeKit.

thermostat

Présentation

thermostat1

  • A : Température Cible ou Consigne : Température envoyée au plugin Thermostat (Passe en mode Auto sur Maison et Eve / Mode Aucun sur widget Thermostat)
  • B : Température Ambiante : Température de référence pour le plugin Thermostat.
  • C : Commande de modification de la Consigne A : Augmenter ou diminuer la température à l’aide du curseur. Cela aura pour action de modifier également le mode du chauffage E qui passera à AUCUN dans le dashboard Jeedom.
  • D : Statut du thermostat retourné par le plugin Thermostat : Arrêté (ou Désactivé ou Eteint) (Rond vert dans Maison) / Chauffage (Rond Orange dans Maison) / Climatisation (Rond Bleu dans Maison).

  • E : Mode Auto (dans Maison ou Eve) : correspond au mode Aucun dans Jeedom où le Plugin Thermostat décide de ce qu’il doit faire en fonction de la température qu’on lui envoie. Ce mode permet de régler une température cible via le curseur C

  • F : Mode Clim / Refroidir : Mode customisé associé manuellement dans la configuration du Thermostat dans le Plugin Homebridge. Permet de lancer le mode associé dans le plugin Thermostat. (Repasse en mode AUTO, si une température cible est donnée)

  • G : Mode Chauf / Chauffer : Mode customisé associé manuellement dans la configuration du Thermostat dans le Plugin Homebridge. Permet de lancer le mode associé dans le plugin Thermostat. (Repasse en mode AUTO, si une température cible est donnée)

  • H : Eteint / Off : permet d’éteindre le thermostat.
  • I : Verrouillage/Protection Enfants (uniquement dans Eve) : permet de verrouiller le thermostat. (modifié)

Utilisation

En cliquant sur “CHAUF” ou “Chauffer”, on active le mode du thermostat associé. Idem pour “CLIM” ou “Refroidir”.

Plugin “Alarme”

La fonctionnalité de l’alarme dans Homebridge est compatible uniquement (pour l’instant) avec le plugin Jeedom “Alarme”. Pour configurer le plugin “Alarme”, il faut se référer à la documentation du plugin disponible à cette adresse : https://jeedom.github.io/plugin-alarm/fr_FR/.

Ce mode fonctionne avec l’application d’Apple Maison et celle d’Elgato Eve.

Configuration

Dans HomeKit, la fonction alarme est gérée suivant 4 modes : “Désactivée”, “Nuit”, “A distance” et “Domicile”.

alarme alarmeeve

Le mode “Désactivé”, inhibe l’ensemble des modes d’alarme du plugin “Alarme”. Les actions de l’onglet “Désactivation OK” sont lancées (en fonction du mode de sortie).

inhibe

Les 3 autres modes, sont à définir dans la configuration du plugin Homebridge.

configalarme

Le “mode Jeedom” correspond aux modes du plugin “Alarme”.

modealarme

Il suffit d’affecter le “mode Jeedom” au mode Homebridge choisi.

Utilisation

Il suffit de cliquer sur l’icone “Alarme” dans l’application Maison.

iconealarme

Et de sélectionner le mode.

selmodealarme

L’alarme est activée.

Sur le dashboard :

alarmeactive

Sur l’application Maison :

alarmeactive2

Pour la désactiver, il suffit de sélectionner “Désactivée”. Les actions définies dans la partie “Désactivation OK” du plugin “Alarme” vont s’exécuter.

desactivationok

En cas de déclenchement de l’alarme, une notification apparaît sur le téléphone.

alarmedeclanchee reinitialiseralarme

Pour la désarmer, il faut cliquer sur l’icône “Alarme” et sélectionner “Désactivée”.

Les actions définies dans la partie “Réinitialisation” du plugin “Alarme” vont s’éxécuter.

reinitialisation

Plugin “Méteo”

Le plugin météo est compatible avec les applications Maison et Eve. Cependant, dans Maison, seules la température et l’humidité sont remontées. Dans Eve, l’ensemble des informations sont disponibles.

config-meteo

Pour activer le plugin météo, il suffit de cocher la case “Envoyer à Homebridge”. Le configuration se fait tout seule.

meteo-eve meteo-home

Plugin “Mode”

le plugin mode est auto configuré par le plugin. mode

Dans l’app Maison, les modes sont représentés avec des interrupteurs.

modehk

Pour activer un mode, il suffit de basculer l’interrupteur sur ON sur le mode souhaité. L’interrupteur du mode précédent, passe automatiquement sur OFF. En basculant un mode actif sur OFF, le mode précédent repasse sur ON.

Les modes fonctionnent avec Siri. Dans l’exemple ci dessus, les noms des modes sont les suivants :

  • 1 : Je suis présent.
  • 2 : Je suis absent.
  • 3 : Nuit.

Le plugin, ajoute automatiquement le terme “mode” avant. Ce qui donne au niveau des interrupteurs :

  • 1 : Mode je suis présent.
  • 2 : Mode je suis absent.
  • 3 : Mode nuit.

Si dans le nom du mode d’origine contient déjà le terme “mode” (ou “modo” en espagnol), il n’est pas ajouté.

Pour activer le mode “je suis absent” il faut demander à Siri: “Dis Siri, Active le mode je suis absent”.

modesiri

Certains modes ne fonctionneront pas avec Siri, le mode Nuit et le mode Jour par exemple. Si vous demandez à Siri d’activer le mode nuit, il activera Night Shift. Vous pouvez contourner ceci en demandant explicitement : “Dis Siri, active l’interrupteur Mode Nuit” ou en associant l’interrupteur à la Scène “Bonne nuit”.

Changelog

Voir ici