homebridge-myhome-concept
v1.0.0
Published
MyHome Concept - Legrand / BTicino MyHome (OpenWebNet) plugin for Homebridge
Maintainers
Readme
MyHome Concept V1
homebridge-myhome-concept
Plugin Homebridge pour les systèmes domotiques Legrand / BTicino MyHome (OpenWebNet), avec l'historique Elgato Eve pour les capteurs de contact, de mouvement et les compteurs d'énergie.
✅ Compatible Homebridge v2 (HAP-NodeJS v1) et Homebridge v1.
Origine
MyHome Concept V1 est basé sur un fork du paquet (excellent mais non publié) de simont77, lui-même forké de angeloxx, modernisé pour Homebridge v2 et enrichi de la gestion des groupes.
Description
Legrand MyHome est une solution domotique qui gère l'éclairage (on/off/variation), la thermorégulation, les volets et portes, les systèmes de sécurité, et les capteurs de contact/mouvement.
Avec une passerelle IP installée dans votre installation et la configuration de tous les systèmes (MyHome ne supporte pas l'auto-découverte), ce plugin permet de piloter l'ensemble. Vous devez désactiver l'authentification OpenWebNet par mot de passe pour l'IP qui exécute Homebridge (ex. Raspberry Pi) ou utiliser l'authentification HMAC. Le HMAC est supporté par toutes les passerelles IP récentes, ou les plus anciennes avec un firmware à jour (ex. F454 en firmware v2).
Installation
Via l'interface Homebridge, ou en ligne de commande :
npm install -g homebridge-myhome-conceptAjoutez la plateforme dans le config.json de votre instance Homebridge :
{
"platforms": [{
"platform": "LegrandMyHome",
"ipaddress": "192.168.1.2",
"port": 20000,
"ownpassword": "12345",
"setclock": true,
"devices": [
{ "accessory": "MHRelay", "name": "Salle de bain", "address": "0/1/5" }
]
}]
}Puis redémarrez Homebridge. Voir sample_config.json pour un exemple complet.
Configuration
Seule la section platforms du config.json doit être éditée.
| Champ | Description |
|---|---|
| platform | Doit valoir LegrandMyHome. |
| ipaddress | Adresse IP ou nom de la passerelle MyHome (ex. F454, MH201). |
| port | Port OpenWebNet, en général 20000. |
| ownpassword | Mot de passe OpenWebNet (par défaut 12345). |
| setclock | true pour que Homebridge mette à l'heure la passerelle chaque heure. |
| devices | Liste des appareils installés (voir ci-dessous). |
Chaque appareil possède au minimum : accessory (le type, voir la liste), name (nom affiché
dans HomeKit) et généralement address (adresse MyHome au format B/A/PL pour les lumières
et volets, ou un nombre simple/double pour les autres).
Appareils supportés
- MHRelay — relais d'éclairage standard (ex. F411), adresse B/A/PL. Supporte
frame_on/frame_offpour des trames personnalisées. - MHDimmer — variateur (ex. F427, F413N), adresse B/A/PL.
- MHThermostat — thermostat piloté par une centrale 99 zones (3550), adresse = zone (1-99).
- MHExternalThermometer — sonde externe (centrale 3550), adresse = zone (1-9).
- MHOutlet — relais standard (non éclairage), adresse B/A/PL. Supporte les trames custom.
- MHBlind — volet via relais d'automatisme standard (ex. F411). Propriété
time= temps de course en secondes. - MHBlindAdvanced — volet avancé gérant la position en interne (ex. F401), adresse B/A/PL.
- MHContactSensor / MHDryContact — capteur de contact sec (ex. 3477). Types
ContactetMotion. Historique Eve supporté. - MHPowerMeter — uniquement avec la centrale F421.
refresh= intervalle de mise à jour. Historique Eve supporté. - MHAlarm — testé sur centrale 3486. Surveillance de l'état uniquement (activation/désactivation non implémentées pour des raisons de sécurité).
- MHTimedRelay — commande temporisée de relais.
duration/timer= durée par défaut. - MHControlledLoad — contrôle de l'état des prises « load control » d'ancienne génération.
- MHAux — événements AUX. Types
leak,gasetcontact. - MHIrrigation — MHTimedRelay adapté au service d'irrigation HomeKit.
- MHGroup — commande de groupe OpenWebNet (
#<group>). Pilote plusieurs appareils à la fois via une seule tuile HomeKit. Propriétégroup= numéro de groupe (1-255) ettype=light(défaut, WHO=1),dimmer(variateur de groupe, WHO=1) oublind(WHO=2). Pour les volets :invertpour inverser le sens,time(s) pour l'animation. L'état de la tuile est optimiste.
Synchronisation d'état par groupe
N'importe quel appareil (lumière, variateur, volet) peut déclarer une propriété groups
(liste de numéros de groupe) :
{ "accessory": "MHDimmer", "name": "Cuisine", "address": "0/1/1", "groups": [3, 7] }Quand une commande de groupe passe sur le bus (depuis un bouton mural, un scénario ou
l'accessoire MHGroup), tous les appareils membres de ce groupe mettent automatiquement à jour
leur état dans HomeKit — lumières (on/off), variateurs (on/off + luminosité) et volets
(montée/descente/arrêt).
Voir sample_config.json pour les paramètres additionnels de chaque accessoire.
Appareils testés
- F453, F454v1, MH200N et MH201 comme passerelle IP
- F411/2 comme MHRelay, MHOutlet et MHCurtain
- F401 comme MHBlindAdvanced
- F416U1 comme MHDimmer
- 3455 comme MHExternalThermometer
- 3477 comme MHContactSensor
Compatibilité Homebridge v2
Depuis la 0.3.0, le plugin fonctionne sous Homebridge v1 et v2. Détails techniques de la
migration dans MIGRATION-HOMEBRIDGE-V2.md. En résumé : enums HAP
lus depuis api.hap, Service.Battery au lieu de Service.BatteryService, Buffer.from, et un
shim qui réintroduit Characteristic.getValue() retiré en v2.
Bugs connus
- Le pilotage par groupe est disponible via l'accessoire
MHGroup(commande uniquement, sans retour d'état du bus).
Crédits
- https://github.com/angeloxx/homebridge-myhome — première version
- https://github.com/simont77/homebridge-myhome — accessoires additionnels et historique Elgato Eve
Disclaimer
Logiciel fourni « tel quel », sans aucune garantie. Le développement de ce module n'est pas soutenu par Legrand, BTicino ou Apple. Ces fabricants et l'auteur ne sont pas responsables des dommages directs, indirects, accessoires ou consécutifs résultant d'un défaut, d'une erreur ou d'un dysfonctionnement.
