Du bist hier:Start»Wissen»Smarthome»Rollo

Rollo fürs Fenster mit dem Raspberry Pi 2 steuern

12.03.2017

Vorhang

Da ich Anhänger von kostengünstigen Smarthome-Lösungen bin, habe ich mir Smart Shades gekauft. "Smart Shades" ist ein Motor mit Akku in einem kleinen Gehäuse. Der Motor kann ein Rollo am Fenster über den seitlichen Seilzug runter- und hochziehen. Diese Lösung zur Verdunklung von Fenstern läßt sich auch für Mietwohnungen leicht nachrüsten, da das Rollo in der Wohnung angebracht werden kann. Ein Smart-Shades-Gerät kostet im Augenblick (im Jahr 2017) etwa 80 Euro.

Hardware

Ein Rollo von 160 cm Länge und 240 cm Höhe gibt es zum Beispiel bei "Möbel Kraft" oder "Möbel Höffner" unter dem Namen "for friends". Das Rollo kostet etwa 45 Euro (Stand 2017). Die Auswahl eines Rollos ist flexibel, allerdings sollte das Rollo nicht zu schwer sein. Mit dem Rollo "for friends" habe ich gute Erfahrungen gemacht. Das Rollo gibt es auch zur Verdunklung und die Rückseite kann im Sommer die Sonnenstrahlen reflektieren und damit die Hitze reduzieren. Dieses Rollo läßt sich innen an die Decke oder die Wand schrauben und der Seilzug mit dem Smart-Shades-Gerät verbinden. Das Smart-Shades-Gerät kostet 80 Euro und eine zusätzliche Solarzelle 30 Euro. Smart Shades lassen sich aber auch über ein USB-Kabel ohne Solarzelle aufladen. Ein Hinweis zum Netzteil: da kein Netzteil mitgeliefert wird, kann zum Beispiel ein Handy-Netzteil benutzt werden. Leider funktionierte nicht jedes Netzteil. Mein Samsung-Netzteil hat nicht funktioniert, aber eins von HTC hat den Akku aufgeladen. Auf der SOMA-Webseite kann mit Paypal bezahlt werden. Auf der indiegogo-Seite nur mit Kreditkarte. Auf Youtube gibt es ein Video zur Demonstration der Smart Shades von einem Blogger. Bei mir benötigt das Rollo mit einmal komplett hochziehen und am Abend wieder runterlassen etwa 1,4% der Akku-Leistung, so dass der Akku für zwei Monate ohne Aufladen halten sollte. Bei der Variante mit Solarzelle kann die Solarzelle ins Fenster geklebt werden.

Rollo mit Smart Shades

Rollo mit Smart Shades (zum Vergrößern klicken)

Wie auf dem Foto zu sehen, ist die Solarzelle nicht sehr groß und läßt sich in eine Ecke des Fensters kleben. Damit das Rollo näher am Fenster ist, habe ich es an der Decke befestigt. Noch ein Tipp, damit das Rollo stabiler ist: mit einer Zange können die Enden des Aluminium-Rohres leicht eingedrückt werden. Dadurch halten die Kunststoff-Einsätze besser im Rohr.

Rollo for friends

Rollo "for friends" (zum Vergrößern klicken)

Außerdem hatte ich bei einigen Rollos der Marke "for friends" das Problem, dass die Bremse des Rollos defekt war. Das sollte direkt nach dem Kauf geprüft werden. Möbel Kraft hat den Seitenzug ohne Probleme gegen einen besseren Seitenzug ersetzt. Allerdings mußte ich noch die Schnur wechseln, da die Ersatzschnur etwas zu kurz war. Dazu kann die Kunststoffrolle vorsichtig geöffnet und die längere Schnur eingelegt werden.

Schnur des Seitenzugs wechseln

Schnur des Seitenzugs wechseln

Smartphone-Steuerung

Die App fürs Smartphone heißt com.wazombi.RISE. Die App wird fürs Konfigurieren der Smart Shades benötigt. Dadurch weiß das Gerät, wann sich das Rollo oben und wann unten befindet. Außerdem lassen sich über die App die Zeiten einstellen wann das Rollo oben und wann unten sein soll.

Steuerung über den Raspberry Pi

Der Betreiber des Smarthome-Blog SIIO hat sich beschwert, dass sich Smart Shades nur über Bluetooth bzw. das Smartphone steuern lassen. Dabei läßt sich das Rollo auch über den Raspberry Pi steuern. Mit günstigen 433 MHz Funk-Schaltern für 5 Euro und dem Raspberry Pi als Gateway kann das Rollo komfortabel ohne Smartphone bedient werden.

Rollo mit dem Raspberry Pi und Fernbedienung steuern

Rollo mit dem Raspberry Pi und Fernbedienung steuern

Das obere Symbolbild sieht in der Realität so aus:

