Pflanzen sind gut für das Raumklima. Leider gehen diese, sofern man keinen grünen Daumen hat, regelmäßig ein. Ein schattiger Standort, zu wenig Wasser, oder eine zu hohe Raumtemperatur — die Gründe sind vielseitig. Natürlich könnte man einfach auf Pflanzen verzichten. Alternativ nutzt man technische Hilfsmittel, wie z.B. den smarten Pflanzensensor Flower Care™ Smart Monitor1.
Im Rahmen dieses Artikels beschreibe ich im Detail, wie ein solcher Sensor in ein Smart Home Setup mit HomeKit integriert werden kann. Als Vorbedingung wird lediglich ein Raspberry Pi der aktuellen Generation mit Bluetooth (z.B. Pi Zero W*, Pi 3 Model B+*, Pi 4 Model B*) mit einer Installation von Homebridge benötigt. Homebridge ist eine Open-Source-Lösung um inkompatible Geräte über einen Raspberry Pi mit HomeKit zu verbinden.
Flower Care Smart Monitor
Der ca. 12cm große Flower Care ist eigentlich ein Sensorarray. Der obere Teil des Sensors misst die Raumtemperatur (Temperature) und Beleuchtung (Light intensity, in Lux), der untere Teil mit Bodenspieß die Bodenfeuchte (Watering) und –Fruchtbarkeit (Fertitlity). Eine Batterie (CR2032-Knopfzelle) versorgt den durch Bluetooth 4.1. Low Energy sehr stromsparenden Smart Monitor für bis zu ein Jahr mit Energie. Die Verarbeitung wirkt sehr wertig. Durch eine Gummidichtung ist der Sensor wasserdicht (IPX052). Ich hatte im Sommer einen Sensor ohne Probleme im Garten im Einsatz.
Der Flower Care wird unter verschiedensten Namen und Marken vertrieben: Xiaomi Flower Care, Xiaomi Flower Mate, Xiaomi Flower Monitor, VegTrug Flower Care, Mi Flora oder auch Royal Gardineer 4in1-Pflanzensensor3. Erhältlich ist er sowohl via Amazon* als auch per AliExpress, eine Art chinesisches Amazon. Letzteres ist ca. 18€ pro Sensor am günstigsten. Jedoch muss man hier mit einer Versanddauer von bis zu acht Wochen rechnen.
Flower Care App
Für einen ersten (optionalen) Funktionstest kann die Flower Care App genutzt werden. Leider benötigt die App einen Anmeldung, entweder via Xiaomi-, Facebook-, Twitter- oder Google Plus-Account.
Die Einrichtung des Flower Care Smart Monitor geht hier sehr einfach von der Hand:
- Neuen Sensor per Bluetooth verbinden
- Pflanze aus der großen Flower Care™ Database auswählen4
- Fertig. Nach einer kurzen Zeit zeigt die App die aktuellen Messwerte des Sensors an.
Flower Care in Homebridge einbinden
System vorbereiten
Für die Kommunikation mit dem Flower Care Smart Monitor wird Bluetooth verwendet. Für den Zugriff auf die jeweiligen Chips existieren einige Paketabhängigkeiten. Diese Paketabhängigkeiten können, falls noch nicht vorhanden, per apt-get (nach-)installiert werden.
$ (sudo) apt-get install bluetooth bluez libbluetooth-dev libudev-dev
Mac-Adresse herausfinden
Für die Einbindung in Homebridge muss nun die Mac-Adresse des Sensors ermittelt werden. Diese ist weder auf dem Sensor noch auf der beiliegenden Dokumentation abgedruckt. Daher nutzt man das Hilfsprogramm hcitool welches mit dem Paket bluez zuvor installiert wurde.
$ (sudo) hcitool lescan
LE Scan ...
AA:BB:CC:DD:EE:FF Flower care
Mit hcitool lescan werden alle für den Rasperry Pi sichtbaren Bluetooth Low Energy Geräte mit Mac-Adresse und Name aufgelistet. Hierbei ist zu beachten, das die Reichweite von Bluetooth je nach Umgebung (z.B. bei Backstein- oder Betonwänden) und Standort des Raspberry Pi stark variieren kann. Außerdem soll es einen Unterschied machen mit welcher Seite der Flower Care zum Pi ausgerichtet ist — die breite Seite ist empfohlen. Bei Verbindungsproblemen hilft hier leider nur ausprobieren.
Homebridge Plugin
Für die Einbindung des Flower Care in Homebridge kann mein Plugin homebridge-mi-flower-care genutzt werden. Dieses ist eine Weiterentwicklung des Plugins homebridge-mi-flora von Luca Becker, welches ich um einige Funktionen wie eine Historie für die Elgato Eve App und Kontaktsensoren ergänzt habe. Diese werden geöffnet, sobald die Bodenfeuchte oder Helligkeit unter ein bestimmtes Level fällt. Dies entspricht einer Alarmfunktion.
Die Installation des homebridge-mi-flower-care Plugins läuft wie gewohnt. Die Option –unsafe-perm ist empfohlen. Ansonsten kann es in seltenen Fällen beim Start des Plugins / Homebridge zu Problemen beim Zugriff auf Bluetooth kommen.
$ (sudo) npm install -g --unsafe-perm homebridge-mi-flower-care
Im Anschluss kann die Konfiguration von Homebridge config.json erweitert werden. name kann frei gewählt werden (z.B. Bezeichnung der Pflanze), bei deviceId wird die ermittelte Mac-Adresse eingegeben und interval gibt den zeitlichen Abstand an indem der Sensor nach neuen Messwerten abgefragt wird (in Sekunden).
{
"bridge": {
"name": "Homebridge",
"username": "AA:BB:CC:DD:EE:FF",
"port": 12345,
"pin": "123-45-678"
},
"accessories": [
{
"accessory": "mi-flower-care",
"name": "Palme",
"deviceId": "AA:BB:CC:DD:EE:FF",
"interval": 300
}
]
}
Über die optionalen Parameter humidityAlertLevel (in %) oder lowLightAlertLevel (in Lux) können Kontaktsensoren in HomeKit hinzugefügt werden. Diese werden, wie zuvor erwähnt, geöffnet, sobald die Bodenfeuchte oder Helligkeit unter das hier angegebene Level fällt. Die hier angegebenen Werte sind pflanzenabhängig. In der Regel geht man jedoch z.B. bei einer Bodenfeuchte von unter 30% von Wasserstress aus, d.h. die Pflanze sollte gegossen werden.
{
...
"humidityAlertLevel": 30,
"lowLightAlertLevel": 500
...
}
Im Anschluss muss homebridge neu gestartet werden. Wichtig: Homebridge muss mit privilegierten / root Rechten laufen. Ansonsten ist die Kommunikation via Bluetooth nicht möglich.
Flower Care in der Home App
Nach der Einrichtung taucht der Flower Care Smart Monitor mit Bodenfeuchte, Raumtemperatur sowie aktueller Beleuchtung in der Home App auf. Die integrierten Kontaktsensoren können als Auslöser für vorher definierte Szenen genutzt werden.
Flower Care in der Elgato Eve App
Leider unterstützt Home App — unverständlicherweise — nicht alle Funktionen der HomeKit-Schnittstelle. Um das Plugin vollständig auszureizen empfehle ich daher die Eve App von Elgato.
Hier wird zusätzlich die Bodenfruchtbarkeit abgebildet. Außerdem wird vom Plugin eine detaillierte Historie für Bodenfeuchte und Raumtemperatur via fakegato-history bereitgestellt.
Hinweis
Der hier genutzte Sensor verwendet Bluetooth Low Energy. Diese Art der Verbindung ist, wie der Name schon andeutet, darauf ausgelegt sehr stromsparend zu sein. Daher liefert der Sensor trotz Abfrage nur Messwerte an HomeKit wenn sich etwas geändert hat. Im schlimmsten Fall kann dies mehrere Minuten dauern. Bis dahin ist der Sensor in HomeKit als inaktiv gekennzeichnet. Bestenfalls hat man einfach ein wenig Geduld.
Bildnachweise: HHCC Plant Technology Co., Ltd. (Titelbild, Sensor Detailansicht)
Die mit Sternchen (*) gekennzeichneten Verweise sind sogenannte Provision-Links. Wenn Sie auf so einen Link klicken und darüber einkaufen, bekomme ich von Ihrem Einkauf eine kleine Provision. Für Sie verändert sich der Preis nicht.