, , ,

Sprachsteuerung Homematic: Amazon Alexa und Siri zusammen auf einem Raspberry Pi

Unsere Anleitungen für die Siri Sprachsteuerung und die Alexa Sprachsteuerung kommen bei Euch sehr gut. Das Homematic Smarthome lässt sich darüber bestens bedienen. Um beide Systeme Siri und Alexa gleichzeitig nutzen zu können, habe ich Euch eine weitere Anleitung geschrieben, wie Ihr mit nur einem Raspberry Pi3 beides nutzen könnt.

ioBroker für die Alexa Sprachsteuerung und die Homebridge für de Siri Sprachsteuerung laufen parallel. Alle Befehle sind sauber ausgeführt, sodass Ihr 1:1 dieser Anleitung folgen könnt.

Was wird benötigt?

Bezeichnung Amazon ELV-Shop ELV-Bausatz
16 GB SD-Karte Link Link nicht verfügbar
Powerline Adapter (otional) Link Link nicht verfügbar
Amazon Echo Link nicht verfügbar nicht verfügbar
Amazon Echo Dot Link nicht verfügbar nicht verfügbar
CCU2 Link Link Bausatz
Funkmodul Raspberry Pi nicht verfügbar nicht verfügbar Bausatz
Raspberry Pi 2 Link Link nicht verfügbar
Raspberry Pi3 Link Link nicht verfügbar

INFO – Aufgrund der häufigen Nachfrage: Ich kann Euch sehr gerne eine komplett konfiguriertes und getestetes System (Raspberry Pi3 + SD-Karte + Gehäuse und Netzteil) zukommen lassen. Falls Ihr noch einen Pi3 habt, kann ich Euch auch nur die SD-Karte fertig machen!

Schreibt mich dazu einfach an: sebastian(at)technikkram.net

Zuerst müssen wir ein Linux-Image herunterladen und die Speicherkarte vorbereiten.

SD-Karte schreiben

Für die Software benötigen wir eine schnelle microSD Karte. Ich habe mir dazu einen 16 GB Karte von SanDisk bestellt.

Ein Netzteil mit 2,5A sorgt für den stabilen Betrieb. Ein Gehäuse und ein Netzwerkkabel werden auch benötigt.

Schritt 1: Installation Win32 Disk Imager

Bevor wir mit dem Raspberry starten können, müssen wir die Software auf die SD-Karten bringen. Dafür benötigen wir die Software Win32 Disk Imager. Damit können wir das Betriebssystem auf die SD-Karte kopieren.


Schritt 2: Herunterladen des aktuellen Betriebssystems für den Raspberry Pi

Wir verwenden für unsere Home-Bridge Rasbian. Die neuste Version bekommt Ihr hier her. Der Download dauert etwas, da das Image ca. 1,4 GB groß ist.

Schritt 3: Rasbian Image auf SD-Karte kopieren:

Dazu starten wir den soeben installierten Win32 Disk Imager. Sollte eine Fehlermeldung kommen, muss die Software als Administrator gestartet werden (rechte Maustaste „Als Administrator ausführen“).

win32-disk-imager

Bei Image File wählt Ihr das entpackte Rasbian Image, welches wir soeben heruntergeladen haben. Bei Device wird nun die microSD-Karte ausgewählt, auf die wir das Image schreiben wollen.

Mit einem Klick auf „Write“ wird der Vorgang gestartet. Das schreiben des Images dauert ca. 2 Minuten.

Nachdem die Karte geschrieben ist, wird diese in den Pi eingesetzt und wir können mit der Installation starten. Dazu verbinden wir uns mit der Hilfe von Putty mit dem Pi.

Mit Putty auf den Pi zugreifen

Da wir nun die IP-Adresse von unsere Pi wissen, können wir über das Programm Putty darauf zugreifen.

Wir starten dazu Putty und tragen bei „Host Name“ die zuvor ermittelte IP-Adresse ein.

putty-raspberry

Der Port bleibt unverändert bei 22. Mit einem Klick auf „Open“ stellen wir nun eine Verbindung zum Raspberry Pi her. Sollte ein Fenster mit einer Meldung erscheinen, dass der host key noch nicht gecached ist, beantworten wir diese mit „Ja“.

Login und Updates durchführen

Tipp: Ihr könnt die Eingaben hier kopieren und einfach mit der rechten Maustaste im Putty-Fenster einfügen.

Nun erscheint ein schwarzes Eingabefenster mit den Meldung „login as:“

pi
raspberry

Als nächsten Schritt ändern wir zuerst das vorhandene Passwort, um den Pi vor unerwünschten Zugriffen zu schützen.

Der Befehl dazu lautet:

passwd

Zunächst müssen wir das alte Passwort raspberry eingeben, gefolgt von 2x dem neuen. Die Eingabe ist dabei nicht zu sehen, damit die Länge des neuen Passwortes nicht ausgespäht werden kann.

sudo apt-get update
sudo apt-get upgrade