Raspberry Pi als Gateway zur Rollosteuerung

Raspberry Pi als Gateway zur Rollosteuerung (zum Vergrößern klicken)

An meinem Raspberry Pi hängt ein Bluetooth-Stick von LogiLink, der mit dem Smart-Shades-Gerät funkt. Optional kann noch ein "LogiLink VG0002A" DVB-T-USB Stick oder der baugleiche CSL - DVB-T USB Stick angesteckt werden. Dieser Stick ist eigentlich zum Empfang von DVB-T gedacht. Allerdings lassen sich damit auch Signale von der Fernbedienung mit 433 MHz empfangen und über Software Defined Radio (SDR) auswerten. Auf 433 MHz-Geräte gehe ich in einem weiteren Artikel ein - jetzt erst einmal Bluetooth.

Jeremy Noel hat auf Bitbucket ein Python-Skript zur Steuerung der Smart-Shades über Bluetooth geschrieben. Ich habe daraus ein Expect-Skript gemacht, das zusätzlich noch die Zeit des Geräts und die Zeit-Trigger setzen kann, wann das Rollo "geöffnet" und wann "geschlossen" sein soll.

wget https://www.torsten-traenkner.de/wissen/smarthome/blindsControl.exp
chmod 755 blindsControl.exp

# become root
sudo bash

# install bluetooth and the tools, if not done yet
apt-get install expect bluez bluetooth

# unblock bluetooth - just in case
rfkill unblock bluetooth

# enable the first bluetooth device
hciconfig hci0 up

# if you have several bluetooth devices
# then search for the bluetooth address (e.g. 00:1A):
export BLUETOOTH_DEVICE=$(hciconfig -a | grep -B1 " 00:1A:" | head -n 1 | sed 's|:.*||g')
hciconfig $BLUETOOTH_DEVICE up

# search bluetooth low energy devices
hcitool lescan

# lists the bluetooth address, e.g. 11:22:33:44:55:66 RISE11
# use the MAC address for the following commands e.g. 11:22:33:44:55:66

# set the trigger to move the roller blind up
./blindsControl.exp 11:22:33:44:55:66 settrigger 1 4 07:30 monday tuesday wednesday thursday friday

# get the first entry of the triggers
./blindsControl.exp 11:22:33:44:55:66 gettrigger 1

# delete the first entry of the triggers
./blindsControl.exp 11:22:33:44:55:66 deletetrigger 1

# set the time of the device
./blindsControl.exp 11:22:33:44:55:66 settime

# get the time of the device
./blindsControl.exp 11:22:33:44:55:66 gettime

# set the position of the roller blind
./blindsControl.exp 11:22:33:44:55:66 setheight 62

# get the position of the roller blind
./blindsControl.exp 11:22:33:44:55:66 getheight

# get the battery status of the roller blind
./blindsControl.exp 11:22:33:44:55:66 getbattery

Hintergrund

Die Smart Shades funktionieren mit Bluetooth Low Energy und lassen sich unter Linux mit dem gatttool bedienen. Die folgenden Befehle dienen zum Nachvollziehen des oberen Expect-Skripts, sind aber für dessen Benutzung nicht notwendig.

# start gatttool
gatttool -I -i <bluetooth_device> -b <bluetooth_address> -t random

# e.g.
gatttool -I -i hci0 -b 11:22:33:44:55:66 -t random

connect

# read the position of the roller blind from the device - in the first byte (0-64)
char-read-hnd 0x0021

# output of the position (first byte)
Characteristic value/descriptor: 00 01 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00

# write the position of the roller blind (0-64)
char-write-req 0x0024 62

disconnect

Außerdem lassen sich zum Beispiel die programmierten Zeiten zum Hoch- und Runterfahren des Rollos an den Sonnenaufgang beziehungsweise den Sonnenuntergang durch ein Shell-Skript anpassen.

wget https://www.torsten-traenkner.de/wissen/smarthome/sunrise.sh
chmod 755 sunrise.sh

# get the sunrise and sunset for Berlin:
./sunrise.sh

Sicherheit

Und auch bei den Smart Shades muss ich das leidige Thema Sicherheit erwähnen. Smart Shades benötigen keine PIN-Eingabe und können somit theoretisch vom Nachbarn gesteuert werden.

Weiterführende Artikel

Falls noch etwas unklar sein sollte, dann schreib einen Kommentar:

Kommentar schreiben

Ihre Daten werden verschlüsselt übertragen. Der Kommentar wird gelesen und eventuell veröffentlicht.
Wenn der Inhalt des Kommentars oder Teile des Kommentars nicht veröffentlicht werden, dann werden die gespeicherten Daten nach maximal 4 Wochen gelöscht. Um zukünftigen Missbrauch der Kommentarfunktion zu verhindern, werden die zum Kommentar gehörenden IP Adressen maximal 4 Wochen gespeichert.