Apple HomeKit: Anbindung an IPS auf Basis der HomeBridge von nfarina

Ich habe jetzt mal die Homebridge auf einem anderen Rechner aufgesetzt wie IP-Symcon um sicherzustellen das IP-Symcon stabil bleibt bei dem experimentieren. Die Homebridge lies sich sauber installieren, Plugin für Homematic CCU und IP-Symcon installiert und die config.json und package,json von homebridge-symcon bei den Punkte node und homebridge Version angepasst. Im Gegensatz zu vorherigen Versuchen lässt sich die Homebridge zwar sauber starten und beide Plugins werden geladen, es werden aber obwohl in IP-Symcon Homekit Accessories mit Services angelegt wurden lediglich alle Geräte die über das Homebridge CCU Plugin laufen angezeigt. Von den Geräten in IP-Symcon wird nichts gefunden. Die Homematic Geräte lassen sich auch alle schalten.

Das habe ich probiert, wobei mir nicht ganz einleuchtet warum der Port zu ändern ist. Das ganze ohne Erfolg auch keine Geräte von IP-Symcon gefunden.

Es existieren schon Instanzen, diese werden aber nicht gefunden. Also habe ich noch versucht zu löschen und neue anzulegen, leider auch kein Erfolg.

Hat noch jemand eine Idee was man ausprobieren kann? Sonst gebe ich erstmal auf und nutze eben solange nur die Homematic Geräte über das Homebridge CCU Plugin.

Hallo schroejahr, vielen Dank für Deinen Tip. Werde ich ausprobieren. Gruß Axel

Gesendet von iPhone mit Tapatalk

Hallo Andre,

vielen Dank für dein Modul und die ganze Arbeit !
Ich habe den Thread jetzt nicht komplett durch und hoffe, daß ich hier jetzt nicht zum 1000 Mal ein Problem schildere :wink:

Und zwar hab ich in der HomeBridge das Plugin gerade installiert, bekomme die Homebridge jetzt aber nicht mehr zum laufen mit der neuen Config, da das Plugin Probleme macht. Kann es wirklich sein, daß eine zu hohe HomeBridge Version damit nicht läuft ? Oder liegt es doch wo anders ? Er meckert zumindest von wegen 0.2.0 usw… Meine 0.3.4 ist doch höher als 0.2.0. Da ich meine Homebridge in einem Docker Container laufen habe, ist das update auf eine tagesaktuelle nicht so einfach.

Direkt nach der installation und Neustart der Homebridge (aber noch mit alter Config ohne symcon) kam diese Meldung:

Nach hinzufügen der Platform in der config und starten der Homebridge brichgt sie mit folgender Meldung ab:

