
Auf meinem Schreibtisch ist seit bestimmt 10 Jahren, oder länger, eine Apple Tastatur samt Mighty Mouse. Die waren, glaube ich, beim Mac Mini damals mit dabei. Und es ist egal ob der aktuelle Rechner gerade ein Mac oder ein Linux-Rechner oder im Homeoffice das Windows Laptop ist, es wird immer diese Kombi verwendet. Weil, sie hat einen entscheidenden Vorteil: Man kann die Maus direkt an der Tastatur anschießen und braucht so beim Wechsel des Rechners immer nur diese umstecken.
Nachteilig ist dass die Tastatur nur spärlich beschriftet ist, die komplette Belegung mit ALT ist überhaupt nicht drauf. Das kriegt man aber mir Bleistift gut hin. Jetzt funktioniert seit einiger Zeit der Scrollball der Maus nicht mehr. Ich habe es erst mal auf den beschissenen Linux-Treiber geschoben. Heute ist mir aufgefallen dass er auch unter Windows nicht geht. Sherlock, es muss an der Maus liegen.
Weil ich vor ein paar Jahren schon mal geschafft habe eine Mighty Mouse zwar auseinander zu legen, zu säubern, aber sie dann beim Zusammenbauen geschrottet habe, war ich dieses mal vorsichtiger. Bei iFixIt gibt es den Tipp es mal mit einer Zahnbürste zu versuchen und das habe ich gemacht und zwar mit einer Philips Sonic Care, also mit Ultraschall sogar. Und was soll ich sagen: TOP! Läuft wieder wie neu!
Selbermachen
Heimautomatisierungsbasisoffensive, Teil 6 – Update!
Man kann so ein Docker-Image übrigens recht einfach aktuell halten:
sudo docker-compose up --force-recreate --build sudo docker image prune -f
Top!
Der CT-Lampen-Hack und seine leuchtenden Folgen bei den Hacks
Beim 35C3 gab es einen Vortag von einem, der eine smarte LED Lampe gehackt hat, und damit in ein WLAN eingedrungen ist. Unterm Strich sind 2 Informationen hängen geblieben: Erstens gibt es smarte Lampen auf Basis von ESP8266 und zweitens sollte man deren Original-Firmware besser nicht verwenden.
Wenn man nach „ESP8266 smart led lampe“ googelt, dann landet man irgendwann bei der Sonoff B1. SONOFF! Bei „Sonoff“ denkt der sicherheitsbewusste Heimautomatisierer sofort an „Tasmota“ und beginnt zu lächeln.
Wie es der Zufall will gibt es bei Youtube auch gleich die passende Anleitung wie man Tasmota auf eine Sonoff B1 kriegt. Machbar. Sonoff B1 mit der schlechten Firmware gibt es bei Reichelt für 23,95 €, gleich mit Tasmota für 23,90 € bei Ebay aus Deutschland oder 3 (!) für 25,62 € mit der schlechten Firmware bei Ebay direkt aus China (dafür aber mit gut 2 Monaten Lieferzeit). Und die hab ich gleich bestellt.
Was kann man damit machen? Blaues Licht zum Beispiel. Oder einen Tageslichtwecker. Oder eine Beleuchtung fürs kleine Aquarium. Oder eine maßgeschneiderte emotionale Illuminationslösung für die Chefin. Halt irgendwas cooles.
Z Shell mit Ubuntu

Man kann mit der Z Shell auch Ubuntu richtig schön aufmöbeln. Wie es generell geht ist hier beschrieben. Einen Überblick über alle Plugins und Themes gibt die Seite: Oh-My-Zsh! A Work of CLI Magic —Tutorial for Ubuntu. Als erstes sollte man in der Datei ~/.zshrc das Theme auf „agnoster“ setzen. Dann kommt das Wow.
Der ganze bunte Zauber hängt an den System-Fonts „fonts-powerline“. Wenn man die einmal auf allen Rechnern installiert, dann funktioniert das auch schön via SSH. Schön. Bunt. Nützlich.
Heimautomatisierungsbasisoffensive, Teil 5 – Reihenfolge beachten
Obacht, kleines Update, der Remote Start Service darf natürlich erst gestartet werden wenn das System eine IP-Adresse hat. Auf Nummer Sicher geht man wenn man es z.B. nach Docker startet:
After=docker.service Description=Remote Start Schweizer Taschenmesser Service [Service] ExecStart=/home/christian/docker/smarthome/remote_start/remote_start.py [Install] WantedBy=default.target
Flexibel schalten und walten

