[74_XiaomiBTLESens.pm] Xiaomi Bluetooth Sensoren FlowerSens/Thermometer

Begonnen von CoolTux, 11 Januar 2018, 15:42:45

Vorheriges Thema - Nächstes Thema

ToKa

Hallo zusammen,

mit den wesentlich kürzeren Intervallen, fällt es natürlich nicht so sehr auf, dass einzelne Übertragungen nicht klappen. Um die Temperatur einfach zu messen und darzustellen, reicht das aus. Für eine Steuerung mit den Werten wäre mir das zu instabil.

Ich wollte jetzt nicht unbedingt noch eine "weitere" Technik wie den ESP32 und SW openMQTTGateway zum Einsatz bringen, aber welche Hardware nutzt Du denn tomcat?

Viele Grüße
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

tomcat.x

Die "ESP32 D1 Mini NodeMCU" von  AZDelivery. Es gab einen Artikel in der c't, der mich überhaupt erst dazu gebracht hat, mich mit ESP32 und MQTT zu beschäftigen. Da waren die "größeren" von AZDelivery als Beispiel verlinkt. Rein für Bluetooth (bereits eingebaut) fand ich aber die D1 Mini praktischer. Das Beispiel aus der c't hatte ich dann so in 2-3 Stunden am laufen (ESP32 geflasht und MQTT2_SERVER in fhem installiert). Bei der weiteren Beschäftigung mit MQTT im fhem Wiki bin ich dann auf das OpenMQTTGateway gestoßen.

Zum Thema hier (damit es nicht ganz OT ist): Auch größere Intervalle könnten zum Ziel führen, da es hier dann potentiell weniger Überschneidungen gibt (bei alle 5 Minuten hätte selbst bei 5 Sensoren jeder 1 Minute Zeit zur Abfrage). Gut, bei einer zufälligen Überschneidung dauert es dann aber wiederum 10 Minuten, bis man wieder einen Wert bekommt.
FHEM: 6.1 auf Raspi 3, Raspbian (Buster), Perl v5.28.1
Sender/Empfänger: 2 x CULv3, Duofern Stick, HM-MOD-RPI-PCB
Gateways: FRITZ!Box 6591 (OS: 7.57), Trädfri, ConBee 2,  piVCCU, OpenMQTTGateway
Sensoren/Aktoren: FRITZ!DECT, FS20, FHT, HMS, HomeMatic, Trädfri, DuoFern, NetAtmo

ToKa

Hallo zusammen,

logge jetzt die Gatt Fehler mit und musste heute Nachmittag den Bluetooth Empfänger resetten, weil bei einem Sensor gar nichts mehr ging.

Bei meiner weiteren Suche im Internet bin ich auf folgenden Link gestoßen:
https://github.com/JsBergbau/MiTemperature2/


Ein Python-Script um die Sensoren mit Standard firmware oder custom firmware auszulesen. Werde ich mir mal anschauen und ausprobieren. Mann kann wohl die Daten dann auch per mqtt und anderen Techniken weiter senden.

@Timcat: Danke für die Infos zu ESP32.

Viele Grüße
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

Holzlenkrad

Moin CoolTux,

magst du vielleicht für die Werte, die aus dem Sensor ausgelesen werden (Temperatur usw) jeweils ein Attribut zur Kalibrierung hinzufügen? Mein Thermometer zeigt leider chronisch eine zu hohe Luftfeuchtigkeit an und ich würde einfach direkt -4.0 abziehen wollen. Dann wäre das Reading direkt schon verändert und ich muss nicht jedes Mal, wenn der Wert in der UI angezeigt  oder in die InfluxDB geschrieben werden soll daran denken die Werte anzupassen.

Danke :)

CoolTux

Zitat von: Holzlenkrad am 08 Februar 2021, 02:01:19
Moin CoolTux,

magst du vielleicht für die Werte, die aus dem Sensor ausgelesen werden (Temperatur usw) jeweils ein Attribut zur Kalibrierung hinzufügen? Mein Thermometer zeigt leider chronisch eine zu hohe Luftfeuchtigkeit an und ich würde einfach direkt -4.0 abziehen wollen. Dann wäre das Reading direkt schon verändert und ich muss nicht jedes Mal, wenn der Wert in der UI angezeigt  oder in die InfluxDB geschrieben werden soll daran denken die Werte anzupassen.

Danke :)

Kann ich mir bei Gelegenheit gerne anschauen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Koersten

Hallo zusammen,

leider habe ich heute ein routinemäßiges upgrade meines Pi 3 durchgeführt und danach hat das Modul nur noch folgende Fehler geworfen:

2021.03.04 14:36:18 3: XiaomiBTLESens (wz_pflanze6) - ExecGatttool_Run: errorcode: "1", ErrorString: "connect: Connection refused (111)
"
2021.03.04 14:36:18 3: XiaomiBTLESens (wz_pflanze7) - ExecGatttool_Run: errorcode: "1", ErrorString: "connect: Connection refused (111)
"
2021.03.04 14:36:18 3: XiaomiBTLESens (wz_pflanze5) - ExecGatttool_Run: errorcode: "1", ErrorString: "connect: Connection refused (111)
"
2021.03.04 14:36:18 3: XiaomiBTLESens (wz_pflanze2) - ExecGatttool_Run: errorcode: "1", ErrorString: "connect: Connection refused (111)
"
2021.03.04 14:36:18 3: XiaomiBTLESens (wz_pflanze3) - ExecGatttool_Run: errorcode: "1", ErrorString: "connect: Connection refused (111)
"
2021.03.04 14:36:18 3: XiaomiBTLESens (wz_pflanze4) - ExecGatttool_Run: errorcode: "1", ErrorString: "connect: Connection refused (111)