[10/11/2016, 8:33:38 AM] Loaded plugin: homebridge-nukiio
[10/11/2016, 8:33:38 AM] Registering platform 'homebridge-nukiio.NukiBridge'
[10/11/2016, 8:33:38 AM] Registering accessory 'homebridge-nukiio.NukiLock'
[10/11/2016, 8:33:38 AM] Registering accessory 'homebridge-nukiio.NukiBridgeMaintainanceSwitch'
[10/11/2016, 8:33:38 AM] ---
[10/11/2016, 8:33:39 AM] Loaded plugin: homebridge-sonos
[10/11/2016, 8:33:39 AM] Registering accessory 'homebridge-sonos.Sonos'
[10/11/2016, 8:33:39 AM] ---
[10/11/2016, 8:33:39 AM] e[1me[31m====================e[39me[22m
[10/11/2016, 8:33:39 AM] e[1me[31mERROR LOADING PLUGIN homebridge-symcon:e[39me[22m
[10/11/2016, 8:33:39 AM] e[1me[31mError: Plugin /usr/lib/node_modules/homebridge-symcon requires a HomeBridge version of ^0.2.0 which does not satisfy the current HomeBridge version of 0.3.4. You may need to upgrade your installation of HomeBridge.

    at Plugin.load (/usr/lib/node_modules/homebridge/lib/plugin.js:56:11)
    at Server.<anonymous> (/usr/lib/node_modules/homebridge/lib/server.js:112:14)
    at Array.forEach (native)
    at Server._loadPlugins (/usr/lib/node_modules/homebridge/lib/server.js:108:22)
    at new Server (/usr/lib/node_modules/homebridge/lib/server.js:43:24)
    at module.exports (/usr/lib/node_modules/homebridge/lib/cli.js:26:16)
    at Object.<anonymous> (/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)e[39me[22m

[10/11/2016, 8:33:39 AM] e[1me[31m====================e[39me[22m
[10/11/2016, 8:33:39 AM] Loaded config.json with 2 accessories and 2 platforms.
[10/11/2016, 8:33:39 AM] ---
[10/11/2016, 8:33:39 AM] Loading 2 platforms...
[10/11/2016, 8:33:39 AM] Initializing NukiBridge platform...
[10/11/2016, 8:33:39 AM] Initializing Nuki bridge 'http://192.168.2.199:8080'...
[10/11/2016, 8:33:39 AM] Started server for webhooks on port '51827'.
[10/11/2016, 8:33:39 AM] Adding webhook for plugin to bridge...
[10/11/2016, 8:33:39 AM] Initialized Nuki bridge.
[10/11/2016, 8:33:39 AM] Initializing platform accessory 'Tür'...
/usr/lib/node_modules/homebridge/lib/api.js:106

      throw new Error("The requested platform '" + name + "' was not registered by any plugin.");
      ^
Error: The requested platform 'Symcon' was not registered by any plugin.
    at API.platform (/usr/lib/node_modules/homebridge/lib/api.js:106:13)
    at Server._loadPlatforms (/usr/lib/node_modules/homebridge/lib/server.js:263:45)
    at Server.run (/usr/lib/node_modules/homebridge/lib/server.js:71:36)
    at module.exports (/usr/lib/node_modules/homebridge/lib/cli.js:40:10)
    at Object.<anonymous> (/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)

Config:

{

	"bridge": {
		"name": "Homebridge",
		"username": "CC:22:3F:E3:CE:30",
		"port": 51826,
		"pin": "xxx-xx-xxx"
	},


	"accessories": [{
			"accessory": "Sonos",
			"name": "Lautsprecher Terasse",
			"room": "Terasse"
		}, {
			"accessory": "Sonos",
			"name": "Lautsprecher Küche",
			"room": "Küche"
		}


	],
	
  "platforms": [
        {
            "platform": "NukiBridge",
            "bridge_url": "http://192.168.2.199:8080",
            "api_token" : "Ku2WRJ",
            "request_timeout_lockstate": 5000,
            "request_timeout_lockaction": 30000,
            "cache_directory": "./.node-persist/storage",
            "webhook_server_ip_or_name": "xxx.xxx.xxx.xxx",
            "webhook_port": 51827,
            "lock_state_mode": 0,
            "add_maintainance_buttons": false,
            "locks": [
                {
                    "id": "xxxxxxxx",
                    "name": "Tür",
                    "lock_action" : "2",
                    "unlock_action" : "3",
                    "priority" : 1
                }

            ]
        },
		
		{
            "platform" : "Symcon",
            "name" : "Symcon",
            "rpcClientOptions": {
                "port": 3777,
                "host": "192.168.2.1",
                "path": "/api/",
                "login": "xxxxxxx",
                "hash": "xxxxxxx",
                "strict": true  }
		}
    ]

}

9.PNG

Gruß
Christian

Das Modul ist schon lange nicht mehr upgedatet worden. Also musst Du Dir entweder einen Fork erstellen oder manuell Anpassungen vornehmen um es überhaupt zum Laufen zu bekommen.

Schau mal hier:
Apple HomeKit: Anbindung an IPS auf Basis der HomeBridge von nfarina - Seite 67
vielleicht hilft das weiter.

Puhhh danke Dir ! In dem Beitrag wird ja an der installierten Version Veränderungen durchgeführt.
Das ist in meinem Docker Container schwierig.

Habe leider absolut kein Plan von Github, aber kann ich dort nicht in der package.json
die 2 Punkte mit den Versionsnummern ändern und einen „Fork“ erstellen und diesen dann irgendwie per
„$ sudo npm install -g homebridge-symcon“ installieren ? Aber wie installiere ich dann den umgebauten Fork ?:confused:

Danke schonmal !

Das einfachste ist Du installierst wie beschrieben das Modul, musst dann aber noch von Hand zumindest die Datei package.json mit einem Textdeditor bearbeiten damit es funktioniert.
Diese befindet sich in der Regel auf Linux unter


/usr/lib/node_modules/homebridge-symcon/

Die Einträge die Du unbedingt ändern musst findest Du im Link oben. Abspeichern und neu versuchen die Homebridge zu starten.

Ich probiere es mal aus, aber ich vermute, das funktioniert in einem Docker Container nicht so ohne weiteres. Melde mich hier wieder… Danke

Da muss ich passen weil ich mich mit npm und sowas überhaupt nicht auskenne. Die Anbindung von Homekit besteht ja aus zwei Teilen, dem Add On für die Homebridge und dem PHP Modul für IP-Symcon. Das was Du anpassen musst ist das nodejs Addon für die Homebridge.

Hat funktioniert ! Danke ! Habs im Container geändert… puuhh :smiley:
Und es läuft verdammt gut ! Ohne Verzögerung… wow :loveips::loveips::loveips::loveips:

Die Homebridge schmiert jetzt aber immer nach 5-10 min einfach ab auch wenn ich nichts schalte.
schade… scheint wohl noch alles etwas buggy zu sein.
Komischerweise hat eben ein Sonos Error 2 mal hintereinander die HomeBridge zum abstürzen gebracht.
Das ist mir in 8 Wochen Nutzung ohne das symbol Plugin nie passiert. Mysteriös

Hat jemand von euch schon einen Homematic Tür / Fensterkontakt als „Lock Mechanismus“ hinzufügen können ? Kein zur Statusabfrage müsste dieses Accessory doch korrekt sein. Er meckert aber.

11.PNG

Falls Du eine CCU hast kannst Du zumindest alle Homematic Komponenten auch eine Keymatic über das Homebridge Homematic Addon steuern falls es mit IP-Symcon nicht klappen sollte. Ist die gleiche Homebridge Du musst nur ein weiteres Add On installieren.
RPi2 - Homebridge : Siri for the rest of us HomeMatic-Forum

Ja, das hab ich auch schon auf´m Zettel gehabt, aber bisher wieder verworfen, da der Pflegeaufwand der Config mit den ganzen einzelnen IDs größer ist bzw. es in IPS einfach schöner ist. Aber wenn das ganze stabiler läuft als mit IPS werde ich das wohl mal probieren.

Danke Dir

Es hat zumindest den Vorteil das die Homematic Devices automatisch mit dem richtigen Namen in der Home App gefunden werden und es funktioniert bisher zuverlässig.
Hier ist eine ausführliche Anleitung da kann man auch nix falsch machen.
Homematic Know-how Teil 14: Sprachsteuerung mit Siri

Ich habe die homebridge bis jetzt nur mit dem homematic plugin verwendet, auf meiner Testumgebung habe ich das symcon modul in IPS installiert.

Auf dem Pi bekomme ich auch die Apple Instanzen angezeigt, auf der IPS Windows bekomme ich aber keine APPLE Instanzen angezeigt :confused:

Warum ?

…ist das Modul korrekt installiert?

Joachim

Wie installiere ich es den korrekt ?

Ich unter den Kern Instanzen, die Instanz Modul geöffnet und habe mit dieser Adresse: GitHub - w-andre/homebridge-symcon: IP-Symcon plugin for homebridge das Modul hinzugefügt…

Es wird auch unter Module aufgelistet…

Hast Du nur das PHP Modul installiert oder auch das Homebridge AddOn für die Homebridge von nfarina? Was gibt es denn für eine Meldung wenn die Hombridge startet? Wird das Addon gefunden?

Auf dem Pi 2 habe ich ja noch in IPS mit Homebridge Instanzen, die werden auch von der homebridge erfasst und geladen…

Aber auf der Windowsversion scheitere ich schon dran, das ich keine Homebridge Instanzen angezeigt bekomme:

Pi2 :

Bildschirmfoto 2016-10-16 um 09.22.49.png

Windows:

Bildschirmfoto 2016-10-16 um 09.22.08.png

Hi Leute,

Meine Homebridge hat von jetzt auf nachher den Geist aufgeben. Zuerst dachte ich „einfach mal Neustarten“. Gesagt getan, jedoch wird die Homebridge in der „Home“ App immer noch nicht angezeigt. Ich habe sie dann nochmals manuell gestartet. Soweit wird wohl auch alles richtig initialisiert - bis auf die Fehlermeldung am Ende:

[2016-10-23 19:33:10] Loaded plugin: homebridge-harmonyhub
[2016-10-23 19:33:11] Registering platform 'homebridge-harmonyhub.HarmonyHub'
[2016-10-23 19:33:11] ---
[2016-10-23 19:33:11] Loaded plugin: homebridge-symcon
[2016-10-23 19:33:11] Registering platform 'homebridge-symcon.Symcon'
[2016-10-23 19:33:11] ---
[2016-10-23 19:33:11] Loaded config.json with 0 accessories and 1 platforms.
[2016-10-23 19:33:11] ---
[2016-10-23 19:33:11] Loading 1 platforms...
[2016-10-23 19:33:11] [Symcon] Initializing Symcon platform...
[2016-10-23 19:33:11] [Symcon] Fetching Symcon instances...
[2016-10-23 19:33:12] [Symcon] 2 instances found
[2016-10-23 19:33:12] [Symcon] Initializing platform accessory 'Klima Wohnzimmer'...
[2016-10-23 19:33:12] [Symcon] 13222: loading Fan services...
[2016-10-23 19:33:12] [Symcon] 13222: loading GarageDoorOpener services...
[2016-10-23 19:33:12] [Symcon] 13222: loading HumiditySensor services...
[2016-10-23 19:33:12] [Symcon] 13222: loading service 'Luftfeuchtigkeit' (24420)...
[2016-10-23 19:33:13] [Symcon] 13222: bind 'CurrentRelativeHumidity' characteristic
[2016-10-23 19:33:13] [Symcon] 13222: loading LightBulb services...
[2016-10-23 19:33:13] [Symcon] 13222: loading LightSensor services...
[2016-10-23 19:33:13] [Symcon] 13222: loading LockMechanism services...
[2016-10-23 19:33:13] [Symcon] 13222: loading Outlet services...
[2016-10-23 19:33:13] [Symcon] 13222: loading Switch services...
[2016-10-23 19:33:13] [Symcon] 13222: loading TemperatureSensor services...
[2016-10-23 19:33:13] [Symcon] 13222: loading Thermostat services...
[2016-10-23 19:33:13] [Symcon] 13222: loading service 'Thermostat' (50048)...
[2016-10-23 19:33:13] [Symcon] 13222: bind 'CurrentHeatingCoolingState' characteristic
[2016-10-23 19:33:13] [Symcon] 13222: bind 'TargetHeatingCoolingState' characteristic
[2016-10-23 19:33:13] [Symcon] 13222: bind 'CurrentTemperature' characteristic
[2016-10-23 19:33:13] [Symcon] 13222: bind 'TargetTemperature' characteristic
[2016-10-23 19:33:13] [Symcon] 13222: bind 'TemperatureDisplayUnits' characteristic
[2016-10-23 19:33:13] [Symcon] 13222: loading WindowCovering services...
[2016-10-23 19:33:13] [Symcon] 13222: services loaded
[2016-10-23 19:33:13] [Symcon] Initializing platform accessory 'Jalousien Wohnzimmer'...
[2016-10-23 19:33:13] [Symcon] 46032: loading Fan services...
[2016-10-23 19:33:13] [Symcon] 46032: loading GarageDoorOpener services...
[2016-10-23 19:33:13] [Symcon] 46032: loading HumiditySensor services...
[2016-10-23 19:33:13] [Symcon] 46032: loading LightBulb services...
[2016-10-23 19:33:13] [Symcon] 46032: loading LightSensor services...
[2016-10-23 19:33:13] [Symcon] 46032: loading LockMechanism services...
[2016-10-23 19:33:13] [Symcon] 46032: loading Outlet services...
[2016-10-23 19:33:13] [Symcon] 46032: loading Switch services...
[2016-10-23 19:33:13] [Symcon] 46032: loading service 'Switch 1' (18513)...
[2016-10-23 19:33:13] [Symcon] 46032: bind 'On' characteristic
[2016-10-23 19:33:13] [Symcon] 46032: loading TemperatureSensor services...
[2016-10-23 19:33:13] [Symcon] 46032: loading service 'TemperatureSensor 1' (10166)...
[2016-10-23 19:33:13] [Symcon] 46032: bind 'CurrentTemperature' characteristic
[2016-10-23 19:33:13] [Symcon] 46032: loading Thermostat services...
[2016-10-23 19:33:13] [Symcon] 46032: loading WindowCovering services...
[2016-10-23 19:33:13] [Symcon] 46032: loading service 'Rollo Links' (13288)...
[2016-10-23 19:33:13] [Symcon] 46032: bind 'CurrentPosition' characteristic
[2016-10-23 19:33:13] [Symcon] 46032: bind 'TargetPosition' characteristic
[2016-10-23 19:33:13] [Symcon] 46032: bind 'PositionState' characteristic
[2016-10-23 19:33:13] [Symcon] 46032: loading service 'Rollo Rechts' (21685)...
[2016-10-23 19:33:13] [Symcon] 46032: bind 'CurrentPosition' characteristic
[2016-10-23 19:33:13] [Symcon] 46032: bind 'TargetPosition' characteristic
[2016-10-23 19:33:13] [Symcon] 46032: bind 'PositionState' characteristic
[2016-10-23 19:33:13] [Symcon] 46032: services loaded
Scan this code with your HomeKit App on your iOS device to pair with Homebridge:
                       
    ┌────────────┐     
    │ 031-45-154 │     
    └────────────┘     
                       
[2016-10-23 19:33:13] Homebridge is running on port 51826.
events.js:141
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRINUSE :::51826
    at Object.exports._errnoException (util.js:837:11)
    at exports._exceptionWithHostPort (util.js:860:20)
    at Server._listen2 (net.js:1231:14)
    at listen (net.js:1267:10)
    at Server.listen (net.js:1363:5)
    at EventedHTTPServer.listen (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/util/eventedhttp.js:58:19)
    at HAPServer.listen (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/HAPServer.js:155:20)
    at Bridge.Accessory.publish (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:480:16)
    at Server._publish (/usr/local/lib/node_modules/homebridge/lib/server.js:92:16)
    at Server.<anonymous> (/usr/local/lib/node_modules/homebridge/lib/server.js:351:14)

Leider wüsste ich nicht, wie ich das beheben sollte oder kann und ob es überhaupt daran liegt. Ich habe auch bereits versucht die Homebridge aus den entsprechenden Apps zu entfernen und nochmal hinzuzufügen. Gebracht hat es nichts. Die Homebridge wird stattdessen gar nicht mehr gefunden.

Habt ihr irgendwelche Ideen?

Danke und viele Grüße

Die Probleme kenne ich leider auch. Eine Lösung habe ich nicht. Sobald es einmal ein Problem gab, hilft nur die komplette Konfiguration weg werfen. Irgendwann gibt man auf da ich mir sicher bin, dass es am Plugin liegt. Was auch noch sein kann, dass es wieder mal Kompatibilitätsprobleme in NPM gibt. Die kommen leider auch immer wieder dazu.