Sollte hier eine Abfrage erscheinen, muss diese mit Y bestätigt werden. Sollte zusätzlich ein Changelog aufgehen kann dieses mit q geschlossen werden.

Für den Raspberry Pi2 macht Ihr hier weiter:

Code anzeigen für Pi2

Jede Zeile muss mit einem „Enter“ bestätigt werden

wget https://nodejs.org/dist/v4.3.2/node-v4.3.2-linux-armv7l.tar.gz

tar -xvf node-v4.3.2-linux-armv7l.tar.gz

cd node-v4.3.2-linux-armv7l

sudo cp -R * /usr/local/

cd

rm node-v4.3.2-linux-armv7l.tar.gz

rm -R node-v4.3.2-linux-armv7l/

Ich empfehle an dieser Stelle den Pi3 zu verwenden, da das ganze System viel flüssiger läuft. 

Für den Raspberry Pi3 macht Ihr hier weiter:

Code anzeigen für Pi3
wget https://nodejs.org/dist/v4.3.2/node-v4.3.2-linux-armv6l.tar.gz

tar -xvf node-v4.3.2-linux-armv6l.tar.gz

cd node-v4.3.2-linux-armv6l

sudo cp -R * /usr/local/

cd

rm node-v4.3.2-linux-armv6l.tar.gz

rm -R node-v4.3.2-linux-armv6l/
weitere Pakete installieren gilt für den Pi2 und Pi3
sudo apt-get install libavahi-compat-libdnssd-dev

Installation der Homebridge:

sudo npm install -g --unsafe-perm homebridge

und anschließend das Homematic Plugin:

sudo npm install -g homebridge-homematic
Autostart einrichten

Autostart der Homebridge einrichten:

sudo npm install forever

Bei der Installation taucht eine Warnung auf, diese kann ignoriert werden!

Nun muss noch das Skript angepasst werden, dazu geben wir folgenden Befehl ein:

sudo nano /etc/init.d/homebridge

Es öffnet sich ein leeres Fenster, in das Ihr folgenden Code kopiert:

#!/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 for homebridge
# Description: Enable service provided by daemon.
### END INIT INFO
export PATH=$PATH:/usr/local/bin
export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules
PID=`pidof homebridge`
case "$1" in
start)
if ps -p $PID > /dev/null 2>&1; then
echo "Homebridge is already running"
else
su - pi -c "homebridge > /dev/null 2>&1 &"
echo "Homebridge starting"
$0 status
fi
;;
stop)
if ! ps -p $PID > /dev/null 2>&1; then
echo "Homebridge is not running"
else
kill $PID
echo "Homebridge closed"
fi
;;
restart)
if ! ps -p $PID > /dev/null 2>&1; then
$0 start
else
$0 stop
$0 start
fi
;;
status)
if ps -p $PID > /dev/null 2>&1; then
echo "Homebridge is running PID $PID"
else
echo "Homebridge is not running"
fi
;;
*)
echo "Usage: $0 {start|stop|status|restart}"
exit 1
;;
esac
exit 0

Nachdem der Code kopiert ist drückt Ihr die Strg + X Taste. Den folgenden Dialog bestätigt Ihr mit Y.

Nun muss dem Skript noch ausreichende Rechte eingeräumt werden. Dazu gebt Ihr folgenden Befehl ein:

sudo chmod 755 /etc/init.d/homebridge

sudo update-rc.d homebridge defaults
Config der Homebridge schreiben

Nun können wir die Konfigurationsdatei schreiben, damit wir Daten von unserer CCU2 erhakten können. Dazu geben wir diese Befehle ein:

mkdir -p ~/.homebridge

sudo nano ~/.homebridge/config.json

Es öffnet sich erneut ein leeres Fenster. In das Fenster kopieren wir nun folgenden Inhalt:

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

 "platforms": [{
 "platform": "HomeMatic",
 "name": "HomeMatic CCU2",
 "ccu_ip": "192.168.178.41",
 "filter_device": [],
 "filter_channel": [],
 "outlets": [],
 "doors": [],
 "programs": [],
 "accessories": [],
 "subsection": "Homekit",
 "variables": ["Anwesenheit", "Automatikfunktionen"]
 }]
}

Wenn Ihr die Variablen nicht nutzen wollt, dann löscht „VARIABLE1 und VARIABEL2 raus. Wenn Ihr mehr dazu wissen wollt, dann schaut Euch mein Tutorial dazu an.

Bei „ccu_ip“: Muss Eure richtige IP-Adresse der CCU2 eingetragen werden. Nach dem Kopieren kann das Fenster wieder mit Strg + X geschlossen werden. Mit Y wird der Speichervorgang abgeschlossen.

Mit diesen Schritten haben wir die Homebridge für Siri bereits installiert. Für die weitere Konfiguration der CCU2 und das Einrichten der Apple HomeKit App macht Ihr in diesem Tutorial bei Schritt 6 weiter!

Parallelinstallation von ioBroker für die Amazon Alexa – Sprachsteuerung

