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

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

Vorheriges Thema - Nächstes Thema

CoolTux

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

ReviloEgros

Wenn du damit das -t random meinst, nein. Zumal ich für meine Tags public brauche.

arthur_dent_2015

Moin zusammen,

ich krieg es nicht gebacken :(
3 G-Tags, 2 Raspi 3 mit 2x Bluetooth, 1 Raspi2 mit 1x Bluetooth, lepresenced, collectord, presenced. Tags werden fast immer auf mindestens 2 Raspis empfangen. Aber BleTagBattery spielt nicht mit  :'(
Im Log finde ich:


2018.02.16 18:29:30 4: Sub BleTagBattery_Run (GTAGBattery) - start blocking call
2018.02.16 18:29:30 5: Sub BleTagBattery_stateRequest (GTAGBattery) - state request called
2018.02.16 18:29:30 4: Sub BleTagBattery_BlockingRun (GTAGBattery) - device found. device: GTag1
2018.02.16 18:29:30 4: Sub BleTagBattery_BlockingRun (GTAGBattery) - device name: Gigaset G-tag
2018.02.16 18:29:30 4: Sub BleTagBattery_BlockingRun (GTAGBattery) - device address: 7C:2F:80:AD:BA:56
2018.02.16 18:29:30 4: Sub BleTagBattery_BlockingRun (GTAGBattery) - try to connect with public
2018.02.16 18:30:10 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 0, result: connect error: Connection refused (111)
2018.02.16 18:30:51 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 1, result: connect error: Connection refused (111)
2018.02.16 18:31:19 1: FreezeMon: myFreezemon possible freeze starting at 18:31:18, delay is 1.165 possibly caused by no bad guy found :-(
2018.02.16 18:31:31 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 2, result: connect error: Connection refused (111)
2018.02.16 18:32:05 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 3, result: connect error: Transport endpoint is not connected (107)

2018.02.16 18:32:06 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 4, result: connect error: Software caused connection abort (103)

2018.02.16 18:32:06 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - invalid gatttool response
2018.02.16 18:32:06 4: Sub BleTagBattery_BlockingRun (GTAGBattery) - try to connect with random
2018.02.16 18:32:06 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 0, result: connect: No route to host (113)

2018.02.16 18:32:06 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 1, result: connect: No route to host (113)

2018.02.16 18:32:06 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 2, result: connect: No route to host (113)

2018.02.16 18:32:06 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 3, result: connect: No route to host (113)

2018.02.16 18:32:06 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 4, result: connect: No route to host (113)

2018.02.16 18:32:06 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - invalid gatttool response
2018.02.16 18:32:06 4: Sub BleTagBattery_BlockingRun (GTAGBattery) - tag not supported
2018.02.16 18:32:06 4: Sub BleTagBattery_BlockingRun (GTAGBattery) - processing gatttool response for device Mustang. batteryLevel:
2018.02.16 18:32:06 4: Sub BleTagBattery_BlockingRun (GTAGBattery) - device found. device: GTag2
2018.02.16 18:32:06 4: Sub BleTagBattery_BlockingRun (GTAGBattery) - device name: Gigaset G-tag
2018.02.16 18:32:06 4: Sub BleTagBattery_BlockingRun (GTAGBattery) - device address: 7C:2F:80:AD:BA:A8
2018.02.16 18:32:06 4: Sub BleTagBattery_BlockingRun (GTAGBattery) - try to connect with public
2018.02.16 18:32:06 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 0, result: connect: No route to host (113)

2018.02.16 18:32:07 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 1, result: connect: No route to host (113)

2018.02.16 18:32:07 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 2, result: connect: No route to host (113)

2018.02.16 18:32:07 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 3, result: connect: No route to host (113)
2018.02.16 18:32:47 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 4, result: connect error: Connection refused (111)

2018.02.16 18:32:47 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - invalid gatttool response
2018.02.16 18:32:47 4: Sub BleTagBattery_BlockingRun (GTAGBattery) - try to connect with random
2018.02.16 18:33:27 4: Sub BleTagBattery_readSensorValue (GTAGBattery) - call gatttool char read loop: 0, result: connect error: Connection refused (111)

2018.02.16 18:33:30 1: Timeout for BleTagBattery_BlockingRun reached, terminated process 1988
2018.02.16 18:33:30 3: (GTAGBattery) Sub BleTagBattery_BlockingAborted - BlockingCall process terminated unexpectedly: timeout


bluetoothctl findet auf jedem Raspi mindesten 2 G-Tags.

Any ideas?

Gruß
Arthur

mumpitzstuff

Versuch mal mit gatttool die Tags zu finden. Wenn du das manuell hinbekommst, dann sollte es auch das Modul schaffen. Das Modul probiert sowohl random als auch Public durch, um so möglichst alle Geräte zu finden. Wenn gatttool aber grundsätzlich nicht funktioniert, dann wird es das Modul auch nicht tun.

arthur_dent_2015

gatttool sagt:


pi@raspberrypi1:~ $ sudo gatttool -i hci0 -b 7C:2F:80:AD:BA:A8 --char-read --handle=0x001b
Characteristic value/descriptor: 64
pi@raspberrypi1:~ $ sudo gatttool -i hci0 -b 7C:2F:80:AD:BA:56 --char-read --handle=0x001b
Characteristic value/descriptor: 64
pi@raspberrypi1:~ $ sudo gatttool -i hci0 -b 7C:2F:80:AD:BA:72 --char-read --handle=0x001b
Characteristic value/descriptor: 5e




pi@raspberrypi2:~ $ sudo gatttool -i hci0 -b 7C:2F:80:AD:BA:A8 --char-read --handle=0x001b
Characteristic value/descriptor: 64
pi@raspberrypi2:~ $ sudo gatttool -i hci0 -b 7C:2F:80:AD:BA:56 --char-read --handle=0x001b
Characteristic value/descriptor: 64
pi@raspberrypi2:~ $ sudo gatttool -i hci0 -b 7C:2F:80:AD:BA:72 --char-read --handle=0x001b
Characteristic value/descriptor: 5e



pi@raspberrypi3:~ $ sudo gatttool -i hci0 -b 7C:2F:80:AD:BA:A8 --char-read --handle=0x001b
connect error: Function not implemented (38)
pi@raspberrypi3:~ $ sudo gatttool -i hci0 -b 7C:2F:80:AD:BA:56 --char-read --handle=0x001b
connect error: Connection refused (111)
pi@raspberrypi3:~ $ sudo gatttool -i hci0 -b 7C:2F:80:AD:BA:72 --char-read --handle=0x001b
connect error: Connection refused (111)

mumpitzstuff

Funktioniert es auch ohne sudo? Ist sichergestellt, das auf hci0 nur das Modul läuft und nicht gleichzeitig lepresenced? lepresenced sollte dann auf hci1 konfiguriert sein.

arthur_dent_2015

ja, geht auf allen Rechnern ohne sudo, obwohl auf hci0 lepresenced läuft. Auf hci1 gibt es: connect error: Connection refused (111).
hci1 wird von presenced belegt, so denn überhaupt vorhanden.

mumpitzstuff

Dann gehen mir die Ideen aus. Das Modul macht exakt das, was du auf der Kommandozeile gemacht hast. Zur Not schreib dir eine Funktion in der myutils, vielleicht kann das deine Probleme lösen.

arthur_dent_2015

Auf welcher Instanz wird gatttool eigentlich gestartet? Auf der FHEM Instanz oder auch auf allen auf denen lepresenced läuft?

CoolTux

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

arthur_dent_2015

Instanz = Rechner (Raspi, bei mir 3 Stück), Auf der Hauptinstanz läuft FHEM, die beiden anderen sammeln nur Daten, Bluetooth, ser2net oder dienen als TTS Ausgabe.

CoolTux

Gatttool wird auf dem Rechner gestartet auf dem Du das Device in FHEM definiert hast.
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

arthur_dent_2015

okay, dachte ich mir fast :( Der hat den schlechtesten Empfang...

CoolTux

Ich weiß gerade nicht aus dem Kopf ob das Modul ssh Support bietet. Schau Mal bitte unter den Attributen ob Du da was mit ssh findest.
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

arthur_dent_2015

Nee, kein ssh Attribut.
Perfekt wäre, wenn lepresenced die Batteriewerte gleich mit liefern würde.... Man kann sich ja mal was wünschen, is ja bald wieder Weihnachten ;)