Homebridge-homematic auf Mac zum laufen bringen (Für Siri)

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

Antworten
Ritschi
Beiträge: 587
Registriert: 07.11.2012, 08:02
Wohnort: Schweiz, Graubünden
Hat sich bedankt: 25 Mal
Danksagung erhalten: 9 Mal

Homebridge-homematic auf Mac zum laufen bringen (Für Siri)

Beitrag von Ritschi » 13.05.2016, 23:05

Hallo zusammen

Erstmal möchte ich erwähnen, dass ich keinerlei Programmierkenntnisse habe und all das was ich in der kommenden Anleitung beschreibe irgendwo im Netz gefunden habe.
Die Anleitung basiert auf dem Thread "RPi2 - Homebridge : Siri for the rest of us" http://homematic-forum.de/forum/viewtop ... 19&t=27465 von thkl. (Bitte diesen lesen)
Da ich zuhause einen Mac-mini als Server betreibe, wollte ich die Funktion unbedingt auf den Mac kriegen, damit ich nicht noch nebenbei einen Raspi betreiben muss.

Hier geht es darum dasselbe, was thkl auf einem Raspi macht auf den Mac zu kriegen und somit die HM Komponenten mit Siri zu steuern.

Also legen wir los:

1. Installiere node: https://nodejs.org/en/download/ (Im Moment die Version 4.4.4)

2. Öffne das Terminal und gebe folgenden Befehl ein:

Code: Alles auswählen

sudo npm install homebridge
3. Gib folgenden Befehl im Terminal ein:

Code: Alles auswählen

sudo npm install homebridge-homematic
4. Im Terminal in den Ordner .homebridge wechseln mit folgendem Befehl:

Code: Alles auswählen

cd .homebridge
5. Im Terminal mit dem Befehl die config.json generieren.

Code: Alles auswählen

sudo nano config.json
6. In das geöffnete Fenster folgenden Code kopieren:

Code: Alles auswählen

