Neues Modul: 74_BleTagBattery - Batterie Informationen für BLE Tags

Begonnen von mumpitzstuff, 27 Februar 2017, 21:29:50

Vorheriges Thema - Nächstes Thema

SouzA

Hi,

Danke für deine Antwort!

Zitat von: mumpitzstuff am 13 April 2017, 15:13:34

  • Dein Bluetooth Dongle ist nicht der Beste. Mögliche Lösung: Versuch mal lepresenced auf hci0 und BleTagBattery auf hci1 zu setzen, also jeweils den anderen Dongle zu verwenden.
  • Du hast ein Bluez installiert, dass nicht richtig funktioniert. Siehe hierzu z.B. folgenden Beitrag. https://bugreports.qt.io/browse/QTBUG-44622 Die Empfehlung irgendwelche Bluez Versionen manuell zu installieren, möchte ich jetzt aber lieber nicht aussprechen. Versuch erst mal die Dongles zu tauschen.

Punkt Nummer 1 hat schon geholfen. Hätte man auch selbst drauf kommen können... Jetzt bin ich mal gespannt, wie zuverlässig der Stick mit dem lepresence läuft.
Btw. der verwendete Stick ist dieser: Aukru® USB nano Bluetooth-Adapter V4.0.  Scheint also nicht allzu doll zu sein.

Auf jeden Fall noch einmal vielen Dank für dieses Klasse Modul und für den Support.

Bis denn
SouzA
Raspi 4, EnOcean TCM310 USB, HM-MOD-UART-USB, Jeelink, hue, AMAD, fully, FRITZBOX, Signalbot, VIERA, Presence BT/Mac, TPLink, Gassistant, Shelly, fhempy, ZigBee

stoxx

ZitatSupported BLE tags: should work for all BLE tags now

Hi,
super Modul - mit meinen GTags klappts auch hervorragend. Nur der Batterie Wert von den nut Tags wird nicht ausgelesen..
Oder muss ich dafür etwas Bestimmtes einstellen?

2017.05.26 15:13:39 4: Sub BleTagBattery_BlockingRun (BLEBat) - device found. device: NutTag
2017.05.26 15:13:39 4: Sub BleTagBattery_BlockingRun (BLEBat) - device name: nut
2017.05.26 15:13:39 4: Sub BleTagBattery_BlockingRun (BLEBat) - device address: FF:30:43:78:F8:C4
2017.05.26 15:13:39 4: Sub BleTagBattery_BlockingRun (BLEBat) - try to connect with public
2017.05.26 15:14:19 4: Sub BleTagBattery_readSensorValue (BLEBat) - call gatttool char read loop: 0, result: connect error: Connection refused (111)
2017.05.26 15:14:59 4: Sub BleTagBattery_readSensorValue (BLEBat) - call gatttool char read loop: 1, result: connect error: Connection refused (111)
2017.05.26 15:15:39 4: Sub BleTagBattery_readSensorValue (BLEBat) - call gatttool char read loop: 3, result: connect error: Connection refused (111)
2017.05.26 15:16:19 4: Sub BleTagBattery_readSensorValue (BLEBat) - call gatttool char read loop: 4, result: connect error: Connection refused (111)
2017.05.26 15:16:19 4: Sub BleTagBattery_readSensorValue (BLEBat) - invalid gatttool response
2017.05.26 15:16:19 4: Sub BleTagBattery_BlockingRun (BLEBat) - try to connect with random
2017.05.26 15:16:27 4: Sub BleTagBattery_readSensorValue (BLEBat) - call gatttool char read loop: 0, result: connect error: Transport endpoint is not connected (107)
2017.05.26 15:16:31 4: Sub BleTagBattery_readSensorValue (BLEBat) - call gatttool char read loop: 1, result: connect error: Transport endpoint is not connected (107)
2017.05.26 15:16:35 4: Sub BleTagBattery_readSensorValue (BLEBat) - call gatttool char read loop: 2, result: connect error: Transport endpoint is not connected (107)
2017.05.26 15:16:39 4: Sub BleTagBattery_readSensorValue (BLEBat) - call gatttool char read loop: 3, result: connect error: Transport endpoint is not connected (107)
2017.05.26 15:16:47 4: Sub BleTagBattery_readSensorValue (BLEBat) - call gatttool char read loop: 4, result: connect error: Transport endpoint is not connected (107)
2017.05.26 15:16:47 4: Sub BleTagBattery_readSensorValue (BLEBat) - invalid gatttool response
2017.05.26 15:16:47 4: Sub BleTagBattery_BlockingRun (BLEBat) - tag not supported

vg
stoxx
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

mumpitzstuff

Eigentlich sollte das ohne weiteres möglich sein. Das Modul versucht aber nur den im Bluetooth Standard festgelegten Service abzurufen. Vielleicht ist dein tracker nicht kompatibel in der Hinsicht? Versuch doch mal alternativ den Batteriestatus manuell abzufragen. Ich würde mich wundern, wenn das dann funktionieren sollte. Was für ein nur Tag ist das denn genau? Da gibts glaub mehrere...

stoxx

