Pflanzensensor Parrot Flower Power in FHEM // BT4.0

Begonnen von snowball7g, 25 Januar 2015, 18:51:31

Vorheriges Thema - Nächstes Thema

snowball7g

Hallo zusammen,

hat schon jemand einen Parrot Flower Power Pflanzensensor in FHEM integriert?
Produkt: http://www.parrot.com/de/produkte/flower-power/

Es gibt auch eine API Dokumentation.
https://flowerpowerdev.parrot.com/

Hab das Produkt bei mir im Einsatz und Frage die Daten per BT4.0 über die iOS App ab. Die Daten hätte ich aber gerne in meiner FHEM Umgebung um damit eine Pflanzenbewässerung zu steuern.

Freu mich auf eure Hilfe.

Danke,
Snowball

volschin

Spannendes Thema. Ich bin gerade bei Amazon drauf gestoßen. Und auch nicht deutlich teurer als der Vegetronix, den hier viele einsetzen.
Intel NUC+Ubuntu 22.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7590, Echo Dots+Show8, Logi Circle 2, HomeBridge
TIG Stack (Telegraf, InfluxDB, Grafana)

volschin

Intel NUC+Ubuntu 22.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7590, Echo Dots+Show8, Logi Circle 2, HomeBridge
TIG Stack (Telegraf, InfluxDB, Grafana)

Prof. Dr. Peter Henning

Ich bin da sehr skeptisch - die gegabelte Struktur ist ein Hinweis darauf, dass hier einfach die Leitfähigkeit des Bodens gemessen wird. Korrosion des Sensors ist davon ebenso die Folge, wie die Vergiftung des Bodens mit Schwermetallionen.

Das Gute an dem Vegetronix-Sensor ist die kapazitive Messung, bei der dies eben nicht vorkommen kann.

LG

pah

volschin

Jetzt ist endlich mein Zubehör beisammen und ich konnte einen ersten Test mit dem RasPi machen.

Die Daten fließen schon mal. Da es für Perl keinen gescheiten BLE Stack gibt und die node.js Implementierung gut läuft, werde ich wohl node.js als Daten-Proxy nutzen und die Daten nach FHEM und in die Cloud pushen.

pi@raspi2 ~/node_modules/flower-power $ sudo node test.js
connectAndSetup
readSystemId
        system id = **:**:**:**:**:**:**:**
readSerialNumber
        serial number = *******************Flower p
readFirmwareRevision
        firmware revision = 2014-06-23_hawaii-1.1.0_hardware-config-MP
readHardwareRevision
        hardware revision = 2013-07-26_hawaiiProduction-1.2_protoDV-bootloader
readManufacturerName
        manufacturer name = Parrot
readBatteryLevel
battery level = 94
readFriendlyName
        friendly name = Flower power ******
writeFriendlyName
readColor
        color = brown
readSunlight
sunlight = 0.32 mol/m²/d
readSoilElectricalConductivity
soil electrical conductivity = 0.00
readSoilTemperature
soil temperature = 21.92°C
readAirTemperature
air temperature = 23.08°C
readSoilMoisture
soil moisture = 15.10%
readCalibratedSoilMoisture
calibrated soil moisture = 19.34%
readCalibratedAirTemperature
calibrated air temperature = 24.02°C
readCalibratedSunlight
calibrated sunlight = 0.37 mol/m²/d
readCalibratedEa
calibrated EA = 10.26
readCalibratedEcb
calibrated ECB = 0.00 dS/m
readCalibratedEcPorous
calibrated EC porous = 0.00 dS/m
enableLiveMode
live mode
sunlight = 0.37 mol/m²/d
soil electrical conductivity = 0.00
soil temperature = 21.92°C
air temperature = 23.08°C
soil moisture = 15.59%
sunlight = 0.36 mol/m²/d
soil electrical conductivity = 0.00
soil temperature = 21.92°C
air temperature = 23.08°C
soil moisture = 16.83%
sunlight = 0.37 mol/m²/d
soil electrical conductivity = 0.00
soil temperature = 21.92°C
air temperature = 23.08°C
soil moisture = 16.21%
sunlight = 0.37 mol/m²/d
soil electrical conductivity = 0.00
soil temperature = 21.97°C
air temperature = 23.08°C
soil moisture = 16.83%
sunlight = 0.37 mol/m²/d
soil electrical conductivity = 0.00
soil temperature = 21.92°C
air temperature = 23.08°C
disableLiveMode
soil moisture = 16.21%
enableCalibratedLiveMode
calibrated live mode
calibrated soil moisture = 20.92%
calibrated air temperature = 24.02°C
calibrated sunlight = 0.42 mol/m²/d
calibrated EA = 11.10
calibrated ECB = 0.00 dS/m
calibrated EC porous = 0.00 dS/m
calibrated soil moisture = 19.82%
calibrated air temperature = 24.02°C
calibrated sunlight = 0.42 mol/m²/d
calibrated EA = 10.52
calibrated ECB = 0.00 dS/m
calibrated EC porous = 0.00 dS/m
calibrated soil moisture = 21.16%
calibrated air temperature = 24.02°C
calibrated sunlight = 0.42 mol/m²/d
calibrated EA = 11.23
calibrated ECB = 0.00 dS/m
calibrated EC porous = 0.00 dS/m
calibrated soil moisture = 19.21%
calibrated air temperature = 24.02°C
calibrated sunlight = 0.42 mol/m²/d
calibrated EA = 10.20
calibrated ECB = 0.00 dS/m
calibrated EC porous = 0.00 dS/m
calibrated soil moisture = 20.31%
calibrated air temperature = 24.02°C
calibrated sunlight = 0.42 mol/m²/d
calibrated EA = 10.77
disableCalibratedLiveMode
calibrated ECB = 0.00 dS/m
calibrated EC porous = 0.00 dS/m
ledPulse
delay
ledOff
disconnect
disconnected!
Intel NUC+Ubuntu 22.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7590, Echo Dots+Show8, Logi Circle 2, HomeBridge
TIG Stack (Telegraf, InfluxDB, Grafana)

volschin

Und nach einem
npm install flower-power-cloud
klappt nach der Zusendung eines API-Keys durch Parrot jetzt auch der Zugriff auf die Cloud. Damit müsste sich ein automatisiertes Hochladen in die Cloud und die Nutzung der Zustände und Trigger aus den Pflanzenwerten in FHEM realisieren lassen.
Intel NUC+Ubuntu 22.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7590, Echo Dots+Show8, Logi Circle 2, HomeBridge
TIG Stack (Telegraf, InfluxDB, Grafana)

volschin

Jerome von Parrot hat heute dankenswerterweise ein Testscript für node.js auf dem RasPi für die komplette Synchronisation zwischen Sensor und Cloud veröffentlicht.

https://github.com/Parrot-Developers/FlowerPower-Tools/tree/master/BLE-cloud-bridge

Werde am Wochenende mal schauen, wie es läuft.

Damit könnte man

  • alle Sensordaten auch ohne Handy und damit bei Abwesenheit mit der Cloud synchronisieren
  • in FHEM die Echtdaten der Sensoren nutzen
  • in FHEM die Cloud-Daten mit den Verarbeitungen aus der Pflanzendatenbank nutzen
Intel NUC+Ubuntu 22.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7590, Echo Dots+Show8, Logi Circle 2, HomeBridge
TIG Stack (Telegraf, InfluxDB, Grafana)

volschin

Punkt 1 ist bei mir jetzt abgehakt.
Seit gestern läuft über den RasPi alle 30 Minuten ein Abruf der Daten von den Sensoren und die Übertragung in die Cloud. Das Schöne ist, dass die Sensoren einen Zwischenspeicher für historische Daten haben. Man könnte also auch nur einmal am Tag abrufen und dann ein größeres Paket in die Cloud übertragen.
Intel NUC+Ubuntu 22.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7590, Echo Dots+Show8, Logi Circle 2, HomeBridge
TIG Stack (Telegraf, InfluxDB, Grafana)

Mr. P

Hej,

eigentlich darf es mich ja nicht wundern, dass es schon jemand anders entdeckt hat. Aber eben wollte ich verkünden, dass ich dank der offenen Schnittstelle und Jerome jetzt beginnen werde, an einer Integration des Sensors in FHEM zu arbeiten und wollte in die Runde nach Ideen fragen, wie ihr euch das vorstellen könntet.
Wie volschin schon richtig bemerkt hat, ist das mit Perl ja nicht so einfach und deswegen hätte ich an einen Wrapper gedacht. Aber wie gesagt - würde mich freuen, von allen Interessierten eine kurze Rückmeldung zu erhalten, welche Ideen es gibt bzw. was ihr euch an Umsetzung vorstellen könntet. :-)
Greetz,
   Mr. P

volschin

Mein Cloud Sync läuft jetzt seit rund 2 Wochen. Ich musste noch ein paar Bugs fixen, die nur bei mehreren Sensoren relevant werden.

Mein Fork ist hier zu finden:
https://github.com/volschin/FlowerPower-Tools
Intel NUC+Ubuntu 22.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7590, Echo Dots+Show8, Logi Circle 2, HomeBridge
TIG Stack (Telegraf, InfluxDB, Grafana)

HolyMoly

Sehr cool,

hätte auch Interesse an einem FHEM Wrapper/Modul.
Muss aber erstmal BLE zum werkeln bekommen auf meinem SBC hier :(
FHEM auf Raspi2 & Radxa Rock

gandy

Hi Volschin,

hab die letzten Tage versucht, meinen Parott Sensor zum Laufen zu kriegen, bin baer nicht so weit gekommen wie Du.
Während eine App auf meinem Android-Smartphone problemlos den Sensor sieht (auch aus größerer Entfernung), Kontakt mit ihm aufnehmen und die Messwerte auslesen kann, bekomme ich weder am Raspberry Pi noch an meinem Laptop eine Verbindung.


pi@raspi2 ~/node_modules/flower-power $ sudo node test.js

kommt nie zurück, liefert insbesondere keine Ausgabe.


pi@raspi2 $ sodo hcitool lescan

zeigt sehr schnell hintereinander immer wieder die Adresse eines Gerätes, das sich als "Apple TV" ausgibt, gehört wohl dem Nachbarn. Die Adresse des Flower Power taucht hier nie auf. Ich have verschiedene Kernelversionen und bluez-Reeases durchprobiert, alle zeigen das gleiche Verhalten. Deswegen habe ich meinen SB-BT4.0-Adapter, ein "Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)" mit der ID: 0a12:0001 in Verdacht.

Welchen Bluetooth-Adapter verwendest Du denn, und welche bluez-/kernel-Version hast Du im Einsatz?

Danke schonmal,
Andy.
fhem (svn) auf i5-4210U NUC
2x HMLAN, 19x HM-SEC-RHS, 15x HM-LC-Bl1PBU-FM, etc.
ODYS Neron Tablet / Android 4.2
Samsung Galaxy Tab 2 10.1N / Android 4.1.2
Samsung Galaxy Note / Android 6.0.1

volschin

#12
Ich habe bluez in Version 5.23 im Einsatz mit Kernel 4.1.6, Standardpaket aus dem Jessie-Zweig. Lief aber auch auf älteren Kernel-Versionen (3.11 und 3.18) problemlos.

Adapter habe ich einen mit Broadcom BCM20702-Chip (diesen)
Sollte aber auch mit CSR-Chip laufen, der unterstützt aber nur bis zu 5 Devices, der Broadcom bis zu 14. Das spielt hier keine Rolle.

Solange Du mit
sudo hcitool lescan
den FlowerPower nicht zu sehen bekommst, brauchst Du mit node nicht weiter zu versuchen. Da stimmt irgendwo die Basis nicht.
Intel NUC+Ubuntu 22.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7590, Echo Dots+Show8, Logi Circle 2, HomeBridge
TIG Stack (Telegraf, InfluxDB, Grafana)

Mr. P

@volschin: Was ich dich noch fragen wollte... Warum hast du den Job eigentlich alle 30 Minuten laufen?
Die zwei Stunden, wie es die App selbst auch macht, sollten doch ausreichen und das geht vor allem nicht so auf die Batterie. :-)
Greetz,
   Mr. P

volschin

Habe ich mittlerweile auch auf stündlich hochgesetzt. Theoretisch reicht auch einmal pro Tag, da er die Daten ja puffert und nur das hochlädt, was noch fehlt.
Intel NUC+Ubuntu 22.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7590, Echo Dots+Show8, Logi Circle 2, HomeBridge
TIG Stack (Telegraf, InfluxDB, Grafana)