Nun installieren wir parallel auf dem Raspberry Pi3 ioBroker für die Sprachsteuerung mit Alexa. Dazu bleiben wir im aktuellen Putty-Fenster und führen folgende Schritte aus:

Installation von Node.js

Nachdem wir uns mit Putty eingeloggt haben, müssen einige Befehle ausgeführt werden. Diese könnt Ihr hier einfach herauskopieren und mit einem Klick auf die rechte Maustaste im Putty-Fenster einfügen.

Pi2 und Pi3:

curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -

sudo apt-get install -y build-essential python nodejs

sudo reboot

Hinweis: Es kann vorkommen, dass Ihr während des Updates eine Meldung mit „Y“ bestätigen müsst. Auch kann eine Changelog geöffnet werden, die Ihr dann mit „q“ schließen könnt.

Installation ioBroker
sudo mkdir /opt/iobroker

sudo chmod 777 /opt/iobroker

cd /opt/iobroker

sudo npm install iobroker --unsafe-perm

Nun können wir die weitern Schritte dieser Anleitung befolgen.

Damit sind wir auch schon durch! Nun können wir Alexa und Siri parallel für die Bedienung unser Smart-Home nutzen ;-)

Viel Spaß damit!

13 Kommentare
  1. ZockerPlaysHD
    ZockerPlaysHD sagte:

    Bei mir funktioniert der befehl

    rm node-v4.3.2-linux-armv6l.tar.gz
    und der Befehl
    rm -R node-v4.3.2-linux-armv6l/

    nicht.

    kann mir jemand helfen???

    Antworten
  2. Holger
    Holger sagte:

    Hi, ich habe bereits die Homebridge auf einem Pi laufen (läuft sehr gut, danke für die tolle Anleitung hierauf der HP), kann ich jetzt einfach ab dem Punkt in der Anleitung „Parallelinstallation von ioBroker für die Amazon Alexa – Sprachsteuerung“ einsteigen und IO Broker zusätzlich auf dem Pi installieren?

    Antworten
  3. Christian
    Christian sagte:

    Hi

    meine Frage wäre jetzt nach längerer Zeit wie so den Langzeit Fazit ist?
    wer Reagiert besser und/oder schneller, Aelxa oder Siri?
    wer ist benutzer freundlicher?

    mfg
    chris

    Antworten
  4. Dieter Kistner
    Dieter Kistner sagte:

    Hallo Sebastian,
    erst mal vielen Dank für deine vielen tollen Anleitungen.
    Ich bin neu bei Homematic und habe einen Raspberry Pi 3 mit der RaspberryMatic.
    ist es möglich ioBroker und die Homebridge auf dem selben Pi zu installieren oder brauche ich dazu einen zweiten?

    Antworten
    • Sebastian
      Sebastian sagte:

      Hallo Dieter mit der aktuellen Version leider nein, du benötigst dafür einen zweiten Pi, da kein Programm parallel zu RaspberryMatic laufen kann.

      Antworten
  5. Viktor
    Viktor sagte:

    Hallo Sebastian,

    zunächst einmal danke für deine Zahlreichen Anleitungen.

    Ich hätte erst mal eine Grundsätzliche Frage:
    In dieser Anleitung verwendest du als Betriebsystem „raspbian-jessie“ in einer anderen Anleitung das Betriebssystem „RaspberryMatic“.
    Kannst einmal aufzeigen welches Betriebssystem für welche Anwendung das richtig ist.
    Ich möchte gerne die HM Steuerung mit Siri und Alexa auf einen Raspberry Pi 3 realisieren und tue mich gerade mit der Zuordnung der Betriebssystemen schwer.

    LG

    Antworten
    • Sebastian
      Sebastian sagte:

      Hallo Viktor, ich nutze Jessie (lite) für die Sprachsteuerung. RaspberryMatic dient als Ersatz für die CCU2. Hier hat Jens Maus was eigenes gebaut, ich kann dir allerdings nicht sagen, welche Linix Distribution dafür verwendet worden ist. Das Image bekommst du ja bei Github.

      Antworten
  6. Max
    Max sagte:

    Reicht dafür ein Pi B oder muss es auch hier ein 2 bzw. 3 sein? Habe noch ein Modell B rumfliegen, könnte man gut dafür nutzen… Aber wenn die Leistung nicht ausreicht, bringt es ja nichts.

    Antworten
    • Sebastian
      Sebastian sagte:

      Also die Pi’s der 1. Generation habe definitiv zu wenig Power. Ich hatte es auf einem Pi B getestet und habs dann nach 20 min aufgegeben. Tu Dir selbst einen Gefallen und benutze den Pi3 ;-)

      Antworten
      • Timm
        Timm sagte:

        Hallo Sebastian,

        das weiß ich aber ich würde es lieber sehen, wenn über die CCU2 „alles“ gesteuert werden würde.

        Meine Frage zielt auf die virtuellen Geräte ab. Ich dachte, dass diese dazu da sind!?

        LG

        Antworten

Hinterlasse einen Kommentar

An der Diskussion beteiligen?
Hinterlasse uns deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert