Homey Community Forum

Xiaomi Mi Pflanzensensor

Wie sind Deine Erfahrungen damit? Wo liegt die ungefähre Reichweite? Sind die zu empfehlen?

Wenn es gut läuft ca. 6-7 Meter, dann verlieren sie die Verbindung zu Homey. Ansonsten eigentlich prima. Das Gleiche in Zwave, und die Dinger wären der Renner !

2 Likes

Ich habe mir jetzt auch die MiFloras zugelegt. Die sollen die Außenpflanzen überwachen. Reichweite mit BT ist wie Uwe sagte ziemlich gering. Ich musste den Homey im Wohnzimmerschrank neben der Terrassentür positionieren - ca. 5-6m zu den Sensoren. Drei Meter weiter ist schon Schluss.
Die Sensoren sind hilfreich. Ich hätte auch gern eine Aqara-Zigbee-Version davon :innocent:
Alternativ ginge auch ein Bluetooth-MQTT-Gateway :laughing:
Hab aber keine Lust mit Esp32 herumzuspielen.

1 Like

Ich hab mal einen auseinander gerissen, ob sich da was machen lässt. Außer dem Feuchtigkeitssensor ist alles auf einem Chip. No way, da etwas mit einem anderen Funkprotokoll zu versenden. Du könntest höchstens einen Raspi mit Home Assistant in der Nähe platzieren, die Pflanzensensoren da anmelden und per MQTT an Homey schicken. Ob das den Aufwand rechtfertigt ? Ich hab zwei davon als Temperaturüberwachung für mein Insulin degradiert. Wenn ich außer Haus bin zeigt die hauseigene App einen Tempertur Verlauf und ich weiß, ob die Brühe zu warm geworden ist.
Natürlich kann man das Bluetooth Signal mit einem Booster aufpusten. Dann brauchst du aber wieder 5 Volt Spannung am Sensor und musst den Käse wasserdicht machen. Das ist zuviel Geraffel.
Das bringt nur was in unmittelbarer Umgebung von Homey und bedenkt, dass die neue Topfpflanze meist weniger als so ein Sensor kostet.
Also wenn ihr nicht unbedingt euren schwarzen Afghanen am Leben halten wollt, lohnt sich das meist nicht.

Möglich wäre es wohl mit so etwas:

Das wäre dann wieder eine neue Baustelle, mit der ich mich (noch?) nicht auskenne.

Mit den Kosten hast du Recht, aber wofür hat man denn SmartHome? :grin:

Ich will die Sensoren auch nur ganz grob für Rasen/Pflanzen verwenden, um zu sehen, ob es Wasser braucht (für den LinkTap). Dafür reicht es erstmal. Dieses Jahr sind wir ja sowieso zu Hause…

So sieht das aktuell un HA aus.

Aber ich schweife gerade vom eigentlichen Thema ab…

2 Likes

@fantross
Falls du auch testen willst, kannst du die Sensoren über Amazon bestellen. Ali&Co sind bei Versand innerhalb der EU auch um die 20€ je Sensor, oft sogar teuer wenn Versand dazukommt.

Die Varianten sind m.E. technisch identisch. Beide lassen sich in die “Fower Care” App einbinden und die Firmware aktualisieren. Beide werden in Homey über die MiFlora-App gefunden.

Über Prime kannst du ja stressfrei testen :slight_smile:

1 Like

Eine gute Alternative auf WLAN-Basis könnten diese hier sein. Auch preislich durchaus attraktiv.
Aber natürlich gibt’s keine App… :man_shrugging:t3:

1 Like

Die sehen auch brauchbar aus. Wenn die mit Solar laufen (mit Pufferung) wäre das ok. Laut Bewertungen scheinen die aber nur bei Sonne zu funktionieren.

Interessant ist diese Antwort bei den Fragen:
Die Sensoren sind noch nicht mit Amazon Alexa oder anderen Systemen kompatibel. Aber es gibt eine proprietäre API mit Dokumentation. Die Dokumentation ist auf Anfrage oder beim Hersteller erhältlich.
Eine App wäre also durchaus möglich.

Edit:
API für Greensens-Sensoren:
https://greensens.de/api-manual

1 Like

@RonnyW
(Forgive my Deutsch) Eine kleines €14/stück aus China. Ohne mögliche tax & kein Versandkosten :wink:

1 Like

Aus CN sind die günstiger. Aber bei mehr als einem (ab knapp über 20€ incl. Porto) wird Einfuhrumsatzsteuer fällig. Dann ist der Unterschied nicbt mehr so relevant.
Da ist mir der Aufpreis für Versand in EU (Belgien ist bei Aliexpress günstig) oder besser über Prime lieber. Da kann man auch stressfrei retournieren, falls es nicht gefällt.

Hier mal der Versuch eines Vergleichs zwischen MiFlora uns Greensens:

MiFlora:

  • Funk: Bluetooth
  • Sensorwerte: Temperatur, Feuchtigkeit, Licht, Dünger
  • Spanungsversorgung: Batterie
  • Kompatibilität:
    – App (FlowerCare)
    – Homey-App
    – RasPi/HA mit BT-Stick
    -Abfragehäufigkeit:
    – App: bei manuellem Aufruf, Sync. der gespeicherten Stundenwerte
    – Homey: alle 5 bis 15 min
  • Übertragung:
    – Sensor --BT–> Telefon/App
    – Sensor --BT–> Homey
    – Sensor --BT–> ESP32 --WLAN–> MQTT-Broker

Greensens:

  • Funk: vermutlich Bluetooth (aufgrund der Reichweiteangaben) über WLAN-Hub in die Cloud
  • Sensorwerte: Temperatur, Feuchtigkeit, Licht
  • Spanungsversorgung: Solar+Pufferakku, Betrieb an 1000Lux, Senden ab 2000Lux
  • Kompatibilität:
    – App
    – REST-API
  • Abfragehäufigkeit:
    – 24 Werte je Tag, also 1x je Stunde
  • Übertragung:
    – Sensor --HUB–> Cloud
    – Cloud --REST-API–> Homey-HTTP-App (?) / HA-JSON-Sensor (?)
1 Like

Der Spieltrieb und die Neugier waren einfach zu groß.
Also wurde ein ESP32 bestellt und getestet :innocent:

Das Ergebnis:
Die Sensordaten werden vom ESP32 per Bluetooth gelesen und per WLAN an den MQTT-Broker geschickt.
Damit kann man Homey unabhängig von der BT-Reichweite positionieren.
Voraussetzung ist natürlich ein MQTT-Broker - als Homey-App oder separat auf RasPi oder als Docker-Container.
Der ESP32 wird im Garten in der Elektro-Box an ein USB-Netzteil angeschlossen. Damit ist eine gute BT-Verbindung gegeben.

Was ist dafür zu tun?

  1. Einen ESP32 bestellen (Developer Board mit WLAN und BT)

  2. Den ESP32-Code hier herunterladen (flora.ino und config.h)
    GitHub - sidddy/flora: ESP32 BLE client for Xiaomi Mi Plant sensors

  3. Diese Anleitung durchgehen:
    http://chrigi.me/wordpress/mi-flora-gateway/
    Ich musste zusätzlich nur die MQTT-Biliothek installieren (EspMQTTClient):
    grafik

Ist alles in der Arduino IDE vorbereitet, kann man das Programm öffnen.
In der config.h trägt man dann seine Daten ein:

  • WLAN-Anmeldedaten
  • MQTT-Anmeldedaten + Topic
  • MAC-Adresse der Sensoren. Zum Suchen kann man die Android-App “BLE Scanner” verwenden.
  • Leseintervalle

Nach dem Flashen startet der ESP bei mir direkt das Programm. Die Ausgaben kann man im Seriellen Monitor gleich prüfen (115200 Baud wählen!):
grafik

Für <10€ Einsatz ist das eine sehr praktische Ergänzung und Homey kann an seinen angestammten Platz zurück.
Für die Integration in Homey braucht man natürlich noch den MQTT-Client und muss die Topic abonieren. Aber wer bis hier durchgehalten hat schafft das auch noch :wink:

Edit: Ich habe noch den Code ergänzt, damit die Inhalte als “retained” an MQTT gesendet werden und die Temperatur zuvor gerundet wird. Wer Hilfe braucht, kann gern fragen…

4 Likes

Hallo Zusammen,
ich verstehe nur die hälfte von dem was Ihr hier schreibt/baut. :smiley: Ich habe da aber denke ich ne einfache Frage. Ich bekomme keine Flow hin der mich einfach nur benachrichtigt wenn Wasser fehlt.
Bei allen Möglichen Flow varianten die ich ausprobiert habe werde ich mit Pushbenachrichtigunen bombadiert. Ich habe kein Reichweitenproblem.

Kann mir jemand einen funktionierenden Flow zeigen der nur die eine Variable (zu wenig wasser) ausließt und mir dann eine Push schickt.

Danke

Ich habe die MiFlora App nicht mehr installiert, weil ich alles mittlerweile wegen der Reichweite über den ESP32 mache.
Ich glaube aber mich erinnern zu können, dass man in der App oder den Geräten Schwellenwerte angeben konnte. Dann konnte man einen Flow auslösen lassen, wenn die Grenzen überschritten werden (also zu trocken). Damit könntest du experimentieren.

Ansonten kannst du bei Flows (Feuchtigkeit hat sich geändert) in der Bedingung die Grenze eintragen (z.B. <20%).

Damit du unterhalb der Schwelle nicht dauernd Meldungen bekommst, kannst du das mit einer Logik-Variable verhindern.
-Logik-Variable (Boolean) anlegen, Wert=True
-Wenn Wert<Schwelle UND Variable=True, dann Meldung schicken und Variable auf False setzen
-Wenn Wert>Schwelle, dann Variable auf True setzen

Ich habe absichtlich keinen Wert unterhalb der 10 % gesetzt, dass mich LaMetric so lange nervt, bis die Pflanzen gegossen wurden.

Anstelle einer Logik-Variablen kann man einen Flow nach der ersten Benachrichtigung auch deaktivieren. Durch eine frei definierbaren Zeit kann man den Flow dann wieder aktivieren.

Hat man vergessen die Pflanze zu gießen, erhält man eine weitere Benachrichtigung sobald der Flow wieder aktiviert wurde und der Feuchtigkeitswert weiter abfällt.
Hat man in der Zwischenzeit die Pflanze gegossen, wird der Flow wieder aktiviert und man erhält erst dann wieder eine Benachrichtigung wenn der Feuchtigkeitswert wieder unter den Grenzwert fällt.

@Undertaker,
hat es einen Grund, dass du mit Logik-Variablen arbeitest anstatt die Grenzwerte der FlowerCare direkt zu nehmen “Feuchtigkeit niedrig” etc?

Eigentlich nicht. Ich finde das über Logic einfacher. Aber viele Wege führen nach Rom. Früher wollte ich von Logic und Variablen gar nichts wissen. Heute arbeite ich fast nur noch damit.

1 Like

Aber es muss doch auf jeden Fall eine Logik-Variable benutzt werden. „Feuchtigkeit niedrig“ gibt’s doch gar nicht, oder habe ich was übersehen?

Wenn ich das richtig verstanden habe kann man die Grenzwerte automatisch einbeziehen, aber eine Logik-Variable ist doch trotzdem notwendig. Man muss ja definieren welcher Grenzwert unterschritten wird, oder?

1 Like

Muss man den alten Hasen erst mal zeigen, was es mittlerweile so alles gibt :rofl:

1 Like