Das hcitool scannt aber sauber auf dem Pi. Das habe ich schon überprüft. Da ich kein Entwickler bin, kann ich leider nicht mehr dazu sagen im Moment.
Gerne helfe ich aber bei der Fehlersuche, wenn man mir sagt, was ich tun soll.
Danke schonmal!

Jamo

Hallo Koersten,
Ich hatte mal die gleiche Fehlermeldung. Du kannst mal versuchen dein hci interface (bei mir hci1) neu zu starten, mit
- sudo hciconfig hci1 down
- sudo hciconfig hci1 up
Danach sollte es wieder funktionieren
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

Koersten

Zitat von: Jamo am 04 März 2021, 14:58:12
Hallo Koersten,
Ich hatte mal die gleiche Fehlermeldung. Du kannst mal versuchen dein hci interface (bei mir hci1) neu zu starten, mit
- sudo hciconfig hci1 down
- sudo hciconfig hci1 up
Danach sollte es wieder funktionieren
Danke für den Tipp!
Habe ich gerade ausprobiert. Bei mir hieß es hci0, aber das ist ja nicht relevant.
Auch den ganzen Pi hatte ich schonmal rebootet.

Das hat leider keine Änderung gebracht.

Koersten

Seit zwei Tagen ist wieder alles ok und alle Sensoren laufen wieder. Ich hatte ein Update von Fhem und eines für den Pi gemacht.
Keine Ahnung was sich geändert hat, aber alles geht wieder auf magische Weise.

Auch gut.

Jamo

Hallo Koersten,
ich hatte jetzt auch wieder öfter Schwierigkeiten, ich weiss mein Tip mit hci0/1 up/down hat Dir nicht geholfen,
das funktioniert bei mir auch nicht immer. Ich habe jetzt aber nochmal viel gegoogled, was funktioniert ist sudo btmgmt le on && sudo service bluetooth restart & (hci0 ist default da kann man das -i hci0 weglassen) oder eben für hci1 sudo btmgmt -i hci1 le on && sudo service bluetooth restart &
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/ConbeeII, FB, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack

Koersten

Zitat von: Jamo am 25 März 2021, 21:15:11
Hallo Koersten,
ich hatte jetzt auch wieder öfter Schwierigkeiten, ich weiss mein Tip mit hci0/1 up/down hat Dir nicht geholfen,
das funktioniert bei mir auch nicht immer. Ich habe jetzt aber nochmal viel gegoogled, was funktioniert is sudo btmgmt le on && sudo service bluetooth restart & (hci0 ist default da kann man das -i hci0 weglassen) oder eben sudo btmgmt -i hci1 le on && sudo service bluetooth restart &

Hey Jamo,
danke das werde ich das nächste mal auf jeden Fall mal versuchen.
Das ist schon komisch das Bluetooth auf dem Pi so zickig ist. Ich weiß das eigentliche Fhem Modul hat damit nichts zu tun.

knxler

Hallo,
ich versuche gerade meinen ersten "flowerSens" in Betrieb zu nehmen. Unter linux wird er Sensor auf dem PI gefunden. Wenn ich dann in Fehm "get firmware" abrufe bekomme ich die Fehlermeldung No route to host(113) geliefert. Hat einer einen Tip für mich an was das liegt?
Ich benutze einen PI4.
Hier mein list zu dem Device.

ZitatInternals:
   BTMAC      80:EA:CA:89:41:A6
   DEF        80:EA:CA:89:41:A6
   FUUID      60a90a77-f33f-5ea6-39e1-2794c8c40575fc67
   FVERSION   74_XiaomiBTLESens.pm:v3.0.0-s22474/2020-07-26
   INTERVAL   7200
   NAME       wz_pflanze1
   NOTIFYDEV  global,wz_pflanze1
   NR         867
   NTFY_ORDER 50-wz_pflanze1
   STATE      error
   TYPE       XiaomiBTLESens
   VERSION    v3.0.0
   loglevel   4
   READINGS:
     2021-05-22 16:16:37   lastGattError   No route to host (113)
     2021-05-22 16:16:37   state           error
   helper:
     CallBattery 0
     CallSensDataCounter 0
     updateTimeCallBattery 0
Attributes:
   alias      Erster Sensor
   interval   7200
   model      flowerSens
   room       XiaomiBTLESens

Gruß Martin

CoolTux

Ein klassischer Fehler ist das der Sensor noch mit einem anderen Gerät gepaired ist. Hast Du den Sensor noch am Handy oder so gekoppelt?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

knxler

Hallo,
die Idee hatte ich auch schon und habe Bluetooh am Handy abgeschaltet.

mi.ke

Zitat von: knxler am 22 Mai 2021, 16:28:05
Unter linux wird er Sensor auf dem PI gefunden. Wenn ich dann in Fehm "get firmware" abrufe bekomme ich die Fehlermeldung No route to host(113) geliefert. Hat einer einen Tip für mich an was das liegt?
Nutzt den internen BT Chip oder hast Du noch einen zusätzliche BT Dongle eingesteckt?
FHEM 5.9 | RPi4 + 5 x RPi(Z) + FB7590 + FB 6890 LTE via LAN und WAN (VPN) verbunden.
2 x CUL868 + 3 x RFXTRX(e) + 6 x HMwLanGW + 4 x z2tGw + 5 x LGW + 2 x IRBlast + CO2 +++
FS20, FHT, FMS, Elro(mod), CM160, Revolt, LGTV, STV, AVR, withings, HM-sec-*, HM-CC-RT-DN, AMAD, PCA301, arlo, Aqara