Hallo Leute,
hier mal die Anleitung von einem Raspberry-Anfänger und Programmier Greenhorn, wie man Homee, Apple Homekit und Raspberry Pi verknüpft. Wenn ein Profi einen Fehler finden sollte, gerne melden…
Voraussetzung:
- Homee
- Raspberry PI (ich habe den 3 er Komplett Bundle über Amazon gekauft)
- Handy mit Siri
Möglichkeiten, die ich getestet habe:
- Manuelle Installation. SD Karte formatieren, Noobs Lite herunterladen und Dateien auf SD kopieren, in Raspberry Pi stecken, mit Monitor verbinden und Betriebssystem über WLAN downloaden und installieren lassen. Danach mittels Monitor noch die Einstellungen (Zeitzone, Keyboard, SSH aktivieren etc. durchführen), fertig.
- Komplettes Aufsetzen des Systems über App: „Homebridge für RaspberryPi“ von [Niklas von Weihe](https://appsto.re/de/HXM8cb.i15](https://appsto.re/de/HXM8cb.i15)
Mir ist hier Version 1 lieber, da ich entscheiden kann, was auf dem Raspberry an Paketen und Plugins installiert wird.
–> Update vom 25.02.17: Da ich aber keine fundierte Ahnung von Noobs und Co. habe, bin ich bedingt durch Instabilitäten zwischenzeitlich wieder auf die Variante 2 gewechselt. Die App und Installation läuft seit dem letzten Update auch mehr oder weniger stabil. Bei mir mit HarmonyHub und Webhooks Plugins. Letztere habe ich manuell installiert. Ab und zu ist aber auch hier ein manueller Neustart der Homebridge notwendig.
Größter Unterschied zwischen beiden Varianten. Bei 1 laufen nur die installierten Plugins, bei 2 waren es über 10. Bitte auch beachten: Die App aus 2 ist nicht mit der Version 1 kombinierbar. Also nicht 1 installieren und dann 2 “rüberkopieren”. Hier gibt es Fehler in der Darstellung, wahrscheinlich weil die Pakete von 2 an einen anderen Ort kopiert bzw. die Verknüpfung fehlt.
Hier trotzdem das Vorgehen für 1.:
Zunächst Verbindung zum Pi herstellen. Anleitung hier.. Wenn ihr mit dem Pi verbunden und eingeloggt seid:
1.Update/Upgrade
sudo apt-get update
sudo apt-get dist-upgrade
2.Installation von NodeJS, gilt für Raspberry 3
wget https://nodejs.org/dist/v7.3.0/node-v7.3.0-linux-armv7l.tar.gz
tar -xvf node-v7.3.0-linux-armv7l.tar.gz
cd node-v7.3.0-linux-armv7l
Enter
sudo cp -R * /usr/local/
cd
3.Weitere Pakete installieren
sudo apt-get install libavahi-compat-libdnssd-dev
4.Installation Homebridge
sudo npm install -g --unsafe-perm homebridge
5.Autostart Homebridge einrichten
sudo nano /etc/init.d/homebridge
Feld mit folgendem Inhalt füllen (reinkopieren, speichern und schließen):
#!/bin/sh
### BEGIN INIT INFO
# Provides: homebridge
# Required-Start: $network $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="DEBUG=* /usr/local/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 `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..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
6.Benutzerrechte für Skript vergeben
sudo chmod 755 /etc/init.d/homebridge
sudo update-rc.d homebridge defaults
7.Homebridge starten
sudo /etc/init.d/homebridge start
8.Webhook Plugin installieren
sudo npm install -g homebridge-http-webhooks
9.Optional: Harmony Plugin installieren
sudo npm install -g homebridge-harmonyhub
10.homekit.Json konfigurieren
sudo nano ~/.homebridge/config.json
11.Hier den Inhalt einfügen, den es individuell anzupassen gilt und bei dem die meisten Fehler passieren, wie auch bei mir. Vorlagen findet ihr hier. Zudem müsst ihr die WebHooks mit den auszuführenden Homeegrammen verknüpfen. Optional ist die Live-Verknüpfung von geschalteten Geräten. Die Anleitung findet ihr ein paar Posts vor diesem Beitrag.
12.Home App auf dem Handy mit der Homebridge (Pairing Code) koppeln und hoffen das es tut
13.Ein Reboot kann i.d.R., auch zwischen drin, nicht schaden…
sudo reboot
Viel Erfolg!