===== Flower Care Xiaomi Mi Flora =====
Zuerst habe ich mir den teuersten' gekauft, bei dem man am wenigsten machen muss. Funktioniert in der Xiaomi Home App und in der Flower Care App. Nur das laden der [[miflora_bluetooth|Historie]] klappt irgendwie nicht. Irgendwann kommt immer ein Fehler.
Anbindung an meine HomeAutomation: Das entsprechende githup für [[https://github.com/open-homeautomation/miflora|miflora]] installiert, die MAC-Adresse rausfinden und dann geht es (fast). Ich musste die Imports anders schreiben.
from btlewrap import available_backends, BluepyBackend, GatttoolBackend, PygattBackend
from miflora.miflora_poller import MiFloraPoller, \
MI_CONDUCTIVITY, MI_MOISTURE, MI_LIGHT, MI_TEMPERATURE, MI_BATTERY
from miflora import miflora_scanner
Aufruf dann in etwa so: sudo python3 pflanze.py poll 'C4:7C:8D:6A:DA:BB'
Da die Historie nicht geklappt hat, habe ich noch die beiden anderen Bluetooth Backends installiert.
sudo pip install bluepy
sudo pip install pygatt
Mit Bluepy ging dann - leider nur ein Mal - die Historie:
import sys
sys.path.append('../')
from btlewrap.bluepy import BluepyBackend
from miflora.miflora_poller import MiFloraPoller
def history(args):
poller = MiFloraPoller("c4:7c:8d:6a:da:bb", BluepyBackend)
history_list = poller.fetch_history()
print('History returned {} entries.'.format(len(history_list)))
for entry in history_list:
print('History from {}'.format(entry.wall_time))
print(" Temperature: {}".format(entry.temperature))
print(" Moisture: {}".format(entry.moisture))
print(" Light: {}".format(entry.light))
print(" Conductivity: {}".format(entry.conductivity))
history("bluepy")
Jetzt kommt noch die Anbindung an die Datenbank, die ich bei LilyGo schon gemacht habe.
Stand Dezember 2019, Update März 2020