{
	"bridge": {
		"name": "Homebridge-Mac",
		"username": "CC:22:3D:E3:CE:30",
		"port": 51826,
		"pin": "031-45-154"
	},
	"description": "This is an autogenerated config. only the homematic platform is enabled. see the sample for more",
	"platforms": [{
		"platform": "Homebridge-Mac",
		"name": "HomeMatic",
		"ccu_ip": "192.168.1.XXX",
		"subsection": "Siri-CCU",
		"doors": [],
		"filter_device": [],
		"filter_channel": [],
		"programs": [],
		"variables": [],
		"outlets": []
	}],
	"accessories": []
}
Hier folgendes anpassen:
ccu_ip = Die IP deiner CCU2
Subsection = Gewerk (Das du im WEBUI angelegt hast) (In dieses Gewerk kommen alle Geräte rein, die du mit Siri steuern willst.
Die übrigen Erklärungen sind schon im Thread von thkl sehr gut beschrieben. Diese schreibe ich nicht nochmal nieder.

7. mit der Tastenkombination ctrl + o (nicht null) die config.json speichern.
Dann mit der Tastenkombination ctrl + x die config.json schliessen.

8. Im Terminal homebridge eingeben. Dies startet den dienst. Dann sollte es ca. so aussehen:
homebridge.png
9. Lade aus dem App Store die "EVE" App.

10. In der Eve App Gerät hinzufügen. Wähle dort "Homebridge-Mac"

11. Fertig.

Sobald das Terminal Fenster geschlossen wird, wird auch homebridge geschlossen!

Falls Homebridge automatisch mit dem Mac starten soll, geht zu:
"Einstellungen" "Benutzer und Gruppen" "Anmeldeobjekte"

links unten auf das + klicken.
Dort dann du folgendem Pfad gehen und die homebridge Datei auswählen.

Code: Alles auswählen

/usr/local/lib/node_modules/homebridge/bin/homebridge
Somit startet Homebridge bei Neustart des Mac immer auch gleich mit.

Im Thread von thkl die FAQ: Weitgehend auch für den Mac gültig.

Gruss
Ritschi
Zuletzt geändert von Ritschi am 27.05.2017, 21:55, insgesamt 1-mal geändert.
Raspberry-Matic auf Tinkerboard, Mediola Gateway V3, Mediola Gateway V2, iobroker, Homebridge-homematic auf Mac, Homeassistant

Jimmy Neutron
Beiträge: 3
Registriert: 20.06.2016, 22:53

Re: Homebridge-homematic auf Mac zum laufen bringen (Für Sir

Beitrag von Jimmy Neutron » 20.06.2016, 22:57

Hi,

ich konnte auf meinem Mac-Server Homebridge installieren.

Hier die Einträge:

macserver:~ hhamann$ su - root
Password:
macserver:~ root# npm install homebridge

> curve25519@1.1.0 install /private/var/root/node_modules/homebridge/node_modules/hap-nodejs/node_modules/curve25519
> node-gyp rebuild

gyp WARN EACCES user "root" does not have permission to access the dev dir "/var/root/.node-gyp/4.4.5"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/private/var/root/node_modules/homebridge/node_modules/hap-nodejs/node_modules/curve25519/.node-gyp"
CXX(target) Release/obj.target/curve/node_curve.o
SOLINK_MODULE(target) Release/curve.node

> ed25519@0.0.3 install /private/var/root/node_modules/homebridge/node_modules/hap-nodejs/node_modules/ed25519
> node-gyp rebuild

gyp WARN EACCES user "root" does not have permission to access the dev dir "/var/root/.node-gyp/4.4.5"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/private/var/root/node_modules/homebridge/node_modules/hap-nodejs/node_modules/ed25519/.node-gyp"
CC(target) Release/obj.target/ed25519/src/ed25519/keypair.o
CC(target) Release/obj.target/ed25519/src/ed25519/sign.o
CC(target) Release/obj.target/ed25519/src/ed25519/open.o
CC(target) Release/obj.target/ed25519/src/ed25519/crypto_verify_32.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_double_scalarmult.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_frombytes.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_scalarmult_base.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_precomp_0.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_p2_0.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_p2_dbl.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_p3_0.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_p3_dbl.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_p3_to_p2.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_p3_to_cached.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_p3_tobytes.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_madd.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_add.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_msub.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_sub.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_p1p1_to_p3.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_p1p1_to_p2.o
CC(target) Release/obj.target/ed25519/src/ed25519/ge_tobytes.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_0.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_1.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_cmov.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_copy.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_neg.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_add.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_sub.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_mul.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_sq.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_sq2.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_invert.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_tobytes.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_isnegative.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_isnonzero.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_frombytes.o
CC(target) Release/obj.target/ed25519/src/ed25519/fe_pow22523.o
CC(target) Release/obj.target/ed25519/src/ed25519/sc_reduce.o
CC(target) Release/obj.target/ed25519/src/ed25519/sc_muladd.o
CXX(target) Release/obj.target/ed25519/src/ed25519.o
SOLINK_MODULE(target) Release/ed25519.node

> mdns@2.3.3 install /private/var/root/node_modules/homebridge/node_modules/hap-nodejs/node_modules/mdns
> node-gyp rebuild

gyp WARN EACCES user "root" does not have permission to access the dev dir "/var/root/.node-gyp/4.4.5"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/private/var/root/node_modules/homebridge/node_modules/hap-nodejs/node_modules/mdns/.node-gyp"
CXX(target) Release/obj.target/dns_sd_bindings/src/dns_sd.o
CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_browse.o
CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_enumerate_domains.o
CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_get_addr_info.o
CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_process_result.o
CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_ref.o
CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_ref_deallocate.o
CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_ref_sock_fd.o
CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_register.o
CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_resolve.o
CXX(target) Release/obj.target/dns_sd_bindings/src/dns_service_update_record.o
CXX(target) Release/obj.target/dns_sd_bindings/src/mdns_utils.o
CXX(target) Release/obj.target/dns_sd_bindings/src/network_interface.o
CXX(target) Release/obj.target/dns_sd_bindings/src/socket_watcher.o
CXX(target) Release/obj.target/dns_sd_bindings/src/txt_record_ref.o
CXX(target) Release/obj.target/dns_sd_bindings/src/txt_record_create.o
CXX(target) Release/obj.target/dns_sd_bindings/src/txt_record_deallocate.o
CXX(target) Release/obj.target/dns_sd_bindings/src/txt_record_set_value.o
CXX(target) Release/obj.target/dns_sd_bindings/src/txt_record_get_length.o
CXX(target) Release/obj.target/dns_sd_bindings/src/txt_record_buffer_to_object.o
SOLINK_MODULE(target) Release/dns_sd_bindings.node

> bignum@0.12.5 install /private/var/root/node_modules/homebridge/node_modules/hap-nodejs/node_modules/srp/node_modules/bignum
> node-pre-gyp install --fallback-to-build

[bignum] Success: "/private/var/root/node_modules/homebridge/node_modules/hap-nodejs/node_modules/srp/node_modules/bignum/binding/bignum.node" is installed via remote
homebridge@0.3.4 node_modules/homebridge
├── semver@5.0.3
├── commander@2.8.1 (graceful-readlink@1.0.1)
├── node-persist@0.0.8 (q@1.1.2, mkdirp@0.3.5)
├── chalk@1.1.3 (escape-string-regexp@1.0.5, supports-color@2.0.0, ansi-styles@2.2.1, strip-ansi@3.0.1, has-ansi@2.0.0)
└── hap-nodejs@0.3.2 (debug@2.2.0, curve25519@1.1.0, ed25519@0.0.3, mdns@2.3.3, srp@0.2.1)
macserver:~ root# npm install homebridge-homematic
homebridge-homematic@0.0.30 node_modules/homebridge-homematic
├── debug@2.2.0 (ms@0.7.1)
├── homematic-xmlrpc@1.0.1 (xmlbuilder@0.4.2, sax@0.4.3)
└── request@2.72.0 (aws-sign2@0.6.0, oauth-sign@0.8.2, tunnel-agent@0.4.3, forever-agent@0.6.1, caseless@0.11.0, is-typedarray@1.0.0, stringstream@0.0.5, aws4@1.4.1, isstream@0.1.2, json-stringify-safe@5.0.1, extend@3.0.0, tough-cookie@2.2.2, node-uuid@1.4.7, qs@6.1.0, combined-stream@1.0.5, mime-types@2.1.11, form-data@1.0.0-rc4, hawk@3.1.3, bl@1.1.2, http-signature@1.1.1, har-validator@2.0.6)

Dann laut Anleitung:

macserver:~ root# cd .homematic
-sh: cd: .homematic: No such file or directory

Jetzt Notfall-Szenario:

cd node_modules/
cd homebridge
cp config-sample.json config.json
nano config.json

Hier nun das Script:

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

"description": "This is an example configuration file with one fake accessory and one fake platform. You can use this as a template for creating your own configuration file c$

"accessories": [
{
"accessory": "WeMo",
"name": "Coffee Maker"
}
],

"platforms": [
{
"platform": "Homebridge-Mac",
"name": "HomeMatic",
"ccu_ip": "192.168.0.XX", XX durch IP ersetzt
"subsection": "Siri",
"doors": [],
"filter_device": [],
"filter_channel": [],
"programs": [],
"variables": [],
"outlets": []
}
]
}

Bein Start bekomme ich folgende Meldungen.

macserver:bin root# ./homebridge
[6/20/2016, 10:47:22 PM] Loaded plugin: homebridge-homematic
[6/20/2016, 10:47:22 PM] Registering platform 'homebridge-homematic.HomeMatic'
[6/20/2016, 10:47:22 PM] ---
Scan this code with your HomeKit App on your iOS device to pair with Homebridge:

┌────────────┐
│ 0xx-xx-xxx │
└────────────┘

[6/20/2016, 10:47:22 PM] Homebridge is running on port 51826.

Nur bekomme ich in den Apps keine Geräte angezeigt. Die Bridge wird einwandfrei erkannt. Was mache ich falsch?

Gruß

Jimmy

Ritschi
Beiträge: 587
Registriert: 07.11.2012, 08:02
Wohnort: Schweiz, Graubünden
Hat sich bedankt: 25 Mal
Danksagung erhalten: 9 Mal

Re: Homebridge-homematic auf Mac zum laufen bringen (Für Sir

Beitrag von Ritschi » 21.06.2016, 08:55

Hi Jimmy

Ich hatte das am Anfang auch.
Versuch mal nur Homebridge zum laufen zu bringen, ohne die accessory Geräte.
Lass das mal weg:

Code: Alles auswählen

{
"accessory": "WeMo",
"name": "Coffee Maker"
}
Gruss
Ritschi
Raspberry-Matic auf Tinkerboard, Mediola Gateway V3, Mediola Gateway V2, iobroker, Homebridge-homematic auf Mac, Homeassistant

Jimmy Neutron
Beiträge: 3
Registriert: 20.06.2016, 22:53

Re: Homebridge-homematic auf Mac zum laufen bringen (Für Sir

Beitrag von Jimmy Neutron » 21.06.2016, 09:22

Hallo Ritschi,

ich habe jetzt den ganzen Kram mit accessory rausgeworfen. Die config.json sieht nun so aus:

Code: Alles auswählen

{
"bridge": {
"name": "Homebridge",
"username": "CC:22:3D:E3:CE:30",
"port": 51826,
"pin": "xxx-xx-xxx"
},
"platforms": [
{
"platform": "Homebridge-Mac",
"name": "HomeMatic",
"ccu_ip": "192.168.0.XX", XX durch IP ersetzt
"subsection": "Siri",
"doors": [],
"filter_device": [],
"filter_channel": [],
"programs": [],
"variables": [],
"outlets": []
}
]
}
Trotzdem kommt beim Start von Homebridge nur folgendes:

[6/21/2016, 09:16:30 AM] Loaded plugin: homebridge-homematic
[6/21/2016, 09:16:30 AM] Registering platform 'homebridge-homematic.HomeMatic'
[6/21/2016, 09:16:30 AM] ---
Scan this code with your HomeKit App on your iOS device to pair with Homebridge:

┌────────────┐
│ 0xx-xx-xxx │
└────────────┘

[6/21/2016, 09:16:30 AM] Homebridge is running on port 51826.

Gruß

Jimmy

otr911
Beiträge: 1
Registriert: 16.02.2017, 20:49

Re: Homebridge-homematic auf Mac zum laufen bringen (Für Sir

Beitrag von otr911 » 16.02.2017, 20:51

Hi,

vielen Dank für die super geschriebene Anleitung.

Leider häng ich doch irgendwie bei starten der Homebridge.

Error: The requested platform 'Homebridge-Mac' was not registered by any plugin.
at API.platform (/usr/local/lib/node_modules/homebridge/lib/api.js:118:13)
at Server._loadPlatforms (/usr/local/lib/node_modules/homebridge/lib/server.js:284:45)
at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:80:36)
at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:40:10)
at Object.<anonymous> (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)
at Module._compile (module.js:571:32)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
Deniss-Air:~ abcde$

Weiß jemand woran es liegen könnte?

vg

schimmel
Beiträge: 1
Registriert: 19.04.2017, 13:14

Re: Homebridge-homematic auf Mac zum laufen bringen (Für Sir

Beitrag von schimmel » 19.04.2017, 13:53

Hallo otr911,

in der config.json gibst Du anstelle von "platform":"Homebridge-Mac' folgenden Eintrag an: "platform": "homebridge-homematic.HomeMatic". Dies hat bei mir zum gewünschten Erfolg geführt.

Gruß, Oliver

Ascharf68
Beiträge: 1
Registriert: 27.05.2017, 10:34

Re: Homebridge-homematic auf Mac zum laufen bringen (Für Sir

Beitrag von Ascharf68 » 27.05.2017, 10:45

Hallo zusammen,
ich bin neu hier und habe keine programmier-kentnisse, die Beschreibung ist schon etwas älter aber ich wollte meinen Mac mini der als server läuft mit dieser Programmierung ausstatten da ich schon lange mit Homematic (CCU2) arbeite aber ich bekomme es einfach nicht zum laufen.....! Die Beschreibung von Ritschi ist super!!! nur wird mir kein Ordner .homematic angelegt und Händisch lässt der mac keine Ordner mit . vor weg anlegen. Was mache ich falsch? Ich scheine wohl der einzige mit diesem Problem zu sein. Würde mich über eine Rückmeldung sehr freuen.
Gruß Andreas

Ritschi
Beiträge: 587
Registriert: 07.11.2012, 08:02
Wohnort: Schweiz, Graubünden
Hat sich bedankt: 25 Mal
Danksagung erhalten: 9 Mal

Re: Homebridge-homematic auf Mac zum laufen bringen (Für Sir

Beitrag von Ritschi » 27.05.2017, 21:59

Hallo Ascharf68

So gut ist meine Anleitung doch nicht geworden :( der Ordner ist nicht "Homematic" sondern "homebridge", versuche es mal so.
Ich habe das in der Anleitung geändert.

Der Ordner .homebridge wird wohl im Finder versteckt sein.
Hier eine Anleitung, wie du versteckte Ordner sichtbar machst:
http://www.maclife.de/ratgeber/diesem-t ... 79994.html

Gruss
Ritschi
Raspberry-Matic auf Tinkerboard, Mediola Gateway V3, Mediola Gateway V2, iobroker, Homebridge-homematic auf Mac, Homeassistant

BastelOpi
Beiträge: 1
Registriert: 28.05.2017, 09:29

Re: Homebridge-homematic auf Mac zum laufen bringen (Für Sir

Beitrag von BastelOpi » 28.05.2017, 09:48

Hallo, schreibe das erste mal hier und hoffe das ich richtig bin. Ich habe eine CCU2 mit etlichen aktoren und Thermostaten sowie Bewegungsmeldern. 1 Jahr hat alles einwandfrei funktioniert und plötzlich habe ich nur Servicemeldungen. Die Anzeigen Kommunikation war oder ist gestört häufen sich aus meiner Sicht ohne erkenntlichen Grund ins " Uferlose ". Ich habe bereits mehrfach die CCU neu gestartet und auch den gesamten Strom des Gebäudes vom Netz genommen. Nach jedem Neusstart scheint es sich erst " behoben " zu haben und nach ca. 5 - 10 Minuten häufen sich wieder die Meldungen. Auch habe ich die CCU mehrfach an einem anderen Platz positioniert was auch nicht zum Erfolg geführt hat. Hat hier Jemand eine Idee was es noch sein könnte oder was ich noch versuchen könnte ? :roll:

Antworten

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“