Ein erster Schritt Richtung Chefinheimautomatisierungsintegration war es sie mit Meldungen zu versorgen wenn der Trockner bzw. die Waschmaschine fertig ist. Das kommt gut an. Jetzt kommt Schritt zwei, sie darf nämlich bald aktiv steuernd eingreifen und zwar gleich 6-fach. Wenn man da mal etwas recherchiert, dann finden sich recht schnell WLAN-Schalter, die man irgendwie integrieren kann, aber man muss aufpassen, i.d.R. ersetzten die nämlich nur Einzeltaster in Unterputzdosen, die fast nie zum eigenen Schalterprogramm passen.
Nach etwas hin und her wurde es jetzt ein 6-Fachschalter von Homematic, der schaut zwar auch scheiße aus und passt nicht zu Busch-Jäger Schaltern, aber er ist flach und braucht keine Unterputzdose, sondern kann einfach auf die Wand geklebt werden. Eigentlich ist der sau teuer, wie alles von Homematic, aber ELV verkauft sie auch als Bausatz, da kostet so ein Schalter dann statt 70 € nur 45 €. Der Zusammenbau beschränkt sich auf 8 Lötpunkte und etwas Plastikbausatzgedöns und dauert keine 10 Minuten. Das Ergebnis ist zwar hässlich, funktioniert aber und kann ja notfalls in den Küchenschrank gepappt werden. Läuft.
Heimautomatisierungsbasisoffensive, Teil 5 – der eigene Service
Die Lösung etherwake über SSH auf dem Host zu starten hat mir überhaupt nicht gefallen, vor allem weil man sie bei jeder Änderung am FHEM Image manuell nachziehen musste. Jetzt gibt es eine wirklich smarte Lösung, nämlich einen RemoteStart Dienst via HTML Schnittstelle, eingehangen in Systemd. Hört sich kompliziert an, ist aber relativ einfach.
Bottle, den Mini-Webserver in Python, hatte ich vor einem Jahr schon mal für die Aquariumsteuerung verwendet. Jetzt lauscht er auf Port 8080 vom Host und wartet dass ihm jemand aufruft (Zeile 14). Standardmäßig gibt er ein Smily zurück (Zeile 10-12). Ruft man aber den Pfad /startServer (Zeile 6) macht er einen Systemaufruf und versendet das Magic Paket (Zeile 8). Fertig ist der Lack:
#!/usr/bin/python
import os
from bottle import route, run, template
@route('/startServer')
def startServer():
return os.system("/usr/bin/wakeonlan 30:9c:23:46:36:xx")
@route('/')
def hello():
return ':-)'
run(host='192.168.178.3', port=8080)
Damit der Server auch bei jedem Neustart automatisch gestartet wird, muss man einen Systemd-Service einrichten. Dazu legt man eine kurze Service-Konfiguration an sudo vim /etc/systemd/system/remoteStart.service, das war es dann auch schon:
After=network.target [Service] ExecStart=/home/christian/docker/smarthome/remote_start/remote_start.py [Install] WantedBy=default.target
Sau coole Geschichte! Jetzt überlege ich schon was man damit noch anstellen könnte, das ist ja so eine Art Schweizer-Taschenmesser-Panzertape-MacGyver-Nummer in Code gegossen.
10 Jahre und eine Woche
Vor 10 Jahren und einer Woche sind wir ins Haus eingezogen. Seitdem ist es nicht mehr langweilig und die Baustelle ein ständiger Begleiter. Und Baustellen haben wir ständig neue, ist irgendwie sowas wie ein Hobby. Andere sammeln Briefmarken.
Heimautomatisierungsbasisoffensive, Teil 4 – das Haar
Es hat ein ganzes Stück gedauert um ein Haar in der Docker-Suppe zu finden, jetzt ist es so weit: Irgendwie kann man aus einem Docker-Container heraus kein WakeOnLan Magic Packet versenden. Und das trifft eines der coolsten FHEM/Telegram Features, nämlich dass man den Backup-/Seafile-Server von unterwegs in sage und schreibe 4 Sekunden aus den Standby zum Laufen bekommt.
Durch einen Umweg, von hinten mit dem Messer durch die Brust, geht es allerdings doch: Wenn mit Telegram der Befehl zum Starten rein kommt, dann startet FHEM im Container nicht mehr etherwake direkt, sondern loggt sich auf dem Host per ssh ein und startet es dort. Die Lösung ist nicht wirklich sauber und verstößt wahrscheinlich gegen die reine Docker-Lehre, funktioniert aber prima!
Heimautomatisierungsbasisoffensive, Teil 4 – DevOps@Home

Seit Donnerstag ist der neue Rechner online und der Raspberry aus. Der Wechsel hat, abgesehen von ein paar Kleinigkeiten, eigentlich reibungslos geklappt. Das System ist pfeilschnell, Ziel erreicht! Und noch viel mehr: alles läuft in Docker-Containern, auf btrfs, mit Snapshots bei Updates und seit heute mit Git verwaltet auf einem eigenen Gitea-Server eingecheckt.
Die letzte Woche war nicht nur sehr lehrreich sondern auch kräftezehrend, mehr als 5 Stunden Schlaf waren es nie, dafür viel zu viel Kaffee. Aber das Ergebnis kann sich sehen lassen. DevOps@Home, so viel IT gab es hier schon lang nicht mehr. Ich bin stolz.