Kontaktieren Sie mich unter info@tiemerding.com

Pflanzensensor für HomeKit: Xiaomi Flower Care (Tutorial)

Pflanzensensor für HomeKit: Xiaomi Flower Care (Tutorial)
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 und Homebridge integriert werden kann. Als Vorbedingung wird lediglich ein Raspberry Pi der aktuellen Generation mit Bluetooth2 sowie einer laufenden 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 (IPX053). Ich hatte zeitweise auch 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, Mi Flora oder auch Royal Gardineer 4in1-Pflanzensensor4. Erhältlich ist er sowohl via Amazon* als auch per AliExpress, eine Art chinesisches Amazon. Letzteres ist mit 12€ pro Sensor am günstigsten. Jedoch muss man hier mit einer Versanddauer von bis zu vier 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.

[appbox appstore id1095274672]

[appbox googleplay com.huahuacaocao.flowercare]

Die Einrichtung des Flower Care Smart Monitor geht hier sehr einfach von der Hand: (1) Neuen Sensor per Bluetooth verbinden, (2) Pflanze aus der großen Flower Care™ Database auswählen5, (3) 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.

1
$ (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.

1
2
3
$ (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 (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.

1
$ (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).

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
{
  "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.

1
2
3
4
5
6
{
  ...
  "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.

[appbox appstore id917695792]

Hier wird zusätzlich die Bodenfruchtbarkeit abgebildet. Außerdem wird vom homebridge-mi-flower-care Plugin für Bodenfeuchte und Raumtemperatur eine detaillierte Historie via fakegato-history bereitgestellt.

Hinweis

Das homebridge-mi-flower-care Plugin verwendet Bluetooth Low Energy zur Verbindung mit den Flower Care Geräten. Diese Art der Verbindung ist, wie der Name schon sagt, darauf ausgelegt sehr stromsparend zu sein. Daher liefert das Gerät trotz Abfrage nur Messwerte an HomeKit wenn sich etwas geändert hat. Im schlimmsten Fall kann dies mehrere Minuten dauern. Bis dahin ist das Plugin in HomeKit als inaktiv gekennzeichnet. Einfach ein wenig Geduld haben.

 

Bildnachweise: HHCC Plant Technology Co., Ltd. (Titelbild, Sensor Detailansicht)

Die mit Sternchen (*) gekennzeichneten Verweise sind sogenannte Provision-Links. Wenn du auf so einen Link klickst und darüber einkaufst, bekomme ich von deinem Einkauf eine Provision. Für dich verändert sich der Preis nicht.

  1. Hergestellt von HHCC Plant Technology Co., Ltd. für Xiaomi
  2. Pi Zero W*, Pi 3 Model B*, Pi 3 Model B+*
  3. Schutz gegen Strahlwasser (Düse) aus beliebigem Winkel
  4. Flower Care Smart Monitor scheint die aktuellste Bezeichnung zu sein
  5. Lateinkenntnisse sind hier von Vorteil