Die Frage sollte besser lauten: geht das Plugin jetzt mit node irgendwas größer 9 und die Antwort ist nein. Ich habe weiter oben eine Lösung entwickelt, die aber bei jedem Update von node oder homebridge-mi-flower-care erst mal wieder nicht mehr funktioniert. Das Problem liegt im zugrunde liegenden Bluetooth-Framework noble. Dort müsste der Code an node >9 angepasst werden, nur leider geschieht das nicht.
Da bei meinem Setup zusätzlich noch mein Switchbot gestört wird, habe ich Abschied genommen von noble und somit auch von homebridge-mi-flower-care. Ich habe eine Lösung gefunden, die meine Mi Flore Care-Sensoren mit gatttool ausliest. Was sich zunächst für mich anhörte wie die Steine aller Weisen, ist eine größere Installation, die ich hier nur kurz skizzieren möchte mit:
Daten von den Sensoren auslesen mit miflora-mqtt-daemon. Das ist ein Python3-Skript, das einfach gestartet wird und danach alle 5 Minuten den Sensor-Status ausliest. Natürlich muss man vorher die MAC-Adressen der Sensoren angeben. Das Skript sendet die ermittelten Daten an einen MQTT-Server, den ich noch nicht hatte, und daher folgte dann sogleich die
Installation von mosquitto. Das war einfach, runterladen, nicht weiter konfigurieren, starten. Und die Werte in Homebridge zu bekommen, brauchte ich ein Plugin, das Daten von einem MQTT-Server auslesen kann und an HomeKit sendet. Ich habe mich entschieden für die
Installation von homebridge-mqttthings. Hier war die Konfiguration schon etwas kniffliger. Gefragt war ein Verständnis von MQTT und etwas Javascript. Sehr wenig Verständnis, aber ich hatte ein paar Rätsel zu lösen.
Und es hat funktioniert. Die Daten landen nun in Homebridge, wobei ich mich rein auf die Werte des Feuchtigkeitssensors und der Batterie beschränkt habe. Darstellbar wären auch noch Lichtstärke, Fruchtbarkeit des Bodens (Dünger) und die Temperatur, aber ich habe darauf verzichtet.
So kann man das betreiben und es stört auch meinen Switchbot nicht. Und mehr braucht es auch nicht, aber ich habe mich dann noch entschieden, die Kommunikation mit dem MQTT-Server zu verschlüsseln und mit einem Passwort zu versehen. Nicht dass es notwendig wäre, aber ich bastel halt gern. Hier wurde es dann etwas hässlicher, aber ich habe es dann doch noch zum Laufen bekommen.
Wer so etwas auch bauen will, kann mich nach Details fragen, beispielsweise wie homebridge-mqttthings konfiguriert wird. Außerdem kann ich zwei systemd-Startdateien beisteuern, damit nach einem Reboot des Raspi sowohl mosquitto als auch miflora-mqtt-daemon automatisch gestartet werden.
Da ich hier inzwischen eine Konfiguration aufgebaut habe, die dann nur noch Nerds brauchen, lese ich die Werte des MQTT-Servers dann noch zusätzlich mit Node-Red aus. Node-Red tut dann für mich noch das hier:
- Langzeit-Speicherung der Feuchtigkeitsdaten in einer InfluxDB und die Darstellung mittels Grafana.
- Auslesen des Batteriestatus und Darstellung im Node-Red-Dashboard.
- Auf einen bestimmten Feuchtigkeitsstand testen und wenn dieser unterschritten wird, eine Push-Message an mein iPhone senden (via pushed.co).
Wenn ihr einen Lebenspartner habt und wenn ihr ein Leben neben Computern habt und wenn ihr noch ganz bei Trost seid, dann verzichtet auf die Installation von Node-Red, InfluxDB, Grafana und den ganzen anderen Mist, aber ich will euch das Ergebnis nicht vorenthalten:

(Grafana: keine Ahnung, warum da Lücken sind)

(Sensor-Batterie rechts oben)
Gruß