Dieser Beitrag wurde seit einem Jahr nicht mehr aktualisiert. Im Internet ist das manchmal eine halbe Ewigkeit. Es kann daher sein, dass die Informationen und Links nicht mehr aktuell sind.
Mit einem Plugin für die Homebridge Platform lassen sich viele an homee angeschlossene Geräte nun auch über Siri steuern. Hier zeige ich Dir, wie Homebridge und das benötigte Plugin installiert werden.
Voraussetzungen
- homee Brain Cube
- Raspberry Pi (RPi 2 oder 3) mit Raspbian
Wenn Du noch keinen RPi hast, kann ich dieses Komplettset* empfehlen:
Da ist alles dabei was Du für einen Start brauchst.
Hinweis: Die Installation ist grundsätzlich auch auf anderen Systemen möglich. Dazu werden unter Umständen jedoch andere Befehle benötigt.
Installation der benötigten Software
Um die virtuellen Geräte erstellen zu können, brauchen wir NodeJS, Homebridge und ein Plugin. Zur Installation melden wir uns zuerst per SSH auf dem RPi an. Anstelle des raspberrypi.local kannst du auch die IP-Adresse eingeben.
ssh pi@raspberrypi.local
Anschließend aktualisierst Du mit folgenden Befehlen die Paketquellen und fügst eine Paketquelle für NodeJS hinzu.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt-get install -y build-essential
sudo apt-get install libavahi-compat-libdnssd-dev
Der Befehl node -v
sollte Dir nach der erfolgreichen Installation die Versionsnummer ausgeben
Installation von Homebridge und homebridge-homee
Jetzt installieren wir Homebridge und das benötigte Plugin
sudo npm install -g homebridge --unsafe-perm
sudo npm install -g homebridge-homee
Damit die Homebridge auch nach einem Neustart läuft, erstellen wir nun mit folgendem Befehl eine neue Datei …
sudo nano /etc/init.d/homebridge
… und fügen dort folgenden Inhalt ein:
#!/bin/sh
### BEGIN INIT INFO
# Provides: homebridge
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
dir="/home/pi"
cmd="/usr/bin/homebridge"
user="pi"
name=`basename $0`
pid_file="/var/run/$name.pid"
stdout_log="/var/log/$name.log"
stderr_log="/var/log/$name.err"
get_pid() {
cat "$pid_file"
}
is_running() {
[ -f "$pid_file" ] && ps -p `get_pid` > /dev/null 2>&1
}
case "$1" in
start)
if is_running; then
echo "Already started"
else
echo "Starting $name"
cd "$dir"
if [ -z "$user" ]; then
sudo $cmd >> "$stdout_log" 2>> "$stderr_log" &
else
sudo -u "$user" $cmd >> "$stdout_log" 2>> "$stderr_log" &
fi
echo $! > "$pid_file"
if ! is_running; then
echo "Unable to start, see $stdout_log and $stderr_log"
exit 1
fi
fi
;;
stop)
if is_running; then
echo -n "Stopping $name.."
kill `get_pid`
for i in 1 2 3 4 5 6 7 8 9 10
# for i in `seq 10`
do
if ! is_running; then
break
fi
echo -n "."
sleep 1
done
echo
if is_running; then
echo "Not stopped; may still be shutting down or shutdown may have failed"
exit 1
else
echo "Stopped"
if [ -f "$pid_file" ]; then
rm "$pid_file"
fi
fi
else
echo "Not running"
fi
;;
restart)
$0 stop
if is_running; then
echo "Unable to stop, will not attempt to start"
exit 1
fi
$0 start
;;
status)
if is_running; then
echo "Running"
else
echo "Stopped"
exit 1
fi
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
;;
esac
exit 0
Mit STRG+O
lässt sich die Datei speichern, mit STRG+X
wird der Editor geschlossen.
Jetzt geben wir der Datei noch die richtigen Rechte und sorgen für den Autostart.
sudo chmod 755 /etc/init.d/homebridge
sudo update-rc.d homebridge defaults
Bevor wir Homebridge das erste mal starten, erstellen wir noch eine Konfigurationsdatei…
nano ~/.homebridge/config.json
und fügen hier folgenden Inhalt ein:
{
"bridge": {
"name": "Homebridge",
"username": "CC:22:3D:E3:CE:51",
"port": 51826,
"pin": "031-45-154"
},
"description": "This is an example configuration file for the homebridge-homee plugin",
"hint": "Always paste into jsonlint.com validation page before starting your homebridge, saves a lot of frustration",
"platforms": [
{
"platform": "homee",
"name": "homee",
"host": "192.168.178.1",
"user": "your-username",
"pass": "your-password"
}
]
}
Die Werte von host, user und pass musst du entsprechend anpassen. Host ist die IP-Adresse, user und pass sind die Zugangsdaten zu Deinem homee.
Wenn alles funktioniert hat, lässt sich homebridge mit sudo /etc/init.d/homebridge start
starten. Jetzt muss die Homebridge nur noch als neues Gerät in der Home App hinzugefügt werden. Ein Großteil Deiner Geräte sollte mit der aktuellen Version bereits funktionieren.
Geräte- und Homeegramm Einschränkungen
Apple unterstütz je Bridge maximal 100 Geräte. Solltest Du mehr Geräte und Homeegramme haben oder möchtest nicht alle in Homebridge einbinden, erstelle in homee eine Gruppe mit dem Namen “Homebridge”. Dieser Gruppe fügst du nun alle gewünschten Geräte und Homeegramme hinzu. Die nicht in der Gruppe enthaltenen Geräte werden von Homebridge ignoriert.
Fehlerbehebung
Hinweise und Fehlernachrichten lassen sich bei Bedarf in /var/log/homebridge.log
und
/var/log/homebridge.err
finden.