Hi,
ich verwende die nut mini. Über einen BLE Scanner am Handy kann der Batteriestand ohne Probleme ausgelesen werden.
Manuell habe ich es über versucht mit
sudo gatttool -i hci1 -b FF:30:43:78:F8:C4 --char-read --handle=0x001b

Das klappt aber auch nicht - nach ca. 30 Sekunden kommt die Meldung:
Zitatconnect error: Connection refused (111)

Im Internet habe ich irgendwo das gefunden, werde aber nicht so richtig schlau draus:
http://www.domoticz.com/forum/viewtopic.php?t=16349#p121802

vg stoxx
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

mumpitzstuff

Versuch's mal mit -t random bei deinem gatttool aufruf. Die nut devices brauchen das.

stoxx

Ok, jetzt erhalte ich den Fehler, den ich auch mit dem Modul bekomme:
Zitatconnect error: Transport endpoint is not connected (107)
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

mumpitzstuff

Kannst du in der app auf deinem Handy sehen, ob dort vielleicht ein anderer handle/service verwendet wird? Vielleicht ist der Tag auch mit deinem Handy gepaired und lässt jetzt keine anderen Verbindungen mehr zu? Hast du vielleicht eine nut app oder sowas installiert?

stoxx

Habe ich mir auch schon gedacht - ist aber auch 2A19 (siehe Anhang).
Mit einer App ist der nut nicht gekoppelt (sonst würde die Abfrage via App wahrscheinlich auch nicht gehen, denke ich)
Ist schon komisch.. hab jetzt langsam auch keine Idee mehr..
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

mumpitzstuff

Wenn der Tag gepaired wäre, dann käme es zu solchen Erscheinungen. Du must auf jeden Fall manuell den Batteriestatus auslesen können, ansonsten kommt das Modul auch nicht drauf.

1. Mal den Raspberry neu starten oder den Bluetooth Dongle abziehen und wieder dran stecken.
2. Falls vorhanden mit einem anderen Bluetooth Dongle testen obs damit geht.

Vorher jeweils Bluetooth bei deinem Handy/Tablet deaktivieren, damit das nicht dazwischen funkt. Danach etwas warten bis du die Tests machst, denn wenn ich mit mehreren Geräten auf ein Bluetooth Device zugreife, dann erhalte ich ebenfalls solche Fehler, wenn ich das zu schnell versuche. Wahrscheinlich ist das Gerät einige Zeit geblockt, nachdem darauf zugegriffen wurde.

Ansonsten fällt mir leider auch nicht mehr viel ein, das scheint ein sehr spezifisches Problem zu sein.

stoxx

Zitat1. Mal den Raspberry neu starten oder den Bluetooth Dongle abziehen und wieder dran stecken.
2. Falls vorhanden mit einem anderen Bluetooth Dongle testen obs damit geht.

Habe ich beides versucht, leider ohne Erfolg.
Außerdem habe ich bei allen anderen Bluetooth Geräten das Bluetooth deaktiviert - hat auch nichts geholfen.
Ich befürchte, dass es irgendwie an meinem installierten bluez liegt; das lang ich aber vorsichtshalber nicht an, da bisher sonst alles tadellos funktioniert..

Trotzdem vielen Dank für die Hilfe
vg stoxx
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

mi.ke

Zitat von: mumpitzstuff am 02 März 2017, 18:13:14
Ich habe den Zyklus 6h bewusst gewählt, ich kann aber auch ein Attribut hinzufügen. Aber Vorsicht bei 24h. Wenn man nicht den Zeitpunkt wählen kann, dann kann es passieren, das die Abfrage immer passiert wenn du auf Arbeit bist und du wirst gar nichts sehen.

Moin.

Vielen Dank für das Modul

Nachdem sich das Modul sofort erfolgreich mit meinen iBeacons verstanden hat, bin ich auf die Idee gekommen, andere Bluetooth-Geräte mit lepresenced und BleTagBattery abzufragen . . .
. . . Köpfhörer, Lautsprecher, Fitnessband, Fahrrad . . .

Funktioniert überraschen gut.

Somit meine Bitte; ich könnte ein Attribut für den Abfragezyklus sehr gut gebrauchen, bitte. 8)

Cheers
mi.ke
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

mumpitzstuff

#41
Das ist eigentlich kein Problem, würde dann aber nur ein Intervall für alles sein. Reicht das aus?

Alternativ kannst du aber auch mit at und einem set command das auslesen der Batterieinfos triggern.

stoxx

Hi,

ich habe gerade gemerkt, dass mein Tag bereits bei 37% batteryLevel nicht mehr richtig mit meinem Raspberry kommuniziert. Leider steht bei dem Tag das reading battery dann noch auf "ok". Wann geht das reading battery denn auf low? Und kann ich das irgendwie anpassen?

vg stoxx
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

mumpitzstuff


mumpitzstuff

Ach so auf die Frage wie man das ändern kann habe ich gar nicht geantwortet. Neben ok oder nicht ok wird auch ein batteryLevel erzeugt. Verwende doch einfach das für deinen Batteriewarnungstrigger.