FHEM Forum

FHEM => Automatisierung => Thema gestartet von: tomster am 06 November 2014, 10:01:16

Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: tomster am 06 November 2014, 10:01:16
Servus zusammen!

Bei einer Diskussion in diesem Thread http://forum.fhem.de/index.php/topic,28685.0.html (http://forum.fhem.de/index.php/topic,28685.0.html) wurde angedacht eine Anwesenheitserkennung mittels sogenannten Low Energy Bluetooth (BT LE, respektive 4.0) Tags zu realisieren. Der Hintergrund ist, dass wir ein Konzept gesucht haben, dass möglichst stromsparend ist (also nicht das BT 4.0 eines iPhones zu benutzt) dadurch natürlich auch für Nicht-iPhone-Besitzer zu verwenden ist, und zuverlässig funktioniert.

Der Plan dabei ist relativ simpel:

Am FHEM-Server (ggfls. auch einem Pi o.Ä. als Satelliten) hängt ein BT 4.0-USB-Dongle, der die Anwesenheit der jeweiligen Tags (der z.B. am Schlüsselbund hängt) erkennt und diese Tatsache z.B. mittels PRESENCE an FHEM meldet.

Derzeit gibt es bereits einige solcher Tags. Hier eine kleine Übersicht: http://www.hongkiat.com/blog/bluetooth-tracking-devices/

Ich hab mich dabei ein bisschen auf Tags namens PebbleBee http://pebblebee.com eingeschossen, da die eine Version anbieten, die mittels QI- Ladegerät (also induktiv) aufgeladen werden kann. Die Batterien halten angeblich zwischen 6-12 Monate. Mag sein, dass es noch andere Anbieter gibt, die das können, aber ich hab noch nicht weiter gesucht. Auch wenn eine so ein PebbleBee "Dragon" (die mit QI) derzeit noch ca. 42$ kostet, ist es mir lieber so ein Teil zu kaufen, als welche, die ich wegschmeissen kann, wenn die Batterie leer ist.

Eine kurze Emailanfrage beim Hersteller der PebbleBees hat mich zuversichtlich gestimmt, dass unser Wunschszenario prinzipiell möglich sein müsste:


Hi there!
I just came across the PebbleBee devices while searching for a simple and reliable BT LE tag to put on my key chain. Contrary to your original design I intend to use it as some sort of presence status device.

Is it possible to e.g. pair the PebbleBee with a Linux-based PC with a BT4.0 dongle and hence detect the presence of of a PB-device?
So when I come home, I throw my set of keys on the shelf and the PC will detect me as being home and will e.g. turn on the lights.

Does the PB have some sort of self-activated sleep-mode or is it on-all-time? I guess it wouldn't make much sense to first have to turn on the device every time I come home in order to be detected by the PC ;-)

Does the PB send it's BT address in plain or is it some sort of encryted?


Hier die Antwort:

Our BTLE Hubs(coming out soon) are actually Linux. They can certainly detect the PB and connect if necessary.  But generally it is for presence detection(your dog home or did it run off) and to upload sensor data to our cloud.

The PB is on all the time but you can vary the reporting cycle from 3 different cycles.  There is a unique MAC address of each device that can all be detected in open advertisements. 


Klingt doch schon mal nicht schlecht, oder?  OK, bis auf das Thema mit der Cloud ;-)
Vielleicht bekommt man es ja hin, dass ein Betrieb mit PRESENCE-Detection UND den Funktionen der PB-App (Wo ist der Schlüsselbund?, etc.) gleichzeitig hinhaut. Mal schauen...

LG,
TOM

P.S. Ich hab mir Mal ein paar PebbleBee Dragons bestellt und warte auf die Lieferung (angeblich irgendwann im November).

Ein Dank geht an dieser Stelle an User Mitch, der wohl den Hauptanteil an dieser Idee trägt!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: tomster am 06 November 2014, 10:11:49
Oopps, ich denke das hätte unter Hausautomations-Systeme -> Sonstige Systeme gehört, oder?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 06 November 2014, 11:19:39
Hallo Tomster,

bitte unbedingt ein Update wenn die Teile da sind.
Die Tags wären genau das was ich auch suche :-)

Danke !

Bodo
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 06 November 2014, 12:29:32
Wie bereits im anderen Thread geschrieben, habe ich mir die Tile bestellt.
Werde dann versuchen, diese über meinen Linuxserver auszulesen.
Sobald ich die MAC Adresse (oder BT Adresse) habe, direkt ins Precense Modul einbinden.

Zusätzlich habe ich ja noch die "original" Funktion über die Tile App am iPhone.

Mal sehen, welcher Tag besser ist  ;)

Hoffe die Tile Dinger kommen bald. AUf der Webseite steht zumindest Auslieferung noch im November.

Mein Plan ist dann BT und Geofency zu kombinieren:
Handy ist da oder Tile ist da = Person anwesend
Handy is weg und Tile ist weg = Person abwesend

Somit sollte das System um einiges genauer funktionieren (z.B: bei handy zuhause vergessen).

Zusätzlich bekommen meine Eltern noch ein Tile, dannkann ich darüber nch "Gast anwesend" schalten.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 06 November 2014, 12:57:08
Hallo Mitch,

dann bin ich mal gespannt.
Der Ansatz klingt sehr interessant und ich würde es wohl ähnlich verwenden wollen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: lukasbastelpeter am 06 November 2014, 14:19:09
Tiles habe ich auch bestellt, leider kam ne Mail mit ca. dem Inhalt "Dass wir noch wie geplant (Ende November) liefern können wir nicht mehr versprechen"...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 06 November 2014, 14:20:54
Oh, diese Mail hab ich nicht bekommen.

Dann werde ich wohl auf einen anderen Hersteller wechseln.

Edit: im Moment steht folgendes auf der Webseite
ZitatOrders placed today will ship within 30 days

Edit 2: gerade auf der Webseite den Status meiner bestellung abgefragt
ZitatYour Tile order associated with markus@xxx is scheduled to ship no later than 11/30/2014
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: lukasbastelpeter am 06 November 2014, 14:26:23
Ja, ich lasse mich mal überraschen was ende November kommt...

@tomster: Der PebbleBee hat auch "nur" normale Batterien verbaut, lediglich die Dragon Variante hat wieder aufladbare Akkus verbaut? Zusätzlich muss man noch ein Ladepad kaufen, dann komme ich bei 2 Tags+ Pad auf gute 100$. Die  "Honey" Variante hat normale Batterien, die man tauschen kann? Ich habe mich bis jetzt nur in die "Tiles" eingelesen, deren Antwort auf Energie ist: "Wenn leer, dann kauf neu!" - Das finde ich auch nicht gut. Bei den "Honeys/Hornets" könnte man aber einfach die CR2430 tauschen. Wenn ich da auf 50$Anschaffung komme, bin ich mit 50$ für Ersatzbatterien schon gut dabei oder nicht?! Hast du das übersehen oder dich bewusst dagegen entschieden? Was erhoffst du dir noch für Vorteile von den "Dragons"?

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 06 November 2014, 14:31:49
Also wenneinTile leer ist, dann mach ich das Gehäsue auf, wechsel die Knopfzelle und klebe ihn wieder zu.

Hab ich mit meinen Estimote iBeacons auch gemacht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: tomster am 06 November 2014, 14:50:34
Ja, die Dragon-Variante ist (vorerst) die einzige, die induktiv geladen werden kann. QI-Ladegeräte gibt's aber schon ab € 10. Ich hab halt schon eins für mein Handy.

Irgendwo auf der PebbleBee-Seite stand, dass das Gehäuse "ultraschallverschweißt" wäre. Ich denke allerdings, dass diese "rocket science" unterm Strich in etwa das Gleiche ist, wie Mitch's Ansatz das Gehäuse zu öffnen und wieder zu verkleben ;-)

Welches Tag verwendet wird, ist letztendlich egal, vulgo: Geschmackssache. Ich bilde mir halt ein, dass es in unserem Haushalt einfacher ist den QI-Charger, der eh schon im EG liegt, auch dazu zu verwenden die Tags zu laden. -> ich hab keine Arbeit mit der Kontrolle der Tags.

-edit-
Nur weil ich's grad auf einem Photo auf der PB-Seite gesehen habe. Vielleicht lässt die der eingebaute Motion-Sensor ja auch tatsächlich dafür verwenden um zu checken ob neue Post im Briefkasten ist. Einfach von innen auf den Briefkastendeckel kleben und er löst aus, wenn der Deckel bewegt wird.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 06 November 2014, 14:56:14
Hab gerade auf der Pebblebee Seite gesehen, dass die Knopfzellen für den Honey verkaufen.
Dann sollte sich dieser auch öffnen lassen.

Mal sehen, vielleicht bestelle ich da auch nochmal einen zum Testen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 06 November 2014, 15:00:17
auf den seiten steht doch das bei allen drei modellen die batterie austauschbar ist. bei den beiden kleinen soll sie 2 jahre halten, beim dragon modell lässt sich statt der aufladbaren auch eine nicht aufladbare die 6 jahre halten soll einsetzen: http://pebblebee.com/features/ (http://pebblebee.com/features/).

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 07 November 2014, 06:45:22
Hallo!

Ich finde diese Idee sehr gut, denn ich nutze schon lange Bluetooth "PRESENCE" mit 3 Handys in Fhem aber was die Zuverlässigkeit angeht ist es doch noch sehr erweiterbar.

Denn wie oft lässt man doch das Handy zu Hause oder der Akku leer, ein Tag am Schlüssel den wir Grundsätzlich immer mitnehmen und die zusätzliche abfrage vom Handy wäre meiner Meinung nach die bis jetzt Besser alternative.

Könnte man es nicht auch mit diesen hier versuchen:
http://www.conrad.de/ce/de/product/1091636/?gclid=Cj0KEQiA1eyiBRC-qI2VzKf0vaUBEiQAUiZ3xPZVSGLewhd-FkaZeZhSwjVcqTou995sQkHFtd1p0AUaApLy8P8HAQ&insert_kz=VQ&hk=SEM&&WT.srch=1&WT.mc_id=google_pla&s_kwcid=AL!222!3!48259588497!!!g!!&ef_id=UsBQ1AAAAAf51V24:20141107053404:s (http://www.conrad.de/ce/de/product/1091636/?gclid=Cj0KEQiA1eyiBRC-qI2VzKf0vaUBEiQAUiZ3xPZVSGLewhd-FkaZeZhSwjVcqTou995sQkHFtd1p0AUaApLy8P8HAQ&insert_kz=VQ&hk=SEM&&WT.srch=1&WT.mc_id=google_pla&s_kwcid=AL!222!3!48259588497!!!g!!&ef_id=UsBQ1AAAAAf51V24:20141107053404:s) ???

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 07 November 2014, 07:03:12
Preislich interessant sind auf jeden Fall auch die Sticker Beacons von Estimote (http://estimote.com/: Dev Kit with 10 Sticker Beacons - 99$).
Ich bin gespannt, wann sie lieferbar sind.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: tomster am 07 November 2014, 11:50:39
Hab grad eine Email von PebbleBee bekommen. Die Dragons haben wohl 4-8 Wochen Lieferzeit. Honeys wären sofort verfügbar.
Mal schaun, ob mein Budget noch zusätzlich den Kauf ein paar anderer Tags zulässt...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 07 November 2014, 11:55:43
Hallo!

So habe mir mal Conrad den "Proximo Bluetooth Tag" geholt, kann ihn jetzt erstmal nur mit handy Testen aber da findet Handy-Bluetooth den Tag aber zum Koppeln bräuchte man einen Pin der leider weder in der Anleitung steht noch der Kundenservice nicht kennt! Aber Koppeln wäre ja wichtig für Presence oder sehe ich das Falsch??

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 07 November 2014, 12:02:47
Nein, da muss nichts gekoppelt werden.

Für Precense brauchst du nur die BT Adresse
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 07 November 2014, 16:42:08
Hallo!

Also über mein Galaxy S5 kann ich den Bluetooth-Tag sehen und habe sogar den Code rausgefunden um ihn mit dem S5 zu koppeln was auch gelungen ist! Aber unter Linux auf meinem Cubietruck sehe ich mit "hcitool scan" leider meine anderen Bluetooth Geräte aber den Tag leider nicht!
Kann es am Bluetooth stick liegen dem im Cubie steckt? Braucht man doch einen neueren?
Zur Zeit habe ich diesen hier am Cubie "sitecom cn516"!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: IncMrG am 07 November 2014, 17:13:17
Hallo zusammen,

ich habe bei mir das ganze mit StickNFind (https://www.sticknfind.com/store.aspx (https://www.sticknfind.com/store.aspx)) versucht (Gibt es bei Amazon als 4er Pack für 72,75€).
Wurden von meinem S4 mit und ohne App sofort erkannt.
Leider hat mein RPi mit Raspbian und dem Asus BT-400 als Dongle nicht erkannt :(
Scheinen also für die Anwesenheitserkennung mit FHEM ungeeignet zu sein.

Grüße
IncMrG
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: tomster am 07 November 2014, 18:42:07
Ich hab es zwar selber noch nicht probiert (mangels Hardware), aber versuch doch mal "hcitool lescan".
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 07 November 2014, 19:18:52
Habt ihr auch BT4 LE Dongles?
Aktuelle FW etc?

Normalerweise muss das gehen.
Meine iBeacons konnte ich sofort sehen.

Aber wenn du das Ding am Handy siehst, sollte man ja auch die Adresse rausbekommen. Diese dann einfach ins Precense Modul.

Evtl auch mal die App TrackR testen, sie kann auch BT Tags von anderen Herstellern finden und "lesen"
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 07 November 2014, 19:20:28
Gerade nachgesehen, der Sitecon ist nur BT 2, das wird nicht klappen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: IncMrG am 07 November 2014, 20:21:52
Zitat von: Mitch am 07 November 2014, 19:18:52
Habt ihr auch BT4 LE Dongles?
Aktuelle FW etc?

Normalerweise muss das gehen.
Meine iBeacons konnte ich sofort sehen.

Aber wenn du das Ding am Handy siehst, sollte man ja auch die Adresse rausbekommen. Diese dann einfach ins Precense Modul.

Evtl auch mal die App TrackR testen, sie kann auch BT Tags von anderen Herstellern finden und "lesen"

Der Asus BT400 ist ein BLE Dongle, sollte also gehen. Auf meinem RPi habe ich mit "btscanner" nach Bluetooth Geräten suchen lassen.
Nachdem das nicht ging, habe ich die Adresse des StickNFind mit dem Telefon ausgelesen und in PRECENCE eingetragen, wie zu erwarten ohne Erfolg.
Auf deren Seite ist aber unter Kompatibilität auch nur iOS und Android angegeben (http://support.sticknfind.com/customer/portal/articles/1229744-compatibility) keine Ahnung ob die damit nur die Apps meinen oder auch die Beacons selbst meinen???

Was mir allerdings aufgefallen ist, der StickNFind ändert seinen Namen scheinbar alle paar Sekunden (gesehen am Telefon). Vielleicht hatte RPi damit Probleme ???

@Mitch
Welche Beacons hast du denn?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 07 November 2014, 20:30:17
Zitat von: tomster am 07 November 2014, 18:42:07
Ich hab es zwar selber noch nicht probiert (mangels Hardware), aber versuch doch mal "hcitool lescan".

Hallo!

Habe deine Tip mal versucht:
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
und ist genau der Name der er mir auch im Handy angezeigt bekomme,
aber wenn ich diese Adresse eingebe dann bekomme ich trotzdem ein "absent" in Fhem.
Habe jetzt mir einen anderen USB Bluetooth Adapter 4.0 von Trust gekauft, aber immer leider immer noch nichts!

Mfg Steffen
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 07 November 2014, 22:05:55
Ich habe Estimote iBeacons, aber das sind Beacons und keine Tag.

Also wenn der BT Dongle das Ding sieht, sollte es das Precense Modul eigentlich auch. Sehr komisch.

BT ist BT und wenn sich Kensigton an die Standards gehalten hat, sollte das auch funktionieren.

Vielleicht sollte man mal den Macher von Precense einbinden.

Habe mit jetzt zu den Tile noch ein paar Pebblebee gekauft. Sind auch schon per UPs unterwegs.
Sobald die da sind, kann ich auch live testen.
Wenn Pebblebee ja sowieso einen Linuxhub  bringen will, gehe ich davon aus, dass die funktionieren.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: lukasbastelpeter am 07 November 2014, 23:24:06
Ich habe mir jetzt mal Honeys bestellt. Die tiles mögen ja auch demnächst auf dem weg sein. Habt ihr tipps für einen komplikationsarmwn bluetooth 4.0 Stick?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 08 November 2014, 07:19:32
Zitat von: Mitch am 07 November 2014, 22:05:55
Vielleicht sollte man mal den Macher von Precense einbinden.

Ja das finde ich auch denn wenn der Cubietruck ihn sehen kann dann müsste es doch auch irgend wie in Precense gehen!?

Weiß jemand wer das Modul verwaltet?

Hatte gestern auch nochmal mit der App BlueScan versucht und da findet er den Tag auch mit genau diese Adresse:
D0:FF:50:7A:24:08 Kensington Eureka 2408!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 08 November 2014, 07:58:01
BLE und Standard-Bluetooth sind halt verschieden. D.h. die Methoden, die zum Suchen nach Devices in der Umgebung aufgerufen werden müssen sind verschieden. Ich kenne das Presence Modul nicht, aber sehr wahrscheinlich muss genau dies dort geändert werden.
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 08 November 2014, 12:18:50
Aber BT4LE ist ja der aktuelle Standard

Markus Bloch hat das Presence Modul gemacht. Ich werde ihn mal fragen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus Bloch am 08 November 2014, 12:38:09
Hallo zusammen,

das PRESENCE Modul führt ganz einfach den Befehl "hcitool name [BT-Adresse]" aus um ein Paging-Request zu machen. Das ist die stromsparendste Methode bisher um Handys, etc. auf Anwesenheit zu prüfen.

Habt ihr denn mit einem hcitool Befehl einen solchen Tag bereits anzeigen können auf der Shell?

Gruß
Markus
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 08 November 2014, 13:23:26
Zitat von: Markus Bloch am 08 November 2014, 12:38:09
Habt ihr denn mit einem hcitool Befehl einen solchen Tag bereits anzeigen können auf der Shell?
Gruß
Markus

Hallo!

Meinst du das:

hcitool lescan
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408


Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 08 November 2014, 16:45:30
Bei BLE gibt es das klassische Paging nicht. Die einfachste  Möglichkeit ist mittels hcitool lescan eine Weile zu lauschen, ob der Tag in der Nähe ist. Achtung: für hcitool lescan sind normalerweise root-Rechte notwendig. BLE wird von bluez zwar seit der Version 4.99 (evtl. schon etwas früher) unterstützt, aber der Support war nicht wirklich ausgereift. Erst die aktuellen bluez Versionen unterstützen BLE vollständig.
Falls ein Tag sich mit ständig ändernder Bluetoothadresse meldet, so nutzt er das BLE-Feature Random Device Address. D.h. man braucht einen Key, um den Tag wirklich zuordnen zu können.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 08 November 2014, 17:09:23
Zitat von: Mitch am 08 November 2014, 12:18:50
Aber BT4LE ist ja der aktuelle Standard
Die aktuelle Bluetooth Spezifikation liegt in der Version 4.1 vor. Bluetooth Low Energy ist eine vollständig eigenständige Funktionalität, die weder Nachfolge noch Erweiterung zum klassischen Bluetooth ist, das auch weiterhin in der Spec vorhanden ist. Die  Möglichkeiten von BLE sind sehr eingeschränkt. Aber durch die weitreichenden Änderungen gegenüber dem klassischen Bluetooth sind Geräte mit einer extrem geringen  Stromaufnahme möglich geworden.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 08 November 2014, 17:20:16
Für das PRESENCE Modul ist es wahrscheinlich das einfachste ein Script im Hintergrund zu starten, das eine Liste der gerade sichtbaren BLE Geräte in einer Datei führt. Dann kann im Modul selbst der hcitool name Befehl durch ein einfaches grep ersetzt werden. Aber es gibt vielleicht bessere Möglichkeiten.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 09 November 2014, 17:35:43
Hallo!

So richtig verstehe ich das jetzt noch nicht, nur das Ble ein etwas anderer standart ist aber könnte man das nun in das Presence-Modul einfügen oder geht das nicht?
Warum kann ich es ganz normal mit fast jeder Android-Bluetooth-Funktion(S3,S5,HTC) koppeln ohne zusatz app und nicht mit linux(debian)
Mein Bluetooth-Tag ändert den namen glaube ich nicht, wird immer die gleiche mac-adresse angezeigt so wie der gleiche Name.
Der Bluetooth-Tag liegt ja jetzt hier rum und würde mich sehr freuen ihn mit Presence nutzen zu können. ;)

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 10 November 2014, 08:25:25
Zitat von: Steffen am 09 November 2014, 17:35:43
So richtig verstehe ich das jetzt noch nicht, nur das Ble ein etwas anderer standart ist aber könnte man das nun in das Presence-Modul einfügen oder geht das nicht?
Ja, man kann BLE im Presence-Modul einfügen, allerdings kann man nicht mehr den Befehl "hcitool name" verwenden. D.h. es ist eine Änderung im Presence-Modul notwendig.

Zitat von: Steffen am 09 November 2014, 17:35:43
Warum kann ich es ganz normal mit fast jeder Android-Bluetooth-Funktion(S3,S5,HTC) koppeln ohne zusatz app und nicht mit linux(debian)
Bei Android ist der BLE Support seit Version 4.3 offiziell enthalten. Es gab einige Hersteller, die schon vorher einen eigenen BLE -Support hatten.
Auch unter Linux (Debian) ist der BLE Support, wie schon geschrieben, ab einer Stack Version > 4.9X vom bluez verfügbar. Also sieh erstmal zu, dass du deinen Tag unter Linux erkannt bekommst (als root hcitool lescan ausführen). Ansonsten hat das Presence-Modul auch keine Chance.
Ein Pairing ist für das Presence-Modul nicht notwendig. Hier geht es nur darum die Advertisement Pakete zu empfangen. Und solange keine BLE Security Features verwendet werden, wie z.B. "Random Device Address" funktioniert das sehr einfach mittels "hcitool lescan". Wie oft ein Tag ein Advertisement Paket aussendet, ist vom Tag abhängig und kann bei einigen auch konfiguriert werden. Die Grenzen liegen zwischen 20ms und 10s. Die Tags, die ich kenne, melden sich aber mindestens einmal pro Sekunde. Daher sollte man hcitool lescan eine Zeit lang laufen lassen.

Die konkrete Umsetzung für das Presence-Modul wird Markus schon hinbekommen.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 10 November 2014, 08:58:52
Das hört sich ja alles chonmal vielversprechend an.

Mein Pebblebee's sind nun in LA und fliegen von dort wohl nach FFM, also sind sie denke ich nächste Woche bei mir (wenn der Zoll nicht zickt).
Über die Tile's habe ich noch keine Info.

Hab gestern mal zum Spass
Zitathcitool lescan
ausgeführt. Es werden mir zick Geräte ohne Name angezeigt. Sind wohl unsere Handys und Tablet und meine Pebble.
Muss halt dann die richtige Adresse der Tags rausfinden.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 13 November 2014, 18:07:56
So, meine PebbleBee's sind heute gekommen.

Hab gleich den ersten aktiviert und ans Handy angebunden. Funktioniert prima.

Dann habe ich mal hcitool scan ausgeführt, der sieht nichts.
Danach hcitool lescan, der findet den Tag sofort, hat auch immer die gleiche Adresse.

Also Device mit PRESENCE Modul angelegt. Leider zeigt dieses immer "absent"  >:(
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 13 November 2014, 18:27:12
Hallo!

Ja das gleiche ist mir auch so, hier mal ein beispiel:

root@cubieez:~# hcitool scan
Scanning ...
        BC:D1:D3:6B:7D:78       Liescha
        E4:E0:C5:BE:08:52       DTVBluetooth



root@cubieez:~# hcitool lescan
LE Scan ...
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
root@cubieez:~#


hatte viel gelesen das man mit Linux und BLE sich sogar mit der Device verbinden kann und zb. die Config auslesen oder Befehle senden kann.
Aber wie man das für unsere Zwecke benutzen könnte konnte ich leider nicht raus lesen!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 13 November 2014, 18:31:13
Hier steht es ganz gut beschrieben: http://joost.damad.be/2013/08/experiments-with-bluetooth-low-energy.html

Leider kann ich mich nicht auf die Tags verbinden.

Im Prinzip muss Markus "nur" das Modul insoweit ändern, dass es einen LESCAN ausführt  ;D
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 14 November 2014, 07:49:23
Hi Mitch,

wie lange war die Lieferzeit von deinen PebbleBees ?
Weiviele hattest du bestellt ?(wg. Zoll)

Gruß

Bodo
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 14 November 2014, 09:47:42
Lieferzeit eine Woche, keine Zollprobleme, kam direkt zu mir.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: lukasbastelpeter am 14 November 2014, 11:30:35
So, meine Bienchen sind auch heute angekommen.

Ich habe nur noch keinen Bluetooth 4.0-USB Stick, funktioniert das auch mit nem 1.0-2.0er?

Per Handy siehen die Teile brauchbar aus.

Muss in dem Modul nur der Befehl geändert werden, oder sieht auch die Antwort vom System dann anders aus?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 14 November 2014, 11:32:29
Du brauchst zwingend einen 4er BT Stick, der auch LE unterstützt.

Was genau im PRESENCE Modul geändert werden muss, kann ich nicht sagen.
Vermutlich die Art des Scan (lescan statt scan)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 14 November 2014, 12:05:13
Wie Markus schon vorher gezeigt hatte wird derzeit ein "hcitool name [BT Adresse]" abgesetzt.

Sinnig wäre hier aus meiner Sicht dem Presencemodul eine neue Option für BT4 LE Devices zu spendieren.
Hier könnte man dann eben den hcitool lescan  laufen. Dieser zeigt allerdings wohl alle Devices in der näheren Umgebung an, hier müsste die Ausgabe dann noch entsprechend gefiltert werden so das eben nur 1 Result zurückkommt (ggf. über ein grep BT Adresse).

Soweit mein laienhaftes Verständnis....

@ Mitch, meldet sich der Pebble immer mit der gleichen BT Adresse ? Oder ändert sich diese ständig ?

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 14 November 2014, 12:33:03
Leider hat das hcitool lescan eine andere Verhaltensweise als hcitool name:
- es läuft ewig, muß also von außen unterbrochen werden
- der output läßt sich nicht  per grep direkt filtern

Das hcitool name in Zeile 781 muß daher durch ein etwas umständliches Konstrukt ersetzt werden:

z.B:
hcitool lescan > /tmp/res.txt & sleep 5;pkill --signal SIGINT hcitool; sleep 1;grep -v unknown /tmp/res.txt | grep -m1 $device | cut -d" " -f2-

Ich kann aber nicht sagen, ob das PRESENCE-Modul dann wirklich funktioniert, da ich es nicht in Betrieb habe.
Desweiteren können Probleme auftreten, falls fhem nicht mit root-Rechten läuft, weil hcitool lescan diese benötigt.
In diesem Fall sollte man die obige Zeile in ein Script packen und das Script mit sudo aufrufen.

Gruß,
Gero


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 14 November 2014, 14:59:05
PebbleBee hat immer die gleiche Adresse
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: IncMrG am 20 November 2014, 05:59:46
Hallo,

ich dachte, ich tue mir mal was Gutes und habe mir Pebble Bee Hornets bestellt.
Was ich auf der Seite aber nicht sehen konnte, Hornet und Dragon sind noch im Beta-Stadium.
Lieferzeit noch mindestens 1 - 2 Monate  >:(
Stornierung nicht möglich! Sie bräuchten das Geld um Ihre Produkte zu verbessern??
Ich finde das ohne Worte.....
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: tomster am 20 November 2014, 12:14:22
Da geb ich Dir Recht. Allerdings ist mir die QI-Lademöglichkeit die Wartezeit wert.
Auch wenn ich, hätte ich die Lieferzeit vorher gekannt, wohl erst in 1-2 Monaten bestellt hätte...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 20 November 2014, 13:23:50
Für alle, die das auch integrieren wollen, ich habe jetzt mal einen Script geschrieben, den man mit dem PRESENCE Modul benutzen kann:

#!/bin/bash
hcitool lescan > /tmp/res.txt & sleep 10
pkill --signal SIGINT hcitool
sleep 1
device=$(grep -c 00:00:00:00:00:00 /tmp/res.txt)
if [ $device -gt 0 ]; then
        echo "1"
else
        echo "0"
fi


Im Script muss 00:00:00:00:00:00 gegen die gesuchte Adresse getauscht werden.

Den Script am besten nach /opt/fhem/ speichern.

Als nächstes ein PRESENCE Device anlegen:

define BluetoothTag PRESENCE shellscript "/opt/fhem/lescan.sh"
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 20 November 2014, 16:06:36
Zitat von: Mitch am 20 November 2014, 13:23:50
Für alle, die das auch integrieren wollen, ich habe jetzt mal einen Script geschrieben, den man mit dem PRESENCE Modul benutzen kann:

#!/bin/bash
hcitool lescan > /tmp/res.txt & sleep 10
pkill --signal SIGINT hcitool
sleep 1
device=$(grep -c 00:00:00:00:00:00 /tmp/res.txt)
if [ $device -gt 0 ]; then
        echo "1"
else
        echo "0"
fi


Im Script muss 00:00:00:00:00:00 gegen die gesuchte Adresse getauscht werden.

Den Script am besten nach /opt/fhem/ speichern.

Als nächstes ein PRESENCE Device anlegen:

define BluetoothTag PRESENCE shellscript "/opt/fhem/lescan.sh"

So richtig will das bei mir nicht, wenn ich "lescan.sh" über shell ausführe bekomme ich eine "1" und in fhem ein Present doch kurze zeit später bekomme ich ein absent und dieser Status bleibt dann so.
Wenn ich wieder zum Testen über shell ausführe das gleiche spiel, wenn ich über fhem comando zeile "/opt/fhem/lescan.sh" eingebe bleibt es auch auf absent.
Kann es an vielleicht an den rechten liegen?

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 20 November 2014, 16:12:27
Welchen Tag hast Du?
Wie oft meldet dieser sich?

Der Script schaut 10 Sekunden nach. Wenn dein Tag aber nu jede Minute sendet, kann es sein, dass er nicht gefunden wird.

Bei mir mit zwei PebbleBees funktioniert das ohne Probleme.

Nur nochmal zur Sicherheit:
1. sudo nano lescan.sh -> Inhalt von hier reinkopieren - richtige MAC Adresse!!
2. sudo chmod +x lescan.sh
3. sudo cp lescan.sh /opt/fhem/
4. device in fhem anlegen

Mit den Rechten könnte es auch zusammen hängen, weil hcitool als root ausgeführt werden muss.
Läuft dein hem als root?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 20 November 2014, 17:08:20
Mir ist gerade noch ein Denkfehler aufgefallen.
Das File mit den Adressen muss ja jedes Mal noch gelöscht werden:
#!/bin/bash
hcitool lescan > /tmp/res.txt & sleep 10
pkill --signal SIGINT hcitool
sleep 1
markus=$(grep -c 0E:0A:14:09:7E:11 /tmp/res.txt)
if [ $markus -gt 0 ]; then
        echo 1
else
        echo 0
fi
rm /tmp/res.txt


Komischer Weise habe ich jetzt auch das Problem, dass PRESENCE immer absent ausgibt, obwohl der Script 1 liefert??

2014.11.20 17:05:05 5: PRESENCE (Pebble.Markus) - blocking scan result: Pebble.Markus|1|absent
2014.11.20 17:05:05 5: PRESENCE (Pebble.Markus) - script output: 0
2014.11.20 17:04:54 5: PRESENCE (Pebble.Markus) - execute local shell script: Pebble.Markus|/opt/fhem/lescan_markus.sh|1
2014.11.20 17:04:54 5: PRESENCE (Pebble.Markus) - starting blocking call for mode shellscript
2014.11.20 17:04:54 5: PRESENCE (Pebble.Markus) - starting local scan
2014.11.20 17:04:25 4: PRESENCE (Pebble.Markus) - rescheduling next check in 300 seconds
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 20 November 2014, 17:33:58
Hallo!

Geht mir genau so, war ja zwischen durch wenn ich wenigstens das Script ausgeführt hatte Present aber das geht jetzt auf einmal auch nicht mehr!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 20 November 2014, 20:07:55
Ich kenne das PRESENCE Modul nicht und kann gerade nicht reinschauen. Aber kann es sein, dass das Modul den Rückgabewert des Scriptes auswertet? Dann ersetzt mal euer echo durch ein exit.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 20 November 2014, 20:28:32
Hallo!

Ich kenne das Modul auch nicht aber hatte jetzt mal 1 und 0 im Script vertauscht und nun habe ich "present", ich teste mal gleich was passiert wenn der tag aus ist...

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 20 November 2014, 20:43:20
Das Problem wird sein, dass das results File leer ist. Weil Presence das Script warscheinlich mit dem user FHEM Aufruft, welcher keine root rechte für das HCITOOL LESCAN hat.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 20 November 2014, 20:49:18
Genau das ist das Problem.

Ich weis aber nicht, wie ich das ändern kann. Habe bereist fhem zur Gruppe sudo hinzu gefügt.
Alles Befehle im Script werden mit sudo aufgerufen.

Alles ohne Erfolg.
Wie kann ich denn den Script als sudo/root aus fhem ausführen?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 20 November 2014, 22:03:52
Ich werde noch verrückt, habe jetzt noch in die /etc/sudoers folgendes eingetragen:
fhem    ALL = NOPASSWD: /opt/fhem/lescan_markus.sh

Auch kein Erfolg  :'(
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 20 November 2014, 22:22:44
Zitat von: Mitch am 20 November 2014, 22:03:52
Ich werde noch verrückt, habe jetzt noch in die /etc/sudoers folgendes eingetragen:
fhem    ALL = NOPASSWD: /opt/fhem/lescan_markus.sh


Auch kein Erfolg  :'(

Ich fummel auch schon die ganze Zeit, wenn man im script:
su fhem hcitool lescan > /tmp/res.txt & sleep 10 einsetzt kommt "0",
das bedeutet ja der befehl mit su fhem kann nicht txt öffnen/beschreiben/lesen, das müsste man ändern können dann hätten wir es glaube ich.
Habe jetzt auch noch keine Ahnung wie ???

Mfg Steffen

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 20 November 2014, 22:33:35
Funktioniert es denn, wenn ihr fhem als root ausführt?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 21 November 2014, 08:04:51
So, jetzt hatte ich endlich mal Zeit das Ganze auszuprobieren.

Hier das Shellscript:

#!/bin/bash
USAGE="Usage:\n\t$0 <hciX> <bdaddr> <scantime>"
TMPFILE=/tmp/res.txt

HCITOOL="/usr/bin/hcitool"
HCICONFIG="/usr/sbin/hciconfig"


if [ $# -ne 3 ]; then
echo -e "$USAGE";
exit 1
fi

DEV=$1
REMOTE=$2
SCANTIME=$3

DEVPRESENT=`$HCITOOL dev | grep $DEV`
if [ -z "$DEVPRESENT" ]; then
$HCICONFIG $DEV down &>/dev/null
sleep 1
$HCICONFIG $DEV up &>/dev/null
sleep 1

DEVPRESENT=`$HCITOOL dev | grep $DEV`

if [ -z "$DEVPRESENT" ]; then
echo "device $DEV not present"
exit 1
fi
fi

$HCITOOL lescan > $TMPFILE & sleep $SCANTIME
pkill --signal SIGINT hcitool
sleep 1
BINDA=$(grep -c $REMOTE /tmp/res.txt)
if [ $BINDA -gt 0 ]; then
        echo 1
else
        echo 0
fi
rm $TMPFILE


Die Pfade für hcitool und hciconfig müssen angepasst werden, falls sie bei euch anders sein sollten.
Das geht mit Sicherheit noch eleganter, aber es funktioniert.

Hier die Definition des PRESENCE devices:
define mypres PRESENCE shellscript "/opt/fhem/lescan.sh hci0 XX:XX:XX:XX:XX:XX 5" 30
Die Timings müßt ihr natürlich nach euren Wünschen anpassen. XX:XX:XX:XX:XX:XX muß durch die Bluetoothadresse eures Tags ersetzt werden.

WICHTIG:
Da hcitool lescan und hciconfig root Rechte benötigen, ist es das einfachste für beide das suid Bit zu setzen.

sudo chmod u+s `which hcitool`
sudo chmod u+s `which hciconfig`


Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 21 November 2014, 08:54:02
Zitat von: gero am 21 November 2014, 08:04:51
So, jetzt hatte ich endlich mal Zeit das Ganze auszuprobieren.

Hier das Shellscript:

#!/bin/bash
USAGE="Usage:\n\t$0 <hciX> <bdaddr> <scantime>"
TMPFILE=/tmp/res.txt

HCITOOL="/usr/bin/hcitool"
HCICONFIG="/usr/sbin/hciconfig"


if [ $# -ne 3 ]; then
echo -e "$USAGE";
exit 1
fi

DEV=$1
REMOTE=$2
SCANTIME=$3

DEVPRESENT=`$HCITOOL dev | grep $DEV`
if [ -z "$DEVPRESENT" ]; then
$HCICONFIG $DEV down &>/dev/null
sleep 1
$HCICONFIG $DEV up &>/dev/null
sleep 1

DEVPRESENT=`$HCITOOL dev | grep $DEV`

if [ -z "$DEVPRESENT" ]; then
echo "device $DEV not present"
exit 1
fi
fi

$HCITOOL lescan > $TMPFILE & sleep $SCANTIME
pkill --signal SIGINT hcitool
sleep 1
BINDA=$(grep -c $REMOTE /tmp/res.txt)
if [ $BINDA -gt 0 ]; then
        echo 1
else
        echo 0
fi
rm $TMPFILE


Die Pfade für hcitool und hciconfig müssen angepasst werden, falls sie bei euch anders sein sollten.
Das geht mit Sicherheit noch eleganter, aber es funktioniert.

Hier die Definition des PRESENCE devices:
define mypres PRESENCE shellscript "/opt/fhem/lescan.sh hci0 XX:XX:XX:XX:XX:XX 5" 30
Die Timings müßt ihr natürlich nach euren Wünschen anpassen. XX:XX:XX:XX:XX:XX muß durch die Bluetoothadresse eures Tags ersetzt werden.

WICHTIG:
Da hcitool lescan und hciconfig root Rechte benötigen, ist es das einfachste für beide das suid Bit zu setzen.

sudo chmod u+s `which hcitool`
sudo chmod u+s `which hciconfig`


Gruß,
Gero

Guten Morgen!

Also vielen dank für deine Mühe, zu einem kann ich sagen das es bei mir funktioniert und ich ein "Present" erhalte,
doch kommen zwischen durch einige "absent"!?

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 21 November 2014, 09:18:38
Mittlerweile habe ich es wohl hinbekommen.
Problem war, dass der Aufruf von hcitool mit sudo auch das sudo Passwort wollte.
Dies umgehe ich, indem ich in der sudoers das deaktiviere.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 21 November 2014, 09:47:42
Zitat von: Steffen am 21 November 2014, 08:54:02
Guten Morgen!

Also vielen dank für deine Mühe, zu einem kann ich sagen das es bei mir funktioniert und ich ein "Present" erhalte,
doch kommen zwischen durch einige "absent"!?

Mfg Steffen
Das Script ist noch nicht ganz ausgereift.
Falls z.B. die Datei /tmp/res.txt fehlt (warum auch immer), wird ein absent gemeldet. Außerdem kommt es zu einem absent, falls beim Starten des Scripts eine andere hcitool lescan Instanz schon läuft.
Sobald ich Zeit habe, kann ich eine robustere Version des Scriptes posten.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 21 November 2014, 09:56:19
Zitat von: Mitch am 21 November 2014, 09:18:38
Mittlerweile habe ich es wohl hinbekommen.
Problem war, dass der Aufruf von hcitool mit sudo auch das sudo Passwort wollte.
Dies umgehe ich, indem ich in der sudoers das deaktiviere.

Könntest du bitte deine einträge in "sudoers" hier nochmal posten, würde gerne das auch Testen?!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 21 November 2014, 10:09:22
Klar:


# Members of the admin group may gain root privileges
%dialout ALL=(ALL) ALL

#includedir /etc/sudoers.d
fhem    ALL = NOPASSWD:ALL


Weis jetzt nicht, welcher der zwei Einträge der richtige ist, habe beide gleichzeitig eingetragen und bin einfach froh, dass es jetzt geht.

Gerade nochmal getestet und habe den Tag ausserhalb der Reichweite gebracht = absent
dann zurück = present
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 21 November 2014, 11:17:31
Anbei noch eine etwas robustere Version vom lescan Script.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 21 November 2014, 18:50:03
Zitat von: Mitch am 21 November 2014, 10:09:22
Klar:


# Members of the admin group may gain root privileges
%dialout ALL=(ALL) ALL

#includedir /etc/sudoers.d
fhem    ALL = NOPASSWD:ALL


Weis jetzt nicht, welcher der zwei Einträge der richtige ist, habe beide gleichzeitig eingetragen und bin einfach froh, dass es jetzt geht.

Gerade nochmal getestet und habe den Tag ausserhalb der Reichweite gebracht = absent
dann zurück = present

Ja genau das ist es, danke @Mitch läuft seit paar stunden sauber durch kein zufälliges "absent" mehr!

@Mitch wenn ich richtig gelesen habe dann hast du ja die Pebblebee bestellt, ist bei diesen auch möglich die über Handy zu Orten mit einer App?
Ich frage weil bei meinen Kensington klappt jetzt zwar die Presence abfrage aber wenn ich sie über Handy mit der App verbinde(wird in der App Registriert), dann stellt sich sofort ein "absent" ein und das bleibt auch so wenn ich die App schließe.
Auch wenn ich die Dienste beende bleibt es "absent", erst wenn ich in der App den Tag wieder entferne und deinstalliere kommt ein "present".

Kenn jemand eine App für Android die sowas kann, würde gerne beides benutzen weil meine Frau sucht immer ihr Auto im Parkhaus und glaubt mir "immer"! ;)

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 21 November 2014, 19:09:43
 Ist beim PebbleBee auch so.

Wenn die App sich mit dem Tag verbundet, schickt er keinen Broadcast mehr.

Macht aber nichts, wenn ich die App wirklich mal benutze, schliesse ich sie danach sowieso konplett und damit wird der Tag wieder "freigegeben".
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 21 November 2014, 19:19:17
Zitat von: Mitch am 21 November 2014, 19:09:43
Ist beim PebbleBee auch so.

Wenn die App sich mit dem Tag verbundet, schickt er keinen Broadcast mehr.

Macht aber nichts, wenn ich die App wirklich mal benutze, schliesse ich sie danach sowieso konplett und damit wird der Tag wieder "freigegeben".

Ja das ist eigentlich auch meine frage gewesen, denn bei meiner App bleibt es auch "absent" selbst wenn ich die App komplett schließe oder sogar das Handy neu starte, erst wenn ich den Tag aus der App deinstalliere/entferne wird er wieder "freigeben" und dann müsste ich jedes mal den Tag dann neu registrieren(kleinen key am Tag lange gedrückt halten)!

Also wenn ich dich richtig verstanden habe, dann die kurz Fassung: App an "absent" > App aus(ohne Deinstallation in App) "present"?

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 21 November 2014, 20:00:58
Ja genau, so ist es bei mir auf dem iPhone mit den PebbleBees.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 21 November 2014, 20:02:34
Zitat von: gero am 21 November 2014, 11:17:31
Anbei noch eine etwas robustere Version vom lescan Script.

Gruß,
Gero

Danke Gero.
Werde ich am WE mal testen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 21 November 2014, 20:26:58
Zitat von: Mitch am 21 November 2014, 20:00:58
Ja genau, so ist es bei mir auf dem iPhone mit den PebbleBees.

danke, werde dann auch gleich mal bestellen!

@Gero werde morgen auch zum Testen kommen und dann gleich berichten!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 21 November 2014, 20:30:13
@Gero: hab jetzt doch mal schnell getestet. Sieht sehr gut aus!
Allerdings hat dein Script genau den gleichen Fehler, den ich gerade bei meinem festgestellt habe: wenn schon ein hcitool lescan läuft, kann der zweite nicht auch noch ausgeführt werden. Es kommt dann ERROR im state vom Presence Modul.

Problem ist, dass ich ja sogar fünf Tags scannen möchte.

Ich lasse jetzt übers WE mal Deinen Script laufen und werde dann meine Erfahrungen posten.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 22 November 2014, 07:54:34
Es kann immer nur eine Instanz von hcitool laufen.
Wenn du nur wissen willst, ob irgendeiner von den Tags im Haus ist, könnte man eine Liste der Bluetooth Adressen dem Script übergeben. Dazu muss das Script nur minimal angepasst werden. Falls du aber wissen willst, welche Tags in der Nähe sind, ist ein anderes Konzept notwendig.
Am saubersten wäre wahrscheinlich einen multiinstanz-fähigen Ersatz für das hcitool zu schreiben. Alternativ könnte man ein Script im Hintergrund laufen lassen ( unabhängig von fhem), das mittels hcitool lescan alle in der Nähe befindlichen Tags listet. Im PRESENCE Modul wiederum läuft ein anderes Script, das auf diese Informationen zugreift. Vielleicht hab ich heute Abend Zeit mich drum zu kümmern.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 22 November 2014, 08:38:55
Guten Morgen!

Wollte kurz mal meine Erfahrung mit dem Script von Gero berichten,
habe dazu ein Notify eingesetzt das mir per Push mitteilt wann ein "absent" eintrifft und das ganze nutze ich auf einen Cubitruck.
Doch war es leider in der Nacht ca.25 mal der Fall, das ich per Push eine Benachrichtigung über einen "absent" bekommen habe!

Die "absent" treten laut den Zeiten sehr sehr sporadisch auf und es ist auch kein wirkliches Muster darin zu erkennen.

Ich werde nochmal den Tag das Script von Mitch testen als vergleich und dann wieder hier berichten.

Trotzdem kann ich nur danke sagen, für eure Mühe und Arbeit und obwohl ich noch ein ziemlicher Anfänger bin kann man dadurch noch einiges Lernen...!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 22 November 2014, 13:36:50
Zitat von: Steffen am 22 November 2014, 08:38:55
Doch war es leider in der Nacht ca.25 mal der Fall, das ich per Push eine Benachrichtigung über einen "absent" bekommen habe!

Die "absent" treten laut den Zeiten sehr sehr sporadisch auf und es ist auch kein wirkliches Muster darin zu erkennen.
Absent kann eigentlich nur noch gemeldet werden, wenn sich der Tag nicht meldet. Was für ein Scantimeout hast du eingestellt? Welches Intervall hast du beim PRESENCE Device angegeben? Wie oft meldet sich dein Tag, wenn du manuell hcitool lescan laufen läßt?

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 22 November 2014, 13:37:53
Gero, vielen Dank für Deine Unterstützung!!

hcitool könnte ja theoretisch mehrfach gestartet werden, allerdings ist ja der BT Dongle in dem Moment in Gebraucht. Also geht nicht.

Ich könnte mir folgendes vorstellen:
Mit dem Presence Modul wird es wohl schwer. Man könnte aber Dummy Devices benutzen.
Also, man macht einen hcitool lescan für 10 bis 15 sec., danach wird das erzeugte File nach den Adressen durchsucht, sprich man hinterlegt im Script die gesuchten Adressen.
Sobald eine Adresse gefunden wurde, wird der entsprechende Dummy auf on (present) gesetzt.
Wird die Adresse nicht gefunden, dann auf off (absent).
So wird die Liste der gesuchten Adressen abgearbeitet und danach die temp Datei gelöscht.

Den Script könnte man dann entweder aus hem mit einem at regelmässig anstossen, oder per Cronjob.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 22 November 2014, 14:20:49
Hab das jetzt mal nach meiner Idee angepasst:

#!/bin/bash
USAGE="Usage:\n\t$0 <hciX> <bdaddr1> <bdaddr2>  <scantime>"
TMPFILE=/tmp/res.txt

HCITOOL="/usr/bin/hcitool"
HCICONFIG="/usr/sbin/hciconfig"


if [ $# -ne 4 ]; then
        echo -e "$USAGE";
        exit 1
fi

DEV=$1
REMOTE1=$2
REMOTE2=$3
SCANTIME=$4

if [ ! -x $HCITOOL  ] || [ ! -x $HCICONFIG ]; then
        echo "$HCITOOL or $HCICONFIG not found or not executable"
        exit 1
fi

DEVPRESENT=`$HCITOOL dev | grep $DEV`
if [ -z "$DEVPRESENT" ]; then
        $HCICONFIG $DEV down &>/dev/null
        sleep 1
        $HCICONFIG $DEV up &>/dev/null
        sleep 1

        DEVPRESENT=`$HCITOOL dev | grep $DEV`
       
        if [ -z "$DEVPRESENT" ]; then
                echo "device $DEV not present"
                exit 1
        fi
fi

pkill --signal SIGINT hcitool
sleep 1

$HCITOOL lescan > $TMPFILE & sleep $SCANTIME

pgrep hcitool &>/dev/null
if [ $? -ne 0 ]; then
        echo "hcitool has terminated unexpectedly"
        exit 1
fi


pkill --signal SIGINT hcitool

sleep 1

grep -m1 $REMOTE1 /tmp/res.txt &>/dev/null
BINDA=$?
if [ "$BINDA" -eq 0 ]; then
        curl "http://192.168.0.5:8084/fhem?cmd=set%20Pebble.Markus.Dummy%20on"
elif [ $BINDA -eq 1 ]; then
        curl "http://192.168.0.5:8084/fhem?cmd=set%20Pebble.Markus.Dummy%20off"
else
        echo "cannot access result file"
        exit 1
fi

sleep 1

grep -m1 $REMOTE2 /tmp/res.txt &>/dev/null
BINDA=$?
if [ "$BINDA" -eq 0 ]; then
        curl "http://192.168.0.5:8084/fhem?cmd=set%20Pebble.Leoni.Dummy%20on"
elif [ $BINDA -eq 1 ]; then
        curl "http://192.168.0.5:8084/fhem?cmd=set%20Pebble.Leoni.Dummy%20off"
else
        echo "cannot access result file"
        exit 1
fi


Es müssen zwei Dummys angelegt werden (in meinem Fall Pebble.Markus.Dummy und Pebble.Leoni.Dummy)

Aufgerufen wird es mit einem at:
+*00:05 "/opt/fhem/lescan2.sh <hciX> <bdaddr1> <bdaddr2>  <scantime>"

Jetzt wird alle 5 Minuten der Script ausgeführt und nach dem zwei Adressen gesucht (kann auch auf mehr Adressen erweitert werden).

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 22 November 2014, 15:00:55
So, so wie es im Moment aussieht, funktioniert das super.

Habe zwei tag mal in Reichweite, mal ausser Reichweite gebracht, mal beide gleichzeitig, mal einzeln.
Alle Test perfekt überstanden.

Einen kleinen Schönheitsfehler, der cURL Befehl löst immer im Log folgende aus:
0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
                                 Dload  Upload   Total   Spent    Left  Speed
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current


Das muss ich noch irgendwie weg bekommen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 22 November 2014, 18:41:09
@Mitch: Das ist auch eine mögliche Lösung. Um es aber allgemein verwendbar zu machen, müßtest du dem Script ziemlich viele Parameter übergeben, sonst bleibt es eine Individuallösung.


Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 22 November 2014, 19:19:04
Da geb ich dir vollkommen recht, aber meine Linuxkenntnisse sind sehr rudimentär und von meinen Perlkenntnissen will ich gar nicht sprechen  ;D

Grundsätzlich funktioniert es jetzt bei mir.
Ich habe ja im Moment nur zwei Tags und die werden zuverlässig (bis auf das Logproblem) gescannt und damit schalte ich nun zusätzlich zum Gefency die Anwesenheit.
Bei den tags habe ich noch einen Watchdog eingebaut, weil wenn ich mit dem tag im garten bin, verliert er die Verbindung. Mit dem Watchdog "warte" ich quasi 10 Minuten auf die Rückkehr, erst dann wird die Abwesenheit aktiviert.

Ich werde jetzt mal ein zeitlich so testen, ob das praktikabel ist.

Wenn das alles so funktioniert, dann müssten die "Experte" ran und das ganze in ein vernünftiges Modul verpacken.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 22 November 2014, 19:32:45
wie schaut die ausgabe von lescan aus wenn ein tag länger in reichweite bleibt? wird die mac immer wieder gemeldet? wie ist die zeit zwischen den melden? was passiert wenn ein tag aus der reichweite verschwindet? wird es dann einfach nicht mehr gemeldet?

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 22 November 2014, 19:40:14
So lange lescan läuft, wird der Tag auch immer gemeldet, sprich er findet sich in der Liste

z.B.
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee


Wie man sehen kann, meldt sich der Pebble ca. alle 300ms.
Für andere Tags kann ich nichts sagen, sollte sich aber ähnlich verhalten.

Wenn der Tag nicht mehr in Reichweite ist, dann ist er einfach nicht mehr in der "Liste".
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 22 November 2014, 19:42:20
funktioniert das auch ohne die --duplicates option? wird dann auch immer wieder gemeldet?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 22 November 2014, 19:46:21
Ja, hier die Ausgabe von hcitool lescan --duplicates:

47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7F:DE (unknown)
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7F:DE (unknown)
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 22 November 2014, 19:47:15
und ohne --duplicates :) ?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 22 November 2014, 19:48:33
Ja, so scan ich immer  ;D
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 22 November 2014, 22:09:15
Leider habe ich zu Hause keine BLE Tags zur Verfügung. Trotzdem hier ein erster Entwurf eines Scriptes. Wenn man dieses Script unabhängig von fhem laufen läßt, so existiert im Verzeichnis $TMPDIR zu jedem vorhandenen Tag eine Datei mit der Bluetoothadresse als Name:
#!/bin/bash
USAGE="Usage:\n\t$0 <hciX>  <scantime> <scanpause>"
TMPFILE=/tmp/lepresent/tmp.out
TMPDIR=/tmp/lepresent

mkdir -p $TMPDIR
rm -f $TMPDIR/*

HCITOOL="/usr/local/bin/hcitool"
HCICONFIG="/usr/local/bin/hciconfig"


if [ $# -ne 3 ]; then
echo -e "$USAGE";
exit 1
fi

DEV=$1
REMOTE=$2
SCANTIME=$3
SCANPAUSE=$3

if [ ! -x $HCITOOL  ] || [ ! -x $HCICONFIG ]; then
echo "$HCITOOL or $HCICONFIG not found or not executable"
exit 1
fi

while [ 1 ]; do

DEVPRESENT=`$HCITOOL dev | grep $DEV`
if [ -z "$DEVPRESENT" ]; then
$HCICONFIG $DEV down &>/dev/null
sleep 1
$HCICONFIG $DEV up &>/dev/null
sleep 1

DEVPRESENT=`$HCITOOL dev | grep $DEV`

if [ -z "$DEVPRESENT" ]; then
echo "device $DEV not present"
exit 1
fi
fi

pkill --signal SIGINT hcitool
sleep 1
$HCITOOL lescan > $TMPFILE & sleep $SCANTIME

pgrep hcitool &>/dev/null
if [ $? -ne 0 ]; then
echo "hcitool has terminated unexpectedly"
continue;
fi


pkill --signal SIGINT hcitool
sleep 1

unset seen
declare -A seen
for w in `cat $TMPFILE`; do
if [[ $w =~ ..:..:..:..:..:.. ]]; then
touch $TMPDIR/$w
seen[$w]=1;
fi
done
for f in `ls $TMPDIR`; do
if [ ! ${seen[$f]+_} ]; then
rm -f $TMPDIR/$f
fi
done

sleep $SCANPAUSE
done


In fhem sieht das Script für das PRESENCE Module dann sehr einfach aus und kann auch für beliebig viele Instanzen mit unterschiedlichen Bluetoothadressen parallel verwendet werden:


#!/bin/bash
USAGE="Usage:\n\t$0 <BT-address>"
TMPDIR=/tmp/lepresent

if [ $# -ne 1 ]; then
echo -e "$USAGE";
exit 1
fi

ADDR=$1

if [ -f $TMPDIR/$ADDR ]; then
echo 1;
else
echo 0;
fi


Testen kann ich es leider erst wieder am Montag. Aber vielleicht bringt es euch trotzdem etwas.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 22 November 2014, 22:14:31
Danke Gero, werde ich morgen mal testen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 22 November 2014, 22:31:12
anbei mal eine version die ein eigenes fhem modul statt einem shellscript verwendet.

mitdefine pd PRESENCEDwird ein fhem device angelegt das ein mal das hcitool öffnet und kontinuierlich im hintergunrd ausliest. alle gefundenen mac adressen werden mit timstamp im {helper}->{DEVICES} abgelegt und sind mit list sichtbar.

dieses PRESENCED device muss es nur ein mal geben. im prinzip könnte man vermutlich statt dem lokalen hcitool auch eines per ssh auf einem anderen rechner starten.

im modifizierten PRESENCE modul kann man jetzt mit define <device> PRESENCE local-PRESENCED <mac>ein zugehöriges PRESENCE device definieren. dieses schaut in den normal angegeben intervallen im PRESENCED nach ob es das device gibt und setzt es auf present wenn der zugehörige timestamp nicht älter als das presence intervall ist

der name PRESENCED ist nicht besonders gut. in einer eventuellen endgültigen version könnte statt dem PRESENCED modul das ganze in den presenced integriert werden.

hcitoll lescan wird ohne die --duplicates option verwendet.

gruss
  andre

edit: PRESENCED aktualisiert: hcitool wird jetzt mit beendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 22 November 2014, 23:07:06
Danke Andre! Diese Variante gefällt mir viel besser.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 22 November 2014, 23:22:47
Danke Andre!

Funktioniert nach Anpassung des hcitool Pfades auf /usr/bin/hcitool

Kommen zwar noch eine Warnings, aber wie gesagt, es geht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 22 November 2014, 23:29:49
ich bin sehr sicher das es noch lange nicht perfekt ist.

auf meinem fhem system ist kein usb port frei. auf meinem entwicklungs rechner gibt es kein hcitool weil mac und statt eines echten beacon hatte ich erst mal nur deine ausgabe.

es kann also noch an allen möglichen
ecken schief gehen :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 23 November 2014, 08:05:45
Guten Morgen!

@justme1968 also bei mir ist zwar "PRESENCED" state:Connected aber bei meiner "local-PRESENCED D0:FF:50:7A:24:08"(BlueTag) bleibt "absent"?


CMD /usr/bin/hcitool lescan
CONNECTS 1
FD 5
LAST_CONNECT 2014-11-23 08:22:51
NAME pd
NR 424
NTFY_ORDER 50-pd
PARTIAL
STATE Connected
TYPE PRESENCED


Was mir aufgefallen das diese zweite "lan-bluetooth A4:9A:58:51:EB:D2 192.168.178.45:5222"(handy) jetzt auch durchgehend "absent" ist!
Hat das was damit zu tun, können beide nicht laufen?

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 23 November 2014, 09:28:39
der usb dongle kann nur ein mal vom hcitool geöffnet sein. beiden scann varianten kommen sich ziemlich sicher in die quere.

es kann passieren das der usbdongle einfach abschmiert und nichts mehr zurück liefert.

ich vermute es ist am besten zwei dongle einzusetzen wenn man beide varianten nutzen will.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 23 November 2014, 09:48:51
Zitat von: justme1968 am 23 November 2014, 09:28:39
der usb dongle kann nur ein mal vom hcitool geöffnet sein. beiden scann varianten kommen sich ziemlich sicher in die quere.

es kann passieren das der usbdongle einfach abschmiert und nichts mehr zurück liefert.

ich vermute es ist am besten zwei dongle einzusetzen wenn man beide varianten nutzen will.

gruss
  andre

Ja hatte ich mir auch gedacht, aber habe jetzt mal die anderen Presence Devices entfernt außer den BlueTag aber immer noch das gleiche Bild, "Presenced connect" aber "local-PRESENCED D0:FF:50:7A:24:08" state:absent!

Wo könnte ich denn als erstes schauen ob er das device erkennt und ablegt?

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 23 November 2014, 09:50:37
deaktiviere das PRESENCED device in fhem und ruf hcitool lescan von hand auf.

gruß
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 23 November 2014, 10:13:30
Zitat von: justme1968 am 23 November 2014, 09:50:37
deaktiviere das PRESENCED device in fhem und ruf hcitool lescan von hand auf.

gruß
  andre


hcitool lescan
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408


Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 23 November 2014, 10:17:27
kommt es wie bei mich auch regelmässig? wenn nein hilft es wenn du ein --duplicates mit angibst?

wenn ja häng den parameter auch im modul hinter den aufruf.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: volschin am 23 November 2014, 10:49:42
Zitat von: Steffen am 07 November 2014, 06:45:22Könnte man es nicht auch mit diesen hier versuchen ...
Versuch macht klug.  :)
Aber lies Dir vorher mal die Bewertungen bei Amazon durch. Man muss ja nicht alle Versuche selbst machen.  ;)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 23 November 2014, 10:58:28
Also bei mir lief es die ganze Nacht ohne Probleme durch.
Heute werde ich mal testen, wenn ich den Tag ausser Reichweite bringe und wieder zurück.

Was komisch ist, laut Log wollte cp auf die cfg zugreifen, die habe ich aber nicht, nutze DBconfig:

cp: cannot stat '/opt/fhem/fhem.cfg' : no such file or directory

Was will den cp mit der cfg?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 23 November 2014, 10:59:30
Zitat von: justme1968 am 23 November 2014, 10:17:27
kommt es wie bei mich auch regelmässig? wenn nein hilft es wenn du ein --duplicates mit angibst?

wenn ja häng den parameter auch im modul hinter den aufruf.

gruss
  andre

habe auch mal versucht mit --duplicates aber leider das selbe Ergebnis!

Hier mal ein paar infos zu meinen Eingaben:

root@cubieez:~# /usr/bin/hcitool lescan --duplicates
LE Scan ...
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
^Croot@cubieez:~# /usr/bin/hcitool lescan
LE Scan ...
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
^Croot@cubieez:~#


was mir aber noch aufgefallen ist wenn das "PRESENCED" aktiv ist und mit Fhem gestartet ist dann bekomme ich diese Ausgabe auf der Shell:

^Croot@cubieez:~# /usr/bin/hcitool lescan --duplicates
Set scan parameters failed: Input/output error
root@cubieez:~#


erst wenn ich "PRESENCED" auf Disable gesetzt habe und ich meinen Cubie neugestartet habe kann ich kann ich den "hcitool lescan" wieder ausführen!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 23 November 2014, 11:02:38
Ist klar, das Presenced Modul hat ja deinen BT Dongle in Zugriff. Es kann nur einen geben :-)

Statt Neustart geht auch

sudo hciconfig hci0 down
sudo hciconfig hci0 up
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 23 November 2014, 11:03:58
dein device scheint sich anders zu melden als das von mitch und du bekommst nur mit --duplicates regelmäßig eine info. d.h. du musst das --duplicates  im PRESENCED modul in den aufruf mit einbauen. entweder du änderst es direkt im code oder du versuchst mal das komplette kommando am ende des define mit anzugeben. das ist zwar eingebaut aber ich weiss nicht ob es geht. also etwa so:define <pd> PRESENCED /usr/bin/hcitool lescan --duplicates

zum gleichzeitigen aufruf: siehe oben. der usb dongle ist nicht gleichzeitig nutzbar.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 23 November 2014, 11:10:27
Zitat von: justme1968 am 23 November 2014, 11:03:58
dein device scheint sich anders zu melden als das von mitch und du bekommst nur mit --duplicates regelmäßig eine info. d.h. du musst das --duplicates  im PRESENCED modul in den aufruf mit einbauen. entweder du änderst es direkt im code oder du versuchst mal das komplette kommando am ende des define mit anzugeben. das ist zwar eingebaut aber ich weiss nicht ob es geht. also etwa so:define <pd> PRESENCED /usr/bin/hcitool lescan --duplicates

zum gleichzeitigen aufruf: siehe oben. der usb dongle ist nicht gleichzeitig nutzbar.

gruss
  andre

Das hatte ich auch schon im Code geändert aber wieder das selbe Ergebnis :(

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 23 November 2014, 11:11:39
was siehst du bei einem list auf das device? ändern sich die timestamps?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 23 November 2014, 13:34:19
Zitat von: justme1968 am 23 November 2014, 11:11:39
was siehst du bei einem list auf das device? ändern sich die timestamps?

Meinst du über Fhem?

dann PRESENCED:

Internals:
   CMD        /usr/bin/hcitool lescan --duplicates
   CONNECTS   1
   DEF        /usr/bin/hcitool lescan --duplicates
   FD         5
   LAST_CONNECT 2014-11-23 11:12:31
   NAME       pd
   NR         422
   NTFY_ORDER 50-Te
   PARTIAL
   STATE      Connected
   TYPE       PRESENCED
   Helper:
     Devices:
Attributes:


Device:

Internals:
   ADDRESS    D0:FF:50:7A:24:08
   DEF        local-PRESENCED D0:FF:50:7A:24:08
   MODE       local-PRESENCED
   NAME       TestBlue
   NR         421
   STATE      absent
   TIMEOUT_NORMAL 30
   TIMEOUT_PRESENT 30
   TYPE       PRESENCE
   Readings:
     2014-11-23 13:33:28   state           absent
   Helper:
Attributes:


Hoffe du meintest das?!

Mfg
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 23 November 2014, 13:39:18
läuft dein fhem als root?

wenn nicht musst du das lescan mit sudo aufrufen und dafür sorgen das es ohne password möglich ist.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 23 November 2014, 13:55:48
Zitat von: justme1968 am 23 November 2014, 13:39:18
läuft dein fhem als root?

wenn nicht musst du das lescan mit sudo aufrufen und dafür sorgen das es ohne password möglich ist.

gruss
  andre

Das komische daran ist, das es ja bei den scripten von Mitch&Gero mit den Befehlen auch funktionierte!
Darum wundert mich das es bei deinem nicht geht.

Sorry aber woran erkenne ich nochmal das fhem als root läuft? Sieht man es an der berechtigung zum Ordner?

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: oliv06 am 23 November 2014, 20:04:13
I had the 73_PRESENCE.pm and 73_PRESENCED.pm installed and it seems to work

However :
- CPU usage increased drastically on my cubieboard 2
- I get frequently grep: write error: Broken pipe errors on the stderr

Did anyone noticed the same ?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 23 November 2014, 20:11:27
have you deactivated all of the shellsctipt versions?

which process is causing the cpu usage? see top? if the cpu usage is indeed from fhem what does apptime give?

the module itself does not use grep in any form. i have no idea at the momment where the error message comes from.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: oliv06 am 23 November 2014, 21:31:30
I had not tested the scripts, only PRESENCED + PRESENCE.
Hungry process seems to be mmcqd/0 and bluetoothd , and occasionaly perl (fhem) which goes to up to 25%. Load average had increased a lot (0,05 before, can go to 1,5 with the feature)
After a reboot and 50 mn uptime here is results of top.
You can see on the CPU graph the impact of activating the feature.

Something else : I cannot stop fhem with /etc/init.d/fhem stop. I need to kill the hcitool process before manually.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 23 November 2014, 21:39:12
mmcqd is related to writing to out sd card and bluetoothd is related to the system bluetooth software.

i think there is sind sort of conflict between the system bluetooth software and the fhem module. probably related to the exklusive access.

have a look in the system logfiles and try to disable and system blutetooth software.

about the stopping: i will have a look at this.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 24 November 2014, 09:46:39
So, bei mir liefen die Module ja das ganze WE.

Alles (grundsätzlich) ohne Probleme mit ein paar Schönheitsfehlern:

1. Ein paar Warnings im Log, wenn fhem bzw. das PRESENCED Modul startet:
2014.11.24 09:19:41 1: PERL WARNING: Subroutine PRESENCED_Read redefined at ./FHEM/73_PRESENCED.pm line 152.
2014.11.24 09:19:41 1: PERL WARNING: Subroutine PRESENCED_Get redefined at ./FHEM/73_PRESENCED.pm line 138.
2014.11.24 09:19:41 1: PERL WARNING: Subroutine PRESENCED_Set redefined at ./FHEM/73_PRESENCED.pm line 128.
2014.11.24 09:19:41 1: PERL WARNING: Subroutine PRESENCED_Undefine redefined at ./FHEM/73_PRESENCED.pm line 118.
2014.11.24 09:19:41 1: PERL WARNING: Subroutine PRESENCED_Disconnect redefined at ./FHEM/73_PRESENCED.pm line 99.
2014.11.24 09:19:41 1: PERL WARNING: Subroutine PRESENCED_Connect redefined at ./FHEM/73_PRESENCED.pm line 70.
2014.11.24 09:19:41 1: PERL WARNING: Subroutine PRESENCED_Notify redefined at ./FHEM/73_PRESENCED.pm line 59.
2014.11.24 09:19:41 1: PERL WARNING: Subroutine PRESENCED_Define redefined at ./FHEM/73_PRESENCED.pm line 32.
2014.11.24 09:19:41 1: PERL WARNING: Subroutine PRESENCED_Initialize redefined at ./FHEM/73_PRESENCED.pm line 13.


2. wird wohl bei einem shutdown restart der hcitool Prozess nicht beendet, was zur Folge hat, das beim Start von fhem ein DICONNECT im PRESENCED Modul zur Folge hat.
Abhilfe schaft ein sudo hciconfig hci0 down und danach  sudo hciconfig hci0 up.
Habe mir als Workaround ein notify auf GLOBAL erstellt, der die zwei Befehle ausführt.

Bezüglich Ressourcen (I switch to english):

After testing with top I found the following:
- perl process take 0,3% to max. 1,3% of CPU ( 9662 fhem      20   0  326380 134644   4976 S   1,3  3,3   0:44.81 perl)
- hcitool process take 0,3% of CPU

So I think everything is fine.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 24 November 2014, 09:48:42
ich schaue mir beides an.

gruß
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 24 November 2014, 09:50:01
ich schaue mir beides an.

gruß
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 24 November 2014, 10:44:27
bist du sicher das die perl warnungen beim fhem start kommen? oder gab es irgendwo ein reload von hand? dann wären die meldungen ok.

zum killen von hidtool: das baue ich heute abend ein.

ich würde auch gerne das modul noch mal umbenennen. zb. in irgendetwas mit lescan. presence-lescand oder so.

@markus: wie wäre es zusätzlich zu function noch einen typ function-no-fork zu haben. dann könnte man die lescan geschichte generisch damit erledigen. um einmal in {helper}->{DEVCICES} nachzusehen ist ein BlockingCall wirklich übertrieben.

gruss
  andre

und noch was: könntest du das ganze noch zusätzlich in den presenced einbauen damit auch mehrere räume überwachbar werden. es gibt ja tags die lassen sich in der sendeleistung konfigurieren.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: oliv06 am 24 November 2014, 13:30:39
Thanks to justme1968 and Mitch for their time.
I have to check-out why bluetoothd is so CPU intensive. Did not find anything special in logs. What is your bluez version ?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 24 November 2014, 13:36:17
@andre: werde das mit dem Neustart heute Abend nochmal testen (bin unterwegs)

@oliv06: my version is 4.101 (which is the actual one)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 24 November 2014, 13:41:55
ich muss das beenden des hcitool prozesses noch einbauen. perl macht das scheinbar nicht automatisch. das kommt erst heute abend.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 24 November 2014, 17:40:00
Hallo!

Aufgegeben habe ich noch nicht aber bin leider noch nicht weiter gekommen, hatte jetzt zum Test auf einen anderen Cubitruck(Igor-Image) meine fhem Daten gespielt und Presenced gestartet doch wieder das Gleiche:

Internals:
   CMD        /usr/bin/hcitool lescan
   CONNECTS   1
   DEF        /usr/bin/hcitool lescan
   FD         5
   LAST_CONNECT 2014-11-24 17:06:14
   NAME       pd
   NR         422
   NTFY_ORDER 50-pd
   PARTIAL
   STATE      Connected
   TYPE       PRESENCED
   Helper:
     Devices:
Attributes:



Internals:
   ADDRESS    D0:FF:50:7A:24:08
   DEF        local-PRESENCED D0:FF:50:7A:24:08
   MODE       local-PRESENCED
   NAME       TestBlue
   NR         421
   STATE      absent
   TIMEOUT_NORMAL 30
   TIMEOUT_PRESENT 30
   TYPE       PRESENCE
   Readings:
     2014-11-24 17:36:15   state           absent
   Helper:
Attributes:


ob mit lescan --duplicates oder ohne immer das gleiche State?!

Ich werde jetzt es nochmal mit einem Pi versuchen und einer ganz neuen Installation, wenn das dann nicht klappt liegt es glaube ich an den BlueTag.

@justme1968 hattest mir den Tipp mit Fhem als root gegeben, meintest du damit die Berechtigung vom Ordner Fhem?

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 24 November 2014, 18:13:59
anbei eine version die den gestarteten hcitool prozess korrekt beenden sollte.

wenn du ins fhem log file schaust solltest du dort in der 'Server started with...' zeile sehen als welcher user fhem läuft.

wenn du beim ausführen auf der kommandozeile etwas siehst und beim ausruf aus fhem heraus nicht liegt es ziemlich sicher an den permissions.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 24 November 2014, 18:26:02
Zitat von: justme1968 am 24 November 2014, 18:13:59
anbei eine version die den gestarteten hcitool prozess korrekt beenden sollte.

wenn du ins fhem log file schaust solltest du dort in der 'Server started with...' zeile sehen als welcher user fhem läuft.

wenn du beim ausführen auf der kommandozeile etwas siehst und beim ausruf aus fhem heraus nicht liegt es ziemlich sicher an den permissions.

gruss
  andre


Hier der Eintrag aus meinem log, demnach als user Fhem wenn ich das richtig sehe?!
2014.11.24 17:06:14 0: Server started with 203 defined entities (version $Id: fhem.pl 6913 2014-11-08 10:32:44Z rudolfkoenig $, os linux, user fhem, pid 2164)

Sollte ich das ändern?

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 24 November 2014, 18:28:06
das kannst du nicht einfach ändern.

du musst das hcitool per sudo aufrufren und dafür sorgen das das das ohne password geht.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 24 November 2014, 18:33:33
Zitat von: justme1968 am 24 November 2014, 18:28:06
das kannst du nicht einfach ändern.

du musst das hcitool per sudo aufrufren und dafür sorgen das das das ohne password geht.

gruss
  andre

Ok, danke schonmal sehr für deine geduld :) ;)

Also ohne Password wäre hier glaube ich:

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d
%dialout ALL=(ALL) ALL
fhem    ALL = NOPASSWD:ALL
sollte ich hier noch "root All = NOPASSWD:ALL einfügen???

Wo trage ich am besten den aufruf in fhem ein, in der "PRESENCED:PM" ungefähr so:
sudo /usr/bin/hcitool lescan

oder in der fhem.cfg??

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 24 November 2014, 19:00:49
du kannst versuchen es als parameter im define mit anzugeben. wenn das nicht geht direkt in modul ändern.

wenn alles geht solltest du die sudo config so ändern das es nur für die dinge gilt die du auch  brauchst. nicht einfach für alles.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 24 November 2014, 19:15:41
Hallo!

Leider wieder kein erfolg, habe "sudo /usr/bin/hcitool lescan" in fhem und in dem "Presenced.pm" eingegeben! Alles neu gestartet aber wie immer zeigt er zwar Connect an aber  trotzdem "absent"!

Dann weiß ich auch nicht weiter :(

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 24 November 2014, 19:17:53
So, gerade das neue Modul getestet.
Funktioniert perfekt, wird schön gemeldet (absent & present), hcitool Prozess wird auch beendet, perfekt!!

Vielen Dank!!

Hab mir jetzt nochmal PebbleBees bestellt, damit alle Familienmitglieder "versorgt" sind.

Werde jetzt noch zur Reichweitererweiterung (schönes Wort  ;D ) ein BT Dongle an meinen Roomnote Pi stecken und zusätzlich dort scannen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 24 November 2014, 21:34:43
Hallo!

Hatte gerade ebend ein letzten Test gemacht auf einen Frisch aufgesetzten Pi mit unveränderten Fhem und auch da "Connect" aber "absent" also wird es wohl am BlueTag liegen das mit deinem Modul nicht Harmoniert, denn habe dann wieder auf meinem Cubitruck das script von Gero eingespielt> Cubi neustart und sofort ein "Present"!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 24 November 2014, 21:38:23
mein modul nutzt genau so wie das script das hcitool lescan. wenn das script die tags erkennt muss es das modul auch wenn die berechtigungen stimmen.

auf dem pi läuft fhem in der default installation auch als fhem und hat nicht das recht das binary auszuführen.

du kannst mal versuchen das s bit für das hcitool zu setzen (chmod -s) und schauen das das file auch root gehört.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 24 November 2014, 22:14:00
Zitat von: justme1968 am 24 November 2014, 21:38:23
mein modul nutzt genau so wie das script das hcitool lescan. wenn das script die tags erkennt muss es das modul auch wenn die berechtigungen stimmen.

auf dem pi läuft fhem in der default installation auch als fhem und hat nicht das recht das binary auszuführen.

du kannst mal versuchen das s bit für das hcitool zu setzen (chmod -s) und schauen das das file auch root gehört.

gruss
  andre

Also ein "chmod -s /usr/bin/hcitool" hatte auch keine änderung aber erst wenn ich wie hier im chat mal beschrieben:
sudo chmod u+s `which hcitool` eingebe dann bekomme ich ein "Connect" und trotzdem ein "absent" liegt hier der Fehler?
Habe auch Presenced root:root geändert.

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 24 November 2014, 22:29:51
Ich bin mir fast sicher, dass du ein Rechteproblem hast
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 24 November 2014, 22:35:50
Ja das denke ich eigentlich auch aber bei dem script von Gero auf dem gleichen Cubi ohne änderungen bekomme ich ein "Present", das ist ja das merkwürdige?!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: oliv06 am 24 November 2014, 22:42:19
I eventually found out the cause of my CPU issue : I had a "PRESENCE local-bluetooth" definition in fhem.cfg. Seems not possible to use BT and BLE at the same time.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 24 November 2014, 22:51:26
@steffen: das script läuft ziemlich sicher als root.

wie bekommen das schon noch hin.

@oliv06: not at the same time with the same usb dongle. but it should be positible to add a second one. 
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: oliv06 am 24 November 2014, 23:49:27
@ Steffen : I used the sticky bit for rights on hciconfig, but everything did not work as expected (especially fhem stop did not kill the hciconfig process...). Everything seems to work now with the following configuration :
sudoers :
fhem ALL=(ALL) NOPASSWD:ALL
fhem.cfg :
define pd PRESENCED sudo -u root /usr/bin/hcitool lescan --duplicates

Probably not the most secured configuration however
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus Bloch am 25 November 2014, 00:50:52
Hallo zusammen,ich lese ab und zu mal mit mangels Zeit. Bin echt erstaunt was andre da gezaubert hat. Super Arbeit

Als ich das Modul so durchsehe kam mir die Idee ob man diese Art von non-blocking Shell execution nicht ähnlich wie bei HttpUtils_NonBlockingGet als System-Modul bereit zustellen. Sowas liese sich dann wieder einfacher verwenden als das ganze manuell in PRESENCE oder wie aktuell in Andre's PRESENCED zu implementieren. Ich würde mir hier das gleiche Grundkonzept wünschen wie bei den HttpUtils mit einem Parameter Hash. Den Kill nach x Sekunden währe ja dann der execution Timeout wenn der Befehl bis dahin immer noch läuft.

Das würde ich dann auch sofort in PRESENCE einbauen für eure Bluetooth Tags.

Was meint ihr bzw speziell andre dazu?

Schönes Nächtle
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 25 November 2014, 07:07:11
guten morgen ;)

die idee die integration anders und besser zu machen ist gut.

das HttpUtils beispiel ist es aber auf den zweiten blick glaube ich nicht weil es wichtige unterschiede gibt: ein HttpUtils aufruf bearbeitet eine anfrage mit einer definierten antwortlänge und liefert diese auf ein mal zurück. die antwort ist (meist) für ein fhem device bestimmt.

beim lescan sollte es normalerweise keinen kill geben und der callback würde unterm strich zu einer readFn.

der aufruf darf auch nur ein mal zentral und nicht durch jedes (logische) presence device erfolgen weil sich das hcitool nur ein mal gleichzeitig (pro dongle) aufrufen lässt. die auswertung würde dann eher per parse und dispatch erfolgen.

je generischer man das jetzt aber macht um so unhandlicher wird es für den endanwender weil er sie clients und match listen konfigurieren müsste.

wie wäre es trozdem genau hier anzusetzen aber zumindest die schnittstelle nicht genetisch zu implementieren sondern genau auf den anwendungsfall zugeschnitten:

aus dem aktuellen PRESENCED wird ein hcitool modul. das bekommt die möglichkeit wahlweise lescan oder scan auszuführen. bei scan auf jeden fall mit timeout und für lescan optional auch statt der duplicates option. hier könnte man auch abwechselnd scan und lescan aufrufen um mit einem  dongle beides abzudecken.

dieses modul sammelt alle bluetoth devices in der nähe und bekommt ein get um die aktuell gesehene device liste mit namen auszuspucken. das würde auch das problem lösen die adresse eines neuen tag zu finden.

PRESENCE bekommt eine dispatch funktion die vom hcitool modul aufgerufen wird. ein tag das in reichweite kommt könnte (optional)  sofort auf present gehen ohne den presence timeout abzuwarten. es wäre nur noch der absence timeout nötig.

das lescan modul könne per autocreate direkt das passende presence device erzeugen wenn ein pairForSec parameter gesetzt wird. d.h. ein neuer tag wird dann nur kurz in die nähe gebracht und ist als device in fhem bekannt.

eventuell kann man später auch noch eine geschickte integration mit den roommate modulen einbauen.

die multiroom fähigkeit von collectord würde ich aber gerne erhalten bzw. auch hier erreichen.

vielleicht kann man das konzept das scannen und cachen von bresence zu trennen auch auf andere bereiche erweitern die mehrere geräte in einem rutsch liefern. mir fällt gerade spontan die snmp/mac überwachung ein und vielleicht das regelmäßige scannen eines ganzen netzwerks oder teils. beides könnte man dann mit einem ein mal geforkten script mit endlosschleife tun und nicht immer wieder neu per BlockingCall

was denkst du?

gruß
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 25 November 2014, 08:43:00
Wenn ihr schon dabei seid, das Konzept neu zu diskutieren, könntet ihr auch überlegen, ob man nicht nur die gesehenen BLE Tags listet, sondern auch direkt die Advertisement Data und den RSSI Wert. Damit wäre das Modul noch universeller verwendbar. Z.B. könnte man anhand des RSSI Wertes eine grobe Entfernungsschätzung zum Tag machen, oder man könnte BLE Sensoren auf die gleich Art und Weise einbinden, falls sie ihre Sensordaten in den Advertisement Paketen codieren.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 25 November 2014, 09:16:39
Zitat von: oliv06 am 24 November 2014, 23:49:27
@ Steffen : I used the sticky bit for rights on hciconfig, but everything did not work as expected (especially fhem stop did not kill the hciconfig process...). Everything seems to work now with the following configuration :
sudoers :
fhem ALL=(ALL) NOPASSWD:ALL
fhem.cfg :
define pd PRESENCED sudo -u root /usr/bin/hcitool lescan --duplicates

Probably not the most secured configuration however

@oliv06 A thousand thanks!

Guten Morgen!

Also hier kann man wenigstens vom einem kleinen Erfolg reden denn mit dieser Eingabe vom @oliv06 Bekomme ich ein "Present",
aber deswegen nur kleiner Erfolg den es wechselt im ca.2sek die ganze Zeit zwischen "absent<>Present"?!?

Wenn das so bleiben würde ja auch nicht das wahre wäre, aber vielleicht hat ja doch noch einer von euch eine Idee wo man da noch ansetzten könnte?

Mfg Steffen

Mfg Steffen

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 25 November 2014, 09:22:36
@gero: daran habe ich auch schon gedacht.

so viel ich weiß liefert lescan diese informationen nicht.

ich weiß nicht ob man etwas anderes wie hcidump gleichzeitig laufen lassen kann.

@steffen: sieh es erst mal positiv. es ist ein rechteproblem.

zwei sekunden ist sehr komisch. die timeouts im presence modul sind doch viel höher. oder hast du von hand etwas anderes hand?

bitte mach ganz sicher das keine system blutooth routinen mehr laufen die dazwischenfunken. das war bei oliv06 ja auch zuerst so. 

gruß
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 25 November 2014, 09:29:37
LESCAN "sieht" nur Adressen, keine weitern Infos.

steffen, welche bluez Version hast Du?
Schau mal mit ps ax, was da alles an Prozessen läuft.

Ich würde auch mal alles an BT vom System schmeissen und neu installieren.
Dein Fehler scheint mir nicht am Modul zu liegen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 25 November 2014, 10:17:38
scheinbar gibt es noch eine low level interface in bluez das man verwenden kann.

kannst du mal bitte probieren ob man btmon parallel verwenden kann? reicht eventuell btmon alleine? liefert es auch die nötige info?

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 25 November 2014, 11:17:12
Korrekt: hcitool liefert keine weiteren Infos.
Aber es gibt noch einige andere Möglichkeiten:
- paralleles Verwenden von hcidump (evtl. btmon, aber da sehe ich keine großen Vorteile)
- Verwenden eines selbstentwickelten Tools außerhalb von FHEM (z.B. mit Python https://github.com/IanHarvey/bluepy, JavaScript https://github.com/sandeepmistry/noble, oder C/C++, oder, oder ...)
- Direktes Ansprechen der HCI Sockets aus Perl/fhem

Vom Konzept her fände ich die letzte Variante am schönsten.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 25 November 2014, 11:25:30
d.h. hcidump oder btmon geht definitiv parallel zu scan/lescan?

wenn das so ist würde ich erst mal einen parallelen aufruf einbauen. mal sehen wie gut die rssi werte überhaupt sind. wenn sie gut genug sind könnte man vielleicht sogar in richtung triangulation denken...

wenn sich die rssi werte bewähren würde ich direkt das HCI socket verwenden. hast du einen link wo es dokumentation dazu gibt?

weisst du ob es über das socket dann möclich ist normale und le devices gleichzeitig zu erkennen ?

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 25 November 2014, 11:52:50
Zitat von: justme1968 am 25 November 2014, 11:25:30
d.h. hcidump oder btmon geht definitiv parallel zu scan/lescan?
hcidump läuft ohne Probleme parallel zu hcitool. btmon hab ich bisher nicht verwendet.

Zitat von: justme1968 am 25 November 2014, 11:25:30
wenn das so ist würde ich erst mal einen parallelen aufruf einbauen. mal sehen wie gut die rssi werte überhaupt sind. wenn sie gut genug sind könnte man vielleicht sogar in richtung triangulation denken...
Die RSSI Werte sind herstellerabhängig und bieten nur eine grobe Indikation, wie weit der Tag entfernt ist. Außerdem ist Bluetooth mit seinen 2.4GHz sehr empfindlich, was Abschirmung angeht. D.h. in einer Wohnung (durch Wände hindurch) kannst du eine simple Triangulation vergessen. Aber man könnte zumindest unterscheiden, ob der Tag nur in der Nähe ist (z.B. in der Nähe der Wohnung, oder ob ein Schlüsselbund mit Tag an der dafür vorgesehenen Stelle liegt. u.ä.)

Zitat von: justme1968 am 25 November 2014, 11:25:30
wenn sich die rssi werte bewähren würde ich direkt das HCI socket verwenden. hast du einen link wo es dokumentation dazu gibt?
Das HCI Interface ist in der Bluetooth Core Spec definiert. Die HCI Sockets selbst, werden durch den Linux Kernel realisiert. Am leichtesten ist sich den Code von hcitool und hcidump aus bluez anzusehen.
Falls du an der Stelle nicht weiterkommst, kann ich dir evtl. helfen.

Zitat von: justme1968 am 25 November 2014, 11:25:30
weisst du ob es über das socket dann möclich ist normale und le devices gleichzeitig zu erkennen ?
Da bin ich mir gerade nicht ganz sicher. Das müßte man untersuchen.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 25 November 2014, 11:53:14
Zitat von: Mitch am 25 November 2014, 09:29:37
LESCAN "sieht" nur Adressen, keine weitern Infos.

steffen, welche bluez Version hast Du?
Schau mal mit ps ax, was da alles an Prozessen läuft.

Ich würde auch mal alles an BT vom System schmeissen und neu installieren.
Dein Fehler scheint mir nicht am Modul zu liegen.

Hallo!

Hatte mal bluez deinstalliert und nochmal neu installiert, aber wechselt immer noch.
Hier mal das Ergebnis von PS ax vielleicht erkennt ihr was darauf:

PID TTY      STAT   TIME COMMAND
    1 ?        Ss     0:04 init [2]
    2 ?        S      0:00 [kthreadd]
    3 ?        S      0:06 [ksoftirqd/0]
    4 ?        S      0:00 [kworker/0:0]
    5 ?        S      0:00 [kworker/u:0]
    6 ?        S      0:00 [migration/0]
    7 ?        S      0:00 [migration/1]
    8 ?        S      0:00 [kworker/1:0]
    9 ?        S      0:00 [ksoftirqd/1]
   10 ?        S<     0:00 [cpuset]
   11 ?        S<     0:00 [khelper]
   12 ?        S      0:00 [kdevtmpfs]
   13 ?        S<     0:00 [netns]
   14 ?        S      0:00 [sync_supers]
   15 ?        S      0:00 [bdi-default]
   16 ?        S<     0:00 [kintegrityd]
   17 ?        S<     0:00 [crypto]
   18 ?        S<     0:00 [kblockd]
   19 ?        S      0:00 [khubd]
   20 ?        S<     0:00 [cpufreq_uevent]
   21 ?        S      0:00 [kworker/0:1]
   22 ?        S<     0:00 [cfg80211]
   23 ?        S<     0:00 [rpciod]
   24 ?        S      0:00 [khungtaskd]
   25 ?        S      0:00 [kswapd0]
   26 ?        SN     0:00 [ksmd]
   27 ?        S      0:00 [fsnotify_mark]
   28 ?        S<     0:00 [nfsiod]
   29 ?        S<     0:00 [cifsiod]
   30 ?        S<     0:00 [xfsalloc]
   31 ?        S<     0:00 [xfs_mru_cache]
   32 ?        S<     0:00 [xfslogd]
   46 ?        S      0:00 [kworker/1:1]
   47 ?        S      0:00 [nandd]
   48 ?        S      0:00 [nfmtd]
   49 ?        S      0:00 [scsi_eh_0]
   50 ?        S      0:00 [kworker/u:1]
   51 ?        S      0:00 [kworker/u:2]
   58 ?        S<     0:00 [kmpathd]
   59 ?        S<     0:00 [kmpath_handlerd]
   60 ?        S      0:00 [cfinteractive]
   61 ?        S<     0:00 [binder]
   62 ?        S<     0:00 [codec_resume]
   63 ?        S      0:00 [hdmi proc]
   64 ?        S<     0:00 [deferwq]
   65 ?        S      0:00 [jbd2/sda1-8]
   66 ?        S<     0:00 [ext4-dio-unwrit]
  180 ?        Ss     0:00 udevd --daemon
  334 ?        S      0:00 [flush-8:0]
  574 ?        S      0:00 [kworker/1:2]
  587 ?        S<     0:00 [krfcommd]
  649 ?        S      0:00 [dhd_cfg80211_ev]
  650 ?        S      0:00 [dhd_watchdog]
  651 ?        S      0:00 [dhd_dpc]
  652 ?        S      0:00 [dhd_sysioc]
1870 ?        Ss     0:00 /usr/sbin/nmbd -D
1918 ?        S<     0:00 [hci0]
1919 ?        S      0:00 /usr/sbin/hciattach /dev/ttyS1 any
1921 ?        S      0:00 [kworker/0:2]
1923 ?        Ss     0:00 /usr/sbin/smbd -D
1941 ?        Ss     0:00 startpar -f -- samba
1943 ?        S      0:00 /usr/sbin/smbd -D
1948 ?        Ss     0:00 php-fpm: master process (/etc/php5/fpm/php-fpm.conf)
1949 ?        S      0:00 php-fpm: pool www
1950 ?        S      0:00 php-fpm: pool www
2013 ?        Sl     0:00 /usr/sbin/rsyslogd -c5
2072 ?        Ss     0:00 /usr/sbin/cron
2095 ?        S      0:23 perl fhem.pl fhem.cfg
2102 ?        Ss     0:00 startpar -f -- fhem
2213 ?        Ss     0:00 /usr/bin/dbus-daemon --system
2270 ?        Ss     0:00 /usr/sbin/bluetoothd
2297 ?        S      0:00 avahi-daemon: running [cubie.local]
2298 ?        S      0:00 avahi-daemon: chroot helper
2340 ?        Ssl    0:02 /usr/sbin/NetworkManager
2369 ?        Ss     0:00 nginx: master process /usr/sbin/nginx
2371 ?        S      0:00 nginx: worker process
2372 ?        S      0:00 nginx: worker process
2373 ?        S      0:00 nginx: worker process
2374 ?        S      0:00 nginx: worker process
2392 ?        S      0:00 /bin/sh /usr/bin/mysqld_safe
2396 ?        Sl     0:00 /usr/lib/policykit-1/polkitd --no-debug
2413 ?        Sl     0:00 /usr/sbin/gdm3
2549 ?        S      0:00 /sbin/wpa_supplicant -u -s -O /var/run/wpa_supplicant
2759 ?        Ss     0:00 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -c /var/lib/ntp/ntp.conf.dhcp -u 101:104
2868 ?        Sl     0:01 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock
2869 ?        S      0:00 logger -t mysqld -p daemon.error
2954 ?        Ss     0:00 /usr/sbin/sshd
3060 tty1     Ss+    0:00 /sbin/getty 38400 tty1
3061 tty2     Ss+    0:00 /sbin/getty 38400 tty2
3062 tty3     Ss+    0:00 /sbin/getty 38400 tty3
3063 tty4     Ss+    0:00 /sbin/getty 38400 tty4
3064 tty5     Ss+    0:00 /sbin/getty 38400 tty5
3065 tty6     Ss+    0:00 /sbin/getty 38400 tty6
3066 ttyS0    Ss+    0:00 /sbin/getty -L ttyS0 115200 vt100
3069 ?        S      0:00 udevd --daemon
3070 ?        S      0:00 udevd --daemon
3152 ?        S      0:00 sudo -u root /usr/bin/hcitool lescan --duplicates
3153 ?        S      0:00 /usr/bin/hcitool lescan --duplicates
3155 ?        Ss     0:00 sshd: root@pts/0
3157 pts/0    Ss     0:00 -bash
3204 pts/0    S+     0:00 sudo ps ax
3205 pts/0    R+     0:00 ps ax

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 25 November 2014, 12:00:31
@gero: mir würde es reichen zu erkennen das ich im gleich zimmer bin und nicht zwei stockwerte drunter.

ich schaue mir das mit dem hic socket auf jeden fall an. ich muss nur erst mal ein system zusammenbauen mit dem ich auch wirklich testen kann. wie oben schon geschrieben: bis jetzt ist alles auf dem trockenen zusammengebaut. und mein estimote ibeacon finde ich gerade auch nicht. lach.

@Steffen: da ist schon mal was:
Zitat2270 ?        Ss     0:00 /usr/sbin/bluetoothd

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 25 November 2014, 12:08:43
Zitat von: justme1968 am 25 November 2014, 12:00:31
@Steffen: da ist schon mal was:
gruss
  andre

Ne, das passt schon, ist der Bluetooth Dienst ansich.

Insgesamt passt das eigentlich schon.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 25 November 2014, 12:17:30
Zitat von: justme1968 am 25 November 2014, 12:00:31
@Steffen: da ist schon mal was:
gruss
  andre

Ok habe mal den Prozess beendet(sudo kill 2242) aber dann bleibt es ständig "absent" aber muss dann was damit zu tun haben oder?!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 25 November 2014, 12:26:27
Kannst es sein, dass dein Tag sich auch nur sporadisch meldet?

Wenn Du im fhem presenced disablest und hcitool lescan in der shell startest, lass das doch mal so 10 bis 15 sek. laufen und schau, wie oft und wie sich der Tag meldet.
Die PebbleBee senden ca. alle 500ms einen "Ping", kontinuierlich.

Evtl. hat Dein Kensing auch das Security Feature, seine Adresse zu wechseln (oder eines der anderen)?

Mach doch auch mal ein hcitool lewladd (Add device to LE White List).

Du kannst auch mal mit hcitool lecc (Create a LE Connection) versuchem, dich mit dem Tag zu verbinden.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 25 November 2014, 12:50:45
wenn sich dein tag nicht dauern meldet musst du noch --duplicates hinter den aufruf hängen.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus Bloch am 26 November 2014, 01:02:15
Zitat von: justme1968 am 25 November 2014, 07:07:11
guten morgen ;)

die idee die integration anders und besser zu machen ist gut.

das HttpUtils beispiel ist es aber auf den zweiten blick glaube ich nicht weil es wichtige unterschiede gibt: ein HttpUtils aufruf bearbeitet eine anfrage mit einer definierten antwortlänge und liefert diese auf ein mal zurück. die antwort ist (meist) für ein fhem device bestimmt.

beim lescan sollte es normalerweise keinen kill geben und der callback würde unterm strich zu einer readFn.

der aufruf darf auch nur ein mal zentral und nicht durch jedes (logische) presence device erfolgen weil sich das hcitool nur ein mal gleichzeitig (pro dongle) aufrufen lässt. die auswertung würde dann eher per parse und dispatch erfolgen.

Und genau hier sehe ich ein Problem. Wie ihr bereits festgestellt habt, kann ein Bluetooth Dongle nur seriell von einem einzigen Programm benutzt werden. Wenn man nun einen hcitool lescan starten würde, der über ein HCITOOL Modul an PRESENCE dispatcht, würde dieser Dongle voll belegt sein und könnte nicht von weiteren PRESENCE Definitionen (local-bluetooth) verwendet werden. In PRESENCE ist dazu extra eine Prozesserkennung eingebaut, die sicher stellt, dass nur ein einziger hcitool Aufruf bei mehreren PRESENCE Definitionen läuft.

Wenn man nun den hcitool lescan kontrolliert startet und nach einem festen Timeout wieder beendet, würde der Bluetooth-Dongle auch nachwievor allen anderen PRESENCE local-bluetooth Definitionen zur Verfügung stehen um z.B noch das eigene Handy zu prüfen, usw.


Zitat von: justme1968 am 25 November 2014, 07:07:11
je generischer man das jetzt aber macht um so unhandlicher wird es für den endanwender weil er sie clients und match listen konfigurieren müsste.

wie wäre es trozdem genau hier anzusetzen aber zumindest die schnittstelle nicht genetisch zu implementieren sondern genau auf den anwendungsfall zugeschnitten:

aus dem aktuellen PRESENCED wird ein hcitool modul. das bekommt die möglichkeit wahlweise lescan oder scan auszuführen. bei scan auf jeden fall mit timeout und für lescan optional auch statt der duplicates option. hier könnte man auch abwechselnd scan und lescan aufrufen um mit einem  dongle beides abzudecken.

dieses modul sammelt alle bluetoth devices in der nähe und bekommt ein get um die aktuell gesehene device liste mit namen auszuspucken. das würde auch das problem lösen die adresse eines neuen tag zu finden.

PRESENCE bekommt eine dispatch funktion die vom hcitool modul aufgerufen wird. ein tag das in reichweite kommt könnte (optional)  sofort auf present gehen ohne den presence timeout abzuwarten. es wäre nur noch der absence timeout nötig.

das lescan modul könne per autocreate direkt das passende presence device erzeugen wenn ein pairForSec parameter gesetzt wird. d.h. ein neuer tag wird dann nur kurz in die nähe gebracht und ist als device in fhem bekannt.

Das finde ich aus Endanwendersicht allerdings komplizierter. Man muss erstmal eine HCITOOL Instanz definieren. Viele User werden mit dem Begriff nichts anzufangen wissen, bzw. wofür hcitool überhaupt gedacht ist. Dann werden durch autocreate haufenweise Definitionen erzeugt (evtl. auch vom Nachbarn), wo man die ungewünschten Definitionen mit attr dummy 1 erstmal wieder deaktivieren muss. Desweiteren währe es nicht möglich hcitool lescan für BT-Tags und hcitool name für die reguläre BT Erkennung von Handys auf einem System zu kombinieren, da das Bluetooth device dauerhaft durch hcitool lescan belegt ist. Der User brauch also mind. 2 Dongles, dazu kommen dann wieder die ganzen Fragen im Forum: "Wieso geht die Erkennung mit Bluetooth nicht, ich hab doch einen Bluetooth Stick installiert? ..."

Ich finde es so, wie es bisher ist (eine Definition pro Device mit Device Adresse) für den Enduser am einfachsten und am logischsten, da es sich letztenendes auch nur um ein Gerät handelt (BT-Tag oder Handy,...). Alle PRESENCE Definitionen stellen untereinander sicher, dass nur ein hcitool Befehl zur gleichen Zeit läuft (so wie es bereits auch der Fall ist). Einen hcitool lescan würde ich gerne so wie du es demonstriert hast über eine ausgelagerte Funktion realisieren, die ein Non-Blocking Shell-Execution erlaubt.

Vorteil:
- Ich kann alle anderen PRESENCE Modis auf diese Funktion umstellen, und es gibt keine Probleme mehr mit BlockingCall, telnet Zugriff Fehler und korrupte FD's
- Speicherverbrauch bei kleinen Systemen sinkt, da kein Fork mehr erforderlich ist.
- Rudi sieht BlockingCall eh nicht als permanente Lösung, dein Vorschlag mit selectlist könnte man als eine gute Variante nehmen.


Zitat von: justme1968 am 25 November 2014, 07:07:11
eventuell kann man später auch noch eine geschickte integration mit den roommate modulen einbauen.

die multiroom fähigkeit von collectord würde ich aber gerne erhalten bzw. auch hier erreichen.

Da stimme ich dir zu, das wäre dann aber ein nachgelagerter Schritt.

Zitat von: justme1968 am 25 November 2014, 07:07:11
vielleicht kann man das konzept das scannen und cachen von bresence zu trennen auch auf andere bereiche erweitern die mehrere geräte in einem rutsch liefern. mir fällt gerade spontan die snmp/mac überwachung ein und vielleicht das regelmäßige scannen eines ganzen netzwerks oder teils. beides könnte man dann mit einem ein mal geforkten script mit endlosschleife tun und nicht immer wieder neu per BlockingCall

Das wäre ein guter Anwendungsfall für eine solche neue NonBlocking-Shell-Exec Funktion. Es muss ja nicht umbedingt ein Kill nach x Sekunden geben. Dazu eine Funktion (ähnlich wie bei HttpUtils NonBlocking) , die die Daten entgegen nimmt und entsprechend in FHEM einpflegt.

Wenn ich die Zeit hätte, hätte ich eine solche Funktion längst als Patch in FHEM Development vorgestellt ;-)

Viele Grüße

Markus
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 26 November 2014, 08:45:03
Zitat von: justme1968 am 25 November 2014, 12:50:45
wenn sich dein tag nicht dauern meldet musst du noch --duplicates hinter den aufruf hängen.

gruss
  andre

Hallo!

Also über die shell --duplicates bekomme ich im sekunden Tag die meldung vom Tag, ohne --duplicates bekomme ich nur eine meldung und dann keine weitere!
Die Mac und Name bleibt auch immer gleich!
Aber trotzdem bekomme ich im interval von Presence immer ein absent<>present, verstehe nicht wieso!
Was mir noch auf gefallen ist das im Presenced bei PARTIAL ist die mac oder name oft abgehackt so zum beispiel: "09:07:98", vielleicht ist das der Fehler?!
Der Cubi hat ja ein eigenes Bluetooth modul vielleicht stört das ja auch?

Mfg Steffen
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 26 November 2014, 08:48:10
ich glaube du hast ein paar dinge in meinem post übersehen :)

was ich versucht habe zu beschreiben ist unter anderem die lösung für das problem das sich der usb dongle nur ein mal mit lescan öffnen lässt. es gibt eine zentrale instanz die das starten und stoppen und das umschalten zwischen den scan und lescan erledigt (so lange das noch nötig ist. siehe die idee mit dem hci socket). diese zentrale Instanz habe ich mal LESCAN genannt. das ist erst mal völlig unabhängig davon ob das ein eigenes modul oder nur ein bestimmter mode von PRESENCE ist. das wichtige ist diese instanz sollte nur ein mal laufen und das so permanent wie möglich. ohne kill wenn es irgendwie geht. ob man es den benutzer von extra definieren lässt (das ist vermutlich spätestens dann nötig wenn er tatsächlich mehr als einen dongle ansprechen will) oder ob man dafür sorgt das es automatisch angelegt wird sobald es ein device gibt das ihn benötigt ist ist vielleicht geschmacksache. ich glaube aber das die anwender durchaus damit klar kommen wenn man es erklärt. die trennung wäre wie bei jedem andere fhem rf modem: cul, hmlan, jeelink, hue bridge. es gibt ein zentrales device das die resource verwaltet und mehrere clients.

wenn die die resourcen verwaltung in die clients verschiebst ist der aufwand deutlich größer und du hast probleme weil die einzelnen clients unabhängig sind und auch unabhängige Intervalle haben. was willst du tun wenn ein PRESENCD device noch scannt aber der timeout in einem anderen abläuft und es jetzt eigentlich dran wäre? vor allem ist es im lescan gar nicht nötig etwas zu beenden wenn das scannen ein einziges mal zentral gemacht wird und sich die clients nur bedienen. die möglichkeit ganz ohne timeout und pollen sofort auf  ein device zu reagieren hast du auch nur mit einem scann der permanent läuft.

achtung: das mit dem resourcenverbrauch stimmt so nicht. hier ist ein non blocking shell aufruf nicht prinzipiell anders als ein BlockingCall. es wird genau so geforkt. es ist nur mehr versteckt. es gibt auch die gleichen potentiellen probleme (deshalb ist es eigentlich sinnvoll für die endgültige implementierung nicht einfach das perl open zu verwenden sondern es selber lösen um direkt nach dem fork erst mal wie gehabt alles zu schliessen. siehe sanbox modul). die shell ist danach ein eigener prozess der parallel läuft. der unterschied liegt nur in der kommunikation mit diesem geforkten prozess. im BlockingCall fall wird sie antwort gesammelt und nach beenden ein mal zurück gegeben. im diesem fall wird die antwort kontinuierlich direkt zurück gegeben. wenn du immer wieder killst verschenkst die genau diesen vorteil das kontinuierlich etwas läuft.

die zwei ersten vorteile die du anführst gibt es also garnicht.

lass uns das bitte so weit diskutieren bis das konzept klar ist und wir beide vom gleichen reden. ich glaube ein in fhem integrierter presenced der nicht gekillt wird so lange es nicht unumgänglich ist hat viele vorteile und wäre für features wie sofort reagieren und rssi werte sogar unabdingbar.

eine funktion wie du sie dir vorstellst habe ich in der sandbox idee schon gebaut. ich komme aber gerade nicht dazu das fertig zu machen. der generische fall ist aber deutlich komplizierter als es auf den ersten blick ausschaut bzw. hat viel mehr randbedingungen als das was wir hier gerade brauchen.

der dritte vorteil das rudi BlockingCall nicht wirklich mag und lieber per readFn und Parse/Dispatch arbeitet wäre damit automatisch gegeben.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 26 November 2014, 08:54:53
@steffen: hast du die --duplicates option auch im modul aktiv? siehst du das der gestartete prozess diese option hat?

das modul sollte die abgehackten teile automatisch zusammenbauen. das sollte da eigentlich nur so kurz stehen das es gar nicht zu sehen ist.

hast du zusätzlich zur eingebauten hardware noch einen anderen dingle angesteckt?

wenn du ein list auf das PRESENCED device machst solltest du bei den internals sehen das der timestamps hinter der mac im gleichen takt wie die meldungen hoch gezählt werden.

gruß
  andre 
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 26 November 2014, 09:29:05
Zitat von: Steffen am 26 November 2014, 08:45:03
Der Cubi hat ja ein eigenes Bluetooth modul vielleicht stört das ja auch?

Das würde ich mal abschalten, bzw. geht Dein Modul evtl. auf hci0 und das ist das eingebaute Modul?
Dann hast Du wahrscheinlich noch ein hci1, welches du für das Modul benutzen musst.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 26 November 2014, 12:35:52
Zitat von: justme1968 am 26 November 2014, 08:54:53
@steffen: hast du die --duplicates option auch im modul aktiv? siehst du das der gestartete prozess diese option hat?

das modul sollte die abgehackten teile automatisch zusammenbauen. das sollte da eigentlich nur so kurz stehen das es gar nicht zu sehen ist.

hast du zusätzlich zur eingebauten hardware noch einen anderen dingle angesteckt?

wenn du ein list auf das PRESENCED device machst solltest du bei den internals sehen das der timestamps hinter der mac im gleichen takt wie die meldungen hoch gezählt werden.

gruß
  andre

Hallo!

Also bin zum Test nochmal mit den gleichem "Einzigen" BlueStick auf meinem Pi umgezogen um Fehler Quellen vom Cubi aus zu schließen,
aber auch hier auf dem Pi das gleiche "absent<>present"!

Ich stelle hier jetzt einmal alle Informationen zusammen, vielleicht sieht ja jemand wo bestimmt der "kleinste Fehler aller Zeiten" ;) ist...

auf pi fhem "list pd"

Internals:
   CMD        sudo -u root /usr/bin/hcitool lescan --duplicates
   CONNECTS   1
   DEF        sudo -u root /usr/bin/hcitool lescan --duplicates
   FD         5
   LAST_CONNECT 2014-11-26 08:59:16
   NAME       pd
   NR         20
   NTFY_ORDER 50-pd
   PARTIAL    D0:FF:50:7A:24:08
   PID        2194
   STATE      Connected
   TYPE       PRESENCED
   Helper:
     Devices:
       D0:FF:50:7A:24:08 1417000337
       LE         1416988863
Attributes:


auf pi list Blue:

Internals:
   ADDRESS    D0:FF:50:7A:24:08
   DEF        local-PRESENCED D0:FF:50:7A:24:08
   MODE       local-PRESENCED
   NAME       Blue
   NR         21
   STATE      present
   TIMEOUT_NORMAL 30
   TIMEOUT_PRESENT 30
   TYPE       PRESENCE
   Readings:
     2014-11-26 12:34:29   state           present
   Helper:
Attributes:

Internals:
   ADDRESS    D0:FF:50:7A:24:08
   DEF        local-PRESENCED D0:FF:50:7A:24:08
   MODE       local-PRESENCED
   NAME       Blue
   NR         21
   STATE      absent
   TIMEOUT_NORMAL 30
   TIMEOUT_PRESENT 30
   TYPE       PRESENCE
   Readings:
     2014-11-26 12:34:59   state           absent
   Helper:
Attributes:


fhem cfg:

define pd PRESENCED sudo -u root /usr/bin/hcitool lescan --duplicates
define Blue PRESENCE local-PRESENCED D0:FF:50:7A:24:08


modul 73_Presenced.pm:

# $Id: 73_PRESENCED.pm 4756 2014-01-27 21:15:50Z justme1968 $

my $cmd = join( " ", @a[2..@a-1]);
  $cmd = "sudo -u root /usr/bin/hcitool lescan --duplicates" if( !$cmd );


auf pi shell:

root@raspberrypi:~# ps -ax
warning: bad ps syntax, perhaps a bogus '-'?
See http://gitorious.org/procps/procps/blobs/master/Documentation/FAQ
  PID TTY      STAT   TIME COMMAND
    1 ?        Ss     0:02 init [2]
    2 ?        S      0:00 [kthreadd]
    3 ?        S      0:05 [ksoftirqd/0]
    4 ?        S      0:00 [kworker/0:0]
    5 ?        S<     0:00 [kworker/0:0H]
    6 ?        S      0:01 [kworker/u2:0]
    7 ?        S      0:02 [rcu_preempt]
    8 ?        S      0:00 [rcu_bh]
    9 ?        S      0:00 [rcu_sched]
   10 ?        S<     0:00 [khelper]
   11 ?        S      0:00 [kdevtmpfs]
   12 ?        S<     0:00 [netns]
   13 ?        S<     0:00 [writeback]
   14 ?        S<     0:00 [bioset]
   15 ?        S<     0:00 [crypto]
   16 ?        S<     0:00 [kblockd]
   17 ?        S      0:00 [khubd]
   18 ?        S      0:00 [kworker/0:1]
   19 ?        S<     0:00 [rpciod]
   20 ?        S      0:00 [khungtaskd]
   21 ?        S      0:00 [kswapd0]
   22 ?        S      0:00 [fsnotify_mark]
   23 ?        S<     0:00 [nfsiod]
   29 ?        S<     0:00 [kthrotld]
   30 ?        S<     0:00 [VCHIQ-0]
   31 ?        S<     0:00 [VCHIQr-0]
   32 ?        S<     0:00 [VCHIQs-0]
   33 ?        S<     0:00 [iscsi_eh]
   34 ?        S<     0:00 [dwc_otg]
   35 ?        S<     0:00 [DWC Notificatio]
   37 ?        S<     0:00 [deferwq]
   38 ?        S      0:00 [kworker/u2:2]
   39 ?        S      2:54 [mmcqd/0]
   40 ?        S      0:10 [jbd2/mmcblk0p2-]
   41 ?        S<     0:00 [ext4-rsv-conver]
  156 ?        Ss     0:00 udevd --daemon
  296 ?        S      0:00 udevd --daemon
  308 ?        S      0:00 udevd --daemon
  320 ?        S<     0:00 [kworker/u3:0]
  322 ?        S<     0:00 [hci0]
  323 ?        S<     0:00 [hci0]
  325 ?        S<     0:02 [kworker/u3:2]
1582 ?        S      0:08 /usr/sbin/ifplugd -i eth0 -q -f -u0 -d10 -w -I
1618 ?        S      0:01 /usr/sbin/ifplugd -i lo -q -f -u0 -d10 -w -I
1899 ?        Ss     0:00 dhclient -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0
1953 ?        Sl     0:00 /usr/sbin/rsyslogd -c5
2000 ?        Ss     0:00 /usr/sbin/cron
2030 ?        Ss     0:06 /usr/bin/dbus-daemon --system
2031 ?        S      0:13 perl fhem.pl fhem.cfg
2036 ?        Ss     0:00 startpar -f -- fhem
2057 ?        Ss     0:58 /usr/sbin/bluetoothd
2066 ?        S<     0:00 [krfcommd]
2110 ?        Ss     0:02 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -c /var/lib/ntp/ntp.conf.dhcp -u 102:104
2146 ?        Ss     0:00 /usr/sbin/sshd
2174 ?        Ss     0:00 /usr/sbin/thd --daemon --triggers /etc/triggerhappy/triggers.d/ --socket /var/run/thd.socket --pidfile /var/run/thd.pid --user nob
2185 tty1     Ss+    0:00 /sbin/getty --noclear 38400 tty1
2186 tty2     Ss+    0:00 /sbin/getty 38400 tty2
2187 tty3     Ss+    0:00 /sbin/getty 38400 tty3
2188 tty4     Ss+    0:00 /sbin/getty 38400 tty4
2189 tty5     Ss+    0:00 /sbin/getty 38400 tty5
2190 tty6     Ss+    0:00 /sbin/getty 38400 tty6
2191 ttyAMA0  Ss+    0:00 /sbin/getty -L ttyAMA0 115200 vt100
2194 ?        S      0:00 sudo -u root /usr/bin/hcitool lescan --duplicates
2195 ?        S      0:01 /usr/bin/hcitool lescan --duplicates
2217 ?        Ss     0:00 sshd: root@pts/0
2221 pts/0    Ss     0:00 -bash
2242 pts/0    R+     0:00 ps -ax


lescan ca.2min

root@raspberrypi:~# sudo hcitool lescan
LE Scan ...
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408



lescan --duplicates ca.30sek.

^Croot@raspberrypi:~# sudo hcitool lescan --duplicates
LE Scan ...
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408
D0:FF:50:7A:24:08 (unknown)
D0:FF:50:7A:24:08 Kensington Eureka 2408


Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus Bloch am 27 November 2014, 21:32:52
Zitat von: justme1968 am 26 November 2014, 08:48:10
ich glaube du hast ein paar dinge in meinem post übersehen :)

was ich versucht habe zu beschreiben ist unter anderem die lösung für das problem das sich der usb dongle nur ein mal mit lescan öffnen lässt. es gibt eine zentrale instanz die das starten und stoppen und das umschalten zwischen den scan und lescan erledigt (so lange das noch nötig ist. siehe die idee mit dem hci socket). diese zentrale Instanz habe ich mal LESCAN genannt. das ist erst mal völlig unabhängig davon ob das ein eigenes modul oder nur ein bestimmter mode von PRESENCE ist. das wichtige ist diese instanz sollte nur ein mal laufen und das so permanent wie möglich. ohne kill wenn es irgendwie geht. ob man es den benutzer von extra definieren lässt (das ist vermutlich spätestens dann nötig wenn er tatsächlich mehr als einen dongle ansprechen will) oder ob man dafür sorgt das es automatisch angelegt wird sobald es ein device gibt das ihn benötigt ist ist vielleicht geschmacksache. ich glaube aber das die anwender durchaus damit klar kommen wenn man es erklärt. die trennung wäre wie bei jedem andere fhem rf modem: cul, hmlan, jeelink, hue bridge. es gibt ein zentrales device das die resource verwaltet und mehrere clients.

wenn die die resourcen verwaltung in die clients verschiebst ist der aufwand deutlich größer und du hast probleme weil die einzelnen clients unabhängig sind und auch unabhängige Intervalle haben. was willst du tun wenn ein PRESENCD device noch scannt aber der timeout in einem anderen abläuft und es jetzt eigentlich dran wäre? vor allem ist es im lescan gar nicht nötig etwas zu beenden wenn das scannen ein einziges mal zentral gemacht wird und sich die clients nur bedienen. die möglichkeit ganz ohne timeout und pollen sofort auf  ein device zu reagieren hast du auch nur mit einem scann der permanent läuft.

Angenommen wir würden das so umsetzen, da haben wir dann für 2 verschiedene Bluetooth Geräteklassen 2 völlig unterschiedliche Konzepte:

- Handys: werden durch direkte Definition einer PRESENCE Instanz überwacht. Alle Definitionen verwenden einen BT-Dongle gemeinesam. Pro Handy eine einzige PRESENCE Definition, die on-the-fly sofort out-of-the-box läuft (sorry für das Bullshit-Bingo ;) )
- BT-Tags: benötigen eine zentrale Instanz, die mit dem BT-Dongle kommuniziert (über "hcitool lescan"). Es werden alle Devices (egal ob es die eigenen sind, oder nicht) sofort angelegt, sobald sie vom hcitool ausgespuckt werden (Dispatch-Fn). Aufgrund dessen, dass der BT-Dongle aber dauerhaft in Benutzung ist, können keine normalen Handys mehr überwacht werden, da der hcitool Prozess dauerhaft den Dongle belegt. Der User kann den Dongle auch nicht für andere Sachen verwenden, oder auf der Kommandozeile mal eben was testen.

Beides sind zwei völlig unterschiedliche Konzepte, die auch für den User gegenüber dem gewohnten sich stark unterscheiden. Ich möchte einfach vermeiden, dass wir für ein und die selbe Sache (Anwesenheitserkennung via Bluetooth) hier zwei völlig verschiedene Konzepte fahren, die sich nur darin unterscheiden, ob es BT Low-Energy ist, oder normales Bluetooth. Ich halte es nicht für richtig hier für so etwas einen völlig anderen Ansatz zu wählen, als bisher, nur weil das hcitool so nicht immer gekillt werden muss. Das ist dem User doch völlig egal.

Zitat von: justme1968 am 26 November 2014, 08:48:10
achtung: das mit dem resourcenverbrauch stimmt so nicht. hier ist ein non blocking shell aufruf nicht prinzipiell anders als ein BlockingCall. es wird genau so geforkt. es ist nur mehr versteckt. es gibt auch die gleichen potentiellen probleme (deshalb ist es eigentlich sinnvoll für die endgültige implementierung nicht einfach das perl open zu verwenden sondern es selber lösen um direkt nach dem fork erst mal wie gehabt alles zu schliessen. siehe sanbox modul). die shell ist danach ein eigener prozess der parallel läuft. der unterschied liegt nur in der kommunikation mit diesem geforkten prozess. im BlockingCall fall wird sie antwort gesammelt und nach beenden ein mal zurück gegeben. im diesem fall wird die antwort kontinuierlich direkt zurück gegeben. wenn du immer wieder killst verschenkst die genau diesen vorteil das kontinuierlich etwas läuft.

die zwei ersten vorteile die du anführst gibt es also garnicht.

Diese Aussage kann ich leider nicht nachvollziehen. Wo wird denn bitte der FHEM Hauptprozess geforkt, wenn du einen Shell-Befehl so ausführst, wie du es Anfangs vorgeschlagen hast (mit open öffnen und in $selectlist hängen, usw.) Ich persönlich finde diese Variante bedeutend sauberer (wenn sie als Modulfunktion zur Verfügung steht), als einen BlockingCall, wo anschließend alle FD's geschlossen werden müssen und bei einem shutdown noch die Child-Prozesse geprüft werden müssen.

Zitat von: justme1968 am 26 November 2014, 08:48:10
lass uns das bitte so weit diskutieren bis das konzept klar ist und wir beide vom gleichen reden. ich glaube ein in fhem integrierter presenced der nicht gekillt wird so lange es nicht unumgänglich ist hat viele vorteile und wäre für features wie sofort reagieren und rssi werte sogar unabdingbar.
Da bin ich auch völlig bei Dir. Die Vorteile von presenced der nicht gekillt wird bringt aber beim Thema rssi ein Problem mit sich. Den RSSI bekommst durch den Aufruf von "hcitool lecc/lecup/ledc". Genauso auch all die verschiedenen LE Kommandos für die Konfiguration der Whitelist usw. Diese Kommandos kannst du aber nicht ausführen, weil ja dein PRESENCED Modul den BT-Dongle blockiert. Wie willst du also den RSSI auslesen, wenn dein "hcitool lescan" dauerhaft läuft.

Zitat von: justme1968 am 26 November 2014, 08:48:10
eine funktion wie du sie dir vorstellst habe ich in der sandbox idee schon gebaut. ich komme aber gerade nicht dazu das fertig zu machen. der generische fall ist aber deutlich komplizierter als es auf den ersten blick ausschaut bzw. hat viel mehr randbedingungen als das was wir hier gerade brauchen.

Das hört sich doch super an. Das ganze muss doch jetzt auch nicht sofort all-umfassend sein. Ich würde mich erstmal auf die offensichtlichen Funktionalitäten beschränken (non-blocking execution mit selectlist, optionaler Kill-Timer, evtl. ein Regexp Filter um den Output vorzufiltern, bevor er an die Parse-Funktion übergeben wird.

Tut mir leid, wenn ich nicht jeden Tag antworten kann. Ich lese aber zumindest mit.

Viele Grüße

Markus
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 27 November 2014, 22:08:13
die idee ist nicht beide geräteklassen unterschiedlich zu behandeln sondern den lescan nicht in das alte konzept zu zwängen sondern statt dessen beides mit dem neuen konzept zu machen.

es soll auch hinterher alles out of the box laufen und im einfachen fall muss und soll der anwender nichts von der geänderten infrastruktur dahinter erkennen. erst

ich glaube aber das man den zugriff auf den dongle nicht völlig verstecken kann. zumindest nicht so lange man irgendetwas forkt. wenn zum beispiel gerade ein 'altes' presence device den dongle belegt hat kann man auf der kommando zeile auch nicht einfach ein lescan starten um etwas zu testen. man müsste jedes einzelne PRESENCE device das bluetooth verwendet deaktivieren. wenn es eine zentrale stelle gibt muss man nur an dieser einen stelle etwas deaktivieren.

diese eine zentrale stelle kann je nach bedarf nur den lescan dauerhaft laufen haben (mit den neuen features wie rssi und sofrtigem melden) oder nur den normalen scan laufen lassen oder dazwischen umschalten oder auch zwei oder mehr dongle ansprechen. alles an einer stelle zentral. für die anwender soll sich nichts in der einfachen bedienung ändern. es gibt nur mehr features.

es soll auch nicht jedes device automatisch angelegt werden. mit der zentralen stelle gibt es aber die möglichkeit dazu das halb automatisch zu tun. z.b. per liste der devices die sichtbar sind aus der man dann auswählen kann. wenn es für den anwender so einfach wie möglich sein soll ist auch das rausfinden der mac adresse eine hürde die man damit umgehen kann. ein 'show devices' und 'create xxx' würde hier schon weiter helfen.

also nicht zwei konzepte und auch nicht die le devices in das alte konzept pressen sondern beides gemeinsam in einem neuen konzept verbinden.

abgesehen davonist es glaube ich sinnvoll ganz auf den scan zu verzichten und das hci socket direkt von fhem aus anzusprechen. eventuell kann man dann sogar beide device typen mit einem dongle erschlagen.


der fhem hauptprozess wird immer dann geforkt wenn auf irgend eine art und weise ein anderes binary gestartet wird. auf systemebene gibt es keinen prinzipiellen unterschied zwischen BlockingCall, einem qx/system/... aufruf, einem open aufruf mit io redirection auf ein binary oder der der sandbox implementierung. es ist im kern immer ein aufruf von fork mit anschliessendem exec. das ist (von einer optimierung) abgesehen immer der weg einen anderen prozess zu starten. unterschiede gibt es nur in der art des io zwischen parent und child. der resourcenverbrauch ist immer identisch. vorher ein prozess danach zwei. bei allen arten muss man an irgendeiner stelle alle nicht benötigten filedescriptoren schliessen sond gibt es die bekannten probleme. das einzige das tatsächlich einfluss auf die verbrauchten resourcen hat ist so wenig wie möglich zu forken. wenn es geht nur ein mal und mit dem child 'live' zu komunizieren und nicht wie bei BlockingCall erst nach dem beenden.


nach meinem stand ist es möglich die rssi werte gleichzeitig mti dem lescan zu bestimmen. es werden nur zwei filedescriptoren in die select list gehängt und beide bedient.

auch hier ist es eventuell direkter das hci socket zu verwenden und direkt alles an der quelle abzuholen. ich vermute das dann auch der le devices und konventionelle devices gleichzeitig zu erkennen sind.


ich glaube das der selectlist teil nicht die eigentliche herausforderung ist. sondern das konzept 'alte' und neue devices unter einen hut zu bringen. so weit es nur geht ohne etwas immer wieder zu killen. der selectlist und readFn teil ist ein ist wirklich das kleinste dabei.

das ganze in zwei logische komponenten aufzuteilen die per dispatch/parse miteinander kommunizieren hat wirklich vorteile. nicht zuletzt die möglichkeit die teile auch auf unterschiedlichen rechner zu verteilen. und man kann das einbauen ohne den nachteil von zwei modulen an den endanwender weiterzugeben.

ich würde gerne für die weitere diskussion ein paar dinge ausprobieren. dazu gehört der wechselweise aufruf der beiden scan arten in einer zentralen instanz, das gleichzeitige auslesen der rssi werte und ob es mit dem hci socket möglich ist beide device typen gleichzeitig zu sehen. ich muss nur etwas umbauen und einen hub in betrieb nehmen und das estimote ibeacon finden. schon peinlich ein beacon nicht zu finden...

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus Bloch am 27 November 2014, 23:51:21
Nunja, das ganze würde funktionieren, wenn man denke ich versucht, direkt das BT Device anzusprechen, ohne hcitool Kommando, oder evtl. mit einem Perl Modul, was sowas anbietet.

Meiner Erfahrung nach ist es aber nicht möglich einen hcitool Befehl laufen zu lassen und während der läuft einen weiteren hcitool Befehl zu starten. In einem solchen Fall kommt dann keinerlei Ausgabe, da es sich ja um serielle Kommunikation mit dem Dongle handelt.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fh168 am 30 November 2014, 18:11:09
Welchen BT-Stick verwendet ihr? Kann man das eingebaute BT vom Cubietruck 3 nehmen?

LG
/robin
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: volschin am 06 Dezember 2014, 09:10:44
Zitat von: Markus Bloch am 27 November 2014, 23:51:21
Nunja, das ganze würde funktionieren, wenn man denke ich versucht, direkt das BT Device anzusprechen, ohne hcitool Kommando, oder evtl. mit einem Perl Modul, was sowas anbietet.
Würde da
sudo apt-get install libnet-bluetooth-perl
als Basis helfen?

Gruß
Veit
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus Bloch am 06 Dezember 2014, 14:24:39
Prinzipiell schon, allerdings funktionieren damit nur die alten bisherigen BT-Geräte (wie Handy) und keine Low-Energy-Tags.

Gruß
Markus
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: lukasbastelpeter am 07 Dezember 2014, 21:46:28
Sooooo!

Da bin ich wieder, habe jetzt als Prämie ein "Chipollo" oder so ähnlich, der Tag hat einen Temperatursensor integriert, ganz nett...
Meine Tiles sind immer noch nicht da, und die PebbleBees funktionieren tüchtig per App.

Ich habe jetzt vorübergehend bis "Ihr Euch geeinigt habt ;)" Folgende Lösung um mehrere Tags zu prüfen:
Ich habe das Skript vom Beginn des Threads genommen und kopiere mir die Ergebnisse des Scans in so viele Dateien wie es Tags gibt.
Es gibt ein "Initialskript" und mehrere "Clients".
Das erste Skript macht den Scan, und prüft die Ausgabe auf eine Adresse, außerdem erstellt es noch X andere Logs.
Dann habe ich weitere Skripte die auf diese Logs zugreifen und nach einer anderen adresse suchen.

Habe Maria und Lukas als Tags:
Presence ebenfalls wie beschrieben, allerdings greift jedes PRESENCE auf ein anderes Skript zu.
define LukasTag PRESENCE shellscript "/opt/fhem/lescan[&entsprechend...clone].sh" 60 60

Funktioniert so nicht.


Ich denke da ich die Scandauer relativ hoch wählen musste um zuverlässige Ergebnisse zu bekommen, und die 60 Sekunden Intervalle die Skripte ungünstig Triggern.
Könnte mir hier jemand mal auf die Sprünge helfen? :D

Schönen Abend noch!


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 12 Dezember 2014, 19:19:15
Hallo!

Heute kam endlich meine bestellten pebblebee, gleich versucht in Fhem ein zu binden mit den gleichen daten wie schon in Post "159" und hatte mich schon sehr gefreut, doch leider wieder wurde ich enttäuscht.
Denn immer noch die gleichen Probleme...kurz present dann wieder ne weile absent mit und ohne "-- duplicates"!

Hier nochmal kurz ein paar infos:


define pd PRESENCED sudo -u root /usr/bin/hcitool lescan --duplicates



define Blue PRESENCE local-PRESENCED 0E:0A:14:09:12:88



LE Scan ...
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
(mehr kommt dann auch nicht)



root@cubie:~# hcitool lescan --duplicates
LE Scan ...
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
(hier kommen die Meldungen im Sekunden takt)


Bin wirklich sehr enttäuscht, hatte mich echt darauf gefreut das es mit den pebblebee besser klappt!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: lukasbastelpeter am 13 Dezember 2014, 08:58:57
Hast du die PebbleBees aus dem "Sleepmode" geholt? also gedrückt bis es piept? Mal mit der App versucht? Bei mir siehts folgendermaßen aus...
--duplicates filtert doch doppeltes raus?
lass das mal weg und gucke dir
hcitool lescan an...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 13 Dezember 2014, 11:16:17
Also ich habe mitlerweile vier PebbelBees zuverlässig am laufen.
Nutze das modifizierte PRESENCE Modul in Verbindung mit PRESENCED.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 13 Dezember 2014, 16:39:21
Hallo!

Ja habe auch schon ohne duplicates versucht aber da bekomme ich dann gar kein present mehr.
Mit der app habe ich dann auch gleich versucht und die verbindung zu app hat sofort funktioniert,
denn da musste ich ihn eh aus dem sleep modus holen.

Das ist ja das was ich ebend nicht verstehe, weil es die gleichen Symtome zeigt wie bei bei meinem anderen Bluetag(kensigton).

Ich werde mal nochmal versuchen auf einen pi und auf einem frisch auf gesetzten cubitruck.

Würde mich freuen wenn ihr mir bitte mal eure systeme und config mitteilt, dann könnte ich es dann auch mal in diese richtung testen, denn irgendwo muss doch der feine kleine unterschied sein?!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 13 Dezember 2014, 16:41:27
Bin gerade unterwegs, werde dir heute Abend oder Morgen mal genau meine Konfig zusamme suchen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 13 Dezember 2014, 16:43:02
Zitat von: Mitch am 13 Dezember 2014, 16:41:27
Bin gerade unterwegs, werde dir heute Abend oder Morgen mal genau meine Konfig zusamme suchen

Vielen Vielen dank...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 13 Dezember 2014, 19:45:31
So, hier mal die Eckdaten meines Systems:

fhem läuft in der aktuellsten Version (fhem.pl 7124 2014-12-05 07:10:20Z) auf einem ATOM Nettop mit Ubuntu 14.04.1 LTS Server.

BT Tag ist folgender: CSL - USB nano Bluetooth-Adapter V4.0 mit LED, Class 4.0 Technologie, neuester Standard, Plug & Play, Windows 7 + Windows 8 + Windows 8.1

fhem user ist in der Gruppe "sudo" und darf Befehle ohne Passwort ausführen (fhem    ALL = NOPASSWD:ALL in die Datei /etc/sudoers eintragen).

Module PRESENCE und PRESENCED auch aus dem Thread hier.
PRESENCED Modul ist vom fhem Update ausgenommen.
# $Id: 73_PRESENCE.pm 6950 2014-11-11 21:09:42Z markusbloch $
# $Id: 73_PRESENCED.pm 4756 2014-01-27 21:15:50Z justme1968 $


Der Rest sind noch ein paar Definitionen in fhem:

define pd PRESENCED /usr/bin/hcitool lescan

und dann die Tag (hier mal einer als Beispiel):

define PebbleBee PRESENCE local-PRESENCED 0E:0A:14:09:9F:1C 60 120

Das wars  ;)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 14 Dezember 2014, 08:09:52
Zitat von: Mitch am 13 Dezember 2014, 19:45:31
So, hier mal die Eckdaten meines Systems:

fhem läuft in der aktuellsten Version (fhem.pl 7124 2014-12-05 07:10:20Z) auf einem ATOM Nettop mit Ubuntu 14.04.1 LTS Server.

BT Tag ist folgender: CSL - USB nano Bluetooth-Adapter V4.0 mit LED, Class 4.0 Technologie, neuester Standard, Plug & Play, Windows 7 + Windows 8 + Windows 8.1

fhem user ist in der Gruppe "sudo" und darf Befehle ohne Passwort ausführen (fhem    ALL = NOPASSWD:ALL in die Datei /etc/sudoers eintragen).

Module PRESENCE und PRESENCED auch aus dem Thread hier.
PRESENCED Modul ist vom fhem Update ausgenommen.
# $Id: 73_PRESENCE.pm 6950 2014-11-11 21:09:42Z markusbloch $
# $Id: 73_PRESENCED.pm 4756 2014-01-27 21:15:50Z justme1968 $


Der Rest sind noch ein paar Definitionen in fhem:

define pd PRESENCED /usr/bin/hcitool lescan

und dann die Tag (hier mal einer als Beispiel):

define PebbleBee PRESENCE local-PRESENCED 0E:0A:14:09:9F:1C 60 120

Das wars  ;)

Guten Morgen!

Vielen dank für deine schnelle Info, ich werde es gleich mal mit der 14.04 versuchen.

Kannst du mir bitte noch sagen welche Bluetooth Version du installiert hast?

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 14 Dezember 2014, 09:35:09
Hab die 4.101
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 14 Dezember 2014, 10:07:04
Zitat von: Mitch am 14 Dezember 2014, 09:35:09
Hab die 4.101

Danke könntest du mir bitte auch nochmal deine lescan output posten?

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 15 Dezember 2014, 11:14:33
Naja, sieht aus wie immer und bei Dir  ;)

0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 15 Dezember 2014, 15:23:29
Zitat von: Mitch am 15 Dezember 2014, 11:14:33
Naja, sieht aus wie immer und bei Dir  ;)

0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee
47:4E:97:5E:B5:C3 (unknown)
47:4E:97:5E:B5:C3 (unknown)
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7F:DE (unknown)
0E:0A:14:09:7F:DE PebbleBee
0E:0A:14:09:7E:22 (unknown)
0E:0A:14:09:7E:22 PebbleBee


Hallo!

Ja das ist ja das Problem, denn bei mir nicht ;) :(!

Habe nun zum Test auf einem alten x86 Rechner Ubuntu 14.04.1 LTS Server installiert und eine frische Fhem installation,
aber auch hier leider genau das gleiche Ergebnis wie bei bei Cubitruck!

Jetzt glaube ich kann es ja nur noch an dem Bluetooth Stick liegen, sonst müsste ich ja die gleichen Ergebnisse wie du erhalten.

Habe mir jetzt mal den gleichen Bluetooth Stick wie du hast bestellt und dann bin ich ja mal auf das Ergebnis gespannt!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: lukasbastelpeter am 15 Dezember 2014, 23:34:29
Ja, alles andere scheint ja dann so gut wie ausgeschlossen.
Hat jemand eine Idee/Homepage wo ich die anderen "Adressen" identifizieren kann? Also eine Datenbank in der die ersten paar Stellen zumindest den Hersteller angeben?

Ich habe ca. 10 andere Devices, die ich aber gar nicht identifizieren kann?! Wäre ziemlich cool wenn ich da eventuell noch ein paar nice to have Funktionen implementieren könnte! :D
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 16 Dezember 2014, 10:33:40
Wenn es sich um eine "public address" handelt, wirst du hier fündig:
http://standards.ieee.org/develop/regauth/oui/public.html

Bei allen anderen Addressarten von BLE kannst du keine (einfachen) Rückschlüsse auf den Hersteller ziehen.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 16 Dezember 2014, 10:44:59
@Steffen:
Wenn ich dich richtig verstehe, läuft dein hcitool lescan auf der Console ohne Probleme. Nur wenn es über FHEM gestartet wird, hört er sehr schnell wieder auf Ergebnisse zu liefern.
Falls dem so ist, kannst du meiner Meinung nach HW-Probleme oder Bluetoothstack-Versionsprobleme ausschließen. Ein neuer Bluetooth-Stick wird die gleichen Resultate liefern.

Entweder läuft bei der FHEM-Anbindung von hcitool lescan etwas schief oder ein anderer Service funkt dazwischen oder ein externes Gerät (Handy) verbindet sich mit dem Bluetooth-Tag.

Laß mal einen hcidump mitlaufen und kontrollier nochmal, ob und wie lange hcitool läuft, wenn es über fhem gestartet wird.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 16 Dezember 2014, 10:54:30
Zitat von: gero am 16 Dezember 2014, 10:44:59
@Steffen:
Wenn ich dich richtig verstehe, läuft dein hcitool lescan auf der Console ohne Probleme. Nur wenn es über FHEM gestartet wird, hört er sehr schnell wieder auf Ergebnisse zu liefern.
Falls dem so ist, kannst du meiner Meinung nach HW-Probleme oder Bluetoothstack-Versionsprobleme ausschließen. Ein neuer Bluetooth-Stick wird die gleichen Resultate liefern.

Entweder läuft bei der FHEM-Anbindung von hcitool lescan etwas schief oder ein anderer Service funkt dazwischen oder ein externes Gerät (Handy) verbindet sich mit dem Bluetooth-Tag.

Laß mal einen hcidump mitlaufen und kontrollier nochmal, ob und wie lange hcitool läuft, wenn es über fhem gestartet wird.

Gruß,
Gero

Nein auch über die Konsole ist das gleiche, denn wenn ich ein "hcitool lescan" ausführe bekomme ich nur eine einzige Antwort vom Bluetag und nicht mehrere wie bei den anderen hier und deswegen glaube liegt es am Bluetooth stick, oder sehe ich das Falsch?

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 16 Dezember 2014, 11:05:57
Zitat von: Steffen am 16 Dezember 2014, 10:54:30
Nein auch über die Konsole ist das gleiche, denn wenn ich ein "hcitool lescan" ausführe bekomme ich nur eine einzige Antwort vom Bluetag und nicht mehrere wie bei den anderen hier und deswegen glaube liegt es am Bluetooth stick, oder sehe ich das Falsch?

Warum sollte der Bluetooth-Stick zuerst funktionieren und dann nicht mehr? Ich halte das für mehr als unwahrscheinlich.
Irgendetwas funkt dir dazwischen.
- Schalte alle Handys in Reichweite ab (oder deaktiviere zumindest Bluetooth)
- Deaktiviere alle Bluetooth Services auf deinem System. Die hci Zugriffe benötigen keinen laufenden bluetooth daemon. Evtl. ist ein hciconfig hci0 up notwendig. Ich weiß nicht, ob das im fhem Modul enthalten ist.
- Laß ein hcidump mitlaufen.
- Kontrollier zwischendurch mit hciconfig -a den Zustand deines Bluetooth-Sticks.

Gruß,
Gero




Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 17 Dezember 2014, 19:27:13
Zitat von: gero am 16 Dezember 2014, 11:05:57
Warum sollte der Bluetooth-Stick zuerst funktionieren und dann nicht mehr? Ich halte das für mehr als unwahrscheinlich.
Irgendetwas funkt dir dazwischen.
- Schalte alle Handys in Reichweite ab (oder deaktiviere zumindest Bluetooth)
- Deaktiviere alle Bluetooth Services auf deinem System. Die hci Zugriffe benötigen keinen laufenden bluetooth daemon. Evtl. ist ein hciconfig hci0 up notwendig. Ich weiß nicht, ob das im fhem Modul enthalten ist.
- Laß ein hcidump mitlaufen.
- Kontrollier zwischendurch mit hciconfig -a den Zustand deines Bluetooth-Sticks.

Gruß,
Gero

Hallo!

Da hatte Gero wohl recht, denn der neuer Bluetooth stick hat leider keiner Veränderung gebracht :(

Obwohl ich dann auch nicht mehr weiss wo ich da noch ansetzten könnte, Bluetooth habe ich bei allem Geräten im Haushalt deaktiviert!

Hier nochmal meine Daten, vielleicht hat ja doch noch einer eine Idee...

System: Ubuntu Server 14.04.01(Auf x86  Test Rechner) (der gleiche Fehler tritt auch auf einem Cubitruck und Pi auf)
Fhem: Unverändert installiert aus "aptitude"
Bluetooth stick: CSL - USB nano Bluetooth-Adapter V4.0


root@UbuntunServer:/home/steffen# hciconfig -a
hci0:   Type: BR/EDR  Bus: USB
        BD Address: 00:1A:7D:DA:71:0C  ACL MTU: 310:10  SCO MTU: 64:8
        UP RUNNING PSCAN
        RX bytes:48738 acl:0 sco:0 events:1430 errors:0
        TX bytes:954 acl:0 sco:0 commands:38 errors:0
        Features: 0xff 0xff 0x8f 0xfe 0xdb 0xff 0x5b 0x87
        Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
        Link policy: RSWITCH HOLD SNIFF PARK
        Link mode: SLAVE ACCEPT
        Name: 'UbuntunServer-0'
        Class: 0x600100
        Service Classes: Audio, Telephony
        Device Class: Computer, Uncategorized
        HCI Version: 4.0 (0x6)  Revision: 0x22bb
        LMP Version: 4.0 (0x6)  Subversion: 0x22bb
        Manufacturer: Cambridge Silicon Radio (10)



root@UbuntunServer:/home/steffen# hcitool lescan
LE Scan ...
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee



Internals:
   CMD        /usr/bin/hcitool lescan
   CONNECTS   1
   DEF        /usr/bin/hcitool lescan
   FD         5
   LAST_CONNECT 2014-12-17 18:23:32
   NAME       pd
   NR         20
   NTFY_ORDER 50-pd
   PARTIAL
   PID        1019
   STATE      Connected
   TYPE       PRESENCED
   Helper:
     Devices:
       0E:0A:14:09:12:88 1418840043
       LE         1418837252
Attributes:



Internals:
   ADDRESS    0E:0A:14:09:12:88
   CHANGED
   DEF        local-PRESENCED 0E:0A:14:09:12:88
   MODE       local-PRESENCED
   NAME       PebbleBee
   NR         22
   STATE      absent
   TIMEOUT_NORMAL 30
   TIMEOUT_PRESENT 30
   TYPE       PRESENCE
   Readings:
     2014-12-17 19:17:07   state           absent
   Helper:
Attributes:
   event-on-change-reading state


"Hier scheint es ein wechsel Present-Absent in einem Abstand von ca.4 Minuten immer zu geben"
2014-12-17_19:34:57 PebbleBee absent
2014-12-17_19:35:27 PebbleBee absent
2014-12-17_19:35:57 PebbleBee present
2014-12-17_19:36:27 PebbleBee absent
2014-12-17_19:36:57 PebbleBee absent
2014-12-17_19:37:27 PebbleBee absent
2014-12-17_19:37:57 PebbleBee absent
2014-12-17_19:38:27 PebbleBee absent
2014-12-17_19:38:57 PebbleBee absent
2014-12-17_19:39:27 PebbleBee absent
2014-12-17_19:39:57 PebbleBee present
2014-12-17_19:40:28 PebbleBee absent
2014-12-17_19:40:58 PebbleBee absent
2014-12-17_19:41:28 PebbleBee absent
2014-12-17_19:41:58 PebbleBee absent
2014-12-17_19:42:28 PebbleBee absent
2014-12-17_19:42:58 PebbleBee absent
2014-12-17_19:43:28 PebbleBee absent
2014-12-17_19:43:58 PebbleBee absent
2014-12-17_19:44:28 PebbleBee present
2014-12-17_19:44:58 PebbleBee absent
2014-12-17_19:45:28 PebbleBee absent
2014-12-17_19:45:58 PebbleBee absent
2014-12-17_19:46:28 PebbleBee absent
2014-12-17_19:46:58 PebbleBee absent
2014-12-17_19:47:28 PebbleBee absent
2014-12-17_19:47:58 PebbleBee absent
2014-12-17_19:48:28 PebbleBee present
2014-12-17_19:48:58 PebbleBee absent


Es tut mir leid das ich hier den Chat hier mit meinem Problem so voll texte aber dieses Presence ist mir eigentlich wichtig,
hatte es vorher mit Handy gelöst aber das war nicht so zuverlässig weil oft Handy zu hause gelassen oder vergessen und deshalb dachte ich mit diesen Bluetag(wenn es denn Funktionieren würde) wäre die Beste Lösung!

Hoffe doch noch ein wenig auf euer Hilfe ;)

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 17 Dezember 2014, 20:03:24
Zitat von: gero am 16 Dezember 2014, 11:05:57
- Deaktiviere alle Bluetooth Services auf deinem System. Die hci Zugriffe benötigen keinen laufenden bluetooth daemon. Evtl. ist ein hciconfig hci0 up notwendig. Ich weiß nicht, ob das im fhem Modul enthalten ist.
- Laß ein hcidump mitlaufen.

hcidump -t gibt dir zusätzlich timestamps aus.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 17 Dezember 2014, 20:06:37
Zitat von: Steffen am 16 Dezember 2014, 10:54:30
Nein auch über die Konsole ist das gleiche, denn wenn ich ein "hcitool lescan" ausführe bekomme ich nur eine einzige Antwort vom Bluetag und nicht mehrere wie bei den anderen hier und deswegen glaube liegt es am Bluetooth stick, oder sehe ich das Falsch?

Mfg Steffen
In deinem letzten Posting sieht es aber anders aus. Der Tag scheint sich doch regelmäßig bei einem hcitool lescan auf der Konsole zu melden?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 17 Dezember 2014, 20:18:15
Hallo!

Ja die Meldungen kommen jetzt Regelmäßig mit dem neuen Bluetooth Stick, denn mit dem Alten Bluetooth stick kam nur eine Meldung dann nichts mehr deshalb dache ich ja es liegt an dem alten Stick!

Habe jetzt mal ein Dump erstellt und unten eingefügt, reicht das oder besser länger?!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 17 Dezember 2014, 21:04:36
Zitat von: Steffen am 17 Dezember 2014, 20:18:15
Hallo!

Ja die Meldungen kommen jetzt Regelmäßig mit dem neuen Bluetooth Stick, denn mit dem Alten Bluetooth stick kam nur eine Meldung dann nichts mehr deshalb dache ich ja es liegt an dem alten Stick!


Bis du dir sicher?
In folgendem Post von dir, sieht man deutlich, dass auch mit deinem alten Bluetooth-Stick die Meldungen der PebbleBee regelmäßig kamen!?

Zitat von: Steffen am 12 Dezember 2014, 19:19:15


root@cubie:~# hcitool lescan --duplicates
LE Scan ...
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
0E:0A:14:09:12:88 (unknown)
0E:0A:14:09:12:88 PebbleBee
(hier kommen die Meldungen im Sekunden takt)


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 17 Dezember 2014, 21:13:06
Zitat von: gero am 17 Dezember 2014, 21:04:36
Bis du dir sicher?
In folgendem Post von dir, sieht man deutlich, dass auch mit deinem alten Bluetooth-Stick die Meldungen der PebbleBee regelmäßig kamen!?

Ja das war mit der option "--duplicates" ohne diese Option kam nur eine einzige!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 17 Dezember 2014, 21:50:13
Der hcidump sieht gut aus. Also kann der Fehler eigentlich nur in PRESENCED oder PRESENCE liegen.
Entweder funktioniert das autoflush in PRESENCED nicht richtig, oder PRESENCE hat irgendein Problem.

Bei einem List auf PRESENCED bekommst du hinter der Bluetooth-Adresse einen Timestamp angezeigt:
Helper:
     Devices:
       0E:0A:14:09:12:88 1418840043


kontrolliert mal mit einem wiederholten list, ob sich dieser Timestamp regelmäßig ändert.
Oder bau mal in der Funktion PRESENCED_Read entsprechende Log-Nachrichten ein, die ausgeben, was wann gelesen wird und wie das Parsingergebnis aussieht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 17 Dezember 2014, 22:29:15
Zitat von: gero am 17 Dezember 2014, 21:50:13
Bei einem List auf PRESENCED bekommst du hinter der Bluetooth-Adresse einen Timestamp angezeigt:
Helper:
     Devices:
       0E:0A:14:09:12:88 1418840043


kontrolliert mal mit einem wiederholten list, ob sich dieser Timestamp regelmäßig ändert.

Habe es jetzt mehr mal mal die zeit gestoppt bis sich der timestamp("list pd") ändert und das waren immer um die 4 minuten.
So ziemlich genau in diesen Abständen habe ich auch das Present in Fhem.

Hat das was damit zu tun???

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 17 Dezember 2014, 23:32:37
Ja, das hat etwas damit zu tun, weil dieser Timestamp vom PRESENCE Modul verwendet wird.
In der 73_PRESENCED.pm in der Funktion PRESENCED_Read gibt es eine auskommentierte Log Zeile (zumindest in der Version die ich gerade gefunden habe). Nimm die Zeile mal rein,lass fhem eine Zeit lang auf loglevel 5 laufen und poste den Output.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 18 Dezember 2014, 06:25:47
Zitat von: gero am 17 Dezember 2014, 23:32:37
Ja, das hat etwas damit zu tun, weil dieser Timestamp vom PRESENCE Modul verwendet wird.
In der 73_PRESENCED.pm in der Funktion PRESENCED_Read gibt es eine auskommentierte Log Zeile (zumindest in der Version die ich gerade gefunden habe). Nimm die Zeile mal rein,lass fhem eine Zeit lang auf loglevel 5 laufen und poste den Output.

Gruß,
Gero

Guten Morgen!

Ok danke schon mal für deine Geduld und Hilfe,
habe die Änderung in Presenced vorgenommen und das Log(Verbose 5) mitlaufen lassen und als Anhang unten eingefügt!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 18 Dezember 2014, 06:48:08
Gute Morgen,

wie ich vermutet habe, bekommt PRESENCED nur ca. alle 4 Minuten einen Input. Das autoflush für die Pipe zum hcitool scheint nicht zu funktioneren. Nach 4 Minuten gibt es dann einen erzwungenen Flush, weil die Pipe überläuft. An dieser Stelle ist wohl besser Andre gefragt, Ich bin kein Perl-Experte und habe das Modul selbst nicht in Betrieb.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 18 Dezember 2014, 07:29:52
Meiner Meinung nach findet das Buffering im hcitool Prozess statt und kann nicht so einfach umgangen werden. Daher wird in den Scripten der hcitool Prozess regelmäßig gekillt und wieder neu gestartet.
Aber vielleicht findet Andre ja eine elegantere Lösung. Mich wundert nur, das es bei einigen zu funtkionieren scheint.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 18 Dezember 2014, 10:24:38
ich glaube nicht das die ausgabe vom hcitool gebuffert ist (dann würde es beim aufruf von hand ja auch nur häppchenweise ankommen) sondern die eingabe auf fhem seite. obwohl hier eigentlich auf nonblocking gestellt wird. warum das hier schief geht und bei anderen funktioniert verstehe ich gerade noch nicht.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 18 Dezember 2014, 10:42:13
Hallo!

Vielleicht könnte ja jeder hier der es im Betrieb hat und auch "@Mitch" mal seine Timestamp und sein log(verbose5) hier freundlicher weise posten,
dann könnte man vergleichen und vielleicht etwas erkennen?!

Ich nutze es ja gerade zum Testen auf einen Ubuntu Server, aber teste es heute Nachmittag nochmal auf meinem Cubitruck wie es sich da verhält!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 18 Dezember 2014, 12:18:28
ich habe noch  mal etwas nachgeforscht. das sysread das ich zum lesen verwende ist lat perl dokumentation nicht gebuffert. d.h. ich verstehe es noch weniger...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 18 Dezember 2014, 13:07:04
Zitat von: justme1968 am 18 Dezember 2014, 10:24:38
ich glaube nicht das die ausgabe vom hcitool gebuffert ist (dann würde es beim aufruf von hand ja auch nur häppchenweise ankommen) sondern die eingabe auf fhem seite. obwohl hier eigentlich auf nonblocking gestellt wird. warum das hier schief geht und bei anderen funktioniert verstehe ich gerade noch nicht.

gruss
  andre
Was durch ein printf im hcitool auf der Konsole ausgegeben wird, wird noch lange nicht durch eine stdout pipe weitergeleitet.
Deshalb gibt ein
hcitool lescan --duplicates | grep .
auch erst eine Ausgabe, wenn der Inputbuffer der Pipe voll ist.

Das Problem läßt sich umgehen, wenn man den Output von hcitool explizit auf linebufferd umstellt:
stdbuf -oL -eL hcitool lescan --duplicates | grep .
Achtung! Für den Befehl muß auch stdbuf als root ausgeführt werden.

@Steffen:
D.h. es solte funktionieren, wenn du den Befehl im PRESENCED wie folgt abänderst:
sudo stdbuf -oL -eL hcitool lescan --duplicates
Jetzt mußt du nur dafür sorgen, dass der sudo Aufruf ohne Passwort möglich ist.

Gruß,
Gero

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 18 Dezember 2014, 13:18:00
stdout ist unter linux normalerweise line buffered. d.h. jede komplette zeile kommt sofort auf der konsole an. für das hcitool ist es normalerweise völlig transparent ob es eine 'echte' konsole oder eine pipe in einen anderen prozess ist. stdout durch die shell aufgerufen ist letzen endes auch nichts anderes. der buffer auf der senden seite sollte durch die libs in beiden fällen gleich initialisiert werden.

Zitathcitool lescan --duplicates | grep .auch erst eine Ausgabe, wenn der Inputbuffer der Pipe voll ist.
wo hast du dieses verhalten gesehen? das ist auf keinem system das ich kenne so. hier wird direkt eine zeile ausgegeben wenn eine komplette zeile gefunden wurde.

das | grep 00am ende des befehls im PRESENCED ist nicht nötig.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 18 Dezember 2014, 13:33:34
Zitat von: justme1968 am 18 Dezember 2014, 13:18:00
stdout ist unter linux normalerweise line buffered. d.h. jede komplette zeile kommt sofort auf der konsole an. für das hcitool ist es normalerweise völlig transparent ob es eine 'echte' konsole oder eine pipe in einen anderen prozess ist. stdout durch die shell aufgerufen ist letzen endes auch nichts anderes. der buffer auf der senden seite sollte durch die libs in beiden fällen gleich initialisiert werden.
wo hast du dieses verhalten gesehen? das ist auf keinem system das ich kenne so. hier wird direkt eine zeile ausgegeben wenn eine komplette zeile gefunden wurde.
Ich habe es soeben auf einem Linuxrechner ausprobiert. Warum hcitool lescan ein anderes Ouputbuffer-Handling hat, weiß ich nicht. Es verwendet jedenfalls ein normales printf zur Ausgabe. Um das Problem genau zu verstehen müßte ich tiefer in den Code schauen.

Zitat von: justme1968 am 18 Dezember 2014, 13:18:00
das | grep 00am ende des befehls im PRESENCED ist nicht nötig.
Copy and Paste Fehler. Sorry! Ich habe es geändert.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 18 Dezember 2014, 14:18:37
Hier noch ein paar andere Ansätze und die Erklärung der Hintergründe:

http://unix.stackexchange.com/questions/25372/turn-off-buffering-in-pipe

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 18 Dezember 2014, 14:33:23
die erklärung würde tatsächlich für den aufruf aus PRESENCED greifen. aber nicht die unterschiede zwischen den systemen erklären. das die systeme bei denen es funktioniert so viel output liefern das der buffer immer voll läuft mag ich nicht glauben.

warum du das mit deinem | grep beispiel nachstellen kannst verstehe ich auch noch nicht. das kann ich hier nämlich nicht. versuch mal das folgende in ein test.sh script zu steckenecho 1;
sleep 1;
echo 2;
sleep 1;
echo 1;
sleep 1;
echo 2;
und dann mit sh test.sh | grep 1aufzurufen. du solltest die zeilen mit der 1 jeweils sofort sehen so wie es bei line buffered sein sollte.

gruss
  andre

ps: noch ein ganz anderer ansatz der zumindest erst mal das symptom behebt ist das intervall des PRESENCE devices gross genug zu machen. als > als die 4 minuten. für eine abwesenheit erkennung ist das eventuell noch gut genug. für anwesenheit nicht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 18 Dezember 2014, 19:22:12
Hallo!

Bis jetzt sieht es wirklich sehr gut aus mit dieser config:
sudo stdbuf -oL -eL hcitool lescan --duplicates
Endlich :D ;)...ich teste es gerade auch auf meinem Cubi und auch da bis jetzt alles wie es sein soll!
Ich werde es die Nacht noch beobachten aber hoffe das es endlich ein Ende der Geschichte ist.

Vielen dank nochmal an alle für eure Geduld und eure Hilfe!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 18 Dezember 2014, 20:01:03
Zitat von: justme1968 am 18 Dezember 2014, 14:33:23
warum du das mit deinem | grep beispiel nachstellen kannst verstehe ich auch noch nicht. das kann ich hier nämlich nicht. versuch mal das folgende in ein test.sh script zu steckenecho 1;
sleep 1;
echo 2;
sleep 1;
echo 1;
sleep 1;
echo 2;
und dann mit sh test.sh | grep 1aufzurufen. du solltest die zeilen mit der 1 jeweils sofort sehen so wie es bei line buffered sein sollte.

Hier ersteinmal die offizielle Seite zur libc, die das Verhalten bestätigt:
http://www.gnu.org/software/libc/manual/html_node/Buffering-Concepts.html

Ein Sleep scheint eine ähnliche Wirkung wie ein flush zu haben. Dazu habe ich noch keine genaue Erklärung gefunden.

Wenn du aber einen Prozess nimmst, der ein blocking read auf ein Device ausführt, kannst du das Verhalten bei dir bestimmt auch nachstellen.
Z.B.
od /dev/random | grep .
(Maus bewegen nicht vergessen)

Im Vergleich dazu:
stdbuf -oL od /dev/random | grep .

@Steffen: Schön dass es jetzt funktioniert.

Gruß,
Gero





Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: lukasbastelpeter am 19 Dezember 2014, 09:03:01
So, bei mir läuft es jetzt so lalala, eigentlich also ganz gut  ;D

Das Problem ist, dass der hcitool lescan ein Prozess ist, und kein terminierter Befehl, richtig?
Wenn man diesen nun "unendlich" laufen lässt kann man nicht weiter auf das Bluetooth-Interface des Systems zugreifen, da Bluetooth seriell implementiert ist?
Wird nicht langfristig alles was nun irgendwie noch kein LE unterstützt LE unterstützen? Also alles was mit dem Presence-Modul überwacht wird? Handys, Laptops usw?! Von daher wäre eine Zukunftsorientierte Lösung PRO "Einfach laufen lassen" ;D akzeptabel oder? Für alle anderen kann man doch eine Lösung finden mit einem weiteren USB-Stick o.Ä.?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 19 Dezember 2014, 19:47:57
Hallo!

So wollte mich nochmal melden und mich bedanken für die Hilfe und eure Geduld ;).

Es läuft jetzt alles wie es soll und bis jetzt keine Probleme,
sogar mit meinem Kensington Bluetag klappt es jetzt super.

Das einzige was mir aufgefallen ist das bei einem restart von Fhem Presenced "disconect" bleibt,
aber damit kann ich leben!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 19 Dezember 2014, 20:10:37
Zitat von: lukasbastelpeter am 19 Dezember 2014, 09:03:01
So, bei mir läuft es jetzt so lalala, eigentlich also ganz gut  ;D

Das Problem ist, dass der hcitool lescan ein Prozess ist, und kein terminierter Befehl, richtig?
Wenn man diesen nun "unendlich" laufen lässt kann man nicht weiter auf das Bluetooth-Interface des Systems zugreifen, da Bluetooth seriell implementiert ist?
Wird nicht langfristig alles was nun irgendwie noch kein LE unterstützt LE unterstützen? Also alles was mit dem Presence-Modul überwacht wird? Handys, Laptops usw?! Von daher wäre eine Zukunftsorientierte Lösung PRO "Einfach laufen lassen" ;D akzeptabel oder? Für alle anderen kann man doch eine Lösung finden mit einem weiteren USB-Stick o.Ä.?

Nahezu alle Handys und Laptops unterstützen schon BLE. Aber sie haben keinen Grund zu advertisen wie ein Bluetooth Tag. Sie spielen eher die Central Rolle bei BLE. D.h. sie sind von der Software darauf ausgelegt, Bluetooth Tags aufzuspüren. Um sie z.B. für PRESENCED zu verwenden, benötigt man spezielle Programme oder Apps auf diesen Geräten und das wird auch voraussichtlich so bleiben.
Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 19 Dezember 2014, 20:19:32
Zitat von: Steffen am 19 Dezember 2014, 19:47:57
Das einzige was mir aufgefallen ist das bei einem restart von Fhem Presenced "disconect" bleibt,
aber damit kann ich leben!
Schön, dass es jetzt bei dir läuft!
Wie sieht deine Lösung aus, das System wieder zum Laufen zu bringen, falls bei einem Neustart Presenced auf disconnect bleibt? Startest du das komplette System neu?
Es wäre schon interessant die Ursache für das Problem zu finden. Führ mal im Fehlerfall ein hciconfig -a aus. Oder kontrollier, ob noch ein hcitool läuft. Ich tippe darauf, dass der Bluetooth Adapter im Zustand down ist.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 20 Dezember 2014, 12:02:51
@gero: danke für den link. das die libc das buffern von stdout für terminal und socket unterschiedlich macht wusste ich nicht. scheinbar muss es bei denen die keine probleme hatten doch so sein das genug daten rein kommen damit der buffer immer rechtzeitig geflushed wird.

die sleep version funktioniert vermutlich deshalb weil sich immer wieder prozesse beenden und dabei der buffer automatisch geflushed wird. mein anderer test mit tail und grep funktioniert vermutlich deshalb weil beide das buffering abschalten.

mit einem PRESENCED das direkt das hic socket ausliest statt den umweg über lescan sollte sich das problem von selber erledigen.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 21 Dezember 2014, 13:07:07
Hallo!

Habe mit dem Update von heute diese Fehlermeldung bekommen:

Error messages while initializing FHEM:
configfile: unknown mode "local-PRESENCED" in define statement: Please use lan-ping, lan-bluetooth, local-bluetooth, fritzbox, shellscript or function


muss ich jetzt immer auf der Alten Version von Presence bleiben???

Kann es sein das die PebbleBee doch eine sehr geringe reichweite haben?
Von Cubitruck bis zum Flur sind gerade mal 5m und da habe ich schon einige absent, sobald ich wieder näher komme klappt es wieder!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 22 Dezember 2014, 17:16:13
bis es eine 'offizielle' version gibt musst du so lange auf der alten version bleiben.

du kannst das file so lange vom update ausnehmen damit es nicht automatische überschrieben wird.

bei einigen dieser bluetooth tags kann man einstellen wie oft und wie stark sie senden. schau doch mal in die zugehörige app.

gruß
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: punker am 30 Dezember 2014, 13:02:46
Hallo,

habe das PRESENCE-Modul über lan-bluetooth im Einsatz.
Funktioniert für mein Handy und mein Tablet auch einwandfrei!
Nun hab ich mir einen PebbleBee gekauft, aber das scheint mit dem presenced auf dem Gerät, auf dem der Bluetooth-Dongle in Funktion ist nicht zu gehen, da je in dem presenced mittels hcitool name abgefragt wird.
Hab ich das so richtig verstanden?
Wenn ich auf dem Linuxrechner mit dem presenced und dem Bluetooth-Dongle das hcitool lescan laufen lasse wird der PebbleBee sofort entdeckt!
Da ich eigentlich die Erkennung für das Handy und das Tablet nicht brauche und daher nur das PebbleBee erkennen möchte - wie könnte man das presended-Skript umschreiben, so dass nur das hcitool lescan funktioniert?

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Charity am 30 Dezember 2014, 13:58:39
Hello,

ich lese bereits seit Anfang dieses Threads mit und habe mittlerweile auch meine Pebble Bee's bekommen.
Bisher habe ich einiges ausprobiert um die Dinger ins laufen zu bekommen, leider ohne Erfolg. Mittlerweile wurde soviel "herumgedockerter" das ich gar nicht mehr richtig nachvollziehen kann, was nun notwendig ist um die Pebble Bee's korrekt ans laufen zu bekommen.

Ich würde auch die derzeit verwendete local-bluetooth Variante mit den Handy's stanzen, da eigentlich nur das iPhone zuverlässig damit funktioniert.

Kann hier bitte mal jemand eine Anleitung bereitstellen wie das nun mit den 73 Modulen und den Rechten einzurichten ist.

Danke
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: lukasbastelpeter am 31 Dezember 2014, 21:49:13
Hi,
mir geht/ging es genau so...
Ich habe das ganze jetzt mit drei Dummys (einem je Tag) und einem Skript gelöst... Das Skript wird jede minute von einem at aufgerufen. Funktioniert.
Nichts anderes greift auf mein Bluetooth-Device zu.
Bei Interesse kann ichs hier gerne mal posten...
Aber bevor ich hier jetzt die nächste Variante poste warte ich lieber mal die Reaktionen ab.

PebbleBees funktionieren aber mit der App?
Wenn die App aktiv ist sieht kein anderes Device die advertises...
Also am besten mal App aus, FHEM stoppen, bzw alles was auf dein Bluetooth device zugreift, und hcitool lescan ausführen, wenn da dann deine PebbleBees auftauchen fehlt dir nur noch das letzte Quäntchen ;)...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: bgewehr am 09 Januar 2015, 20:43:02
Leute, mal was witziges für zwischendurch:
Auf dem alten Android Handy meiner Tochter habe ich mit Hilfe der debianKIT App aus dem PlayStore ein debian Linux parallel zum Android installiert und den presenced installiert. Nun liegt es im WLAN rum und taugt als zusätzlicher Raumdetector für unsere anderen BT-Handies. Wie stabil das läuft, muss ich noch beobachten, aber die Sache ist doch zumindest witzig, oder?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DJAlex am 10 Januar 2015, 13:24:04
Hab gerade Parallel ein Thema aufgemacht und de Beiträge hier erst später gefunden.

Ich bin blutiger Anfänger aber vielleicht hilft euch das was ich gefunden hab ja weiter und vielleicht kann mir auch jemand ein bisschen unter die Arme greifen ;) Hier der Link:  http://forum.fhem.de/index.php/topic,31848.0.html
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: b4r7 am 17 Januar 2015, 01:28:58
Hi zusammen,

bei mir klappt das mit der Anwesenheit recht gut mit den Handys... Ich suche aber gerade eine alternative...

Da meine Frau und ich unsere Schlüssel in Reichweite des BT Sticks in meinem Rpi  ablegen werde ich auch die Schlüsselanhänger ausprobieren.
Pebblebees sind mir allerdings zu teuer. Habe stattdessen folgende "Anti Lost" Schlüsselanhänger bestellt:
http://www.aliexpress.com/item/2014-Newest-design-cheap-price-remote-shutter-bluetooth-anti-lost-alarm-wireless-bluetooth-key-finder-for/2030801406.html

Werde berichten wenn es mit denen klappt... Kosten immerhin nur ein drittel ;-)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mibue am 18 Januar 2015, 18:40:18
Hi
Das hört sich gut an. Ich schaue momentan auch nach solchen teilen.. Was für ein Bluetooth 4.0 Stick verwendest du? An einem Raspberry?

Gruss Michael


Gesendet von meinem iPhone mit Tapatalk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 18 Januar 2015, 19:12:25
Wir eigentlich am PRECENSE Modul noch gearbeitet und die BT Erkennung implementiert?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mibue am 19 Januar 2015, 06:54:10
Im Presencemodul gibt es das doch schon. Ich nutze es momentan mit normalem Bluetooth kein 4.0. Reichweite natürlich sehr eingeschränkt.

Gruss Michael


Gesendet von meinem iPhone mit Tapatalk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 19 Januar 2015, 07:40:39
Der LE Scan ist jetzt eingebaut?

Steht aber nicht im Commandref
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mibue am 19 Januar 2015, 07:49:06
Schau mal hier:
http://www.fhemwiki.de/wiki/Anwesenheitserkennung

Oder reden wir aneinander vorbei.


Gesendet von meinem iPhone mit Tapatalk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 19 Januar 2015, 07:53:45
Ja :-)

Es geht hier nicht um BT, sondern um BT Tags, wie z.B. den Pebblebee.
Dafür braucht man den LE Scan und dafür ein extra Modul (ein paar Seiten weiter hinten)

Die Frage ist, ob die zwei, wie mal geplant, ins Precensemodul  zusammengeführt werden
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mibue am 19 Januar 2015, 08:01:37
Ok dann habe ich das mit den Tags noch nicht verstanden. Ich dachte kann man ganz normal wie ein Bluetoothdevice scannen          nur eben LowEnergy class4 mit höherer Reichweite und sie melden sich mit ihrer uuid.


Gesendet von meinem iPhone mit Tapatalk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mibue am 19 Januar 2015, 08:02:10
Ok dann habe ich das mit den Tags noch nicht verstanden. Ich dachte kann man ganz normal wie ein Bluetoothdevice scannen          nur eben LowEnergy class4 mit höherer Reichweite und sie melden sich mit ihrer uuid.


Gesendet von meinem iPhone mit Tapatalk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: b4r7 am 25 Januar 2015, 21:19:18
Zitat von: mibue am 18 Januar 2015, 18:40:18
Hi
Das hört sich gut an. Ich schaue momentan auch nach solchen teilen.. Was für ein Bluetooth 4.0 Stick verwendest du? An einem Raspberry?

Gruss Michael


Gesendet von meinem iPhone mit Tapatalk

Hi,

ich habe einen BLuetooth 4 Stick von Hama. LEScan funktioniert über die kommandozeile. Dort bekommst du auch die MAC Addy... oder habe ich da was falsch verstanden?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: lukasbastelpeter am 25 Januar 2015, 21:59:19
Ja, das ist richtig, die meisten bekommen da relativ viele Adressen angezeigt :)...
Ich habe zum Glück hinter der Adresse "Pebble Bee" stehen gehabt ;)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 30 Januar 2015, 09:03:59
Hallo zusammen,

ich bin auf der Suche nach genau sowas! Weil über das Handy bei uns unmöglich ist.

Das Handy meiner Frau ist ständig leer, mein Sohn ist erst 2 Jahre und wird sicher so schnell kein Handy bekommen und der Neuankömmling kommt erst im Juli.
Somit habe ich noch eine lange, lange zeit bis alle Familienmitglieder ein Handy haben.

Welche von den "dingern" könnt ihr den nun empfehlen?

@Eddi.B
Laufen deine Teile? Die sind ja extrem kostengünstig. (oder doch eher Billig?)

Im Wohnzimmer steht ein Cubietruck und im Flur werkelt ein Raspi Satellit.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fh168 am 30 Januar 2015, 10:43:47
Hallo,

ich habe da neulich drüber gebloggt:

http://blog.moneybag.de/angetestet-pebblebee-honey-schluesselfinder-mit-bluetooth-4-0-und-fhem/

LG
/robin
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: tomster am 02 Februar 2015, 15:03:15
Danke, Robin für Den Blogeintrag.

Ich warte noch auf meine Dragons. Seit Bestellung Anfang November noch immer keine Versandbenachrichtigung, drum ist's hier auch ein bissl still geworden um mich.

Die Sorge mit der Batterielaufzeit hatte ich ehrlich gesagt auch und hab mich deshalb gleich auf die QI-Ladevariante konzentriert (der Lader steht eh bei mir im Flur...). Wenn die Akku-Laufzeit das einzige Sorgenkind in der Umsetzung ist, dann bin ich aber beruhigt. Vorausgesetzt, die Dragons sind tatsächlich endlich lieferbar...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: lukasbastelpeter am 09 Februar 2015, 16:00:54
So, da wollte ich euch grad mitteilen, dass die PB-Honeys nicht mal ne Kurzwäsche aushalten.... (natürlich mit eingelegter Batterie!)...
Habe ich jetzt ein mal auseinander genommen, max. 5 Minuten trocknen lassen und wieder zusammen gesetzt, und er tut wieder!
Also, auch eine Wäsche scheint die Bienchen nicht allzuschnell aus der Ruhe zu bringen... Evtl. ein Vorteil ggü. Geräten mit fest verbauter Batterie?!
Naja, ich hab' auf jeden Fall, pessimistisch wie ich bin, in den 5 Minuten ein neues Bienchen bestellt... Mal sehen wo das hin kommt :D


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: IncMrG am 11 Februar 2015, 00:18:08
Zitat von: tomster am 02 Februar 2015, 15:03:15
Ich warte noch auf meine Dragons. Seit Bestellung Anfang November noch immer keine Versandbenachrichtigung, drum ist's hier auch ein bissl still geworden um mich.

@ Tomster,
ich habe, nachdem Sie mich vor ein paar Tagen nochmal um mindestens 1-2 Monate vertröstet haben, meine Bestellung jetzt in Honeys gewandelt.

@ All
Ich habe gerade so einen billigen Tag (15€) bekommen. Wird gut erkannt, nur schaltet er scheinbar nach 1-2 Minuten wieder ab und wird dann nicht mehr erkannt. Kennt jemand das Problem? Könnte man das durch pairen mit dem Tag umgehen?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: b4r7 am 11 Februar 2015, 16:32:52
Zitat von: RettungsTim am 30 Januar 2015, 09:03:59
Hallo zusammen,

ich bin auf der Suche nach genau sowas! Weil über das Handy bei uns unmöglich ist.

Das Handy meiner Frau ist ständig leer, mein Sohn ist erst 2 Jahre und wird sicher so schnell kein Handy bekommen und der Neuankömmling kommt erst im Juli.
Somit habe ich noch eine lange, lange zeit bis alle Familienmitglieder ein Handy haben.

Welche von den "dingern" könnt ihr den nun empfehlen?

@Eddi.B
Laufen deine Teile? Die sind ja extrem kostengünstig. (oder doch eher Billig?)

Im Wohnzimmer steht ein Cubietruck und im Flur werkelt ein Raspi Satellit.

habe sie heute erst bekommen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Carsten am 12 Februar 2015, 15:07:57
Hat jemand Erfahrungen mit den Gigaset G-Tags (http://blog.gigaset.com/g-tag/)?
Ich hab mir jetzt mal einen zum Testen bestellt. In erster Linie weils mit 19,99 Euro der billigste war ( von dubiosen No-Names mal abgesehen ).
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 12 Februar 2015, 18:10:25
Hallo!

Einen G-Tag habe ich mir auch gleich mal bestellt,
denn von den Pepplebee war ich sehr entäuscht(reichweite,batterie,1xDefekt).

Hoffe hier ist die reichweite besser und zu diesem Preis finde ich einfach ok.

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: StefanW am 17 Februar 2015, 17:27:37
Zitat von: Mitch am 13 Dezember 2014, 19:45:31
So, hier mal die Eckdaten meines Systems:

fhem läuft in der aktuellsten Version (fhem.pl 7124 2014-12-05 07:10:20Z) auf einem ATOM Nettop mit Ubuntu 14.04.1 LTS Server.

BT Tag ist folgender: CSL - USB nano Bluetooth-Adapter V4.0 mit LED, Class 4.0 Technologie, neuester Standard, Plug & Play, Windows 7 + Windows 8 + Windows 8.1

fhem user ist in der Gruppe "sudo" und darf Befehle ohne Passwort ausführen (fhem    ALL = NOPASSWD:ALL in die Datei /etc/sudoers eintragen).

Module PRESENCE und PRESENCED auch aus dem Thread hier.
PRESENCED Modul ist vom fhem Update ausgenommen.
# $Id: 73_PRESENCE.pm 6950 2014-11-11 21:09:42Z markusbloch $
# $Id: 73_PRESENCED.pm 4756 2014-01-27 21:15:50Z justme1968 $


Der Rest sind noch ein paar Definitionen in fhem:

define pd PRESENCED /usr/bin/hcitool lescan

und dann die Tag (hier mal einer als Beispiel):

define PebbleBee PRESENCE local-PRESENCED 0E:0A:14:09:9F:1C 60 120

Das wars  ;)

Ich versuche gerade, eine Anwesenheitserkennung mittels G-Tag zu realisieren.
Eingerichtet habe ich es so, wie oben beschrieben.
Allerdings steht im PRESENCED immer Disconnected.
Im log steht dann folgendes:
2015.02.17 17:20:48 3: pd: connected to /usr/bin/hcitool lescan
2015.02.17 17:20:48 3: pd: Disconnected
2015.02.17 17:20:58 3: pd: connected to /usr/bin/hcitool lescan
2015.02.17 17:20:58 3: pd: Disconnected
2015.02.17 17:21:08 3: pd: connected to /usr/bin/hcitool lescan
2015.02.17 17:21:08 3: pd: Disconnected
2015.02.17 17:21:18 3: pd: connected to /usr/bin/hcitool lescan
2015.02.17 17:21:18 3: pd: Disconnected
2015.02.17 17:21:28 3: pd: connected to /usr/bin/hcitool lescan
2015.02.17 17:21:28 3: pd: Disconnected
2015.02.17 17:21:38 3: pd: connected to /usr/bin/hcitool lescan
2015.02.17 17:21:38 3: pd: Disconnected
2015.02.17 17:21:48 3: pd: connected to /usr/bin/hcitool lescan
2015.02.17 17:21:48 3: pd: Disconnected
2015.02.17 17:21:58 3: pd: connected to /usr/bin/hcitool lescan
2015.02.17 17:21:58 3: pd: Disconnected


Wo liegt da mein Fehler?

Gruß
Stefan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: oliv06 am 17 Februar 2015, 20:20:43
@StefanW
If your bluetooth device is hci0, try
hciconfig hci0 down
hciconfig hci0 up
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 17 Februar 2015, 20:44:27
Vermute fhem kann nicht auf hcitool zugreifen.
Könnte ein Rechteproblem sein.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: StefanW am 17 Februar 2015, 21:12:36
@oliv06:
hciconfig hci0 down
hciconfig hci0 up

Bringt leider keinen Erfolg.

@Mitch:
Wie könnte ich das genauer untersuchen?

User fhem ist in der Gruppe sudo:
ct@cubie:~$ grep sudo /etc/group
sudo:x:27:ct,fhem


Und der Eintrag in der /etc/sudoers ist auch vorhanden:
# User privilege specification
root    ALL=(ALL:ALL) ALL
fhem    ALL = NOPASSWD:ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: oliv06 am 17 Februar 2015, 23:44:34
Two options :
Antw:Anwesenheitserkennung Bluetooth PebbleBee (http://forum.fhem.de/index.php/topic,28753.msg223305.html#msg223305)sudo chmod u+s `which hcitool`
sudo chmod u+s `which hciconfig`


Both work for me, but I still have issues :
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: StefanW am 18 Februar 2015, 20:18:46
Leider habe ich damit auch keinen Erfolg.  :'(

Über die Konsole mit putty funktioniert hcitool lescan & der G-Tag wird gefunden.
Nur der Aufruf über fhem funktioniert einfach nicht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 18 Februar 2015, 20:26:10
definiere pd mal so:

define pd PRESENCED sudo -u root /usr/bin/hcitool lescan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 18 Februar 2015, 20:26:55
Hallo!

Hatte auch ne ganze weile kein Erfolg, aber mit diesem Befehl ging es:
sudo stdbuf -oL -eL hcitool lescan --duplicates
Vielleicht klappt es ja damit?!

Das einzige was bei mir noch war/ist das ich meinem Cubitruck immer noch komplett bei Fhem upadte oder restart auch neu starten musste sonst hatte ich auch Disconect!

Habe jetzt den G-Tag seit zwei Tagen im einsatz und muss sagen bis jetzt Top,
was ich von den Pebblebee nicht behaupten konnte.

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: StefanW am 18 Februar 2015, 21:02:38
2015.02.18 20:58:43 3: pd: connected to sudo stdbuf -oL -eL hcitool lescan --duplicates
2015.02.18 20:58:43 3: pd: Disconnected
2015.02.18 20:58:53 3: pd: connected to sudo stdbuf -oL -eL hcitool lescan --duplicates
2015.02.18 20:58:53 3: pd: Disconnected
2015.02.18 20:59:03 3: pd: connected to sudo stdbuf -oL -eL hcitool lescan --duplicates
2015.02.18 20:59:03 3: pd: Disconnected
2015.02.18 20:59:13 3: pd: connected to sudo stdbuf -oL -eL hcitool lescan --duplicates
2015.02.18 20:59:13 3: pd: Disconnected
2015.02.18 20:59:42 3: pd: connected to sudo -u root /usr/bin/hcitool lescan
2015.02.18 20:59:42 3: pd: Disconnected
2015.02.18 20:59:52 3: pd: connected to sudo -u root /usr/bin/hcitool lescan
2015.02.18 20:59:52 3: pd: Disconnected
2015.02.18 21:00:02 3: pd: connected to sudo -u root /usr/bin/hcitool lescan
2015.02.18 21:00:02 3: pd: Disconnected
2015.02.18 21:00:12 3: pd: connected to sudo -u root /usr/bin/hcitool lescan
2015.02.18 21:00:12 3: pd: Disconnected


Leider auch mit den beiden Definitionen das gleiche Spiel.
Ich glaube, ich setze meinen Cubie mal neu auf und versuche es erneut.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 18 Februar 2015, 21:14:32
Aber hcitool liegt auch im Pfad /usr/bin?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: StefanW am 18 Februar 2015, 21:23:13
Ja, liegt dort. Hab extra schon nachgesehen.
Also morgen mal neu aufsetzen. ;-)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 18 Februar 2015, 21:43:22
@StefanW: Funktioniert der Scan denn von der Commandline?

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 18 Februar 2015, 22:21:58
Nur noch mal zum Abgleich meine Daten:

Presenced:
# $Id: 73_PRESENCED.pm 4756 2014-01-27 21:15:50Z justme1968 $

user fhem ist in folgenden Gruppen:
Gruppen=20(dialout),4(adm),27(sudo),29(audio)

Folgende Einträge in sudoers:
- fhem    ALL=(ALL:ALL) ALL
- fhem    ALL = NOPASSWD:ALL
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Carsten am 19 Februar 2015, 01:17:12
Hallo,

ich spiele gerade mit meinem G-Tag rum.

Mit hcitool -lescan sehe ich ihn. Allerdings läuft das dann permanent und blockiert den Bluetooth Dongle. Soweit ich verstanden habe, ist das auch das Problem beim Presence-Check?
Habt ihr euch mal gatttool angeschaut? Mit
gatttool -b <MAC-Adresse> --primary
bekomme ich z.B. irgendwelche Funktionsregister des Tags angezeigt, wenn es erreichbar ist. Ansonsten gibts ein "No route to host (113)".
Evtl. kann man das ja als Ping-Ersatz hernehmen?

Vielleicht gibts da außer --primary auch noch bessere Parameter.
--char-read funktioniert bei mir nur in der Konsole wobei auch da an der Antwort zu erkennen ist, ob das Gerät in Reichweite ist:
A valid handle is required
wenn Gerät prinzipiell da, aber Handle angeblich falsch vs.
No route to host ( 113)
wenn Gerät gar nicht gefunden

P.S.:
Irgendwer hatte das Problem, dass er seinen PC ständig neustarten muss, wenn FHEM disconnected wurde. Versuch stattdessen mal
/etc/init.d/bluetooth restart
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fh168 am 28 Februar 2015, 16:15:29
Hallo Gemeinde,

ich habe gerade das G-tag von Gigaset getestet, Fhem-Funktionalität steht noch aus.

Blog-Beitrag zum G-tag: http://blog.moneybag.de/erfahrungsbericht-gigaset-g-tag-schluesselfinder/#more-11592

Was vielleicht für Euch interessant ist: Gigaset auf deren Microsite hat ein Gewinnspiel gestartet, bei denen die ersten 1000 Teilnehmer ein G-Tag gewinnen können.

LG
/robin
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: b4r7 am 28 Februar 2015, 17:46:53
Ich finde das Gewinnspiel nicht
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mathelf am 01 März 2015, 20:51:05
Hallo,

ich habe meinen G-Tag nun erfolgreich in FHEM eingebunden. Ich nutze ein modifiziertes python Script, das meinen Tests zufolge nicht mit der local-bluetooth Erkennung im PRESENCE Modul in die Quere kommt.

Das python Script gibt es hier: https://github.com/IanHarvey/bluepy/tree/master/bluepy (https://github.com/IanHarvey/bluepy/tree/master/bluepy) und eine gute Anleitung zum Setup hier: http://www.elinux.org/RPi_Bluetooth_LE (http://www.elinux.org/RPi_Bluetooth_LE)

Ich nutze einen erfolgreichen bzw. nicht erfolgreichen Connect zur Anwesenheitserkennung aus und habe das Script btle.py in der Mainroutine folgendermaßen modifiziert:


    try:
       conn = Peripheral(devAddr, addrType)
       conn.disconnect()
       print ("1")
       sys.exit(1)
    except BTLEException as e:
       print("0")
       sys.exit(0)


In der fhem.cfg nutze ich das PRESENCE Modul:

define TagGruen PRESENCE shellscript "sudo /usr/bin/python /home/pi/bluepy/bluepy/btle.py 00:00:00:00:00:00" 60 60


Die MAC Adresse des Tags findet man über ein lescan raus. Das python Script muss aus fhem aus aufrufbar sein (Rechte!).

Für mich noch offene Fragen:

Viele Grüße

Matthias
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus Bloch am 01 März 2015, 21:06:27
Zu Punkt 1: Nein, die Shell-Aufrufe sind vom Hauptprozess durch Forking entkoppelt und führen zu keinerlei Blockierung des Hauptprozess. Allgemein gilt eine maximale Laufzeit von 60 Sekunden. Dannach wird der Aufruf hart beendet.

Gruß
Markus
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Carsten am 01 März 2015, 21:36:32
Hallo Matthias,

danke für die Anleitung!

Werd ich mir anschauen ( und wohl nachmachen  ;D ).

Zitat von: Mathelf am 01 März 2015, 20:51:05
Das python Script gibt es hier: https://github.com/IanHarvey/bluepy/tree/master/bluepy (https://github.com/IanHarvey/bluepy/tree/master/bluepy) und eine gute Anleitung zum Setup hier: http://www.elinux.org/RPi_Bluetooth_LE (http://www.elinux.org/RPi_Bluetooth_LE)

Musstest du Bluez neu bauen? Auf meinem Banana Pi mit Raspbian ist schon ne Bluez-Version inklusive, aber scheinbar nicht die Neueste.

Gruß
Carsten
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mathelf am 01 März 2015, 21:52:06
Hallo Carsten,

ich hatte es auf meinem Raspberrry nicht bauen müssen (oder ich hatte es früher schon mal gemacht).

Viele Grüße

Matthias
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Charity am 30 März 2015, 09:33:31
Erstmal großes Lob für die hier erschaffene Arbeit und Integration.

Ich finde es super wie für FHEM die Entwicklung voranschreitet und sich die Community anstrengt. Tolle Arbeit.

Für mich stellt sich aber die Frage, ob die Anwesenheitserkennung für die Pebble Bee's mit der normalen Bluetooth Anwesenheitserkennung den Weg in die "stable" Version von FHEM Einzug halten wird ?

Gibt es dafür schon einen Plan - Datum ?
Bzw. wird es einen Wiki Eintrag geben ?

Ich würde gerne, wie hier im Post oft beschrieben, beide Varianten (Bluetooth Handy und Bluetooth LE Pebble Bee Erkennung ) nutzen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: StefanW am 16 April 2015, 19:13:35
Zitat von: fh168 am 28 Februar 2015, 16:15:29
Hallo Gemeinde,

ich habe gerade das G-tag von Gigaset getestet, Fhem-Funktionalität steht noch aus.

Blog-Beitrag zum G-tag: http://blog.moneybag.de/erfahrungsbericht-gigaset-g-tag-schluesselfinder/#more-11592

Was vielleicht für Euch interessant ist: Gigaset auf deren Microsite hat ein Gewinnspiel gestartet, bei denen die ersten 1000 Teilnehmer ein G-Tag gewinnen können.

LG
/robin

Danke noch mal für den Hinweis mit dem Gewinnspiel.
Mein Gratis G-Tag ist heut angekommen. :-)
Hatte schon nicht mehr mit gerechnet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fh168 am 19 April 2015, 10:52:56
@StefanW

Erst mal Glückwünsch dazu.
Teste doch mal, ob der PebbleBee und das Gigaset-tag gleichzeitig funktioniert. Bei mir schwirrt die Gigaset Software immer ab, wenn es einen PebbleBee in der Nähe findet.

Noch ein Tipp zum Gewinnspiel: Ich habe noch keinen Einsendeschluss gesehen, möglicherweise läuft das Spiel noch. 1000 G-tags finde ich als Preise auch ziemlich gewagt bei so einem Nischenprodukt.
Also Foto machen, einen sinnigen Text da reinkloppen und gewinnen :-)
Im Übrigen hat sich die Software nach einem Update stark verbessert.
Ich habe meinen Blog-Beitrag dahingehend auch angepasst.

http://blog.moneybag.de/erfahrungsbericht-gigaset-g-tag-schluesselfinder/

LG
/robin
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 19 April 2015, 17:25:08
Zitat von: fh168 am 19 April 2015, 10:52:56

Noch ein Tipp zum Gewinnspiel: Ich habe noch keinen Einsendeschluss gesehen, möglicherweise läuft das Spiel noch. 1000 G-tags finde ich als Preise auch ziemlich gewagt bei so einem Nischenprodukt.
Also Foto machen, einen sinnigen Text da reinkloppen und gewinnen :-)

Wenn Sie aber alle Geschichten veröffentlich haben sind jetzt jetzt 1086 Geschichten...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 23 April 2015, 19:46:50
Mahlzeit!

Habe seit einer Woche mit G-Tags experimentiert und nach einigen schmerzhaften Fehlversuchen (bluez ist etwas launisch) nun ein bislang stabiles und zuverlässiges Setup am Laufen.

Setup:
-Angehängte Datei blescan.pl an geeignetem Ort ablegen
-Execute-Bit setzen
chmod +x blescan.pl
-Ausführung als root durch den FHEM-User erlauben. Eintrag in /etc/sudoers:
fhem ALL=NOPASSWD: /opt/fhem/pr/blescan.pl
-In FHEM wie folgt anlegen:
define Hirschgesicht Presence shellscript "sudo /opt/fhem/pr/blescan.pl DE:AD:BE:EF:D0:0D 10" 60 60
DE:AD:BE:EF:D0:0D ist hierbei die Adresse des G-Tags, 10 die Dauer des Scans (siehe unten).

Funktionsweise:
Das Skript führt für den eingestellten Zeitraum einen Scan nach Bluetooth-Low-Energy-Geräten durch (hcitool lescan). Sobald die eingestellte MAC-Adresse gefunden wird, bricht es ab und gibt 1 (=present) zurück. Nach Ablauf der eingestellten Zeit wird 0 (=absent) zurück gegeben. Da bluez sich gelegentlich aufzuhängen scheint ("Set scan parameters failed: Input/output error") wird in diesem Fall ein Reset durchgeführt (hciconfig hci0 reset). Die Aktivität des Skripts lässt sich im Syslog nachvollziehen, wo man auch zwecks Finetuning des Scan-Zeitraums nachvollziehen kann, nach wie vielen Sekunden der Tag gefunden wurde.

Wichtig:
-Unbedingt Formatierung der Bluetooth-Adresse beachten (Doppelpunkte, Großschreibung).
-Die G-Tags scheinen Ihre Advertisements nur zu versenden wenn sie nicht(!) mit der iOS-App (vermutlich auch mit anderen Apps/Geräten) gekoppelt sind.
-Das Skript geht davon aus, dass das Bluetooth-Device hci0 ist.

Patrick

/Edit: Großschreibung der MAC-Adresse...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: scooty am 28 April 2015, 12:45:15
@PatrickR:
Vielen Dank für Deine Lösung, funktioniert perfekt für mich.
:)
Andreas
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Carsten am 28 April 2015, 16:32:13
Zitat von: PatrickR am 23 April 2015, 19:46:50
-Die G-Tags scheinen Ihre Advertisements nur zu versenden wenn sie nicht(!) mit der iOS-App (vermutlich auch mit anderen Apps/Geräten) gekoppelt sind.
Das ist allerdings ziemlich blöd. Das bedeutet ja, wenn der Nachbar oder wer auch immer sich mit dem Tag verbindet, kann man ihn selbst nicht mehr tracken. Und verhindern kann man das ja auch nicht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: v.i.p.e.r am 30 April 2015, 09:03:54
Hi,

ich hab das mal mit der Variante von PatrickR probiert. Das klappt soweit auch, auch mit mehreren G-Tags. Allerdings hängt sich bluez quasi alle 5-10 min auf.  Der reset klappt nur ab un zu. Wenn ich dann noch einen reset durchführe klappt es wieder.

Ist das normal, dass das so oft passiert? 
Welche Timings habt ihr eingestellt?
Danke & VG
Tim
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 30 April 2015, 09:36:47
Hi,
habe das Scanintervall auf 10 und beide Presence-Intervalle auf 60 stehen. Reset kommt bei mir etwa 1x am Tag vor und funktioniert zuverlässig. Verwende Debian wheezy auf amd64 (also kein RPi und keine Fritzbox). Verwende 2 G-Tags.

Was schreibt das Skript denn ins Syslog wenn der Fehler auftritt?

Patrick


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: v.i.p.e.r am 30 April 2015, 10:23:00
So sieht das aus - oben einmal wo es geklappt hat und ein paar Minuten später wo es nicht geklappt hat - und danach fängt er sich auch nicht mehr.
Hab nen rpi2 mit wheezy ...

Die Duration hatte ich vorher auf 10 - da war das Ergebnis aber das gleiche - ebenso bluez 4.99 auf 5.30 updaten hat nichts gebracht.

Was ich noch sagen kann, ist dass ich voher das ganze per Bluetooth mit einem iPhone und presence laufen hatte und da lief der bluetooth Stick wunderbar


Apr 29 22:56:51 fhem blescan.pl[2587]: Received 'Set scan parameters failed: Input/output error', resetting...
Apr 29 22:56:51 fhem bluetoothd[2249]: HCI dev 0 down
Apr 29 22:56:51 fhem bluetoothd[2249]: Adapter /org/bluez/2249/hci0 has been disabled
Apr 29 22:56:53 fhem kernel: [ 2212.537351] Bluetooth: hci0 command 0x0c1b tx timeout
Apr 29 22:56:55 fhem kernel: [ 2214.537356] Bluetooth: hci0 command 0x2002 tx timeout
Apr 29 22:56:56 fhem blescan.pl[2587]: Did NOT receive an advertisement from bluetooth mac address '7C:2F:80:90:88:FE'.
Apr 29 22:56:57 fhem kernel: [ 2216.547435] Bluetooth: hci0 command 0x0c58 tx timeout
Apr 29 22:56:57 fhem bluetoothd[2249]: HCI dev 0 up
Apr 29 22:56:57 fhem bluetoothd[2249]: Adapter /org/bluez/2249/hci0 has been enabled
Apr 29 22:57:57 fhem blescan.pl[2593]: Version 0.2 started (mac address: 7C:2F:80:90:88:FE, duration: 5).
Apr 29 22:57:57 fhem blescan.pl[2593]: Acquired lock, Scanning...
Apr 29 22:57:59 fhem blescan.pl[2593]: Received advertisement from bluetooth mac address '7C:2F:80:90:88:FE' after 2 seconds.
Apr 29 22:59:00 fhem blescan.pl[2597]: Version 0.2 started (mac address: 7C:2F:80:90:88:FE, duration: 5).
Apr 29 22:59:00 fhem blescan.pl[2597]: Acquired lock, Scanning...
Apr 29 22:59:01 fhem blescan.pl[2597]: Received advertisement from bluetooth mac address '7C:2F:80:90:88:FE' after 1 seconds.
Apr 29 23:00:01 fhem /USR/SBIN/CRON[2603]: (root) CMD (sh -c "echo '0' > /sys/class/gpio/gpio508/value")
Apr 29 23:00:01 fhem /USR/SBIN/CRON[2602]: (CRON) info (No MTA installed, discarding output)
Apr 29 23:00:01 fhem blescan.pl[2601]: Version 0.2 started (mac address: 7C:2F:80:90:88:FE, duration: 5).
Apr 29 23:00:01 fhem blescan.pl[2601]: Acquired lock, Scanning...
Apr 29 23:00:02 fhem blescan.pl[2601]: Received advertisement from bluetooth mac address '7C:2F:80:90:88:FE' after 1 seconds.
Apr 29 23:01:03 fhem blescan.pl[2609]: Version 0.2 started (mac address: 7C:2F:80:90:88:FE, duration: 5).
Apr 29 23:01:03 fhem blescan.pl[2609]: Acquired lock, Scanning...
Apr 29 23:01:03 fhem blescan.pl[2609]: Received advertisement from bluetooth mac address '7C:2F:80:90:88:FE' after 0 seconds.
Apr 29 23:01:32 fhem wpa_supplicant[1649]: wlan0: WPA: Group rekeying completed with 08:96:d7:54:9b:a9 [GTK=CCMP]
Apr 29 23:02:04 fhem blescan.pl[2613]: Version 0.2 started (mac address: 7C:2F:80:90:88:FE, duration: 5).
Apr 29 23:02:04 fhem blescan.pl[2613]: Acquired lock, Scanning...
Apr 29 23:02:05 fhem blescan.pl[2613]: Received advertisement from bluetooth mac address '7C:2F:80:90:88:FE' after 1 seconds.
Apr 29 23:03:05 fhem blescan.pl[2618]: Version 0.2 started (mac address: 7C:2F:80:90:88:FE, duration: 5).
Apr 29 23:03:05 fhem blescan.pl[2618]: Acquired lock, Scanning...
Apr 29 23:03:06 fhem blescan.pl[2618]: Received advertisement from bluetooth mac address '7C:2F:80:90:88:FE' after 1 seconds.
Apr 29 23:04:07 fhem blescan.pl[2622]: Version 0.2 started (mac address: 7C:2F:80:90:88:FE, duration: 5).
Apr 29 23:04:07 fhem blescan.pl[2622]: Acquired lock, Scanning...
Apr 29 23:04:08 fhem blescan.pl[2622]: Received advertisement from bluetooth mac address '7C:2F:80:90:88:FE' after 1 seconds.
Apr 29 23:05:09 fhem blescan.pl[2626]: Version 0.2 started (mac address: 7C:2F:80:90:88:FE, duration: 5).
Apr 29 23:05:09 fhem blescan.pl[2626]: Acquired lock, Scanning...
Apr 29 23:05:09 fhem blescan.pl[2626]: Received advertisement from bluetooth mac address '7C:2F:80:90:88:FE' after 0 seconds.
Apr 29 23:06:10 fhem blescan.pl[2630]: Version 0.2 started (mac address: 7C:2F:80:90:88:FE, duration: 5).
Apr 29 23:06:10 fhem blescan.pl[2630]: Acquired lock, Scanning...
Apr 29 23:06:11 fhem blescan.pl[2630]: Received advertisement from bluetooth mac address '7C:2F:80:90:88:FE' after 1 seconds.
Apr 29 23:07:11 fhem blescan.pl[2634]: Version 0.2 started (mac address: 7C:2F:80:90:88:FE, duration: 5).
Apr 29 23:07:11 fhem blescan.pl[2634]: Acquired lock, Scanning...
Apr 29 23:07:12 fhem blescan.pl[2634]: Received advertisement from bluetooth mac address '7C:2F:80:90:88:FE' after 1 seconds.
Apr 29 23:08:13 fhem blescan.pl[2639]: Version 0.2 started (mac address: 7C:2F:80:90:88:FE, duration: 5).
Apr 29 23:08:13 fhem blescan.pl[2639]: Acquired lock, Scanning...
Apr 29 23:08:13 fhem blescan.pl[2639]: Received 'Set scan parameters failed: Input/output error', resetting...
Apr 29 23:08:13 fhem bluetoothd[2249]: HCI dev 0 down
Apr 29 23:08:13 fhem bluetoothd[2249]: Adapter /org/bluez/2249/hci0 has been disabled
Apr 29 23:08:15 fhem kernel: [ 2894.295712] Bluetooth: hci0 command 0x1009 tx timeout
Apr 29 23:08:18 fhem blescan.pl[2639]: Did NOT receive an advertisement from bluetooth mac address '7C:2F:80:90:88:FE'.
Apr 29 23:09:24 fhem blescan.pl[2645]: Version 0.2 started (mac address: 7C:2F:80:90:88:FE, duration: 5).
Apr 29 23:09:24 fhem blescan.pl[2645]: Acquired lock, Scanning...
Apr 29 23:09:24 fhem blescan.pl[2645]: Did NOT receive an advertisement from bluetooth mac address '7C:2F:80:90:88:FE'.
Apr 29 23:10:27 fhem blescan.pl[2649]: Version 0.2 started (mac address: 7C:2F:80:90:88:FE, duration: 5).
Apr 29 23:10:27 fhem blescan.pl[2649]: Acquired lock, Scanning...

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: tomster am 30 April 2015, 10:50:09
Zitat
    try:
       conn = Peripheral(devAddr, addrType)
       conn.disconnect()
       print ("1")
       sys.exit(1)
    except BTLEException as e:
       print("0")
       sys.exit(0)

Wo genau hast Du diese Zeilen eingefügt? Ich kann  leider keine entsprechende Stelle im Code finden...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 30 April 2015, 13:03:22
Zitat von: v.i.p.e.r am 30 April 2015, 10:23:00
So sieht das aus - oben einmal wo es geklappt hat und ein paar Minuten später wo es nicht geklappt hat - und danach fängt er sich auch nicht mehr.
Hab nen rpi2 mit wheezy ...

Die Duration hatte ich vorher auf 10 - da war das Ergebnis aber das gleiche - ebenso bluez 4.99 auf 5.30 updaten hat nichts gebracht.

Was ich noch sagen kann, ist dass ich voher das ganze per Bluetooth mit einem iPhone und presence laufen hatte und da lief der bluetooth Stick wunderbar


Apr 29 22:56:51 fhem blescan.pl[2587]: Received 'Set scan parameters failed: Input/output error', resetting...
Apr 29 22:56:51 fhem bluetoothd[2249]: HCI dev 0 down
Apr 29 22:56:51 fhem bluetoothd[2249]: Adapter /org/bluez/2249/hci0 has been disabled
Apr 29 22:56:53 fhem kernel: [ 2212.537351] Bluetooth: hci0 command 0x0c1b tx timeout
Apr 29 22:56:55 fhem kernel: [ 2214.537356] Bluetooth: hci0 command 0x2002 tx timeout
Apr 29 22:56:56 fhem blescan.pl[2587]: Did NOT receive an advertisement from bluetooth mac address '7C:2F:80:90:88:FE'.
.......



@V.I.P.E.R
hab genau die gleiche Konstelation und das gleiche Problem. Bist du da schon weiter ?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 30 April 2015, 13:58:36
Das Problem wirst du häufiger finden, wenn du im Internet suchst.
Es scheint verschiedene Ursachen/Lösungen zu geben:

1. BT-Dongles verhalten sich verschieden. D.h. das eine läuft problemlos, das andere zeigt den obigen Fehler.
2. Ursache ist vermutlich ein Bug im Kernel USB Treiber. Der Bug, der zum Kernelcrash führte ist inzwischen wohl gefixet. Aber nach Auftreten des Fehlers funktioniert das Dongle nicht mehr.
3. Ein parallel laufender bluetoothd kann das Problem forcieren. Falls du bluetooth nur für presence verwendest, stoppe den bluetoothd.
4. Ein USB-Hub kann den Fehler forcieren. Steck das BT-Dongle bei Problemen lieber direkt in den Raspi. Die Stromaufnahme ist nicht so hoch, dass Probleme zu erwarten sind.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: v.i.p.e.r am 30 April 2015, 18:05:33
Hi,

danke für die Antwort :)

1. Ok das kann sein - was habt ihr für einen ? Ich hab den LogiLink BT0015 (lsusb sagt: Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode))
2. der soll schon länger behoben sein - Meldungen sind von 2013 und 2014
3. ist bei mir aus
4. bringt leider keinen unterschied :(



Eventuell liegt es ja auch an dem perl script- eventuell kann Mathelf nochmal sagen, wo er den Code bei dem Python Script genau eingefügt hat - weil das script scheint sich geändert zu haben. Die Stelle gibt es so nicht mehr.

VG
Tim
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 30 April 2015, 20:55:04
Zitat von: PatrickR am 23 April 2015, 19:46:50
Mahlzeit!

Habe seit einer Woche mit G-Tags experimentiert und nach einigen schmerzhaften Fehlversuchen (bluez ist etwas launisch) nun ein bislang stabiles und zuverlässiges Setup am Laufen.

Setup:
-Angehängte Datei blescan.pl an geeignetem Ort ablegen
-Execute-Bit setzen
chmod +x blescan.pl
-Ausführung als root durch den FHEM-User erlauben. Eintrag in /etc/sudoers:
fhem ALL=NOPASSWD: /opt/fhem/pr/blescan.pl
-In FHEM wie folgt anlegen:
define Hirschgesicht Presence shellscript "sudo /opt/fhem/pr/blescan.pl de:ad:be:ef:d0:0d 10" 60 60
de:ad:be:ef:d0:0d ist hierbei die Adresse des G-Tags, 10 die Dauer des Scans (siehe unten).

Funktionsweise:
Das Skript führt für den eingestellten Zeitraum einen Scan nach Bluetooth-Low-Energy-Geräten durch (hcitool lescan). Sobald die eingestellte MAC-Adresse gefunden wird, bricht es ab und gibt 1 (=present) zurück. Nach Ablauf der eingestellten Zeit wird 0 (=absent) zurück gegeben. Da bluez sich gelegentlich aufzuhängen scheint ("Set scan parameters failed: Input/output error") wird in diesem Fall ein Reset durchgeführt (hciconfig hci0 reset). Die Aktivität des Skripts lässt sich im Syslog nachvollziehen, wo man auch zwecks Finetuning des Scan-Zeitraums nachvollziehen kann, nach wie vielen Sekunden der Tag gefunden wurde.

Wichtig:
-Unbedingt Formatierung der Bluetooth-Adresse beachten (Doppelpunkte, Kleinschreibung).
-Die G-Tags scheinen Ihre Advertisements nur zu versenden wenn sie nicht(!) mit der iOS-App (vermutlich auch mit anderen Apps/Geräten) gekoppelt sind.
-Das Skript geht davon aus, dass das Bluetooth-Device hci0 ist.

Patrick

Hallo!

Bekomme auf dem Cubi nur ein error zurück, was müste ich den in die Shell eingeben um erstmal zu sehen ob wo es nicht geht?

Bei eingabe von:


root@cubie:~# /opt/fhem/pr/blescan.pl 7c:2f:80:8f:9b:f7 10

Usage: blescan.pl <mac_address> <duration>
Example: blescan.pl de:ad:be:ef:d0:0d 10
root@cubie:~#


bekomme ich diese ausgabe!

In Fhem diese Fehler Meldung:

2015.04.30 20:56:37 2: PRESENCE (Hirschgesicht) - error while processing check: unexpected script output (expected 0 or 1):
Usage: blescan.pl <mac_address> <duration>
Example: blescan.pl de:ad:be:ef:d0:0d 10


mein define:
shellscript "sudo /opt/fhem/pr/blescan.pl 7c:2f:80:8f:9b:f7 10" 60 60

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: v.i.p.e.r am 30 April 2015, 22:02:08
Buchstaben in der MAC groß schreiben :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 30 April 2015, 22:06:38
Zitat von: v.i.p.e.r am 30 April 2015, 22:02:08
Buchstaben in der MAC groß schreiben :)

Ok hast recht danke...aber im Post stand doch:
Wichtig:
-Unbedingt Formatierung der Bluetooth-Adresse beachten (Doppelpunkte, Kleinschreibung).

habe ich das wohl falsch verstanden?!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 30 April 2015, 22:10:33
Zitat von: Steffen am 30 April 2015, 22:06:38
Ok hast recht danke...aber im Post stand doch:
Wichtig:
-Unbedingt Formatierung der Bluetooth-Adresse beachten (Doppelpunkte, Kleinschreibung).

habe ich das wohl falsch verstanden?!

Mfg Steffen
Da gibt es nichts falsch zu verstehen. Mein Posting war einfach falsch  ;)
Danke, v.i.p.e.r und Steffen. Habe es mal editiert und passe gerade die Fehlermeldung des Skritps an.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 30 April 2015, 22:13:35
RPI 2 und LogiLink BT0015, hab ich auch. Am USB-Hub und direkt am RPI getestet, leider keine Verbesserung. Werde mal sehen ob ich einen anderen Dongle finde.
(MAC muss Grossgeschrieben sein)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: v.i.p.e.r am 30 April 2015, 22:22:20
Hab mir eben noch nen Asus BT400
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 30 April 2015, 22:47:03
Kann es sein das es mit dem script nur eine device/define abgefragt werden kann?

Wenn ich eine oder zwei define hinzufüge, bekomme ich sofort ein absent von allen define,
lasse ich nur eins Active bleibt es auf present.

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 30 April 2015, 22:51:15
Zitat von: Steffen am 30 April 2015, 22:47:03
Kann es sein das es mit dem script nur eine device/define abgefragt werden kann?

Wenn ich eine oder zwei define hinzufüge, bekomme ich sofort ein absent von allen define,
lasse ich nur eins Active bleibt es auf present.

Mfg Steffen
Hi!

Eigentlich nicht. Habe auch zwei Geräte definiert. Poste doch mal das Syslog mit der neuen Version (s. Folgeposting).

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 30 April 2015, 23:00:38
Mahlzeit!

Anbei die aktualisierte Version 0.3:
-Groß-/Kleinschreibung der MAC-Adresse wird nun ignoriert.
-Bluetooth-Device ist nun im Skript einstellbar (Zeile 19).
-Es wird nun ausgiebiger geloggt (insb. unerwartete Ausgaben während des Scans).*

* Falls alles funktioniert solltet Ihr im Skript (Zeile 17) den Log Level auf LOG_INFO setzen, damit das Syslog nicht so leidet.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 01 Mai 2015, 07:14:32
Hallo!

Habe jetzt es mal die Nacht durch laufen lassen und diseses Ergebnis bekommen:


2015.05.01 06:14:35 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 15491
2015.05.01 06:14:35 2: PRESENCE (Liescha) - device could not be checked (retrying in 10 seconds)
2015.05.01 06:14:41 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 15580
2015.05.01 06:14:41 2: PRESENCE (Steffen) - device could not be checked (retrying in 10 seconds)
2015.05.01 06:14:53 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 15691
2015.05.01 06:14:53 2: PRESENCE (Doreen) - device could not be checked (retrying in 10 seconds)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:15:45 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 16207
2015.05.01 06:15:45 2: PRESENCE (Liescha) - device could not be checked after 1 retry (retrying in 10 seconds)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:15:51 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 16268
2015.05.01 06:15:51 2: PRESENCE (Steffen) - device could not be checked after 1 retry (retrying in 10 seconds)
2015.05.01 06:15:56 3: Ragow_Kleinmachnow: Read response to Update didn't match any Reading(s)
2015.05.01 06:15:57 3: Ragow_Berlin: Read response to Update didn't match any Reading(s)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:16:03 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 16378
2015.05.01 06:16:03 2: PRESENCE (Doreen) - device could not be checked after 1 retry (retrying in 10 seconds)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:16:55 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 16641
2015.05.01 06:16:55 2: PRESENCE (Liescha) - device could not be checked after 2 retries (retrying in 10 seconds)
2015.05.01 06:17:02 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 16645
2015.05.01 06:17:02 2: PRESENCE (Steffen) - device could not be checked after 2 retries (retrying in 10 seconds)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:17:05 2: PRESENCE (Doreen) - check returned a valid result after 2 unsuccesful retries
2015.05.01 06:17:05 3: Notify gesendet
Can't init device hci0: Connection timed out (110)
2015.05.01 06:17:16 2: PRESENCE (Liescha) - check returned a valid result after 3 unsuccesful retries
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:18:07 2: PRESENCE (Steffen) - check returned a valid result after 3 unsuccesful retries
2015.05.01 06:18:07 3: Notify gesendet
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:18:55 3: HCS ThermeControl Found 6 Device(s): 0 FHT, 6 HM-CC-TC, 0 MAX, demand: 0, idle: 6, ignored: 0, excluded: 0, unknown: 0, eco: no overdrive: no
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:21:57 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 17247
2015.05.01 06:21:57 2: PRESENCE (Liescha) - device could not be checked (retrying in 10 seconds)
2015.05.01 06:21:57 3: Ragow_Kleinmachnow: Read response to Update didn't match any Reading(s)
2015.05.01 06:21:58 3: Ragow_Berlin: Read response to Update didn't match any Reading(s)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:22:23 2: PRESENCE (Liescha) - check returned a valid result after 1 unsuccesful retry
2015.05.01 06:22:28 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 17540
2015.05.01 06:22:28 2: PRESENCE (Steffen) - device could not be checked (retrying in 10 seconds)
2015.05.01 06:23:38 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 17893
2015.05.01 06:23:38 2: PRESENCE (Steffen) - device could not be checked after 1 retry (retrying in 10 seconds)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:23:56 3: HCS ThermeControl Found 6 Device(s): 0 FHT, 6 HM-CC-TC, 0 MAX, demand: 0, idle: 6, ignored: 0, excluded: 0, unknown: 0, eco: no overdrive: no
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:24:48 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 18505
2015.05.01 06:24:48 2: PRESENCE (Steffen) - device could not be checked after 2 retries (retrying in 10 seconds)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:25:18 2: PRESENCE (Steffen) - check returned a valid result after 3 unsuccesful retries
2015.05.01 06:25:19 3: Notify gesendet
Can't init device hci0: Connection timed out (110)
2015.05.01 06:26:13 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 18983
2015.05.01 06:26:13 2: PRESENCE (Liescha) - device could not be checked (retrying in 10 seconds)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:26:44 2: PRESENCE (Liescha) - check returned a valid result after 1 unsuccesful retry
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:27:57 3: Ragow_Kleinmachnow: Read response to Update didn't match any Reading(s)
2015.05.01 06:27:58 3: Ragow_Berlin: Read response to Update didn't match any Reading(s)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:28:56 3: HCS ThermeControl Found 6 Device(s): 0 FHT, 6 HM-CC-TC, 0 MAX, demand: 1, idle: 5, ignored: 0, excluded: 0, unknown: 0, eco: no overdrive: no
2015.05.01 06:28:56 3: CUL_HM set Therme on
2015.05.01 06:28:57 3: Notify gesendet
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:33:42 3: WW_AT: Keine Warnmeldung für die gesuchte Region vorhanden.
Can't init device hci0: Connection timed out (110)
2015.05.01 06:33:56 3: HCS ThermeControl Found 6 Device(s): 0 FHT, 6 HM-CC-TC, 0 MAX, demand: 1, idle: 5, ignored: 0, excluded: 0, unknown: 0, eco: no overdrive: no
2015.05.01 06:33:57 3: Ragow_Kleinmachnow: Read response to Update didn't match any Reading(s)
2015.05.01 06:33:58 3: Ragow_Berlin: Read response to Update didn't match any Reading(s)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:38:56 3: HCS ThermeControl Found 6 Device(s): 0 FHT, 6 HM-CC-TC, 0 MAX, demand: 1, idle: 5, ignored: 0, excluded: 0, unknown: 0, eco: no overdrive: no
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:39:57 3: Ragow_Kleinmachnow: Read response to Update didn't match any Reading(s)
2015.05.01 06:39:57 3: Ragow_Berlin: Read response to Update didn't match any Reading(s)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:43:56 3: HCS ThermeControl Found 6 Device(s): 0 FHT, 6 HM-CC-TC, 0 MAX, demand: 1, idle: 5, ignored: 0, excluded: 0, unknown: 0, eco: no overdrive: no
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:45:57 3: Ragow_Kleinmachnow: Read response to Update didn't match any Reading(s)
2015.05.01 06:45:58 3: Ragow_Berlin: Read response to Update didn't match any Reading(s)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:47:39 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 21744
2015.05.01 06:47:39 2: PRESENCE (Liescha) - device could not be checked (retrying in 10 seconds)
2015.05.01 06:47:49 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 21843
2015.05.01 06:47:49 2: PRESENCE (Steffen) - device could not be checked (retrying in 10 seconds)
2015.05.01 06:47:59 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 21942
2015.05.01 06:47:59 2: PRESENCE (Doreen) - device could not be checked (retrying in 10 seconds)
2015.05.01 06:48:49 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 22420
2015.05.01 06:48:49 2: PRESENCE (Liescha) - device could not be checked after 1 retry (retrying in 10 seconds)
2015.05.01 06:48:56 3: HCS ThermeControl Found 6 Device(s): 0 FHT, 6 HM-CC-TC, 0 MAX, demand: 1, idle: 5, ignored: 0, excluded: 0, unknown: 0, eco: no overdrive: no
2015.05.01 06:48:59 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 22521
2015.05.01 06:48:59 2: PRESENCE (Steffen) - device could not be checked after 1 retry (retrying in 10 seconds)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:49:15 2: PRESENCE (Doreen) - check returned a valid result after 1 unsuccesful retry
2015.05.01 06:49:15 3: Notify gesendet
Can't init device hci0: Connection timed out (110)
2015.05.01 06:49:24 2: PRESENCE (Liescha) - check returned a valid result after 2 unsuccesful retries
2015.05.01 06:50:09 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 23015
2015.05.01 06:50:09 2: PRESENCE (Steffen) - device could not be checked after 2 retries (retrying in 10 seconds)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:51:21 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 23488
2015.05.01 06:51:21 2: PRESENCE (Steffen) - device could not be checked after 3 retries (resuming normal operation)
2015.05.01 06:51:24 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 23493
2015.05.01 06:51:24 2: PRESENCE (Liescha) - device could not be checked (retrying in 10 seconds)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:51:58 3: Ragow_Berlin: Read response to Update didn't match any Reading(s)
2015.05.01 06:51:58 3: Ragow_Kleinmachnow: Read response to Update didn't match any Reading(s)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:52:24 2: PRESENCE (Steffen) - check returned a valid result after 4 unsuccesful retries
2015.05.01 06:52:24 3: Notify gesendet
2015.05.01 06:52:34 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 23919
2015.05.01 06:52:34 2: PRESENCE (Liescha) - device could not be checked after 1 retry (retrying in 10 seconds)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:53:44 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 24041
2015.05.01 06:53:44 2: PRESENCE (Liescha) - device could not be checked after 2 retries (retrying in 10 seconds)
2015.05.01 06:53:56 3: HCS ThermeControl Found 6 Device(s): 0 FHT, 6 HM-CC-TC, 0 MAX, demand: 1, idle: 5, ignored: 0, excluded: 0, unknown: 0, eco: no overdrive: no
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:54:14 2: PRESENCE (Liescha) - check returned a valid result after 3 unsuccesful retries
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:55:03 3: CUL_HM set Wz_DLampeDecke on
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:57:58 3: Ragow_Kleinmachnow: Read response to Update didn't match any Reading(s)
2015.05.01 06:57:58 3: Ragow_Berlin: Read response to Update didn't match any Reading(s)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
2015.05.01 06:58:56 3: HCS ThermeControl Found 6 Device(s): 0 FHT, 6 HM-CC-TC, 0 MAX, demand: 1, idle: 5, ignored: 0, excluded: 0, unknown: 0, eco: no overdrive: no
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)
Can't init device hci0: Connection timed out (110)


Es kommt nach einem Kompletten Restart des Cubi kurz zu einem Present geht dann aber nach ca.1 Minute wieder in Absent über und das blieb dann so die Ganze Nacht so!

Wenn ich den Cubi wieder neu starte kommt das gleiche Ergebnis, kurz Present dann dauerhaft Absent...

Vielleicht eine Idee was man ändern könnte oder wo ich nach schauen könnte woran es liegt?

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 02 Mai 2015, 15:40:36
Mahlzeit!

Version 0.4 von blescan.pl.
Wenn hcitool nun abbricht ohne überhaupt zu scannen wird ein entsprechender Fehler im Syslog und STDOUT erzeugt, der auch in FHEM sichtbar ist. Zuvor wurde in bestimmten Fällen "absent" zurückgemeldet, was nicht wirklich hilfreich war. Das passierte bei mir, wenn das Bluetooth-Device komplett weg war. An dieser Stelle vielen Dank für dieses bluez-Feature.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus M. am 02 Mai 2015, 18:03:52
Ich habe aktuell noch das Problem dass das Script plötzlich mehrmals läuft und so hci1 komplett blockiert.
Als kleiner Hinweis: meine Tags brauchen eine Scantime von 60 Sekunden.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 02 Mai 2015, 19:15:48
Zitat von: Markus M. am 02 Mai 2015, 18:03:52
Ich habe aktuell noch das Problem dass das Script plötzlich mehrmals läuft und so hci1 komplett blockiert.
Oha! Wie äussert sich das Blockieren von hci1?

Zitat von: Markus M. am 02 Mai 2015, 18:03:52
Als kleiner Hinweis: meine Tags brauchen eine Scantime von 60 Sekunden.
In welchen Intervallen lässt Du das Presence-Modul in FHEM das Skript aufrufen?
Wie viele Geräte fragt FHEM mit blescan ab?
Hast Du die G-Tags mit einem Gerät gepairt?

Patrick

/Edit: Habe mal eine kleine Statistik (3 G-Tags) gemacht:
Anzahl|Zeit bis zur Antwort
1730 0
1020 1
273 2
51 3
15 4
9 5
2 6
1 9
1 12

d. h. in den meisten Fällen ist die das Advertisement nach weniger als einer Sekunde da.

Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 03 Mai 2015, 13:10:23
Hallo!

Habe grundsätzlich bei meinem 3 G-tag auf dem cubi "error"
oder "Timeout"...

Hier mal ein paar Fehler Meldungen, vielleicht helfen die ja weiter?!



2015.05.03 13:01:08 2: PRESENCE (Steffen) - error while processing check: unexpected script output (expected 0 or 1): ERROR: hcitool exited before scanning.

2015.05.03 12:49:29 2: PRESENCE (Doreen) - error while processing check: unexpected script output (expected 0 or 1): ERROR: hcitool exited before scanning. Please check syslog!

2015.05.03 12:53:36 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 6258
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 03 Mai 2015, 13:14:10
Hey Steffen!

Was sagt denn
grep blescan.pl /var/log/syslog

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 03 Mai 2015, 13:43:06
Zitat von: PatrickR am 03 Mai 2015, 13:14:10
Hey Steffen!

Was sagt denn
grep blescan.pl /var/log/syslog

Patrick

Habe es mal in eine Text Datei geschrieben und wegen der Größe in zip datei wenn ok?!

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 03 Mai 2015, 20:47:58
Hi!

Uff, das ist ja richtig Lesestoff.

Eine Info vorweg:
Es kann immer nur ein Scan gleichzeitig laufen. Daher war das mit den 3 G-Tags, 60 Sekunden Scanzeit und ca. 2 Minuten Scanintervall am Anfang etwas ungünstig.

Zum Hauptproblem mal exemplarisch ein Durchlauf:


May  3 13:20:33 localhost blescan.pl[11024]: Version 0.4 started (mac address: 7C:2F:80:8F:9B:F7, duration: 10).
May  3 13:20:33 localhost blescan.pl[11024]: Acquired lock, Scanning...
May  3 13:20:33 localhost blescan.pl[11024]: Received 'Set scan parameters failed: Input/output error', resetting...
(Noch 89x 'Set scan parameters failed.)
May  3 13:20:51 localhost blescan.pl[11024]: Received 'Set scan parameters failed: Input/output error', resetting...
May  3 13:21:01 localhost blescan.pl[11024]: hcitool exited before scanning for bluetooth mac address '7C:2F:80:8F:9B:F7'.


Wenn man sich das mal anschaut hast Du 522 Aufrufe, die zu dem o. g. Fehler führen. Der Reset war scheinbar nur in zwei Fällen (pid 3100, 3120) erfolgreich.

Hast Du parallel auch per Hand resettet oder was anderes getan (bluetooth restartet, Dongle gezogen usw.)?
Ist hci0 Dein Bluetooth-Device?

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 03 Mai 2015, 21:39:23
Hallo!

Erstmal ein danke für deine mühe und geduld bei der Hilfe...

Ja ich hatte zwischen durch mal neu gestartet aber dann den ganzen Cubi und danach kam das gleiche ergebniss!

Welche Einstellungen zum Scanintervall und Scanzeit würdest du bei 3 G-tag empfehlen?

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 03 Mai 2015, 22:43:15
Hi!

Habe bei 3 G-Tags aktuell 15s Scanintervall und 60s/60s Intervall in FHEM.

Hast Du mal geschaut, ob hci0 Dein Bluetooth-Device ist? Falls nein könnte das erklären, warum bei Dir das Resetten so rein garnichts bringt.

Patrick

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: v.i.p.e.r am 04 Mai 2015, 19:26:24
mal ein Update vo mir:
Pi2 mit Logiink -> getauscht auf Asus BT-400

Es passiert genau das gleiche - egal ob bluetoothd läuft oder nicht, egal ob am Hub oder nicht. Langsam glaube ich, das es einfach am Pi und seinem "kernel" liegt.
Ärgert mich, dass ich da nicht weiter komme.

eventuell könnte jemand ohne pi mal den Output seiner Datei /etc/bluetooth/main.conf posten?

grep -v "^#" /etc/bluetooth/main.conf

VG
Tim
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 04 Mai 2015, 20:07:02
Falls es am Kernel liegt, könnte man noch die verschiedenen USB Kernelmodule ehci, ohci, uhci oder xhci durchprobieren. Ich habe gerade keinen Raspi am Laufen und kann daher nicht genau sagen, was im aktuellen Kernel verfügbar ist. (Achtung: Der Ethernetcontroller hängt mit am USB. D.h. wenn man nicht weiß, was man tut, sperrt man sich leicht aus.)

Interessant wäre natürlich auch ein Bluetooth- und USB-Sniff.

Ansonsten gibt es auch bei den ROM Varianten der CSR-Chips die Möglichkeit Patches per Pskeys einzuspielen. Dazu benötigt man aber die exakte Chip-Revision und einen guten Kontakt zum CSR-Support, um die passenden Patches zu erhalten.
Ich bin mir ziemlich sicher, dass CSR der Fehler bekannt ist.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 04 Mai 2015, 22:10:33
Zitat von: v.i.p.e.r am 04 Mai 2015, 19:26:24
eventuell könnte jemand ohne pi mal den Output seiner Datei /etc/bluetooth/main.conf posten?

grep -v "^#" /etc/bluetooth/main.conf


# uname -a
Linux laforge 3.2.0-4-amd64 #1 SMP Debian 3.2.68-1+deb7u1 x86_64 GNU/Linux
# grep -v "^#" /etc/bluetooth/main.conf|grep -v '^$'
[General]
Name = %h-%d
Class = 0x000100
DiscoverableTimeout = 0
PairableTimeout = 0
PageTimeout = 8192
DiscoverSchedulerInterval = 30
AutoConnectTimeout = 60
InitiallyPowered = true
RememberPowered = true
ReverseServiceDiscovery = true
NameResolving = true
DebugKeys = false
AttributeServer = false


Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 04 Mai 2015, 22:31:37
Ich hab jetzt mehrere Dongles ausprobiert. Auch unterschiedliche Hub's. Keine besserung. mal nach 5 min. ein reset, mal nach einer Stunde.
Aber immer nach spätestens 20 Stunden ist das System tot und nichts geht mehr.
Habe 2 gdata mit 60 60 60 versucht. Lasse jetzt über nacht mal einen mit 15 60 60 laufen.

Linux raspi 3.18.11-v7+ #777 SMP PREEMPT Sat Apr 11 17:30:37 BST 2015 armv7l GNU/Linux
root@raspi:/home/pi# grep -v "^#" /etc/bluetooth/main.conf
[General]
Name = %h-%d
Class = 0x000100
DiscoverableTimeout = 0
PairableTimeout = 0
PageTimeout = 8192
DiscoverSchedulerInterval = 30
AutoConnectTimeout = 60
InitiallyPowered = true
RememberPowered = true
ReverseServiceDiscovery = true
NameResolving = true
DebugKeys = false
AttributeServer = false


syslog: im anhang

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 04 Mai 2015, 23:25:17
@Atze:
Sieht aber so aus als würden bei Dir die Resets durchaus funktionieren. Wenn die Resets dauerhaft erfolglos sind kommt

hcitool exited before scanning for bluetooth mac address

nicht aber

Did NOT receive an advertisement from bluetooth mac address


Wenn ich was übersehen habe bitte kurze Info mit Zeitstempel.

/Edit:
Was mir gerade auffällt ist das Problem mit der 60/60/60-Einstellung. Du hast 39148(!) Einträge mit "blescan.pl is already running..." im Log, die nach der Umstellung auf 15/60/60 fast vollständig weg sind.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 05 Mai 2015, 07:07:27
Moin,
so nach ca. 6 Stunden mit einem Gdata 15 60 60 ... ist FHEM wieder tot. Kein schalten mehr möglich. "Affengriff" auf der Tastatur ist aber diesmal noch möglich.
Meistens sind alle USB Geräte blockiert.  :'(

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 05 Mai 2015, 08:10:49
@Atze:
Ok, ich hatte wohl "System tot" falsch interpretiert. Also der RPi steht. Hast Du mal versucht einzugrenzen, wo das Problem ist? Also hängt FHEM oder das Betriebssystem (funktioniert ssh noch)? Was steht denn vor dem Reboot im Syslog?

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 05 Mai 2015, 08:47:02
Probiert mal
dwc_otg.speed=1  dwc_otg.lpm_enable=0

in die /boot/cmdline.txt mit aufzunehmen.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: v.i.p.e.r am 05 Mai 2015, 11:54:15
Danke PatrickR und gero

Ich habe heute mal ein neues PI2 mit Wheezy installiert und auf Jessie geupdatet. Danach FHEM installiert und Bluetooth soweit installiert.(Logilink Dongle) Läuft seit mehreren Stunden ohne aufhängen des Bluetooth Geräts - sprich keine logeinträge mit resetting.

Mein Produktives Pi läuft mit dem Asus Stick auch seit mehreren Stunden aktiv - allerdings wird hier der Stick alle 3-5 Minuten resetet - das schein da nun auch richtig zu klappen. Nur ist mir das ehrlich gesagt zu oft.

Es scheint also tatsächlich mit dem "alten" Wheezy zu tun zu haben. Jetzt müsste man nur noch raus finden was sich geändert hat und eventuell kann man dann aus backports die benötigten Sachen in sein Wheezy nachinstallieren.

Zitat von: gero am 05 Mai 2015, 08:47:02
Probiert mal
dwc_otg.speed=1  dwc_otg.lpm_enable=0

in die /boot/cmdline.txt mit aufzunehmen.

Gruß,
Gero

Damit sollte man aber aufpassen oder? Kann sein, dass dan WLAN, LAN und andere Sachen am USB nicht mehr richtig klappen oder?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 05 Mai 2015, 13:20:32
Zitat von: v.i.p.e.r am 05 Mai 2015, 11:54:15
Es scheint also tatsächlich mit dem "alten" Wheezy zu tun zu haben. Jetzt müsste man nur noch raus finden was sich geändert hat und eventuell kann man dann aus backports die benötigten Sachen in sein Wheezy nachinstallieren.
Nun, an dem Verhalten von hcitool sind nicht soviele Komponenten beteiligt: Da bleibt nur der Kernel und die Kernelmodule und das hcitool und dessen Abhängigkeiten in Bluez selbst.

Zitat von: v.i.p.e.r am 05 Mai 2015, 11:54:15
dwc_otg.speed=1  dwc_otg.lpm_enable=0
Damit sollte man aber aufpassen oder? Kann sein, dass dan WLAN, LAN und andere Sachen am USB nicht mehr richtig klappen oder?
dwc_otg.speed=1
beschränkt die USB Geschwindigkeit auf 12Mbit

dwc_otg.lpm_enable=0
schalten das LPM (Link Power Management) vom USB ab.

Den zweiten Punkt wirst du vermutlich kaum merken. Und wieviel Geschwindigkeit du bei der USB-Übertragung brauchst, ist die Frage.
Aber um das Problem einzugrenzen ist es ein wichtiger Schritt. Falls dieser Schritt erfolgreich ist, kann man evtl. über das sysfs die einzelnen Features auch nur für das BTDongle abschalten.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: v.i.p.e.r am 05 Mai 2015, 13:52:08
Hi,

hab die Werte mal gesetzt und neugestartet. Hat nix gebracht. Der regelmäßige reset bleibt.
Was mir noch einfällt ist, dass ich erst die Version 4.XX aus dem APT repository installiert hatte und danach hab ich erst auf 5.30 "geupdated" - Eventuell ist da etwas nicht ganz sauber verlaufen. Aber hier hat ja noch jemand das Problem gehabt bei gleicher Konstellation.


VG
Tim
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 05 Mai 2015, 14:08:49
Zitat von: v.i.p.e.r am 05 Mai 2015, 13:52:08
hab die Werte mal gesetzt und neugestartet. Hat nix gebracht. Der regelmäßige reset bleibt.

Schade.
Da bleibt wohl nur dein zweites System auch auf Jessie hochzuziehen.
Vielleicht habe ich die nächsten Tage mal Zeit auf einem meiner Raspis das Problem nachzustellen.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 05 Mai 2015, 20:07:06
Guten Abend!

Version 0.5 von blescan.pl:
-Die Einstellung des BLUETOOTH_DEVICE im Skript wird nun auch zum Scannen benutzt.
-Findet ein Reset des Bluetooth-Device statt wird der Scan-Timer zurück gesetzt.

Zwei Worte der Warnung:
-Wenn Euer Bluetooth-Gerät nicht hci0 ist müsst Ihr die Einstellung im Skript anpassen.
-Wenn alles soweit funktioniert solltet Ihr unbeding den Log-Level im Skript auf LOG_INFO setzen, insbesondere wenn Ihr einen Raspberry Pi nutzt.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: v.i.p.e.r am 07 Mai 2015, 20:10:49
Mir scheint es, als ob das Script trotz das es was gefunden hat manchmal Did NOT receive ausgibt - kann das jemand bestätigen?

7 20:06:42 raspberrypi blescan.pl[30894]: Version 0.5 started (device: hci0, mac address: 7C:2F:80:90:88:FE, duration: 5).
May  7 20:06:48 raspberrypi blescan.pl[30894]: Received advertisement from desired bluetooth mac address '7C:2F:80:90:88:FE' with name '(unknown)' after 1 seconds.
May  7 20:06:52 raspberrypi blescan.pl[30894]: Did NOT receive an advertisement from bluetooth mac address '7C:2F:80:90:88:FE'.
May  7 20:07:53 raspberrypi blescan.pl[30918]: Version 0.5 started (device: hci0, mac address: 7C:2F:80:90:88:FE, duration: 5).
May  7 20:07:54 raspberrypi blescan.pl[30918]: Received advertisement from desired bluetooth mac address '7C:2F:80:90:88:FE' with name '(unknown)' after 1 seconds.
May  7 20:07:58 raspberrypi blescan.pl[30918]: Did NOT receive an advertisement from bluetooth mac address '7C:2F:80:90:88:FE'.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 07 Mai 2015, 22:11:07
@viper:
Ok, da ist definitiv was im Eimer. Sehe gerade, dass ich an einer Stelle kein 100%iges Error-Handling habe. Das rüste ich mal nach.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 07 Mai 2015, 22:48:54
@v.i.p.e.r:
Probier mal bitte die Version 0.6. Das Problem ist zwar nicht behoben aber beim nächsten Mal sollten wir eine vernünftige Fehlermeldung bekommen.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: v.i.p.e.r am 08 Mai 2015, 20:21:25
im FHEM log findet sich nun folgendes:

May  8 20:19:48 PRESENCE (WO_Tim) - error while processing check: unexpected script output (expected 0 or 1): ERROR: refcnt: fd -1 < 0!

im syslog:

May  8 20:19:48 raspberrypi blescan.pl[24329]: ERROR: refcnt: fd -1 < 0!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 08 Mai 2015, 21:40:44
@v.i.p.e.r:
//Edit: Kommando zurück. Ich schaue es mir erstmal in Ruhe an.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Flexstarr am 18 Mai 2015, 23:19:16
Gibt's bereits neue Erkenntnisse?
Gleiches Setup auch bei mir.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 18 Mai 2015, 23:25:13
@Flexstarr:
Ja, bei v.i.p.e.r läuft es nun rund. Muss das Skript noch etwas aufräumen dann lade ich eine neue Version hoch.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: StefanW am 19 Mai 2015, 17:18:41
Hallo PatrickR,

ich habe am WE auch mal dein Script in Version 0.5 getestet.
Beim ersten Versuch klappte alles auch etwa für 12h, dann ist anscheinend der BT-Stick am Cubie ausgestiegen.
Beim 2ten Versuch war nach etwa 2h Schluss.

Hier mal die Einträge aus FHEM & Syslog:

FHEM:
2015.05.17 11:29:18 2: PRESENCE (GTag_Auto) - error while processing check: unexpected script output (expected 0 or 1): ERROR: hcitool exited before scanning. Please check syslog!
2015.05.17 11:29:23 2: PRESENCE (GTag_Fahrrad) - error while processing check: unexpected script output (expected 0 or 1): ERROR: hcitool exited before scanning. Please check syslog!


Syslog:
May 17 11:34:24 localhost blescan.pl[5002]: Version 0.5 started (device: hci0, mac address: 7C:2F:80:8E:FA:51, duration: 15).
May 17 11:34:24 localhost blescan.pl[5002]: Acquired lock, Scanning...
May 17 11:34:24 localhost blescan.pl[5002]: Received unknown output: 'Invalid device: Network is down'!
May 17 11:34:24 localhost blescan.pl[5002]: hcitool exited before scanning for bluetooth mac address '7C:2F:80:8E:FA:51'.


Wäre der Fehler in der kommenden Version auch behoben?

Gruß
Stefan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 19 Mai 2015, 21:32:39
Hi!

Version 0.8:
-Diverse Änderungen, die verhindern, dass das Skript sich nicht sauber beendet.
-Bei 'Invalid device: Network is down' wird nun auch ein reset durchgeführt.
v.i.p.e.r hat freundlicherweise für die Fehlersuche ein Gerät zur Verfügung gestellt, das so ziemlich alle bluez-Fehler gezielt erzeugt :)

@StefanW: Die zweite Änderung sollte Dir helfen.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: StefanW am 20 Mai 2015, 15:25:13
Danke!
Ich werde es testen & berichten. :-)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 20 Mai 2015, 20:25:05
Hallo,
ich hab dann auch mal mein Systen neu gemacht, (Debian 8, RPI 2) und die neue 0.8 eingespielt.

Nach ca. 12 Stunden Laufzeit bekomme ich mehrfach im Sekundentakt im syslog folgende Meldung:
May 20 12:48:39 aliendeb blescan.pl[16865]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:40 aliendeb blescan.pl[15915]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:40 aliendeb blescan.pl[16290]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:40 aliendeb blescan.pl[16450]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:40 aliendeb blescan.pl[16208]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:40 aliendeb blescan.pl[16378]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:40 aliendeb blescan.pl[16515]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:41 aliendeb blescan.pl[16062]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:41 aliendeb blescan.pl[16075]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:41 aliendeb blescan.pl[16132]: blescan.pl is already running. Sleeping 5 seconds.


Im Fhemlog erscheint:
2015.05.20 20:00:55 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 5175
2015.05.20 20:02:09 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 5220
2015.05.20 20:03:21 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 5279
2015.05.20 20:04:34 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 5319
2015.05.20 20:05:47 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 5357
2015.05.20 20:06:59 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 5395
2015.05.20 20:08:11 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 5434
2015.05.20 20:09:24 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 5493
2015.05.20 20:10:36 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 5555
2015.05.20 20:11:49 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 5600


Läuft noch nicht wirklich rund  :'(
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 20 Mai 2015, 20:54:31
Zitat von: Atze am 20 Mai 2015, 20:25:05
Hallo,
ich hab dann auch mal mein Systen neu gemacht, (Debian 8, RPI 2) und die neue 0.8 eingespielt.

Nach ca. 12 Stunden Laufzeit bekomme ich mehrfach im Sekundentakt im syslog folgende Meldung:
May 20 12:48:39 aliendeb blescan.pl[16865]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:40 aliendeb blescan.pl[15915]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:40 aliendeb blescan.pl[16290]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:40 aliendeb blescan.pl[16450]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:40 aliendeb blescan.pl[16208]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:40 aliendeb blescan.pl[16378]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:40 aliendeb blescan.pl[16515]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:41 aliendeb blescan.pl[16062]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:41 aliendeb blescan.pl[16075]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:48:41 aliendeb blescan.pl[16132]: blescan.pl is already running. Sleeping 5 seconds.


Oh, das ist aber unschön. Interessant wären mal die letzten sagen wir mal 25 Logausgaben vor der "already running"-Kaskade.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 20 Mai 2015, 21:54:19
da steht das hier:
May 20 12:21:35 aliendeb blescan.pl[15287]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:21:38 aliendeb blescan.pl[15197]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:21:40 aliendeb blescan.pl[15289]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:21:40 aliendeb blescan.pl[15287]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:21:43 aliendeb blescan.pl[15197]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:21:44 aliendeb blescan.pl[15195]: Did NOT receive an advertisement from bluetooth mac address '7C:2F:80:91:72:18'.
May 20 12:21:45 aliendeb blescan.pl[15287]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:21:46 aliendeb blescan.pl[15289]: Received advertisement from desired bluetooth mac address '7C:2F:80:91:71:A3' with name '(unknown)' after 1 seconds.
May 20 12:21:48 aliendeb blescan.pl[15197]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:21:50 aliendeb blescan.pl[15287]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:21:51 aliendeb blescan.pl[15289]: Timeout (5s) occured while closing hcitool handle. Sending SIGTERM to hcitool process.
May 20 12:21:51 aliendeb fhem[347]: refcnt: fd -1 < 0
May 20 12:21:53 aliendeb blescan.pl[15197]: Received 'Set scan parameters failed: Input/output error', resetting...
May 20 12:21:55 aliendeb blescan.pl[15197]: Received advertisement from desired bluetooth mac address '7C:2F:80:91:71:A3' with name '(unknown)' after 1 seconds.
May 20 12:21:55 aliendeb blescan.pl[15287]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:22:00 aliendeb blescan.pl[15197]: Timeout (5s) occured while closing hcitool handle. Sending SIGTERM to hcitool process.
May 20 12:22:00 aliendeb fhem[347]: refcnt: fd -1 < 0
May 20 12:22:00 aliendeb blescan.pl[15287]: Received 'Set scan parameters failed: Input/output error', resetting...
May 20 12:22:32 aliendeb blescan.pl[15360]: Version 0.8 started (device: hci0, mac address: 7C:2F:80:91:72:18, duration: 60).
May 20 12:22:32 aliendeb blescan.pl[15360]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:22:37 aliendeb blescan.pl[15360]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:22:42 aliendeb blescan.pl[15360]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:22:47 aliendeb blescan.pl[15360]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:22:51 aliendeb blescan.pl[15371]: Version 0.8 started (device: hci0, mac address: 7C:2F:80:91:71:A3, duration: 60).
May 20 12:22:51 aliendeb blescan.pl[15371]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:22:52 aliendeb blescan.pl[15360]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:22:56 aliendeb blescan.pl[15371]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:22:57 aliendeb blescan.pl[15360]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:23:01 aliendeb blescan.pl[15371]: blescan.pl is already running. Sleeping 5 seconds.
May 20 12:23:01 aliendeb blescan.pl[15287]: Did NOT receive an advertisement from bluetooth mac address '7C:2F:80:91:72:18'.
May 20 12:23:06 aliendeb blescan.pl[15371]: blescan.pl is already running. Sleeping 5 seconds.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 20 Mai 2015, 22:11:32
@Atze:
Welche Intervalle hast Du in FHEM eingestellt?
Wie viele Geräte fragst Du ab? 2?

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 20 Mai 2015, 23:13:42
2 Geräte, 60 60 60.

ich glaube die Fehler beginnen sobald das erste Device nicht mehr pingbar (abwesend) ist.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 20 Mai 2015, 23:17:15
@Atze:
Also das Problem ist, dass alle 60 Sekunden blescan.pl aufgerufen wird und im worst case, d. h. wenn ein Gerät nicht erreichbar ist, volle 60 Sekunden läuft. Da aber nur ein Scan gleichzeitig statt finden kann sammeln sich die Prozesse und bauen eine riesige Warteschlange auf bis der Scharfrichter kommt (in diesem Fall FHEM) und sie zu Grunde richtet.

Lösung: Scanzeit von blescan.pl heruntersetzen oder das Intervall in FHEM hochsetzen.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 21 Mai 2015, 00:07:12
Is schon spät und ich steh ein wenig auf der Leitung.

<para1> Bluescript wird mit alle x Sekunden aufgerufen, egal was passiert
<para2> check-interval - Das normale Prüfinterval in Sekunden für eine Anwesenheitsprüfung
<para3> present-check-interval - Das Prüfinterval in Sekunden, wenn ein Gerät anwesend (present) ist

angenommen 15 60 60  sollte dann doch eigentlich für 2 Geräte ausreichend sein, oder ?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: StefanW am 21 Mai 2015, 05:14:25
Also, bei mir läuft es auch noch nicht rund.
Interval bei 2 Geräten ist 15 60 60

May 20 23:21:43 localhost bluetoothd[2373]: Adapter /org/bluez/2373/hci0 has been enabled
May 20 23:21:44 localhost blescan.pl[22246]: Received advertisement from desired bluetooth mac address '7C:2F:80:8E:FA:51' with name '(unknown)' after 0 seconds.
May 20 23:22:06 localhost blescan.pl[22252]: Version 0.8 started (device: hci0, mac address: 7C:2F:80:8E:95:FE, duration: 15).
May 20 23:22:07 localhost blescan.pl[22252]: Received advertisement from desired bluetooth mac address '7C:2F:80:8E:95:FE' with name '(unknown)' after 1 seconds.
May 20 23:22:45 localhost blescan.pl[22288]: Version 0.8 started (device: hci0, mac address: 7C:2F:80:8E:FA:51, duration: 15).
May 20 23:22:45 localhost blescan.pl[22288]: Received 'Set scan parameters failed: Input/output error', resetting...
May 20 23:22:45 localhost bluetoothd[2373]: HCI dev 0 down
May 20 23:22:45 localhost bluetoothd[2373]: Adapter /org/bluez/2373/hci0 has been disabled
May 20 23:22:45 localhost bluetoothd[2373]: Error parsing EIR data: Invalid argument (22)
May 20 23:22:56 localhost blescan.pl[22288]: Received 'Invalid device: Network is down', resetting...
May 20 23:23:07 localhost blescan.pl[22288]: Received 'Invalid device: Network is down', resetting...
May 20 23:23:08 localhost blescan.pl[22298]: Version 0.8 started (device: hci0, mac address: 7C:2F:80:8E:95:FE, duration: 15).
May 20 23:23:08 localhost blescan.pl[22298]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:23:13 localhost blescan.pl[22298]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:23:18 localhost blescan.pl[22298]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:23:18 localhost blescan.pl[22288]: Received 'Invalid device: Network is down', resetting...
May 20 23:23:23 localhost blescan.pl[22298]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:23:28 localhost blescan.pl[22298]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:23:29 localhost blescan.pl[22288]: Maximum number of retries (5) exceeded.
May 20 23:23:33 localhost blescan.pl[22298]: Received 'Invalid device: Network is down', resetting...
May 20 23:23:44 localhost blescan.pl[22298]: Received 'Invalid device: Network is down', resetting...
May 20 23:23:55 localhost blescan.pl[22298]: Received 'Invalid device: Network is down', resetting...
May 20 23:24:06 localhost blescan.pl[22298]: Received 'Invalid device: Network is down', resetting...
May 20 23:24:17 localhost blescan.pl[22298]: Maximum number of retries (5) exceeded.
May 20 23:24:18 localhost blescan.pl[22343]: Version 0.8 started (device: hci0, mac address: 7C:2F:80:8E:95:FE, duration: 15).
May 20 23:24:18 localhost blescan.pl[22343]: Received 'Invalid device: Network is down', resetting...
May 20 23:24:29 localhost blescan.pl[22343]: Received 'Invalid device: Network is down', resetting...
May 20 23:24:29 localhost bluetoothd[2373]: Device is already marked as connected
May 20 23:24:29 localhost blescan.pl[22350]: Version 0.8 started (device: hci0, mac address: 7C:2F:80:8E:FA:51, duration: 15).
May 20 23:24:29 localhost blescan.pl[22350]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:24:34 localhost blescan.pl[22350]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:24:39 localhost blescan.pl[22350]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:24:40 localhost blescan.pl[22343]: Received 'Invalid device: Network is down', resetting...
May 20 23:24:44 localhost blescan.pl[22350]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:24:49 localhost blescan.pl[22350]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:24:51 localhost blescan.pl[22343]: Received 'Invalid device: Network is down', resetting...
May 20 23:24:54 localhost blescan.pl[22350]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:24:59 localhost blescan.pl[22350]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:25:02 localhost blescan.pl[22343]: Maximum number of retries (5) exceeded.
May 20 23:25:04 localhost blescan.pl[22350]: Received 'Invalid device: Network is down', resetting...
May 20 23:25:15 localhost blescan.pl[22350]: Received 'Invalid device: Network is down', resetting...
May 20 23:25:26 localhost blescan.pl[22350]: Received 'Invalid device: Network is down', resetting...
May 20 23:25:26 localhost bluetoothd[2373]: Device is already marked as connected
May 20 23:25:37 localhost blescan.pl[22350]: Received 'Invalid device: Network is down', resetting...
May 20 23:25:39 localhost blescan.pl[22429]: Version 0.8 started (device: hci0, mac address: 7C:2F:80:8E:FA:51, duration: 15).
May 20 23:25:39 localhost blescan.pl[22429]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:25:44 localhost blescan.pl[22429]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:25:48 localhost blescan.pl[22350]: Maximum number of retries (5) exceeded.
May 20 23:25:49 localhost blescan.pl[22429]: Received 'Invalid device: Network is down', resetting...
May 20 23:26:00 localhost blescan.pl[22429]: Received 'Invalid device: Network is down', resetting...
May 20 23:26:02 localhost blescan.pl[22436]: Version 0.8 started (device: hci0, mac address: 7C:2F:80:8E:95:FE, duration: 15).
May 20 23:26:02 localhost blescan.pl[22436]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:26:07 localhost blescan.pl[22436]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:26:11 localhost blescan.pl[22429]: Received 'Invalid device: Network is down', resetting...
May 20 23:26:12 localhost blescan.pl[22436]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:26:17 localhost blescan.pl[22436]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:26:22 localhost blescan.pl[22436]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:26:22 localhost blescan.pl[22429]: Received 'Invalid device: Network is down', resetting...
May 20 23:26:23 localhost bluetoothd[2373]: Device is already marked as connected
May 20 23:26:27 localhost blescan.pl[22436]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:26:32 localhost blescan.pl[22436]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:26:33 localhost blescan.pl[22429]: Maximum number of retries (5) exceeded.
May 20 23:26:37 localhost blescan.pl[22436]: Received 'Invalid device: Network is down', resetting...
May 20 23:26:48 localhost blescan.pl[22436]: Received 'Invalid device: Network is down', resetting...
May 20 23:26:59 localhost blescan.pl[22436]: Received 'Invalid device: Network is down', resetting...
May 20 23:27:10 localhost blescan.pl[22436]: Received 'Invalid device: Network is down', resetting...
May 20 23:27:12 localhost blescan.pl[22483]: Version 0.8 started (device: hci0, mac address: 7C:2F:80:8E:95:FE, duration: 15).
May 20 23:27:12 localhost blescan.pl[22483]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:27:17 localhost blescan.pl[22483]: blescan.pl is already running. Sleeping 5 seconds.
May 20 23:27:21 localhost blescan.pl[22436]: Maximum number of retries (5) exceeded.


2015.05.20 23:17:38 2: PRESENCE (GTag_Fahrrad) - error while processing check: unexpected script output (expected 0 or 1): ERROR: Maximum number of retries exceeded.
2015.05.20 23:23:29 2: PRESENCE (GTag_Fahrrad) - error while processing check: unexpected script output (expected 0 or 1): ERROR: Maximum number of retries exceeded.
2015.05.20 23:24:07 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 22296
2015.05.20 23:24:07 2: PRESENCE (GTag_Auto) - device could not be checked (retrying in 10 seconds)
2015.05.20 23:25:02 2: PRESENCE (GTag_Auto) - check returned a valid result after 1 unsuccesful retry
2015.05.20 23:25:02 2: PRESENCE (GTag_Auto) - error while processing check: unexpected script output (expected 0 or 1): ERROR: Maximum number of retries exceeded.
2015.05.20 23:25:29 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 22348
2015.05.20 23:25:29 2: PRESENCE (GTag_Fahrrad) - device could not be checked (retrying in 10 seconds)
2015.05.20 23:26:33 2: PRESENCE (GTag_Fahrrad) - check returned a valid result after 1 unsuccesful retry
2015.05.20 23:26:33 2: PRESENCE (GTag_Fahrrad) - error while processing check: unexpected script output (expected 0 or 1): ERROR: Maximum number of retries exceeded.
2015.05.20 23:27:02 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 22434
2015.05.20 23:27:02 2: PRESENCE (GTag_Auto) - device could not be checked (retrying in 10 seconds)
2015.05.20 23:28:06 2: PRESENCE (GTag_Auto) - check returned a valid result after 1 unsuccesful retry
2015.05.20 23:28:06 2: PRESENCE (GTag_Auto) - error while processing check: unexpected script output (expected 0 or 1): ERROR: Maximum number of retries exceeded.
2015.05.20 23:28:33 1: Timeout for PRESENCE_DoLocalShellScriptScan reached, terminated process 22520
2015.05.20 23:28:33 2: PRESENCE (GTag_Fahrrad) - device could not be checked (retrying in 10 seconds)
2015.05.20 23:29:38 2: PRESENCE (GTag_Fahrrad) - check returned a valid result after 1 unsuccesful retry
2015.05.20 23:29:38 2: PRESENCE (GTag_Fahrrad) - error while processing check: unexpected script output (expected 0 or 1): ERROR: Maximum number of retries exceeded.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 21 Mai 2015, 08:24:07
@Atze:

So sind die Einstellungen schonmal gut. Die verwende ich auch, sogar mit 3 G-Tags.

Das Log sieht so aus als würde sich das Script mit allen zur Verfügung stehenden Möglichkeiten (und das ist nur hciconfig reset) versuchen, den Scan hinzubekommen aber durch bluez mit variierenden Fehlermeldungen totgeworfen werden. Hier führt wohl kein Weg dran vorbei, außerhalb des Skripts Lösungen durchzuprobieren: reboot, Paketupdate, rpi-update, anderer USB-Dongle. Vielleicht hat ja einer der anderen RPi-Nutzer noch eine Idee oder einen Tipp.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 21 Mai 2015, 12:04:19
Vor allem würde ich den bluetoothd deaktivieren. Er ist für das hcitool völlig unnötig. Das einzige, was du evtl. brauchst, wenn es nicht ohnehin durch das Script erledigt wird, ist ein hciconfig hci0 up.
Wenn sich auch noch der bluetoothd die ganze Zeit einmischt, wird es schwer ein stabiles System zu bekommen.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 21 Mai 2015, 20:54:10
Wenn bluettothd deaktiviert ist, funktioniert das script aber nicht mehr.

$
May 21 20:51:33 aliendeb blescan.pl[5291]: Version 0.8 started (device: hci0, mac address: 7C:2F:80:91:71:A3, duration: 15).
May 21 20:51:33 aliendeb blescan.pl[5291]: Received unknown output: 'Invalid device: No such device'!
May 21 20:51:34 aliendeb blescan.pl[5291]: Received unknown output: 'Invalid device: No such device'!
May 21 20:51:35 aliendeb blescan.pl[5291]: Received unknown output: 'Invalid device: No such device'!
May 21 20:51:36 aliendeb blescan.pl[5291]: Received unknown output: 'Invalid device: No such device'!
May 21 20:51:37 aliendeb blescan.pl[5291]: Maximum number of retries (5) exceeded.
May 21 20:51:49 aliendeb blescan.pl[5321]: Version 0.8 started (device: hci0, mac address: 7C:2F:80:91:72:18, duration: 15).
May 21 20:51:49 aliendeb blescan.pl[5321]: Received unknown output: 'Invalid device: No such device'!
May 21 20:51:50 aliendeb blescan.pl[5321]: Received unknown output: 'Invalid device: No such device'!
May 21 20:51:51 aliendeb blescan.pl[5321]: Received unknown output: 'Invalid device: No such device'!
May 21 20:51:52 aliendeb blescan.pl[5321]: Received unknown output: 'Invalid device: No such device'!
May 21 20:51:53 aliendeb blescan.pl[5321]: Maximum number of retries (5) exceeded.
May 21 20:52:38 aliendeb blescan.pl[5384]: Version 0.8 started (device: hci0, mac address: 7C:2F:80:91:71:A3, duration: 15).
May 21 20:52:38 aliendeb blescan.pl[5384]: Received unknown output: 'Invalid device: No such device'!
May 21 20:52:39 aliendeb blescan.pl[5384]: Received unknown output: 'Invalid device: No such device'!
May 21 20:52:40 aliendeb blescan.pl[5384]: Received unknown output: 'Invalid device: No such device'!
May 21 20:52:41 aliendeb blescan.pl[5384]: Received unknown output: 'Invalid device: No such device'!
May 21 20:52:42 aliendeb blescan.pl[5384]: Maximum number of retries (5) exceeded.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 22 Mai 2015, 06:58:56
Wie schon geschrieben, fehlt ein  "hciconfig hci0 up" um den Bluetoothadapter zu aktivieren.
Das Script sollte prüfen, ob der Bluetoothadapter verfügbar ist, und ihn ggfls. aktivieren.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: steven am 22 Mai 2015, 20:37:50
Hallo,


kann jemand was zu dieser Ausgabe sagen?


2015.05.22 20:32:56 5: PRESENCE (BLE_tag) - stopping timer
2015.05.22 20:32:56 5: PRESENCE (BLE_tag) - starting blocking call for mode shellscript
2015.05.22 20:32:56 5: PRESENCE (BLE_tag) - execute local shell script: BLE_tag|sudo /opt/fhem/pr/blescan.pl 84:EB:18:7B:93:14 15|0
2015.05.22 20:32:56 5: PRESENCE (BLE_tag) - script output:
2015.05.22 20:32:56 5: Cmd: >{PRESENCE_ProcessLocalScan('BLE_tag|0|error|unexpected script output (expected 0 or 1): ')}<
2015.05.22 20:32:56 5: PRESENCE (BLE_tag) - blocking scan result: BLE_tag|0|error|unexpected script output (expected 0 or 1):
2015.05.22 20:32:56 2: PRESENCE (BLE_tag) - error while processing check: unexpected script output (expected 0 or 1):
2015.05.22 20:32:56 4: PRESENCE (BLE_tag) - rescheduling next check in 60 seconds


in der Shell kommt der entsprechende Wert 1 o. 0 zurück.

danke
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: steven am 22 Mai 2015, 20:51:11
der Eintrag in der /etc/sudoers fehlte
fhem ALL=NOPASSWD: /opt/fhem/pr/blescan.pl
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus M. am 23 Mai 2015, 16:14:07
Leider nach wie vor unbrauchbar für BLE Tracker mit Advertise im Minutenbereich (55sec).
Nach einem halben Tag sieht die Prozessliste so aus:
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 23 Mai 2015, 16:39:24
Zitat von: Markus M. am 23 Mai 2015, 16:14:07
Leider nach wie vor unbrauchbar für BLE Tracker mit Advertise im Minutenbereich (55sec).
Nach einem halben Tag sieht die Prozessliste so aus:
Ich fürchte, das wird sich mit dem gewählten Ansatz auch nicht ändern, zumal Du mit 5 Trackern im worst case erst nach 5 Minuten eine Änderung mitbekommst.

Es hat nicht zufällig schon jemand im stillen Kämmerlein einen Daemon in Arbeit, der permanent mitlauscht? :)

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 23 Mai 2015, 16:46:49
die version die ständig mit lauscht gibt es im prinzip weiter oben im
thread. die müsste man 'nur' schön machen. man braucht dafür hält einen dedizierten le dongle.

gruß
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 23 Mai 2015, 16:50:35
Zitat von: justme1968 am 23 Mai 2015, 16:46:49
die version die ständig mit lauscht gibt es im prinzip weiter oben im
thread. die müsste man 'nur' schön machen. man braucht dafür hält einen dedizierten le dongle.
Hast Du mal nen Link zum Posting? Der Thread ist etwas unübersichtlich.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 23 Mai 2015, 17:40:51
die beschreibung ist hier: http://forum.fhem.de/index.php/topic,28753.msg222464.html#msg222464

und die letzte version ist glaube ich hier: http://forum.fhem.de/index.php/topic,28753.msg223164.html#msg223164

du musst aber im thread noch etwas lesen da es ein paar randbedingungen gibt.

gruß
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus Bloch am 23 Mai 2015, 18:46:28
Ich habe mir soeben einen PebbleBee bestellt und werde mich da mal ranbegeben den Modulvorschlag von Andre umzusetzen.

Viele Grüße

Markus
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 23 Mai 2015, 19:05:38
das finde ich sehr gut :)

ich bin gerade dabei in jedem stockwerk einen rasberry pi mit bluetooth modul zu installieren. vielleicht schaffen wir es auch die signalstärke in das modul zu bekommen.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 23 Mai 2015, 19:07:44
Geht das mit der Signalstärke mit lescan?


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus M. am 23 Mai 2015, 19:16:03
Zitat von: PatrickR am 23 Mai 2015, 16:39:24
Ich fürchte, das wird sich mit dem gewählten Ansatz auch nicht ändern, zumal Du mit 5 Trackern im worst case erst nach 5 Minuten eine Änderung mitbekommst.

Das wäre völlig ok. Es geht mir hier noch gar nicht um die Daten.
Da sind aber nicht 5 Prozesse die warten - oder wie es eigentlich sein sollte nur einer, sondern das ganze Skipt funktioniert überhaupt nicht mehr wenn es blockiert, startet munter hunderte neue Prozesse und räumt auch nicht seinen Scheiss hinter sich weg.

Ich probier mal PRESENCED aus.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 23 Mai 2015, 19:56:11
Die Prozesse startet das Presence-Modul und nicht das Skript. Daraus und aus den Einstellungen des Nutzers resultiert auch die Zahl der wartenden Prozesse. Was genau wird nicht aufgeräumt?


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus M. am 23 Mai 2015, 21:45:48
Das mit dem Warten funktioniert eben rein gar nicht, weil die komplette Scriptlogik keinen harten Timeout hat.
Bei 5 Tags mit einer Scantime von 60 Sekunden alle 30 Minuten dürften da maximal 5 Prozesse rumlungern.
An dem Punkt an dem irgendwas schief geht weil Bluetooth blockiert etc. wartet ein Prozess aber unendlich, während FHEM fröhlich weitere Prozesse startet obwohl das längst keinen Aussicht auf Erfolg mehr hat.
Was ausserdem fehlt, ist ein Check darauf ob bereits ein Scan auf die selbe MAC läuft.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus Bloch am 23 Mai 2015, 22:33:13
Zitat von: justme1968 am 23 Mai 2015, 19:05:38
das finde ich sehr gut :)

ich bin gerade dabei in jedem stockwerk einen rasberry pi mit bluetooth modul zu installieren. vielleicht schaffen wir es auch die signalstärke in das modul zu bekommen.

gruss
  andre

Den Patch zur Ortung per Triangulation kannst du ja dann schonmal vorbereiten ;-)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus M. am 24 Mai 2015, 00:01:25
Zitat von: PatrickR am 23 Mai 2015, 19:07:44
Geht das mit der Signalstärke mit lescan?

Nope, dazu werden wir uns dann selbst ein wenig Code schreiben müssen.
Mit Bordmitteln geht es für BLE Geräte leider gar nicht.


Falls noch jemand PRESENCED ausprobieren möchte, im Anhang ist eine Version die bei mir gerade einwandfrei läuft.
Ich hab das Ding spontan mal gleich noch um die Device Namen erweitert und die Readings angepasst.
PRESENCE hab ich eine Auswahlmöglichkeit für das Bluetooth Device spendiert, dass sich da nichts in die Quere kommt.
Gibt es eigentlich einen besonderen Grund, warum bei PRESENCE state und presence benutzt werden?

Gruss, Markus
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 24 Mai 2015, 00:02:34
Zitat von: Markus M. am 23 Mai 2015, 21:45:48
Das mit dem Warten funktioniert eben rein gar nicht, weil die komplette Scriptlogik keinen harten Timeout hat.
Das sollte eigentlich das Timeout in FHEM erledigen, was leider - wie ich gerade merkte - nicht klappt, vermutlich weil der Prozess mit erhöhten Rechten läuft. Habe daher beim Warten auf das Lock eine Beschränkung eingebaut.

Zitat von: Markus M. am 23 Mai 2015, 21:45:48
Was ausserdem fehlt, ist ein Check darauf ob bereits ein Scan auf die selbe MAC läuft.
Das könnte man natürlich machen. Letztlich wäre das aber m. E. Overkill wenn das Lock-Timeout greift.

Nächstes Mal bitte weniger Emotionen und mehr Syslog in der Kritik :)

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus M. am 24 Mai 2015, 01:40:33
Zitat von: PatrickR am 24 Mai 2015, 00:02:34
Das sollte eigentlich das Timeout in FHEM erledigen, was leider - wie ich gerade merkte - nicht klappt, vermutlich weil der Prozess mit erhöhten Rechten läuft. Habe daher beim Warten auf das Lock eine Beschränkung eingebaut.
Das könnte man natürlich machen. Letztlich wäre das aber m. E. Overkill wenn das Lock-Timeout greift.

Ich versuch das dann nach meinem Urlaub mal zu testen. Danke!
Ich bin heute irgendwie dauerhaft etwas zwischen Tür und Angel... Im Normalfall bin ich umgänglicher ;)

Ich werde aber jetzt erst mal PRESENCED laufen lassen, da ich sowieso 2 Bluetooth Geräte am FHEM Rechner habe.
Das PRESENCE Modul 2 Posts weiter oben habe ich dafür noch mit einer Device-Auswahl versehen.

Viele Grüsse, Markus
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: aeronaut am 02 Juni 2015, 21:24:03
Was geschieht, wenn das Handy beim Nachhausekommen im Tiefschlaf ist? WLAN verbindet sich in diesem Zustand schon mal nicht, zumindest bei meinem Android 4.4. Aber Bluetooth schon? Oder holt ihr das Gerät kurz aus dem Standby?

Edit: Sorry, hab das Thema falsch verstanden, hier werden ja spezielle Dongles benutzt.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: bjoernbo am 05 Juni 2015, 08:44:16
Hallo,

ich habe mich mal in dieses Thema eingelesen, ok nur die ersten 4 Seiten. Welche "Teile" sind denn nun empfehlenswert? :D
und ...
mich würde interessieren was ihr so genau mit "Anwensheit" bzw. "Abwesenheit" in eurem FHEM steuert.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: The-Holgi am 29 Juni 2015, 11:18:57
Hallo,
überlege gerade ob ich meiner Katze einen PebbleBee umhänge um zu erkennen wenn sie unseren Garten verlässt.
Wie groß ist die Reichweite in etwa ? Habe gesehen, das es BLE dongles Class 1 und 2 gibt welche sind vorzuziehen ?

Gruß Holgi
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 30 Juni 2015, 07:39:04
Zitat von: Markus M. am 24 Mai 2015, 00:01:25
Ich hab das Ding spontan mal gleich noch um die Device Namen erweitert und die Readings angepasst.
Ich habe in die PRESENCED_Connect Funktion noch einen Aufruf eingebaut, der den BT Dongle vor dem hcitool Aufruf
einmal zurücksetzt. Bei mir kam es bei einem reload oder shutdown restart immer wieder zu einem input/output error.

qx("sudo hciconfig hci0 down");
qx("sudo hciconfig hci0 up");

So läuft's jetzt mit drei Tags und einem Scanintervall von 3 Sekunden rund.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 30 Juni 2015, 09:06:03
Braucht jemand noch PebbleBee's?

Ich habe noch drei Stück zu verkaufen - bitte Angebot per PN.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fstefan1960 am 01 Juli 2015, 12:17:01
Vielen Dank für die tollen Beiträge in dem Forum hier.

Ich hab mich dem Thema LE damit annähern können. Bei mir funzt alles, wenn ich den hcitool-Befehl im Script erweitere:

sudo hciconfig hci0 down && sudo hciconfig hci0 up && sudo /usr/bin/hcitool lescan

Damit sind die Disconnected-Zeiten vorbei und alles läuft.

Vielleicht hilfts ja wem ..
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: volschin am 20 Juli 2015, 09:21:24
Ich bin gerade auf eine interessante Hardware-Info gestoßen, nach der der CSR-Chip wohl auf 5 Connection zu BLE-Devices limitiert ist.
Der BCM20702 kann mit deutlich mehr Geräten umgehen (konkret bis zu 14).

http://stackoverflow.com/questions/25193975/gatttool-limited-to-5-connections

Vielleicht hilft die Info dem ein oder anderen, wenn es bei mehr Devices klemmt bzw. beim Kauf des Dongles mit dem richtigen Chip.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: volschin am 29 Juli 2015, 18:15:35
Meine beiden BCM20702 sind eingetroffen.

Bei der Installation auf dem RasPi gab es aber gleich Fehlermeldungen im dmesg
[115000.927253] bluetooth hci0: Direct firmware load for brcm/BCM20702A0-0a5c-21e8.hcd failed with error -2
[115000.942476] Bluetooth: hci0: BCM: patch brcm/BCM20702A0-0a5c-21e8.hcd not found


Bei der Recherche bin ich auf diesen Artikel (http://plugable.com/2014/06/23/plugable-usb-bluetooth-adapter-solving-hfphsp-profile-issues-on-linux) gestoßen, mit dem ich das Problem erfolgreich beheben konnte.

Danach sieht es so aus:
[   10.899019] Bluetooth: hci0: BCM: patching hci_ver=06 hci_rev=1000 lmp_ver=06 lmp_subver=220e
[   11.796201] Bluetooth: hci0: BCM: firmware hci_ver=06 hci_rev=153a lmp_ver=06 lmp_subver=220e


Gruß
Veit
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tempr42 am 30 Juli 2015, 13:09:39
Hi zusammen,

erstmal danke an euch für die großartigen Lösungen :)
Ich versuche gerade das PRESENCED Modul von Andre einzubinden.
Bin leider noch nicht sehr erfahren in FHEM und hoffe auf eure Hilfe:

Das PRESENCED.md funktioniert soweit, zumindest bekomme ich "Connected" ausgegeben.
Leider wird mein iBeacon immer als "absent" angezeigt.
Über den Shell-Befehl hcitool lescan bekomme ich es jedoch angezeigt.

Folgendes habe ich in fhem.cfg eingetragen:

define pd PRESENCED
define ibeacon PRESENCE local-PRESENCED 5C:59:48:42:31:03


Muss der define Befehl wirklich in die fhem.cfg?
Wie kann ich mir die gefundenen Mac Adressen im PRESENCED anzeigen lassen?

Hoffe ihr könnt mir helfen :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: volschin am 30 Juli 2015, 17:08:17
Hast Du berücksichtigt, dass user fhem sudo-Rechte für den lescan braucht?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 23 August 2015, 14:55:53
@dev0
Ich habe in die PRESENCED_Connect Funktion noch einen Aufruf eingebaut, der den BT Dongle vor dem hcitool Aufruf
einmal zurücksetzt. Bei mir kam es bei einem reload oder shutdown restart immer wieder zu einem input/output error.

qx("sudo hciconfig hci0 down");
qx("sudo hciconfig hci0 up");

So läuft's jetzt mit drei Tags und einem Scanintervall von 3 Sekunden rund.


Kannst du mir bitte zeigen wo genau du den Code geändert hast ? Danke

sub
PRESENCED_Connect($)
{

  my ($hash) = @_;
  my $name = $hash->{NAME};

  return undef if( AttrVal($name, "disable", 0 ) == 1 );

  my $cmd = $hash->{CMD};

  $hash->{PARTIAL} = "";
  if( my $pid = open( my $fh, "-|", $cmd ) ) {
    $fh->blocking(0);
    $fh->autoflush(1);

    $hash->{PID} = $pid;
    $hash->{STATE} = "Connected";
    $hash->{LAST_CONNECT} = FmtDateTime( gettimeofday() );

    $hash->{FD}    = $fh->fileno();
    $hash->{CD}    = $fh;
    $hash->{CONNECTS}++;
    $selectlist{$name} = $hash;
    Log3 $name, 3, "$name: connected to $cmd";

  } else {
    #$hash->{STATE} = "Connected";
    Log3 $name, 3, "$name: failed to connect to $cmd";
    InternalTimer(gettimeofday()+10, "PRESENCED_Connect", $hash, 0);
  }
}
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 23 August 2015, 16:58:43
Ich schaue morgen früh nach, wenn ich am Schreibtisch bin.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 24 August 2015, 06:13:39
Zitat von: Atze am 23 August 2015, 14:55:53
Kannst du mir bitte zeigen wo genau du den Code geändert hast ? Danke


PRESENCED_Connect($)
{
  my ($hash) = @_;
  my $name = $hash->{NAME};

  return undef if( AttrVal($name, "disable", 0 ) == 1 );

  my $cmddown = "sudo hciconfig hci0 down";
  my $cmdup = "sudo hciconfig hci up";
  my $ret1 = qx($cmddown);
  my $ret2 = qx($cmdup);

  my $cmd = $hash->{CMD};

  $hash->{PARTIAL} = "";
  if( my $pid = open( my $fh, "-|", $cmd ) ) {
    $fh->blocking(0);
    $fh->autoflush(1);

    $hash->{PID} = $pid;
    $hash->{STATE} = "Connected";
    $hash->{LAST_CONNECT} = FmtDateTime( gettimeofday() );

    $hash->{FD}    = $fh->fileno();
    $hash->{CD}    = $fh;
    $hash->{CONNECTS}++;
    $selectlist{$name} = $hash;
    Log3 $name, 3, "$name: connected to $cmd";

  } else {
    #$hash->{STATE} = "Connected";
    Log3 $name, 3, "$name: failed to connect to $cmd";
    InternalTimer(gettimeofday()+10, "PRESENCED_Connect", $hash, 0);
  }
}
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 24 August 2015, 18:56:04
wenn ich das einbau, dreht sich fhem beim rereadcfg einen wolf...
  my $cmddown = "sudo hciconfig hci0 down";
  my $cmdup = "sudo hciconfig hci up";
  my $ret1 = qx($cmddown);
  my $ret2 = qx($cmdup);


da werden doch nur Variablen gefüllt, oder ? Wo werden denn die Befehle ret1 und ret2 umgesetzt ?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 24 August 2015, 19:08:55
qx führt den Befehl aus und schreibt den Standardoutput in die Variablen. Warum damit ein rereadcfg nicht mehr funktionieren sollte ist mir schleierhaft.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 24 August 2015, 19:46:12
Fehler gefunden  ;D

Ich nutze zusätzlich zu den beiden G-Data gleichzeitig noch das StreamRadio-Modul mit gleichem BTDevice, was auch gut klappt.

Bevor ich ein "rereadcfg" mache, muss ich nur den Stream vorher deaktivieren, dann geht es.

Besten Dank
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Scubao am 25 August 2015, 07:27:24
Servus zusammen,

hat jemand eine Idee wie ich ein LE Device per collectord / presenced abfragen kann,
bzw. gibt eine version die mit dem veränderten Verhalten von hcitool lescan umgehen kann?

Gruß
Oliver
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 25 August 2015, 12:37:30
Was ist denn an der presenced Version aus diesem Thread auszusetzen?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Scubao am 25 August 2015, 18:46:43
Zitat von: dev0 am 25 August 2015, 12:37:30
Was ist denn an der presenced Version aus diesem Thread auszusetzen?

Das presenced hier aus dem Thread ist IMHO ein Modul was lokal auf dem FHEM Server
läuft.
Ich würde gerne einen Service (wie das presenced / collectord von Markus Bloch) auf einem Raspberry laufen lassen,
da mein Server zu weit weg steht. Das oben genannte presenced kann leider nicht mit LE devices umgehen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 25 August 2015, 19:21:25
Die Version aus diesem Thread könntest du via fhem2fhem anbinden. ser2net wird wohl auch funktionieren.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Scubao am 25 August 2015, 21:50:47
Probiere ich aus, danke für den Tip.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 25 August 2015, 22:52:28
@Scubao: Wenn es nicht klappt hätte ich noch einen "lepresenced" im Angebot. Das Interface ist identisch zu Markus' Presenced.
Patrick


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Scubao am 26 August 2015, 07:21:51
Das hätte ich gerne! Hab etwas mit VirtualHere experimentiert, aber ein lepresenced wäre mir 100% lieber!

Gruß
Oliver
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 12 September 2015, 18:07:19
Hi...

@Scubao: Hat das mit dem "lepresenced" von Patrick geklappt ?

@PatrickR: Ich nutze jetzt auch einen Gigaset G-Tag zur Anwesenheitserkennung und dank den Infos & Files aus dem Thread läuft das wirklich gut. Jetzt hab ich aber noch 2 weitere Pi's mit Bluetooth Dongles in der Wohnung verteilt. Würdest du mir bitte auch dein "lepresenced" zur Verfügung stellen, damit ich evtl. sogar eine Anwesenheitserkennung  für bestimmte Räume damit umsetzen kann ? Danke

Gruss
Sven
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 12 September 2015, 23:01:20
@Murdock: Bin gerade im Urlaub und daher technisch etwas eingeschränkt. Scubao kann Dir aber gerne den Link schicken.

/Edit: Mit collectord habe ich den Daemon noch nie getestet. Da das Interface aber gleich ist, sollte es gehen.

Gruß
Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Scubao am 12 September 2015, 23:13:57
Link ist verschickt. Gruß
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 12 September 2015, 23:21:50
Gibt es einen Grund, das Tool nicht hier im Forum abzulegen?
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 12 September 2015, 23:27:15
@dev0: Ja, ich wollte es eigentlich vorher noch aufräumen. Außerdem ging ich bislang auf Grund des Diskussionsverlaufs davon aus, dass das gepatchte FHEM-Modul (ggf. zusammen mit FHEM2FHEM) mehr Zuspruch findet.


Gruß
Patrick

Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 13 September 2015, 14:32:31
Hi Patrick,
eine weitere Alternative zu haben, kann nicht schaden. Hängt ja auch ein wenig vom Design der Umgebung ab welche Variante besser passt. Ich zumindest fände es gut, wenn du deine Variante auch veröffentlichen würdest.

/Uli
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 13 September 2015, 14:56:43
@dev0: Ok, mache ich wenn ich wieder im Lande bin. Wird allerdings dann nur das nackte Skript ohne Paket/Initskript etc.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 13 September 2015, 15:30:28
Reicht auch völlig. Danke.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 17 September 2015, 13:43:03
Mahlzeit!

Wie versprochen anbei der lepresenced.

Abhängigkeiten (getestet auf Debian Wheezy):
libnet-server-perl, bluez

lepresenced lauscht standardmäßig im Vordergrund auf localhost:5333 und verwendet hci0, Änderungen über Kommandozeilenparameter --bluetoothdevice, --listenaddress, --listenport, --daemon (siehe auch die Usage-Ausgabe).

Der Daemon loggt nach Syslog, bei Problemen sollte der Log-Level im Skript (Zeile 19) auf LOG_DEBUG gesetzt werden.

Verwendung in FHEM analog dem normalen Presenced:
define presence_test PRESENCE lan-bluetooth 7C:2F:15:44:80:8F localhost:5333 60

Die 60 gibt hierbei an, nach welcher Inaktivitätszeit (in Sekunden) ein Gerät als abwesend gemeldet wird. Da lepresenced (im Gegensatz zu blescan.pl dauerhaft lauscht, hat der Wert keinen Einfluss auf die Performance und kann fast beliebig hoch eingestellt werden).

Habe lepresenced nicht mit collectord getestet, da das Interface identisch zu dem von presenced ist, müsste es aber funktionieren.

Patrick

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 19 September 2015, 11:55:55
@PatrickR: Vielen Dank für dein lepresenced. Ich bekomme im Moment ein disconnected als State. Mach ich evtl was falsch ? Wo genau lege ich deine  lepresenced Datei ab ? Muß ich sie noch umbenennen oder steht sie noch in Zusammenhang mit anderen Dateien aus diesem thread ? Eine kurze Info Wäre Cool. Danke
   
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 19 September 2015, 16:47:56
Hi!

Zitat von: Murdock am 19 September 2015, 11:55:55
@PatrickR: Vielen Dank für dein lepresenced. Ich bekomme im Moment ein disconnected als State. Mach ich evtl was falsch ? Wo genau lege ich deine  lepresenced Datei ab ? Muß ich sie noch umbenennen oder steht sie noch in Zusammenhang mit anderen Dateien aus diesem thread ? Eine kurze Info Wäre Cool. Danke

Den lepresenced kannst Du eigentlich hinlegen wo Du willst, z. B. nach /usr/local/sbin oder nach /opt/fhem. Wichtig ist, dass Du ihn startest und zwar der Einfachheit halber als root. Das ist anders als bei blescan.pl, das von FHEM gestartet wurde.

In der Annahme, dass er auf dem gleichen Rechner laufen soll wie FHEM lege ihn doch mal unter /opt/fhem ab und führe Folgendes aus:

chmod +x /opt/fhem/lepresenced && /opt/fhem/lepresenced


Wenn keine Fehlermeldung kommt dann in FHEM:

define presence_test PRESENCE lan-bluetooth 7C:2F:15:44:80:8F localhost:5333 60

lepresenced läuft dann erstmal im Vordergrund, d. h. nicht CTRL-C drücken oder anderweitig abbrechen.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 20 September 2015, 17:15:23
Hi Patrick,

Vielen Dank für deine Mühe. Nach folgen deiner Anweisung bekomme ich folgende Fehlermeldung:


root@raspberrypi:~# chmod +x /opt/fhem/lepresenced && /opt/fhem/lepresenced
Can't locate Net/Server/Daemonize.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 / usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at /opt/fhem/lepresenced line 17.
BEGIN failed--compilation aborted at /opt/fhem/lepresenced line 17.

Hast du einen Tip ? Klar sehe ich das die Datei Daemonize.pm fehlt. Aber woher bekomme ich die richtige Datei ? Oder muß ich ein Perl Paket updaten ?

Gruß
Sven
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 21 September 2015, 21:57:47
apt-get install libnet-server-perl


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 22 September 2015, 20:02:12
Perfekt ! Danke Patrick jetzt klappt es super !

Nun teste ich gerade wie ich die Bluetoothreichweite in der Wohnung erhöhe und dem G-Tag auch in bestimmten Räumen einzeln erkennen lassen kann. Ich habe jeweils noch einen PI im Arbeitszimmer und im Wohnzimmer mit dem gleichen Bluetooth-Dongle wie auf dem Haupt-Pi-fhem-Server. Vorher mit der Erkennung des Handys lief es alles über collectord und zeigte auch die Räume an. Jetzt durch den Gigaset G-Tag und dem Script von Patrick scheint alles etwas anders zu laufen. Ob das an den Einstellungen der Ports der collectord.conf Datei liegt und ich diese, wie das lepresenced Script auf den Port 5333 lege oder umgekehrt, versuche ich gerade herauszufinden.
Muß ich den auf jeden Pi, der mir die Reichweite meiner Anwesenheitserkennung erhöhen soll auch dein lepresenced und das Perl Paket installieren Patrick, oder habe ich da einen Denkfehler gemacht ?

So läuft dein Script gerade bei mir auf 10 Sekunden abfrage. Ich teste gerade wie sehr eine solch kurze Scanrate meinen Pi2 beansprucht. So ein Schlüßelanhänger als Anwesenheitserkennung ist schon eine coole Sache. Besonders wenn man wie ich beim Verlassen der Wohnung fast alle Steckdosen abschalten lässt, um Strom zu sparen und sich auch das Handy Ladegerät mit abschaltet. Wenn der Handy Akku dann mal leer war, ist das recht nervig gewesen, fhem zu sagen das ich doch zuhause bin :) Da rockt so ein Bluetooth-Schlüßelahänger wirklich. Wenn ich jetzt noch diesen Schlüßelanhänger eine räumliche Anwesenheitserkennung zuordnen kann und das ganze dann auch für die ganze Familie gut funktioniert, hab ich genau das was ich immer haben wollte.



Für alle Tips, Tricks und Anregungen wäre ich sehr dankbar :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 22 September 2015, 21:38:17
Hi!

Zitat von: Murdock am 22 September 2015, 20:02:12
Muß ich den auf jeden Pi, der mir die Reichweite meiner Anwesenheitserkennung erhöhen soll auch dein lepresenced und das Perl Paket installieren Patrick, oder habe ich da einen Denkfehler gemacht ?
Lepresenced muss auf jedem Rechner laufen, der die G-Tags empfangen soll, also auch auf den Pi.

Zitat von: Murdock am 22 September 2015, 20:02:12
So läuft dein Script gerade bei mir auf 10 Sekunden abfrage. Ich teste gerade wie sehr eine solch kurze Scanrate meinen Pi2 beansprucht.
Ich nehme an, mit Scanrate meinst Du die letzte Zahl im Define. Die hat absolut keine Auswirkungen auf die Performance. Lepresenced scannt immer. Die Zahl sagt ihm nur, nach welcher Zeit ein G-Tag außer Reichweite als abwesend markiert wird.

Ich hoffe, ich habe nicht irgendwo einen Denkfehler, der aus dem "Kopieren" des Interface von Markus' presenced resultiert.

Patrick


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 23 September 2015, 05:55:45
Ich habe es jetzt schon mal geschaft das der G-Tag auf allen 3 Pi's einzeln als present angezeigt wird durch

define G-Tag PRESENCE lan-bluetooth 11:21:80:11:42:11 localhost:5333 10 10

Über collectord bekomme ich es aber nicht zum Laufen. Ich habe "localhost" durch "127.0.0.1" ausgetauscht und die Ports 5111 / 5222 / 5333 rauf und runter durchgetestet leider bisher ohne Erfolg.

Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 23 September 2015, 10:00:14
Wie genau äußert sich der Fehler?
Wie sieht denn Deine collectord.conf aus?


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 23 September 2015, 12:32:20
Meine collectord.conf sieht so aus:

# room definition
#[room-name]           # name of the room
#address=192.168.0.10   # ip-address or hostname
#port=5111                # tcp port which should be used (5111 is default)
#presence_timeout=120     # timeout in seconds for each check when devices are present
#absence_timeout=20       # timeout in secondsfor each check when devices are absent

[Schlafzimmer]
address=192.168.178.50
port=5111
presence_timeout=60
absence_timeout=20

[Arbeitszimmer]
address=192.168.178.20
port=5111
presence_timeout=60
absence_timeout=20

[Wohnzimmer]
address=192.168.178.40
port=5111
presence_timeout=60
absence_timeout=20

ich habe bei den Ports schon alles durchgetauscht 5111/5222/5333

und mit:
define G-Tag lan-bluetooth 11:21:80:11:42:11 127.0.0.1:5222
versucht abzufragen. Auch hier hab ich als Ports 5111/5222/5333 schon probiert.

Bei der Abfrage über Port 5222 bekomme ich ein Absent wenn ich die Ports im collectord.conf auf 5111 gesetzt habe. Sind diese dort auf 5333 gestellt reagiert der scan vom lepresenced im define nur über Port 5333. Ich bin eben ein bischen mit dem G-Tag durch die Wohung gewandert. Eine Rückkehr von absent auf present wird erst erkannt wenn im define wieder von Port 5222 auf Port 5333 geschaltet wird. Er nimmt aber die 127.0.0.1 an bei beiden. Scannt auch im Zykluss wenn auf Port 5222 gestellt ist, erkennt aber dann nicht seine Rückkehr ins present.


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 23 September 2015, 22:30:24
Hi!

Schau doch mal bitte, ob im syslog auf den RPis(!) sowas wie "Received unknown command"... steht.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 24 September 2015, 08:26:27
Guten Morgen!

Sorry, bin momentan etwas eingespannt und kann Dir daher die Antworten nur häppchenweise servieren.

Wenn Du die Standardeinstellungen von lepresenced verwendest, lauscht der Dienst auf Port 5333, d. h. alle Port-Zeilen in der collectord.conf müssen wie folgt lauten:

port=5333


Der Standardport von collectord ist 5222, d. h. im Define in FHEM muss 5222 stehen.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 24 September 2015, 13:44:09
Mahlzeit :)

Alles gut. Ich schaffe es in der Woche zeitlich auch nur häppchenweise ;)

Ich habe jetzt in der collectord.conf die Ports auf 5333 gestellt und dann im define auf 5222 abgefragt. In der collectord.log Datei also im Logfile von collectord wird auch jedesmal wenn ich das im define den Port 5222 abfrage alles sauber geöffnet:

define G-Tag PRESENCE lan-bluetooth 1C:2F:80:91:11:28 127.0.0.1:5222 10 10

ergibt im collectord Logfile

2015-09-24 12:49:19 - new connection from 127.0.0.1:50779
2015-09-24 12:49:19 - created thread 10 for processing device 1C:2F:80:91:11:28 in room Wohnzimmer for peer 127.0.0.1 (UUID: 1f2cduspde130baf823b1cbd0f12341f51)
2015-09-24 12:49:19 - created thread 11 for processing device 1C:2F:80:91:11:28 in room Schlafzimmer for peer 127.0.0.1 (UUID: 1f2cduspde130baf823b1cbd0f12341f51)
2015-09-24 12:49:19 - created thread 12 for processing device 1C:2F:80:91:11:28 in room Arbeitszimmer for peer 127.0.0.1 (UUID: 1f2cduspde130baf823b1cbd0f12341f51)


Es wird also bereit gestellt.

Es kommen dann aber keine readings vom G-Tag, das heisst das lepresenced nicht scannt, abfragt bzw reagiert. Der State ist aber auf active nicht auf disconneted.

Sobald ich aber den Port im define umstelle und abspeicher auf:

define G-Tag PRESENCE lan-bluetooth 1C:2F:80:91:11:28 127.0.0.1:5333 10 10

Fängt lepresenced wieder sofort an alle 10 Sekunden abzufragen, ist wieder im voll in Gange und schaltet den G-Tag wieder im State auf present.

collectord  beendet dann auch die Verbindung. Ergibt im collectord Logfile dann:

2015-09-24 13:09:09 - closed connection from 127.0.0.1

Eine Meldung im Syslog bei den Pi'S von sowas wie  "Received unknown command" bekomme ich nicht.

Ausgabe im Syslog bei einstellen auf Port 5222:

2015.09.24 13:06:18 5: Cmd: >modify G-Tag lan-bluetooth 1C:2F:80:91:11:28 127.0.0.1:5222 10 10<
2015.09.24 13:06:18 3: Opening G-Tag device 127.0.0.1:5222
2015.09.24 13:06:18 3: G-Tag device opened
2015.09.24 13:06:18 5: SW: 37433a32463a38303a39443a34323a32387c31300a
2015.09.24 13:06:18 5: Triggering global (1 changes)
2015.09.24 13:06:18 5: Notify loop for global MODIFIED G-Tag
2015.09.24 13:06:18 5: PRESENCE (G-Tag) - received data: command accepted
2015.09.24 13:06:18 5: Triggering G-Tag (1 changes)
2015.09.24 13:06:18 5: Notify loop for G-Tag command_accepted: yes
2015.09.24 13:06:18 4: HTTP FHEMWEB:192.168.178.27:64456 GET /fhem?detail=G-Tag
2015.09.24 13:06:18 4: 2476:FHEMWEB:192.168.178.27:64456: /fhem?detail=G-Tag / RL:2813 / text/html; charset=UTF-8 / Content-Encoding: gzip
/
2015.09.24 13:06:18 5: PRESENCE (G-Tag) - received data: socket_closed;Wohnzimmer
socket_closed;Schlafzimmer
2015.09.24 13:06:18 3: PRESENCE (G-Tag) - collectord lost connection to room Schlafzimmer


Ausgabe im Syslog bei einstellen auf Port 5333:

2015.09.24 13:09:09 5: Cmd: >modify G-Tag lan-bluetooth 1C:2F:80:91:11:28 127.0.0.1:5333 10 10<
2015.09.24 13:09:09 3: Opening G-Tag device 127.0.0.1:5333
2015.09.24 13:09:09 3: G-Tag device opened


Schlafzimmer ist hier der Raum bzw der Haupt-fhemServer auf dem alles programmiert und ausgelesen wird.

gruß
Sven




Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Toto1973 am 24 September 2015, 15:24:18
Ich habe mir heute einen Gigaset G-Tag bestellt. Wäre es möglich, die Anleitung, wie man das Modul /den G-Tag in FHEM einbindet, auf die erste Seite des Beitrages zu kopieren?
Weuil so muss ich erst mal den Ellen langen Beitrag durchlesen :-P
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 24 September 2015, 17:04:30
Zitat von: Toto1973 am 24 September 2015, 15:24:18
Weuil so muss ich erst mal den Ellen langen Beitrag durchlesen :-P
Ganz schön fordernd von Dir, da du bisher nicht wirklich etwas zum Forum beigetragen hast, ausser deine Probleme lösen...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 24 September 2015, 20:56:54
Mahlzeit!

@Murdock:
OK, es gibt definitiv einen Bug in lepresenced, der auftritt, wenn der Client das Intervall aktualisiert. Das tritt auf, wenn man im define in FHEM zwei Intervalle angibt und bei der Verwendung von collectord immer.

Das muss ich mir genauer ansehen.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 24 September 2015, 21:49:55
Hi!

@Murdock:
Probier' mal die angehängte Version.

Changelog V0.4:
-Query updates, d. h. Änderung des Intervalls sollte nun korrekt verarbeitet werden.
-Log Level einiger Meldungen angepasst.
-Etwas aufgeräumt.

Grüße
Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 25 September 2015, 00:25:25
Nabend :-)

@PatrickR: Zuerst einmal vielen Dank für deine Mühe. Hier meine Ergebnisse nach dem Test mit Version V.04.

Ich habe die neue Version von dir Hochgeladen und wie beschrieben durch Putty über einen root User so gestartet:

chmod +x /opt/fhem/lepresenced && /opt/fhem/lepresenced

Nach umschreiben des defines auf:
define G-Tag PRESENCE lan-bluetooth 1C:2F:80:91:11:28 127.0.0.1:5222 10

Habe ich folgendes im Syslog gefunden:


2015.09.25 00:15:35 5: Cmd: >define G-Tag PRESENCE lan-bluetooth 1C:2F:80:91:11:28 127.0.0.1:5222<
2015.09.25 00:15:35 5: Loading ./FHEM/73_PRESENCE.pm
2015.09.25 00:15:35 3: Opening G-Tag device 127.0.0.1:5222
2015.09.25 00:15:35 3: G-Tag device opened
2015.09.25 00:15:35 5: SW: 37433a32463a38303a39443a34323a32387c33300a
2015.09.25 00:15:35 5: Cmd: >attr G-Tag room Anwesenheit<

2015.09.25 00:15:35 5: Cmd: >setstate G-Tag on<
2015.09.25 00:15:35 5: Cmd: >setstate G-Tag 2015-09-24 21:46:13 state on<
2015.09.25 00:15:35 5: Cmd: >setstate G-Tag active<
2015.09.25 00:15:35 5: Cmd: >setstate G-Tag 2015-09-25 00:13:58 command_accepted yes<
2015.09.25 00:15:35 5: Cmd: >setstate G-Tag 2015-09-25 00:13:35 device_name Gigaset G-tag<
2015.09.25 00:15:35 5: Cmd: >setstate G-Tag 2015-09-25 00:13:35 presence present<
2015.09.25 00:15:35 5: Cmd: >setstate G-Tag 2015-09-25 00:13:58 state active<

2015.09.25 00:15:46 5: PRESENCE (G-Tag) - received data: command accepted
socket_closed;Wohnzimmer
socket_closed;Schlafzimmer
socket_closed;Arbeitszimmer
2015.09.25 00:15:46 3: PRESENCE (G-Tag) - collectord lost connection to room Arbeitszimmer


Das collectord Log gibt das aus:


2015-09-25 00:15:35 - new connection from 127.0.0.1:53222
2015-09-25 00:15:35 - created thread 34 for processing device 1C:2F:80:91:11:28 in room Wohnzimmer for peer 127.0.0.1 (UUID: fb80dc1319855cdc0b373fe27091ed84)
2015-09-25 00:15:35 - created thread 35 for processing device 1C:2F:80:91:11:28 in room Schlafzimmer for peer 127.0.0.1 (UUID: fb80dc1319855cdc0b373fe27091ed84)
2015-09-25 00:15:35 - created thread 36 for processing device 1C:2F:80:91:11:28 in room Arbeitszimmer for peer 127.0.0.1 (UUID: fb80dc1319855cdc0b373fe27091ed84)



Er scannt also nicht mehr weiter, ist aber als State active gesetzt. Nach zurücksetzen des Ports im define auf 5333 fängt er sofort wieder an zu scannen, schaltet den G-tag auf present und schliest den collectord.

Gruß
Sven
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 25 September 2015, 21:25:35

@Murdock:
Komisch, habe seit gestern einen collectord laufen und keine Probleme.

Was Du gepostet hast ist übrigens nicht das Syslog, sondern das Rudilog. :)
Mach mal bitte auf einem der Pis:

grep lepresenced /var/log/syslog{,.1}


Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 27 September 2015, 02:54:32
@PatrickR: Vielen Dank für deinen Tip  ;) Ich habe jetzt nochmal ein bischen getestet. Ich habe die collectord.conf auf die Ports 5111 zurück gesetzt und die Bluetooth MAC Adresse meines Smartphones eingegeben. Alles lief normal und es wurde sauber angezeigt in welchen Raum sich gerade mein Smartphone befindet.  Danach wieder alles zurück gestellt auf Port 5333 und das lepresenced neu gestartet. Leider wieder ohne Erfolg dabei konnte ich folgendes auswerten:

Syslog ;) :
Sep 27 02:26:12 raspberrypi lepresenced[2576]: [tid:0] main: Version 0.4 started (device: hci0, listen addr: 127.0.0.1, listen port: 5333, daemonize: 0).
Sep 27 02:26:12 raspberrypi lepresenced[2576]: [tid:0] main::error_exit: ERROR: Unable to create TCP server: Address already in use, Exiting.
Sep 27 02:26:35 raspberrypi avahi-daemon[2547]: Invalid response packet from host 192.168.178.37.
Sep 27 02:28:39 raspberrypi lepresenced[2470]: [tid:0] main::cleanup_task: Cleanup finished, deleted 0 devices in 0 seconds.
Sep 27 02:28:41 raspberrypi lepresenced[2470]: [tid:0] main::stats_task: Active clients: 0, known devices: 1 (min/max age: 1/1)
Sep 27 02:28:59 raspberrypi avahi-daemon[2547]: Invalid response packet from host 192.168.178.37.
Sep 27 02:29:28 raspberrypi lepresenced[2582]: [tid:0] main: Version 0.4 started (device: hci0, listen addr: 127.0.0.1, listen port: 5333, daemonize: 0).
Sep 27 02:29:28 raspberrypi lepresenced[2582]: [tid:0] main::error_exit: ERROR: Unable to create TCP server: Address already in use, Exiting.


collectord Log:
2015-09-27 02:33:00 - (Main Thread) - started with PID 2589
2015-09-27 02:33:00 - (Main Thread) - reading configuration file
2015-09-27 02:33:00 - (Main Thread) - no config errors found
2015-09-27 02:33:00 - (Main Thread) - created socket on 0.0.0.0 with port 5222
2015-09-27 02:33:00 - (Main Thread) - finished initialization. entering main loop
2015-09-27 02:33:14 - (Main Thread) - new connection from 127.0.0.1:37338
2015-09-27 02:33:14 - (Main Thread) - received new command from 127.0.0.1:37338 - 1C:2F:80:91:11:28|10
2015-09-27 02:33:14 - (Main Thread) - generating new UUID for client 127.0.0.1 - 5efb5e0cdfe094e02b5ae2024367a569
2015-09-27 02:33:14 - (Main Thread) - created thread 1 for processing device 1C:2F:80:91:11:28 in room Wohnzimmer for peer 127.0.0.1 (UUID: 5efb5e0cdfe094e02b5ae2024367a569)
2015-09-27 02:33:14 - (Main Thread) - created thread 2 for processing device 1C:2F:80:91:11:28 in room Schlafzimmer for peer 127.0.0.1 (UUID: 5efb5e0cdfe094e02b5ae2024367a569)
2015-09-27 02:33:14 - (Main Thread) - created thread 3 for processing device 1C:2F:80:91:11:28 in room Arbeitszimmer for peer 127.0.0.1 (UUID: 5efb5e0cdfe094e02b5ae2024367a569)
2015-09-27 02:33:14 - (Main Thread) - processing state message for device in room Wohnzimmer (UUID: 5efb5e0cdfe094e02b5ae2024367a569)
2015-09-27 02:33:14 - (Main Thread) - processing state message for device in room Schlafzimmer (UUID: 5efb5e0cdfe094e02b5ae2024367a569)
2015-09-27 02:33:14 - (Thread 1) - Wohnzimmer : could not create socket to 192.168.178.45 - Connection refused -
2015-09-27 02:33:14 - (Thread 1) - Wohnzimmer socket to 192.168.178.45:5333 for device 1C:2F:80:91:11:28 closed. Trying to reconnect...
2015-09-27 02:33:14 - (Thread 2) - Schlafzimmer : could not create socket to 192.168.178.57 - Connection refused -
2015-09-27 02:33:14 - (Thread 2) - Schlafzimmer socket to 192.168.178.57:5333 for device 1C:2F:80:91:11:28 closed. Trying to reconnect...
2015-09-27 02:33:14 - (Thread 3) - Arbeitszimmer : could not create socket to 192.168.178.29 - Connection refused -
2015-09-27 02:33:14 - (Thread 3) - Arbeitszimmer socket to 192.168.178.29:5333 for device 1C:2F:80:91:11:28 closed. Trying to reconnect...
2015-09-27 02:33:15 - (Main Thread) - processing state message for device in room Arbeitszimmer (UUID: 5efb5e0cdfe094e02b5ae2024367a569)


Ich denke ich habe bei mir evtl. ein Port Problem Lokal im Netzwerk. Als ich das define von Port 5222 auf Port 5333 umgestellt habe, wurde der G-tag sofort nach dem abspeichern erkannt und auf present gesetzt.

Nach einem "shutdown restart" hat das Syslog mir mit gesetzten Port 5333 folgendes ausgegeben:
Sep 27 02:47:16 raspberrypi perl[2470]: [tid:1] main::bluetooth_thread: hcitool exited, retrying...
Sep 27 02:47:38 raspberrypi lepresenced[2629]: [tid:0] main: Version 0.4 started (device: hci0, listen addr: 127.0.0.1, listen port: 5333, daemonize: 0).
Sep 27 02:47:38 raspberrypi lepresenced[2629]: [tid:0] main::cleanup_task: Cleanup finished, deleted 0 devices in 0 seconds.
Sep 27 02:47:38 raspberrypi lepresenced[2629]: [tid:1] main::bluetooth_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep 27 02:47:38 raspberrypi bluetoothd[2180]: HCI dev 0 down
Sep 27 02:47:38 raspberrypi bluetoothd[2180]: Adapter /org/bluez/2180/hci0 has been disabled
Sep 27 02:47:38 raspberrypi lepresenced[2629]: [tid:0] main::stats_task: Active clients: 0, known devices: 0 (min/max age: %/%)
Sep 27 02:47:38 raspberrypi bluetoothd[2180]: HCI dev 0 up
Sep 27 02:47:38 raspberrypi lepresenced[2629]: [tid:1] main::bluetooth_thread: hcitool exited, retrying...
Sep 27 02:47:38 raspberrypi bluetoothd[2180]: Adapter /org/bluez/2180/hci0 has been enabled
Sep 27 02:47:39 raspberrypi lepresenced[2629]: [tid:1] main::bluetooth_thread: Received 'LE Scan ...'.
Sep 27 02:48:11 raspberrypi lepresenced[2629]: [tid:0] main: Connection from 127.0.0.1:38465. Connected clients: 1.
Sep 27 02:48:11 raspberrypi lepresenced[2629]: [tid:0] main::handle_command: Received query for mac address 1C:2F:80:91:11:28, interval: 10. Adding client 127.0.0.1:38465 to clients list.
Sep 27 02:48:43 raspberrypi lepresenced[2629]: [tid:0] main::__ANON__: Caught signal, cleaning up and exiting...


Gruß
Sven

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 27 September 2015, 11:41:39
@Murdock:
Zitat von: Murdock am 27 September 2015, 02:54:32

Sep 27 02:29:28 raspberrypi lepresenced[2582]: [tid:0] main: Version 0.4 started (device: hci0, listen addr: 127.0.0.1, listen port: 5333, daemonize: 0).
Sep 27 02:29:28 raspberrypi lepresenced[2582]: [tid:0] main::error_exit: ERROR: Unable to create TCP server: Address already in use, Exiting.

Aha!
Irgendwas lauscht auf dem pi schon auf tcp Port 5333. Da zieht der lepresenced den Kürzeren. Kann es sein, dass der lepresenced parallel als Daemon läuft oder so? Den Übeltäter findest Du so:

sudo netstat -lnptee|grep :5333

In der Ausgabe steht dann die PID des Prozesses:

tcp        0      0 192.168.0.28:5333       0.0.0.0:*               LISTEN      0          14220846    25083/perl

Die wiederum kannst Du mit

ps -fp 25083

auflösen:

UID        PID  PPID  C STIME TTY          TIME CMD
root     25083     1  0 Sep24 ?        00:03:04 /usr/bin/perl /usr/local/sbin/lepresenced -a 192.168.0.28 -d



Zitat von: Murdock am 27 September 2015, 02:54:32

Sep 27 02:29:28 raspberrypi lepresenced[2582]: [tid:0] main: Version 0.4 started (device: hci0, listen addr: 127.0.0.1, listen port: 5333, daemonize: 0).

Der lepresenced hat offenbar den Befehl bekommen, auf 127.0.0.1 zu lauschen (localhost). Das funktioniert nur, wenn er auf dem gleichen Pi läuft wie FHEM, wird also zumindest bei 2 Deiner 3 Pis geändert werden müssen. Mit Deiner collectord.conf beisst es sich aber:

Zitat von: Murdock am 27 September 2015, 02:54:32

2015-09-27 02:33:14 - (Thread 1) - Wohnzimmer : could not create socket to 192.168.178.45 - Connection refused -
2015-09-27 02:33:14 - (Thread 2) - Schlafzimmer : could not create socket to 192.168.178.57 - Connection refused -
2015-09-27 02:33:14 - (Thread 3) - Arbeitszimmer : could not create socket to 192.168.178.29 - Connection refused -

Starte doch mal alle lepresenceds mit dem Parameter:

-a 0.0.0.0

Dann lauschen sie auf allen Interfaces und es sollte mit Deiner collectord.conf funktionieren.

Zitat von: Murdock am 27 September 2015, 02:54:32

Sep 27 02:48:43 raspberrypi lepresenced[2629]: [tid:0] main::__ANON__: Caught signal, cleaning up and exiting...

Ich weiß nicht, ob das Absicht war, aber um 2:48Uhr hat irgendwas den lepresenced abgeschossen, bspw. CTRL-C im Terminal-Fenster gedrückt, wo er lief oder das Fenster geschlossen. Um Missverständnisse zu vermeiden: Der Aufruf im Vordergrund sollte nur dazu dienen, es erstmal grundsätzlich ans Laufen zu bringen. Für den Dauereinsatz muss lepresenced als Daemon laufen, wozu saubererweise auch ein Init-Skript gehört, das ihn beim Start des Pi aufruft.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 27 September 2015, 17:31:18
@PatrickR:

WOW ! Vielen Vielen Dank ! Du hattest recht, ich hab den Übeltäter nach deiner Anweisung auswindig gemacht und es war wie du es vermutet hattest der lepresenced selber welcher schon über 127.0.0.1 auf Port 5333 saß. Ich hab dann einfach in deinem lepresenced Script die Zuordnung von 127.0.0.1 auf 0.0.0.0 umgeändert, es auf allen 3 Pi's abgespeichert uind danach wieder mit /opt/fhem/lepresenced start gestartet. danach lief alles wie geschmiert, so wie von dir vorhergesagt.

Da ich in diesen Dingen nicht halb so fit bin wie du. Helf mir doch bitte noch ein bischen aus mit diesem Init-Skript, der deinen lepresence schon gleich mit startet. Muss in dem Skript dann nur stehen /opt/fhem/lepresenced start ? Oder wird dieser noch vor fhem mit hochgefahren und in die Startsequenz des Pi'S ansich angelegt ?

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 27 September 2015, 19:31:17
@Murdock:
Schön, dass es geht. Mit dem Editieren des Skripts hast Du Dir allerdings keinen Gefallen getan. Das geht dann nämlich bei etwaigen Updates immer wieder verloren und ist eigentlich auch nicht beabsichtigt. Ist aber auch kein Beinbruch.

Zum Thema Autostart schau mal hier:
http://raspberry.tips/raspberrypi-einsteiger/raspberry-pi-autostart-von-skripten-und-programmen-einrichten/ (http://raspberry.tips/raspberrypi-einsteiger/raspberry-pi-autostart-von-skripten-und-programmen-einrichten/)
Die einfachste Methode ist "Autostart mit rc.local". Die ist zwar unschön und unsauber, sollte es aber tun.

Wichtig ist, dass lepresenced wie folgt gestartet wird:
/opt/fhem/lepresenced -d
Das -d ist wichtig, damit das Skript als Daemon läuft.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Toto1973 am 28 September 2015, 18:21:00
Mein G-Tag von Siemens ist heute gekommen und es funktioniert alles Bestens.
Danke für das Script!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 29 September 2015, 10:39:13
Ja, bei mir läuft es jetzt auch sehr gut. Ich werde jetzt wie vorher mit meinem alten Smartphone genau vor der Wohnungstür erkannt, da der Pi im Wohnzimmer jetzt den Bluetoothempfang erweitert hat. Das alles mit einem Schlüsselanhänger, also genau so wie ich es haben wollte. Sehr genial. Ich bin sehr zufrieden mit dem G-Tag.

@PatrickR: Noch einmal vielen Dank für deine Mühe und dein Script. Es läuft sehr gut. Ich habe jetzt erstmal eine Lösung mit dem "unsauberen" rc.local gewählt, wie von dir geschrieben. Wenn noch ein bischen Zeit da ist die Tage werde ich mich mal mit dem Anlegen eines Init-Scripts auseinander setzen, um so auch wieder dein Sript in Orginalfassung benutzen zu können, für den Fall eines Updates. DANKE !

Gruß
Sven
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: chbla am 29 September 2015, 13:10:17
Kurze Zwischenfrage - ich finde irgendwie den Anfang der G-Tag Diskussion nicht. Wie setzt ihr die Anwesenheitserkennung damit um, weil oben von einer Smartphone Verbindung gesprochen wird. Ist das nicht einfach so ein Tag am Schluesselbund und ein Dongle an FHEM? Wieso dann Smartphone bzw. wieso nicht gleich Smartphone alleine?

Danke fuer die Aufklaerung :)
Christoph
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 29 September 2015, 15:08:31
@chbla:
Den Anfang der G-Tag Diskussion findest du hier: http://forum.fhem.de/index.php/topic,28753.msg288693.html#msg288693

Mitlerweise hat PatrickR aber ein Script zur Verfügung gestellt, welches als Daemon läuft und hervoragend mit collectord zusammen läuft und du so mit mehrere z.b. Pi's mit fhem im Haus verteilen kannst, um die Bluetoothabdeckung zu erhöhen. Damit kannst du fhem erkennen lassen in welchen Raum, in unseren Fall der G-Tag, gerade überall anwesend ist.

Ich habe vorher ein Galaxy S4 benutzt, welches mit collectord fast problemlos lief und die Anwesenheitserkennung wirklich Spitze war. Man konnte in den Bluetootheinstellungen im Android einstellen, wann das Bluetooth abtauchen soll, hier wählte ich dann "niemals" und alles war gut. Nun mit dem Galaxy S6 und Android Lollipop ist es leider so, das es diese besagte Bluetootheinstellung nicht mehr gibt und das Bluetoothsignal spätestens nach 20 Minuten abtaucht. Dies war nicht sehr vorteilhaft, da ich an meine Anwesenheitserkennung beim Verlassen diverse Steckdosen abschalten lasse, die Heizung runter fährt, der Bewegungsmelder sich scharf schaltet und das Licht im Flur ausgeht. Jetzt passierte dies leider immer nach 20 Minuten schon, obwohl ich zuhause war. Da saß ich dann ständig im dunklen. ;)
Darüber hinaus war eine Anwesenheitserkennung per Smartphone für mich manchmal auch nicht optimal, da ich wirklich beim Verlassen sämtliche Standy Stromfresser, ausser den fhem Server und die Fritzbox hab abschalten lassen, unter anderem auch die Steckdose wo mein Ladegerät vom Smartphone drinn stecke. ;) Dies war oft sehr nervig.

Da ist so ein Schlüßelanhänger doch schon sehr vorteilhaft, zumal wohl jedes Familienmitglied von den Kids bis zum Opa ja einen Schlüßel besitzen, welchen Sie mitnehmen und im optimalsten Fall nicht irgendwo liegen lassen. Ich finde den G-tag da einfach unkompliziert. Er hängt am Schlüßelbund, welchen ich beim Verlassen der Wohnung eh immer dabei habe und er ist jetzt durch das Scrpt von PatrickR und collectord so eingestellt, das ich kurz vor meiner Haustür erkannt, per Tasker auf dem Smartphone begrüßt, das Licht auf dem Flur angeschaltet, die Heizung die Temperaturen hochsetzt und alle Steckdosen auch wieder angeschaltet werden. Also genau so wie ich es haben wollte. Nach dem das mit dem Bluetoothsignal übers Smartphone nicht mehr bei mir geklappt hat, habe ich alles andere ausprobiert. Erkennung per Wlan, per Fritzbox, per Geofency, aber nichts war für mich so zufriedenstellend und unkompliziert wie jetzt der G-Tag Schlüßelanhänger von Siemens. :)

Sven
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: chbla am 29 September 2015, 17:02:16
Ah - dann habe ich es doch richtig verstanden. Das muesste also theoretisch auch mit dem Smartphone funktionieren.
Dachte nur da gibt es einen speziellen Grund fuer die G-Tags..

Werde mir wohl auch ein paar holen, zum testen :)
Aber ein Raspberry Pi in jedem Raum... hm hm das klingt nach viel Aufwand
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Toto1973 am 29 September 2015, 17:04:29
Ich kann die Siemens G-Tags nur empfehlen. FHEM schaltet bei mir schon, wenn ich draußen vor der Wohnung vorbei laufe. Die Reichweite ist einfach der Hammer!
Und es funktioniert absolut Störungsfrei.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: chbla am 29 September 2015, 17:08:23
Ueberlege grade ob ich da nicht einfach WLAN nehmen soll.. also ob ein Device im Home Wlan ist oder nicht, das wuerde eigentlich bei mir wohl auch gut funktionieren.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 30 September 2015, 16:31:19
Was ich noch nicht wirklich verstehe...
Wie groß sind eure Wohnungen ? Ich habe ca 70qm Raum hinter Raum und mein Raspi sieht meine G-Tags überall, selbst vor der Türe.
Wenn ich in jedem Raum einen PI mit BT installiere, habe ich doch auch ein "present" in allen Räumen.

Finde den Fehler  ;D

Gruß Andreas

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: chbla am 30 September 2015, 16:37:21
also bei mir zuhause kein Problem... 8)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 30 September 2015, 17:38:25
@Atze:
Ich habe den Fehler gefunden. ;) ca 80qm, Stahlebtonwände und der fhem Server liegt im hintersten Raum. Leider wurde ich so vom G-tag erst erkannt, als isch schon im Flur stand und ich will eben das mir schon das Licht angeschaltet wird, wenn ich die Wohnung komme. Vielleicht mag es ja auch an meinem Bluetooth Dongle liegen, das der nicht soviel Power hat. Welchen benutzt du den selber ?

Hauptziel des ganzen ist es aber irgendwann mal, das ich eine räumliche Anwesenheitserkennung umsetzen möchte. Deswegen die Anbindung über colletord und den weiteren Pi's in verschiedenen Räumen. Ich möchte, das wenn ich in bestimmte Räume gehe, dort eine bestimmte Lampe angeht und wenn ich mich schon mehr als 5 Minuten im Raum befinde, die Heizung eine gewisse Temperatur setzt. Bei verlassen des Raumes von mehr als 5 Minuten soll die Heizung wieder runter geregelt werden  und das Licht soll auch wieder aausgehen...sowas in der Art eben. Die Pi's in den anderen Räumen sind alle alte Pi's, welche von der Umstellung auf das neue Model über geblieben sind. Ansonsten kann man mit etwas Geduld bei ebay einen komplett aufgerüsteten Pi Model B mit Zubehör für 15 € bekommen ;) Einfach fhem rauf, einen Bluetoothdongle ran und mit dem lepresenced Script von PatrickR starten lassen. Läuft perfekt ;) Die Pi's einfach irgendwo an den Router hängen oder per Wifi-Dongle hinter den Schrank verstecken, fertig :)

Sven
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Toto1973 am 30 September 2015, 18:00:11
Wie lässt sich denn dann die Empfangsempfindlichkeit einstellen?
Also mit meiner Ausstattung (CSL USB BlueTooth Dongle, G-Tag Siemens) werde ich ja schon erkannt, wenn ich draußen vor der Tür stehe.
Wie machst Du dass dann, das der G-Tag dann auch nur in dem einen raum erkannt wird, in dem Du gerade bist?
Fragst Du den RSSI-Wert ab?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 30 September 2015, 18:32:43
@murdock
bin grad net zu hause, weiss also nicht genau welchen Adapter ich drann habe. Asus BT400 oder Logilink BT0015, kann später nochmal nachschauen.
Das Ziel ist schon klar, aber wie bekomme ich das umgesetzt wenn ich immer einen Empfang habe ? Also gleiche Fragen wie @Toto1973

Gruß Andreas
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Murdock am 30 September 2015, 18:41:03
Atze & Toto1972
Ja...das ist eine Gute Frage die ich mir auch schon die ganze Zeit stelle...
Wie Ihr schon richtig bemerkt habt ist das peresent bei mir leider mindestens immer in 2 Räumen am Start. Vielleicht gibt es ja einen Bluetooth Dongle wo man über den Pi oder fhem die Sendeleistung ,also den Empfangsradius runterschrauben kann. ? Oder man ersteigert einen ganz alten BT-Dongle der nur wenig Empfang/Radius hat fürs erste.
Eine professionelle Lösung wäre es vielleicht wenn man fhem sagen könnte: Erkenne das Bluetoothsignal, welches am Stärksten an einem der BT-Dongles im Netzwerk anliegt, als das Signal für fhem, welches er dann nur einzeln als Present setzt...aber wie ich das jetzt so auf anhieb umsetzen sollte, weiss ich gerade auch noch nicht ;) Da ich auf dem Bereich mit fhem Programierung noch ziemlich am Anfang stehe ;)

Vielleicht hat hier einer der mitlesenden, mit genug Wissen über diese Materie einen Tip in welche Richtung wir da gehen könnten ?

Gruß
Sven
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 30 September 2015, 18:46:58
Hab da grad mal rasch gegoogelt und eine interessante Sache gefunden die ich mal testen werde
Zitatpi@BeaconAir ~/blescanner $ sudo python testblescan.py
ble thread started
----------
cf:68:cc:c7:33:10,b9407f30f5f8466eaff925556b57fe6d,13072,52423,-74,-78
cf:68:cc:c7:33:10,74696d6f74650e160a181033c7cc68cf,46608,13255,-52,-77
da:f4:2e:a0:70:b1,b9407f30f5f8466eaff925556b57fe6d,28849,11936,-74,-79
da:f4:2e:a0:70:b1,74696d6f74650e160a18b170a02ef4da,46769,28832,46,-78
The content of each line above is:
example: cf:68:cc:c7:33:10,b9407f30f5f8466eaff925556b57fe6d,13072,52423,-74,-78
Beacon MAC Address,iBeacon UDID, iBeacon Major Number, iBeacon Minor Number, TX Power at 1m, RSSI

Mehr dazu hier: http://www.switchdoc.com/2014/08/ibeacon-raspberry-pi-scanner-python/ und hier https://github.com/switchdoclabs

Hier hab ich noch eine interessantes PDF zum berrechnen der Abstände gefunden http://www.s2is.org/Issues/v1/n2/papers/paper14.pdf

Gruß Andreas
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Atze am 01 Oktober 2015, 08:25:01
Das oben stehende script funktioniert. Aber ich werde das hier heut abend auch nochmal probieren. https://www.raspberrypi.org/forums/viewtopic.php?t=47466
Könnte man eventuel mit in die 73_PRESENCED.pm einbauen.

Gruß Andreas
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 01 Oktober 2015, 09:06:29
Hallo!

Vielen dank erstmal für das neue skript,
ich nutze es jetzt schon seit ein paar Tagen auf einen cubitruck und einem pi und es läuft sehr gut.

Doch hätte ich noch eine frage welche bluetooth dongle nutzt ihr?
Denn bei meinem pi der am eingang zu Wohnung steht werde ich immer erst kurz vor der Tür erkannt(mit flur licht gekoppelt), muss manchmal sogar kurz warten, wäre aber super wenn ich ca.5m vorher erkannt werde?!

Collectord ist auf absent timeout=10
define in Fhem auch auf=10

Wieviel Reichweite habt ihr ca.??

Mfg Steffen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 01 Oktober 2015, 09:34:53
Zum Thema Anwesenheitserkennung in einzelnen Räumen:
Technisch gesehen ist es eine interessante Aufgabe, eine Anwesenheitserkennung in einzelnen Räumen mit BT Devices zu realisieren. Aber ist das für euch denn wirklich praktisch? Schleppt Ihr in der Wohnung IMMER solch ein Device mit euch rum, denn sonst mach es keinen Sinn wenn z.B. nur manchmal der Licht eingeschaltet wird oder euer Besuch auf einmal im Dunkeln steht... Oder ihr denkt über die eine (http://plusinsight.de/2013/11/do-it-yourself-cyborg-biohacker-tim-cannon-implantiert-einen-bioscanner-in-die-haut/) oder andere (https://www.google.de/search?biw=1361&bih=824&tbm=isch&sa=1&q=skin+patch+device&oq=skin+patch+device&gs_l=img.3...3125.3874.0.4548.7.7.0.0.0.0.148.625.5j2.7.0....0...1c.1.64.img..4.3.294.LqJ2qf8ITP4) schräge Lösung nach :)
Aber Spass beiseite: Eine wirklich praktikable Lösung kann man mMn mit einer Mischung aus hochauflösenden Bewegungs/Präsenzmeldern und eventuell noch einer Gesichtserkennung (https://github.com/bytefish/libfacerec/blob/master/README.md) realisieren. Mit einem Bluetooth Device erscheint mir das in der Praxis eher fragwürdig.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: chbla am 01 Oktober 2015, 10:36:01
zum herumschleppen: ich habe meistens mein Telefon dabei, und mittlerweile gibts ja auch smart watches.. also das ist fuer manche durchaus ganz normal
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 01 Oktober 2015, 11:00:32
Die Uhr lass ich halb gelten ;) Da ich aber selbst nie eine Uhr trage, kann ich mir nur vorstellen, dass man sie doch nicht immer trägt (duschen, saunieren, aufladen). Wenn die reiskorngroßen RFID Chips eine größere Rechweite hätten, könnte man die vom Piercer nebenan...
Aber du hast recht, eine Uhr am Handgelenk könnte für den einen oder anderen eine Lösung sein.

Edit: Um doch noch die Kurve zum Technischen zu bekommen: Hat schon jemand Erfahrungen ob die smarten Uhren immer für BT Empfänger sichbar sind oder fallen die auch in einen Halbschlaf und schalten das BT zeitweise ab?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: idansch am 02 Oktober 2015, 12:51:11
Komme leider nicht weiter.
Mein Ziel ist es einen RASPI mit FHEM  (er steht zu weit außerhalb um den Bluetooth Dongle aufzunehmen, läuft meine Haussteuerung) mit einen zweiten RASPI ohne FHEM (mit den unten aufgeführten Einheiten) zu verbinden, um die da ankommenden Device zu verarbeiten. (Anwesenheit)

Mein Status ist: 
- Raspberry PI  2 ohne FHEM
- lepresenced nach /usr/local/sbin kopiert und läuft auch
- Bluetooth Dongle ist angeschlossen und läuft
- es werden Device auch erkannt (laut syslog) und alle 5 min neu geloggt
- 3x Gigaset G-Tag (ich denke das es diese auch sind, die als Divise auch angezeigt werden)

Soweit ok.

Mein Fragen:
- wie bekomme ich die MAC der Device heraus?
- was muss ich wo eintagen bzw. installieren?

Noch eine Kleinigkeit.

Ich habe gelesen das:

ZitatWichtig ist, dass lepresenced wie folgt gestartet wird:
Code: [Auswählen]
/opt/fhem/lepresenced -d
Das -d ist wichtig, damit das Skript als Daemon läuft.

Patrick

Habe das vorher auch schon einmal ohne das -d gesehen und auch so umgesetzt.

MAC´s habe ich:

hcitool lescan
Set scan parameters failed: Input/output error (war bei mir)
try:

hciconfig hci0 down
hciconfig hci0 up

service bluetooth restart
service dbus restart

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 03 Oktober 2015, 00:39:19
Hi!

Zitat von: idansch am 02 Oktober 2015, 12:51:11
Mein Fragen:
- wie bekomme ich die MAC der Device heraus?
Möglichkeit 1: Du stellst den Loglevel von lepresenced hoch (im Skript in Zeile 19 LOG_INFO in LOG_DEBUG ändern) und startest lepresenced neu. Dann steht alles im Syslog. Den Wert solltest Du dann aber dringend wieder zurück ändern, damit nicht das Syslog und Deine SD-Karte explodieren.
Möglichkeit 2: lepresenced stoppen(!) und
hciconfig hci0 reset;hcitool lescan
ausführen.

Zitat von: idansch am 02 Oktober 2015, 12:51:11
- was muss ich wo eintagen bzw. installieren?
Schau mal weiter oben im Thread, da steht alles.

Zitat von: idansch am 02 Oktober 2015, 12:51:11
hcitool lescan
Set scan parameters failed: Input/output error (war bei mir)
Es kann immer nur ein Prozess scannen. Wenn lepresenced läuft und Du parallel hcitool aufrufst, wird es schwierig (s. o.)

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Raemsna am 10 Oktober 2015, 10:16:46
Hallo Patrick,

ich habe nun auch zwei G-Tags erfolgreich mit Hilfe deines lepresenced Skripts im Einsatz und wollte mich sehr für deinen Einsatz in diesem Thema und generell bei der gesamten FHEM Community bedanken! Ist wirklich spitze!

Grüße
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fh168 am 10 Oktober 2015, 11:34:42
Ich habe noch 3 Pebble Honey hier, benötige ich nicht mehr, weil ich auf die Gigaset Tags umgestiegen bin.  Falls die jemand haben möchte, soll er mir einen guten Preis vorschlagen. PM me. Ich hatte die damals mal für meinen Blog getestet: http://blog.moneybag.de/angetestet-pebblebee-honey-schluesselfinder-mit-bluetooth-4-0-und-fhem/

Robin
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Navigator am 18 Oktober 2015, 13:52:02
Hat schon mal jemand die Bluetooth NUT Tracker bei Ebay gesehen. Für die 5 Euro wird aber ziemlich viel versprochen.

http://www.ebay.de/itm/Nut-3-Bluetooth-Smart-Tracker-Anti-Lost-Schluesselfinder-Keyfinder-GPS-Locator-/371435373452?_trksid=p2141725.m3641.l6368
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Toto1973 am 18 Oktober 2015, 14:58:04
Ich frag mich nur, ob man an den Dingern die Batterie wechseln kann!?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 18 Oktober 2015, 14:59:41
steht doch dabei. jedes halbe jahr.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Toto1973 am 19 Oktober 2015, 10:27:32
Stimmt!
Soweit hatte ich nicht gelesen. Dafür das die Dinger nur 5 € kosten, ist ein halbes Jahr Laufzeit ok.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 19 Oktober 2015, 10:30:37
angeblich ist sogar eine zweite batterie dabei...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Steffen am 19 Oktober 2015, 10:31:37
Zitat von: Toto1973 am 19 Oktober 2015, 10:27:32
Stimmt!
Soweit hatte ich nicht gelesen. Dafür das die Dinger nur 5 € kosten, ist ein halbes Jahr Laufzeit ok.

Aber wenn die aus dem Ausland kommen und auch noch vielleicht Zoll gebühren kommen, dann könnten sie deutlich teurer werden als G-Tag oder?!?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 19 Oktober 2015, 10:34:44
solange du unter der freigrenze von 22 euro inklusive versand bleibst wird nichts weiter fällig.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gero am 19 Oktober 2015, 10:50:56
Das einzige was mich stört ist, dass die App die Positionsdaten an irgendwelche chinesischen Server übertragt.
Aber für eine reine presence Anwendung muß man die App nicht verwenden, solange die Tags regelmäßig advertisen und keine random device address verwenden.

Gruß,
Gero
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch am 19 Oktober 2015, 11:33:07
Braucht denn noch jemand PebbleBee's?

Ich hätte noch drei bis vier zu verkaufen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: idansch am 23 Oktober 2015, 10:15:35
Ich komme nicht weiter. Ich habe einen Raspi1 (192.168.109.29) mit FHEM und collectord 1.4
In die die collectord.conf habe ich eingetragen:


[hwr_raspi]
address=192.168.109.46 #Raspi2
port=5111
presence_timeout=180
absence_timeout=20


In der fhem.cfg habe ich die G-Tags definiert.
Zitatdefine Britta PRESENCE lan-bluetooth XX:XX:XX.XX.X1 127.0.0.1:5222
attr Britta eventMap absent:weg present:da
attr Britta room 5.7_Anwesenheit
define Daniel PRESENCE lan-bluetooth XX:XX:XX.XX.X2 127.0.0.1:5222
attr Daniel eventMap absent:weg present:da
attr Daniel room 5.7_Anwesenheit
define Haus PRESENCE lan-bluetooth XX:XX:XX.XX.X3 127.0.0.1:5222
attr Fabian eventMap absent:weg present:da
attr Fabian room 5.7_Anwesenheit

Im zweiten Raspi2 mit Bluetooth Stick ist der presenced-rpi-1.3. Dieser scannt auch meine 3 Siemend G-Tags ab.

In der presenced.log vom Raspi2 steht (Auszug):
Zitat2015-10-23 08:22:09 - closed connection from 192.168.109.29:60754
2015-10-23 08:22:09 - closed successfully all threads
2015-10-23 08:22:10 - new connection from 192.168.109.29:41210
2015-10-23 08:22:10 - new connection from 192.168.109.29:41212
2015-10-23 08:22:10 - new connection from 192.168.109.29:41213
2015-10-23 08:23:28 - closed connection from 192.168.109.29:41213
2015-10-23 08:23:28 - closed successfully all threads
2015-10-23 08:23:29 - closed connection from 192.168.109.29:41210
2015-10-23 08:23:29 - closed successfully all threads
2015-10-23 08:23:29 - closed connection from 192.168.109.29:41212
2015-10-23 08:23:29 - closed successfully all threads
2015-10-23 08:23:30 - new connection from 192.168.109.29:41259
2015-10-23 08:23:30 - new connection from 192.168.109.29:41261
2015-10-23 08:23:30 - new connection from 192.168.109.29:41262

In der collecord.log vom Raspi1 steht:
Zitat2015-10-23 08:22:08 - closed connection from 127.0.0.1
2015-10-23 08:22:08 - closed connection from 127.0.0.1
2015-10-23 08:22:08 - closed connection from 127.0.0.1
2015-10-23 08:22:10 - new connection from 127.0.0.1:39873
2015-10-23 08:22:10 - created thread 4 for processing device XX:XX:XX.XX.X1 in room hwr_raspi for peer 127.0.0.1 (UUID: c8f04275ed16269f7beea1508daf1e7b)
2015-10-23 08:22:10 - new connection from 127.0.0.1:39874
2015-10-23 08:22:10 - new connection from 127.0.0.1:39875
2015-10-23 08:22:10 - created thread 5 for processing device XX:XX:XX.XX.X2 in room hwr_raspi for peer 127.0.0.1 (UUID: b50eab236a6c309e9503406b20770855)
2015-10-23 08:22:10 - created thread 6 for processing device XX:XX:XX.XX.X3 in room hwr_raspi for peer 127.0.0.1 (UUID: 7a753dd770cb1d42c32e3f23d37a38c6)
2015-10-23 08:23:28 - closed connection from 127.0.0.1
2015-10-23 08:23:28 - closed connection from 127.0.0.1
2015-10-23 08:23:28 - closed connection from 127.0.0.1
2015-10-23 08:23:30 - new connection from 127.0.0.1:39922
2015-10-23 08:23:30 - created thread 7 for processing device XX:XX:XX.XX.X1 in room hwr_raspi for peer 127.0.0.1 (UUID: f732a0fccea4245cb935b87317ea7f9f)
2015-10-23 08:23:30 - new connection from 127.0.0.1:39923
2015-10-23 08:23:30 - new connection from 127.0.0.1:39924
2015-10-23 08:23:30 - created thread 8 for processing device XX:XX:XX.XX.X2 in room hwr_raspi for peer 127.0.0.1 (UUID: 068c42090cef18526d19971036f42f66)
2015-10-23 08:23:30 - created thread 9 for processing device XX:XX:XX.XX.X3 in room hwr_raspi for peer 127.0.0.1 (UUID: 37ca331554942cdf39cf0a8c90c7a6c6)

Trotzdem bekomme ich in FHEM immer einen Status: absent (weg) von allen drei G-Tags obwohl zwei vor zur Zeit in erreichbarer Nähe sind und nur einer absent ist.

Im Logfile von FHEM steht:

Zitat2015.10.23 08:23:30 3: Opening Britta device 127.0.0.1:5222
2015.10.23 08:23:30 3: Britta device opened
2015.10.23 08:23:30 3: Opening Daniel device 127.0.0.1:5222
2015.10.23 08:23:30 3: Daniel device opened
2015.10.23 08:23:30 3: Opening Fabian device 127.0.0.1:5222
2015.10.23 08:23:30 3: Haus device opened

Wie bekomme ich den den richtigen Status in FHEM angezeigt. Wie gesagt zur Zeit ändert er sich überhaupt nicht obwohl er alle 30s aktualisiert wird.







Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Trebor5 am 23 Oktober 2015, 12:09:45
Hallo,

trag das für dein gerät ein und es wird nur noch denn änderungszustand melden.

attr DEIN_GERÄTENAME event-on-change-reading .*

War bei mir auch so das der Zustand sich nicht geändert hatte.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Navigator am 24 Oktober 2015, 11:37:19
Zitat von: gero am 19 Oktober 2015, 10:50:56
...solange die Tags regelmäßig advertisen und keine random device address verwenden.


... das wird sich zeigen, hab mal eins geordert. Bei der angegebenen Lieferzeit wird das Ding wohl mit dem Paddelboot verschifft.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 24 Oktober 2015, 14:19:19
@idansch
Wenn ich nicht etwas Entscheidendes verpasst habe, unterstützt der presenced kein Bluetooth LE. Schau mal weiter oben nach lepresenced

Patrick


Gruß
Patrick

Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Trebor5 am 22 November 2015, 20:45:26
Hallo alle zusammen,

habe seit neusten  folgende Fehlermeldung im LOG.

Can't kill a non-numeric process ID at /opt/fhem/blescan.pl line 69.
2015.11.22 20:38:14 2: PRESENCE (Lisa_ist) - error while processing check: unexpected script output (expected 0 or 1):

Can't kill a non-numeric process ID at /opt/fhem/blescan.pl line 69.
2015.11.22 20:38:18 2: PRESENCE (Robert_ist) - error while processing check: unexpected script output (expected 0 or 1):


Deshalb löst jetzt my tts jetzt immer aus .

Wer hat den Fehler noch bzw. hat schon jemand eine Lösung ?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ceear am 22 November 2015, 21:17:23
Zitat von: gero am 19 Oktober 2015, 10:50:56
Das einzige was mich stört ist, dass die App die Positionsdaten an irgendwelche chinesischen Server übertragt.
Aber für eine reine presence Anwendung muß man die App nicht verwenden, solange die Tags regelmäßig advertisen und keine random device address verwenden.

Gruß,
Gero

Meine "nut" sind nun angekommen. Sieht bisher ganz gut aus. Sie sind nicht ganz so gesprächig wie die G-Tags aber für mich völlig ausreichend. Anbei ein 60 Sekunden Scan mit dem hcitool.

nut
Gigaset G-tag
Gigaset G-tag
nut
Gigaset G-tag
Gigaset G-tag
nut
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
nut
Gigaset G-tag
Gigaset G-tag
nut
nut
Gigaset G-tag
Gigaset G-tag
nut
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
nut
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
nut
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
nut
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
nut
Gigaset G-tag
nut
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
nut
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
nut
Gigaset G-tag
Gigaset G-tag
nut
Gigaset G-tag
Gigaset G-tag
nut
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag
Gigaset G-tag


Sie melden sich brav mit einer MAC. Ich finde die ganz gut, weil sie deutlich kleiner sind als die G-Tags - Danke für den Hinweis hier!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: inesa394 am 09 Dezember 2015, 22:26:59
Hallo,
Nutze auf meinen 3 fhem raspi für meine Handys collectord mit presenced und für meine g-tag gigaset
das Script von Patrick nur stehen meine gtags ständig auf absent nur bei der Einrichtung hatte ich mal ein present.
Meine collectord.conf sieh so aus
[wohnzimmer]
address=192.168.2.117
port=5333
presence_timeout=180
absence_timeout=20

[Schlafzimmer]
address=127.0.0.1
port=5111
presence_timeout=180
absence_timeout=20

[gtagdach]
address=192.168.2.102
port=5333
presence_timeout=180
absence_timeout=20


Wobei Schlafzimmer nur für die Handyerkennung zuständig ist
Die beiden anderen sollen meine gtags erkennen
In die fhem wurde das eingetragen
define handy PRESENCE lan-bluetooth 22:xx:C1:52:0F:E3 127.0.0.1:5222 30 80
define gtag an-bluetooth 7C:xx:xx:A7:14:xx 127.0.0.1:5222 30

Wobei auf allen jeweils der presenced und lepresenced laufen
gestartet habe ich  lepresenced mit sudo /opt/fhem/lepresenced -a 0.0.0.0 -d

Ohne collectord wurden die gtag einwandfrei erkannt.
Hat hier vielleicht jemand diese gigaset
mit collectord am laufen und kann mir sagen wie er das zum laufen gebracht hat
Andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tappenbecker am 13 Dezember 2015, 20:42:35
Hallöchen...

Ich lese jetzt auch schon seit geraumer Zeit diesen Thread (neben ein paar anderen zur Anwesenheitserkennung). Ich habe mir auch erst mal eins von den Gigaset G-Tags geholt und lasse dieses aktuell von 2 Raspis (jeweils einer im EG/OG) mit BT Dongles erfassen. Nur von dem "Haupt-Raspi" im OG wurde mein G-Tag im EG nicht erfasst. Vermute die Fussbodenheizung wirkt hier hervorragend als Abschirmung. Daher habe ich also einen 2ten Raspi ins Wohnzimmer gehängt. Der trägt neben 2 Jeelinks eben auch das USB-Dongle mit dem ich den G-Tag nun im EG (und witzigerweise auch im OG) orten kann.

Nun stehe ich vor dem nächsten Schritt: Die Anwesenheitserkennung umsetzten. Anwesenheit soll geben sein, wenn der Dongle von mindestens einem Raspi geortet wird. So weit ich gelesen habe ist collectord eine zumindest gangbare Lösung - die jedoch u.U. nicht sofort "out-of-the-box" funktioniert. Da ich selber noch FHEM Einsteiger bin wollte ich mal horchen, ob und warum niemand FHEM2FHEM für diese Aufgabe verwendet?

FHEM2FHEM würde ich ohnehin wegen der Daten die von den Jeelinks eingesammelt werden verwenden wollen. Gibt es dann trotzdem (gute) Gründe, collectord für G-Tags zu verwenden?

Ich habe mir übrigens ein startscript für lepresenced gebastelt. Bitte nicht verhauen dafür. Ist nur copy-paste und ich hab mich da eher mit try&error durchgewurschtelt um es zum laufen zu bekommen. Vielleicht kann ja wer anders es auch gebrauchen und/oder es auch verbessern. Bei mir funzt es jedenfalls 8)

cheers
Axel
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: timtom am 14 Dezember 2015, 12:30:36
Zitat von: ceear am 22 November 2015, 21:17:23
Meine "nut" sind nun angekommen. Sieht bisher ganz gut aus. Sie sind nicht ganz so gesprächig wie die G-Tags aber für mich völlig ausreichend...
...
Sie melden sich brav mit einer MAC. Ich finde die ganz gut, weil sie deutlich kleiner sind als die G-Tags - Danke für den Hinweis hier!
Hey,

das klingt sehr interessant. Meine WLAN-Ping-Erkennung ist nämlich alles andere als Zuverlässig, trotz mehrerer Geräte. Sind deine Erfahrungen nach wie vor positiv? Hat die "nut" auch noch jemand anders im Einsatz? Für 5€+Versand wäre das schon mal nicht schlecht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 14 Dezember 2015, 21:39:41
Hallo in der Runde,

mich interessiert der Thread auch. Wlan-Presence funktioniert bei mir auch nicht so recht. Android 6 schaltet mein Wlan aus. Tasker arbeitet da auch nicht so perfekt...

Mein Bluetooth-Dongel ist installiert. Die G-Tags werden gefunden und geht es an die Module.

73_presenced
oder
lepresenced

Welches läuft besser?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 14 Dezember 2015, 22:52:35
So lepresenced installiert. Define erstellt, aber nur bekomme ich trotz in Reichweite befindlichem G-Tag  die Meldung, dass dieser disconnected ist.

ZitatInternals:
   ADDRESS    7C:2F:80:97:39:C8
   CFGFN
   DEF        lan-bluetooth 7C:2F:80:97:39:C8 localhost:5333 60
   DeviceName localhost:5333
   MODE       lan-bluetooth
   NAME       Tag_Marianne
   NEXT_OPEN  1450129811
   NR         396
   PARTIAL
   STATE      disconnected
   TIMEOUT_NORMAL 60
   TIMEOUT_PRESENT 60
   TYPE       PRESENCE
   Readings:
     2015-12-14 22:49:11   state           disconnected
   Helper:
Attributes:

Log-Auszug:
ZitatOpening Tag_Marianne device localhost:5333
2015.12.14 22:45:09 3: Can't connect to localhost:5333: Connection refused

hcitool lescan funktioniert, allerdings nur mit sudo.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: tomster am 15 Dezember 2015, 01:08:41
Ich hab nicht viel rumprobiert, ehrlich gesagt. Aber ./lepresenced& funzt mit meinen PebbleBees ziemlich einwandfrei.
Hab zwar die PB's erst seit 5 Wochen im Einsatz (und daher kein Meinung zur Batteriedauer), aber "mechanisch" haben die Tags einiges mitmachen müssen...
Bin gespannt auf die "Dragons"; wenn sie jemals kommen... QT-charging wär das i-Tüpfelchen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tappenbecker am 15 Dezember 2015, 05:31:01
Moin dieda,

Wenn ich mich recht entsinne kann Dein hcitool lescan nicht gleichzeitig funzen wenn der lepresenced schon läuft.
Wie hast du lepresenced gestartet? Soll: lepresence -d
Was liefert:

ls -A | grep lepre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Navigator am 15 Dezember 2015, 06:50:49
@ceear: Also meine NUT funktionieren gar nicht. Hast du die erst freischalten müssen? In kann das Device überhaupt finden.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: slor am 15 Dezember 2015, 08:26:34
Welche version der NUT nutzt ihr denn? Wo habt ihr die gekauft?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ceear am 15 Dezember 2015, 10:44:58
Zitat von: timtom am 14 Dezember 2015, 12:30:36
Sind deine Erfahrungen nach wie vor positiv?

Zu mindestens funktionieren beide noch  ;) Die Erkennung ist zuverlässig, aber die Reichweite ist geringer als bei den G-Tags. In meiner Wohnung ist das kein Problem. 

Zitat von: slor am 15 Dezember 2015, 08:26:34
Welche version der NUT nutzt ihr denn? Wo habt ihr die gekauft?
Ich habe den Link von Dittel genutzt.
http://www.ebay.de/itm/Nut-3-Bluetooth-Smart-Tracker-Anti-Lost-Schluesselfinder-Keyfinder-GPS-Locator-/371435373452?_trksid=p2141725.m3641.l6368

Zitat von: Dittel am 15 Dezember 2015, 06:50:49
@ceear: Also meine NUT funktionieren gar nicht. Hast du die erst freischalten müssen? In kann das Device überhaupt finden.
Nein, ich musste nichts weiter machen. Ich habe die App auch gar nicht installiert / benutzt, weil man sich da ja irgendwie anmelden muss. Nachdem ich den Batterieschutz entfernt hatte, blinken die zweimal kurz auf und danach hat sie "hcitool" sofort gefunden - so habe ich die MAC zugeordnet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 15 Dezember 2015, 17:10:06
Zitat von: Tappenbecker am 15 Dezember 2015, 05:31:01
Moin dieda,

Wenn ich mich recht entsinne kann Dein hcitool lescan nicht gleichzeitig funzen wenn der lepresenced schon läuft.
Wie hast du lepresenced gestartet? Soll: lepresence -d
Was liefert:

ls -A | grep lepre

Sorry, dass ist mir zu knapp formuliert. Könntest du weiter ausholen? Meine Linux-Kenntnisse sind nicht so prickelnd...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tappenbecker am 15 Dezember 2015, 18:18:56
@dieda: Einfach per ssh auf den host zugreifen wo lepresenced läuft und auf der Kommandozeile den geposteten Befehl abwerfen. (Habe eben gesehen das ich mich vertippt  habe - sorry...). Muss natürlich heißen:
ps -A | grep lepre
und das liefert bei mir sowas zurück:
4384 ?        00:04:08 lepresenced
Wird nichts zurück geliefert, läuft  lepresenced nicht als deamon und Du werst kein BTLE Device connecten können.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 15 Dezember 2015, 20:50:37
Da tut sich nichts.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tappenbecker am 15 Dezember 2015, 21:55:50
Prima! Dann ist der Fehler ja gefunden  8)

Also lepresence als Deamon starten mit:
Zitatsudo /dein/installationsort/presenced -d
Anschließend sollte
Zitatps -A | grep lepre
etwas liefern wie zuvor beschrieben. Wenn es tut sollte auch in FHEM der "STATE" vom G-Tag auf "present" gehen (vorausgesetzt der G-Tag ist in Reichweite). Danach trudeln dann auch die Readings ein.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 16 Dezember 2015, 21:14:54
So, bin schon mal weiter. Der Status steht auf absent, allerdings ist er in Reichweite und wird auch mit Hcitool gefunden.

Zitatsudo /dein/installationsort/presenced -d

ergibt:
Zitatsudo presenced -d
2015-12-16 21:13:12 another process already running (PID file found at /var/run/presenced.pid)
2015-12-16 21:13:12 aborted...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 18 Dezember 2015, 21:29:10
Mag mir da einer helfen? Ich komme da nicht weiter.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tappenbecker am 19 Dezember 2015, 09:22:16
Moin!

War mal wieder ein Stapel Tippfehler von mir... sorry   :o

Es muss natürlich heißen:
Zitatsudo /dein/installationsort/lepresenced -d

presenced <> lepresenced !
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 19 Dezember 2015, 15:37:55
Leider komme ich da nicht weiter...
Die Rückmeldung:
Zitat
pi@raspberrypi /opt/fhem $ sudo lepresenced -d
sudo: lepresenced: command not found
pi@raspberrypi /opt/fhem $

lepresenced ist allerding in dem Ordner
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: tomster am 19 Dezember 2015, 15:44:42
Den Punkt und den Slash nicht vergessen!
Das Script soll ja ausgeführt werden.

sudo ./lepresenced -d
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 19 Dezember 2015, 15:59:05
Hm, ... Seufz, da kommt nix.

Ich weiß zwar was kommen muss:
Zitat10186
aber es weigert sich. Installiert ist es im Ordner: /opt/fhem

Vlt. nochmals deinstallieren?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: inesa394 am 21 Dezember 2015, 19:50:18
Kann es sein wenn presencd und lepresenced gleichzeitig auf dem gleichen Rechner laufen der eine nicht mehr funktioniert
jedenfalls wird mein gtag nach start von presencd nicht mehr
erkannt.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 21 Dezember 2015, 23:40:37
Bei mir war es so. Kurz mal alle installierten Programme aufgelistet und dann  presenced gelöscht. Nu funzt es.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: inesa394 am 22 Dezember 2015, 16:25:30
Schade eigentlich wollte mein Handy zusätzlich mit als Absicherung lepresenced findet es ja nicht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 22 Dezember 2015, 20:50:43
Der Befehl
Zitatsudo hcitool lescan
funktioniert?
In Fhem erscheint trotzdem
ZitatDisconnected
?

Dann einfach den Befehl
Zitatsudo /dein Ordner/der nächste Ordner/lepresenced -d

Wenn Presence insalliert ist erst mal deinstallieren.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: inesa394 am 23 Dezember 2015, 21:18:05
sudo hcitool lescan funktioniert nur wenn ich lepresenced stoppe
Wenn ich es dann  hcitool lescan ausführe findet er mein Handy nicht
nur meine gtags
Ist das bei dir anders findet dein lescan was?
Ich denke solange lescan nichts findet wird
es bei sudo /dein Ordner/der nächste Ordner/lepresenced -d
auch nicht klappen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 23 Dezember 2015, 23:49:24
Du kannst nur mit einem Programm/Script auf den Bluetooth-Dongel zugreifen. Entweder ein weiterer Dongle oder FHEM2FHEM.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: inesa394 am 24 Dezember 2015, 15:05:20
Hallo
Wie würde das mit FHEM2FHEM funktionieren ?

Frohe Weihnacht
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 29 Dezember 2015, 13:03:16
Ich benutze es nicht. Schau dazu doch einfach in der Commandref ;-)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mitch82 am 03 Januar 2016, 18:52:07
Hi zusammen,

Danke erstmal für die top Arbeit von euch & frohes Neues  ;)

ich versuche grade während des Weihnachtsurlaubes ;) eine Anwesenheitserkennung über Bluetooth LE Sender (Gigaset G-tag) an meinen Rasp mit FHEM aufzubauen, habe jedoch einige Probleme: die Anwesenheitserkennung über lepresenced funktioniert für eine kurze Zeit (mal nur ein paar Minuten, mal mehrere Stunden lang), dann springt der Status in FHEM auf absent. (Der G-tag ist in unmittelbarer Reichweite des Empfängers, daran liegt es also nicht). Hab schon den Thread durchgeblättert, aber irgendwie nichts gefunden was ich falsch mache. Oder hab ich was übersehen oder falsch verstanden?

Folgende Konfiguration verwende ich:
Bluetooth-Tag ist über
define Gtag PRESENCE lan-bluetooth xx:xx:xx:xx:xx:xx 127.0.0.1:5333 60
in FHEM eingebunden (FHEM läuft auf dem selben Rasp an dem auch Bluetooth-Stick angeschlossen ist, daher 127.0.0.1).

Auf dem Rasp läuft die aktuellste Version von lepresenced, gestartet über das Startscript aus Posting #435 (Danke, Axel, by the way), automatisch beim Systemstart vom Rasp über:
start-stop-daemon -d /home/pi/presence -S -x /home/pi/presence/lepresenced &

lepresenced läuft auch, wie ps -A | grep lepresenced
  570 ?        00:00:15 lepresenced
bestätigt.

sudo hcitool lescan zeigt den G-tag korrekt an.
presenced ist deinstalliert.

Trotzdem: wenn ich mein ganzes System neu starte, findet mein FHEM den G-tag; nach kurzer Zeit (wie beschrieben: mal ein paar Minuten, mal ein paar Stunden) verliert er aber offenbar die Verbindung und FHEM schaltet auf absent. Laut ps -A läuft aber lepresenced weiterhin....

Was mache ich falsch? Hat jemand nen Tipp auf Lager? Ich blick's grad nicht.  ;)

Danke!
Micha
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 03 Januar 2016, 20:59:57
Ich habe vier von den Dingern im Einsatz und nur einer motzt auf deine Art und Weise. Tippe mal auf einen Batteriefehler.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mumpitz am 08 Januar 2016, 06:45:49
Hallo zusammen

Ich bin seit gestern Abend ebenfalls stolzer Besitzer von 3 g-Tags sowie einem Bluetooth USB Adapters.
Die Einrichtungen hat dank der Anleitung in diesem Thread perfekt und innert Minuten geklappt. Herzlichen Dank dafür an alle fleißigen Bienchen!!!

Langfristig ist es damit mein Ziel, eine Alarmanlage zu betreiben. Dies merkt dank dem g-Tag, wenn wir zu Hause und wann absent sind. Dazu werden zu einem späteren Zeitpunkt Bewegungsmelder installiert.

Ich habe nun auf der Packungsbeilage der g-Tags gelesen, dass wenn diese mit der entsprechenden App Betrieben würden, dort der Batteriestatus angezeigt wird. Das heißt für mich, dass der g-Tag diesen Wert der App sendet.
Hat schon jemand versucht diesen abzufangen und in fhem auszuwerten?

Besten Dank für Eure Antworten!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mumpitz am 08 Januar 2016, 06:46:06
Hallo zusammen

Ich bin seit gestern Abend ebenfalls stolzer Besitzer von 3 g-Tags sowie einem Bluetooth USB Adapters.
Die Einrichtungen hat dank der Anleitung in diesem Thread perfekt und innert Minuten geklappt. Herzlichen Dank dafür an alle fleißigen Bienchen!!!

Langfristig ist es damit mein Ziel, eine Alarmanlage zu betreiben. Dies merkt dank dem g-Tag, wenn wir zu Hause und wann absent sind. Dazu werden zu einem späteren Zeitpunkt Bewegungsmelder installiert.

Ich habe nun auf der Packungsbeilage der g-Tags gelesen, dass wenn diese mit der entsprechenden App Betrieben würden, dort der Batteriestatus angezeigt wird. Das heißt für mich, dass der g-Tag diesen Wert der App sendet.
Hat schon jemand versucht diesen abzufangen und in fhem auszuwerten?

Besten Dank für Eure Antworten!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tappenbecker am 08 Januar 2016, 09:38:17
@Mitch: Tausche doch mal die Batterie von einem G-Tag das funzt mit dem das Zicken macht durch. Wenn der Fehler mit wandert liegt es an der Batterie.

Meiner geht erst nach 180 sec auf absent (hab ich so konfiguriert) aber das löst ja nicht Dein Problem wenn Dein Tag teils über Stunden absent ist. Aber klär erst mal ab ob es nicht die Batt ist.

Cheers
Axel


Gesendet von iPad mit Tapatalk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: tomster am 08 Januar 2016, 11:26:19
Bin ja Mal gespannt. Hab gerade die Versandbenachrichtigung von den bislang noch fehlenden 2 PebbleBee Dragon's V2.0 und einem The Stone "for free" erhalten. Mal schlappe 15 Monate nach Bestellung...

Mit den Honeys bin ich bislang recht zufrieden. Die laufen seit einigen Monaten ziemlich sorglos.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Trebor5 am 25 Januar 2016, 20:05:13
Hallo,

ich besitze 4 GTAGs von Siemens.

Eigentlich funktioniert alles einwandfrei habe ich gedacht.

Jetzt habe ich mal aus jucks 10 Zufallssprüche wenn jemand nach Hause kommt gesetzt.

Was mir dabei aufgefallen ist das Fhem auf einmal einen Spruch Labert obwohl sich der GTAG nicht einen Millimeter bewegt hat.

An der Reichweite kann es nicht liegen da ich eigentlich schon in der Einfahrt erkannt werde.

Auf dem letzten Anwendertreffen hat mir Markus Bloch erzählt das es vorkommt das wenn zufällig 2 TAGS zeitgleich gescannt werden es Probleme geben kann.

Can't kill a non-numeric process ID at /opt/fhem/blescan.pl line 69.
2016.01.25 06:09:41 2: PRESENCE (Marius_ist) - error while processing check: unexpected script output (expected 0 or 1):
Can't kill a non-numeric process ID at /opt/fhem/blescan.pl line 69.
2016.01.25 06:11:15 2: PRESENCE (Lisa_ist) - error while processing check: unexpected script output (expected 0 or 1):
Can't kill a non-numeric process ID at /opt/fhem/blescan.pl line 69.
2016.01.25 06:11:19 2: PRESENCE (Claudia_ist) - error while processing check: unexpected script output (expected 0 or 1):


Jetzt meine Frage hat jemand anderes auch das Problem ? Ich wollte gerne in Zukunft zuverlässig damit schalten aber so geht das leider nicht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: scooty am 30 Januar 2016, 19:30:38
Hallo zusammen,

hatte bisher meine 3 G-Tags über das blescan.pl Skript eingebunden und bin nun auf lepresenced umgestellt.
Mit den G-Tags läuft alles hervorragend, aber für meine Handies, die vorher unproblematisch über local-bluetooth als PRESENCE-Device eingebunden waren, bekomme ich seitdem nur noch Timeouts:
2016.01.30 13:38:49 1: Timeout for PRESENCE_DoLocalBluetoothScan reached, terminated process 2357
2016.01.30 13:38:49 2: PRESENCE (PR_AOnePlus01_BT) - device could not be checked (retrying in 10 seconds)
2016.01.30 13:39:59 1: Timeout for PRESENCE_DoLocalBluetoothScan reached, terminated process 2475
2016.01.30 13:39:59 2: PRESENCE (PR_AOnePlus01_BT) - device could not be checked after 1 retry (retrying in 10 seconds)


Habe ich da noch was überlesen oder kann mich jemand in die richtige Richtung schubsen?

Vielen Dank,
Andreas
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: robert.heinze am 30 Januar 2016, 21:14:29
Also ich scanne mit blescan.pl in einem größeren Projekt aktuell 20 verschiedene BLE-Geräte und es läuft einwandfrei, also warum sollte ich auf die FHEM-Funktion umsteigen?

Never change a running system  ;)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Chris_Worms am 01 Februar 2016, 21:07:27
Hi,

vielen Dank für das Script!

Auf meinem Pi 2 läuft das blescan.pl Script mit einem CSL - USB micro Bluetooth-Adapter V4.0 und einem PebbleBee Honey Tag.

Das Script schickt mir nach 10 Minuten absent eine Nachricht per Pushover auf mein Handy und setzt den Dummy HA.Chris auf off. Bei dem Wechsel auf present wird per DOIF geprüft ob meine Media-Steckdose eingeschaltet ist. Wenn ja dann wird nur der Dummy HA.Chris auf on geschalten, wenn nein dann wird eine Harmony-Activity Media Power On gestartet, welche die Media-Steckdose (Homematic Steckdose) einschaltet und nach 120 Sekunden die Acitvity Fernsehen den Kabel-Receiver (der brauch ca. 120 Sekunden zum hochfahren), den TV und den A/V-Receiver einschaltet.

Das läuft jetzt als Test, mal schauen was ich damit noch anstellen kann. Für meine bessere Hälfte kaufe ich auch noch so einen Tag, muss ihr dann nur beibringen wofür das schon wieder gut sein soll  ;D 8)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jamo am 01 Februar 2016, 23:54:27
Hallo Andre,
Zitat von: inesa394 am 09 Dezember 2015, 22:26:59
Hallo,
Nutze auf meinen 3 fhem raspi für meine Handys collectord mit presenced und für meine g-tag gigaset
das Script von Patrick nur stehen meine gtags ständig auf absent nur bei der Einrichtung hatte ich mal ein present.
Meine collectord.conf sieh so aus
[wohnzimmer]
address=192.168.2.117
port=5333
presence_timeout=180
absence_timeout=20

[Schlafzimmer]
address=127.0.0.1
port=5111
presence_timeout=180
absence_timeout=20

[gtagdach]
address=192.168.2.102
port=5333
presence_timeout=180
absence_timeout=20


Wobei Schlafzimmer nur für die Handyerkennung zuständig ist
Die beiden anderen sollen meine gtags erkennen
In die fhem wurde das eingetragen
define handy PRESENCE lan-bluetooth 22:xx:C1:52:0F:E3 127.0.0.1:5222 30 80
define gtag an-bluetooth 7C:xx:xx:A7:14:xx 127.0.0.1:5222 30

Wobei auf allen jeweils der presenced und lepresenced laufen
gestartet habe ich  lepresenced mit sudo /opt/fhem/lepresenced -a 0.0.0.0 -d

Ohne collectord wurden die gtag einwandfrei erkannt.
Hat hier vielleicht jemand diese gigaset
mit collectord am laufen und kann mir sagen wie er das zum laufen gebracht hat
Andre

Ich glaube Du musst im collectord.conf für das Schlafzimmer die IP Adresse von localhost auf die reale IP umstellen, also sowas wie

[Schlafzimmer]
address=192.168.2.105  -> anstatt "127.0.0.1"
port=5111
presence_timeout=180
absence_timeout=20


Das hat bei mir mit lepresenced funktioniert.

Ich habe die genau gleich Konfiguration wie Du. Also: Auf 2 RPi (RPI1 und RPI2) habe ich lepresenced UND presenced laufen, lepresenced für die Siemens GTag (Bluetooth BT LE) und presenced für die Handy-erkennung (normales Bluetooth BT).

Auf dem RPI1, auf dem auch FHEM läuft, läuft zusätzlich der collectord. lepresenced lauscht auf Port 5333, presenced auf port 5111.

Auf beiden RPI befindet sich das gleiche Cambridge Silicon Radio, Ltd Bluetooth Dongle ( HCI mode).

Ich hatte die gleichen Probleme wie Du, also BT (presenced auf port 5111) wurde vom collectord erkannt, BT LE (lepresenced auf port 5333) wurde nur im Zimmer vom RPI1 erkannt. Nachdem ich die IP Adresse in der collectord.conf von 127.0.0.1 auf die richtige Adresse umgestelt hatte, läufts!


Gruss, Ingolf
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: tomster am 04 Februar 2016, 09:08:44
So, heute sind meine PebbleBee Dragon's gekommen.
Das sind ziemliche Waschel geworden. Für den Schlüsselbund ist das wohl nix mehr.
Der "The Stone" hingegen ist schnucklig klein. Mal abwarten was erste Tests so bringen...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Chris_Worms am 04 Februar 2016, 15:40:28
Die sind ja riesig  :o
Titel: Trackr
Beitrag von: Calle78 am 07 Februar 2016, 22:31:10
Hey Leute, bei mir sind gerade 10 TrackR eingetroffen die ich gern testen/einbinden möchte. In den 32 Seiten (>300posts) sind verschiedene Ansätze verfolgt worden. Gibt es inzwischen einen Konsens (oder Zusammenfassung/Tutorial) welcher Weg der Beste ist (für mehr als einen Tag?).

Danke euch

ciao Carlo
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 10 Februar 2016, 11:45:44
Moin,

ich hab mich mal durch den Thread gearbeitet - und wollte jetzt mal versuchen, eine erste Version einer Step-by-Step-Anleitung für die Verwendung von presenced bzw. lepresenced zusammenzukloppen, damit sich andere möglicherweise ein wenig leichter tun. Allerdings habe ich dazu noch eine Frage, weil das im Thread ein wenig widersprüchlich kam (bzw. ein zwei Posts etwas erwähnten, was ich vorher für nicht möglich gehalten hatte):

1. In eigenen Versuchen meine ich herausgefunden zu haben, dass presenced keine Low-Energy-Tokens erkennen kann, dafür aber Handies etc., während lepresenced NUR Low-Energy-Dingens sieht, aber keine Handies etc. Ist das so korrekt verstanden?

2. Es wurde hier irgendwo erwähnt, dass jemand presenced und lepresenced gleichzeitig auf einem Gerät laufen hat. Wenn ich alles korrekt verstanden habe, dann geht das nur, wenn ich für beide jeweils einen eigenen Bluetooth-Dongle einsetze. Ist das so richtig? Oder können beide gleichzeitig denselben Dongle verwenden?

Ich probier das gerne selber weiter aus, aber wenn dazu jemand was sagen kann, wäre es hilfreich - und wenn ichs dann weiß, klopp ich gerne mal die erwähnte einfache Zusammenfassung ein...

Grüße
Martin
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jamo am 10 Februar 2016, 21:21:50
Hallo Martin,
1) korrekt
2) Nein, Du brauchst nur einen BT Dongle, z.B der Cambridge Silicon Radio, Ltd Bluetooth Dongle unterstützt beides.

Gruss,Ingolf
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 10 Februar 2016, 22:32:09
Hola Ingolf,

Und ich kann dann gleichzeitig und zeitgleich sowohl presenced als auch lepresenced starten und laufen lassen? Keins von beiden "besetzt" damit den Dongle (bzw hcitool, das da ja, wenn ich recht verstanden habe, von beiden verwendet wird zur Abfrage)?

Sorry fürs Sichergehenwollen... Wäre ja prima, wenn das ginge. :)

Danke schonmal! :)

Der M.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jamo am 11 Februar 2016, 06:56:28
Hallo der M.,

ja das geht dann so, wie ich auch im Beitrag "Antwort #472" geschrieben hatte, nachdem ich einmal die IP von 127.0.0.1 auf die richtige IP geändert hatte, läufts. Weiss nicht warum, vielleicht war es nur ein einmaliger Hänger.

Gruss I.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 11 Februar 2016, 19:57:09
Mahlzeit!

#472 bezieht sich auf blescan.pl, nicht auf lepresenced. Das ist ein wichtiger Unterschied. blescan.pl startet bei jedem Aufruf einen neuen Scan und beendet sich danach (also bspw. nach 60s) selbst. Danach ist das Bluetoothgerät frei. lepresenced scant fortwährend und notiert sich nur bei jedem empfangenen Beacon einen Zeitstempel. Das ist wesentlich eleganter und vor allem stabiler. Der Nachteil ist aber, dass das Bluetoothgerät ununterbrochen benutzt wird.

Habe selbst nur lepresenced ohne presenced im Einsatz, kann also nicht sagen, ob sich das beisst.

Patrick


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: scooty am 11 Februar 2016, 20:07:22
Zitat von: PatrickR am 11 Februar 2016, 19:57:09
Habe selbst nur lepresenced ohne presenced im Einsatz, kann also nicht sagen, ob sich das beisst.
Bei mir ist lepresenced und presenced gleichzeitig problemlos im Einsatz.
Probleme gab es nur bei gleichzeitiger Verwendung von lepresenced und PRESENCE mit "local-bluetooth".
(s. #469 (http://forum.fhem.de/index.php/topic,28753.msg400866.html#msg400866))

Andreas
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Calle78 am 12 Februar 2016, 20:07:46
@rubbertail das wäre großartig bevor wir die #500 knacken ;). Ich würde mich anbieten dein Tutorial als DAU zu testen und Feedback zu geben wenn man etwas verbessern kann. Wo wolltest du es publizieren?

ciao Carlo
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 12 Februar 2016, 22:53:22
Vielleicht kann ich noch unterstützen mit einem Tutorial :)

Ich habe mich in den letzten drei Stunden mit diesem Thread sowie meinem neuen Gtag nebst BT Dongle für den PI auseinandergesetzt.

Inhaltsverzeichnis:
--> Anleitung für ein  LE Device (z.b Gtags,Pebbles etc.) ab Schritt 4
--> Anleitung für ein NICHT LE Device (z.b IPhone) ab Schritt 8

Hardware (getestet):
CSL NET BT USB2.0 Stick, Bluetooth V4.0, Nano,
--> Gtag von Gigaset

Untere Tags wurden erfolgreich von fig8 getestet:
--> TrackR
--> UDOO Neo


1) BT Stick dem PI bekannt machen
apt-get install bluetooth

2) reboot

3) in /var/log/messages sollte der BT Dongle jetzt erkannt worden sein.
    Feb 12 19:52:55 fhem kernel: [    4.773600] Bluetooth: Core ver 2.20
Feb 12 19:52:55 fhem kernel: [    4.773748] NET: Registered protocol family 31
Feb 12 19:52:55 fhem kernel: [    4.773765] Bluetooth: HCI device and connection manager initialized
Feb 12 19:52:55 fhem kernel: [    4.773797] Bluetooth: HCI socket layer initialized
Feb 12 19:52:55 fhem kernel: [    4.773821] Bluetooth: L2CAP socket layer initialized
Feb 12 19:52:55 fhem kernel: [    4.773890] Bluetooth: SCO socket layer initialized
Feb 12 19:52:55 fhem kernel: [    4.797531] usbcore: registered new interface driver btusb


3.1) Die Tags lassen sich suchen mit...
sudo hcitool lescan

Falls es damit kein Erfolg gibt das BT Inferface neustarten. Dazu muss nicht der PI rebootet werden.
sudo hciconfig hci0 down
sudo hciconfig hci0 up
sudo hcitool lescan



Anleitung für ein  LE Device (z.b Gtags,Pebbles etc.)

4) Entscheidung für lepresenced
    Beim Start habe ich folgende Meldung erhalten:
Can't locate Net/Server/Daemonize.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 / usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at /opt/fhem/lepresenced line 17.
BEGIN failed--compilation aborted at /opt/fhem/lepresenced line 17.

4.1) Lösung dazu (wurde hier auch schon beschrieben) - Abhängigkeiten auflösen und fehlende Teile installieren:
apt-get install libnet-server-* (Anpassung am 16.02.2016)

4.2) reboot

5) lepresenced Start Skript "startlepresenced.sh"aus http://forum.fhem.de/index.php?topic=28753.435 einrichten und Pfade (da wo das lepresenced Skript liegt) anpassen.
Ich habe unter meinem /opt/fhem ein Verzeichnis /script wo ich beide Skripte abgelegt habe.
Anpassen Zeile 15 : z.b /opt/fhem/script/lepresenced
Anpassen Zeile 23 : z.b start-stop-daemon -d /opt/fhem/script -S -x /opt/fhem/script/lepresenced &

Aktuelle (Anpassung am 16.02.2016) Link für lepresenced --> http://forum.fhem.de/index.php/topic,28753.msg336588.html#msg336588 (http://forum.fhem.de/index.php/topic,28753.msg336588.html#msg336588)

Skript ausführbar machen : chmod +x /opt/fhem/script/lepresenced && /opt/fhem/script/lepresenced
Testbar mit : sudo sh startlepresened.sh start (Anpassung am 16.02.2016)

6) Fhem Konfigurieren
          --   Name               Modul    Modus         MAC vom Gtag    IP vom PI Port    Abfragezeit in Sekunden

define MeinGtAG PRESENCE lan-bluetooth xx:xx:xx:xx:xx:xx 127.0.0.1:5333    120


7) Den absent und present Mode kann man einfach testen, in dem man den Gtag mit Alufolie einwickelt.

Anleitung für ein NICHT LE Device (z.b IPhone) || Danke an rubbertail

Hinweis: Beide Wege können parallel auf dem selben BT-Dongle laufen, das sich die Ports unterscheiden!

8a) Installtion über Debian Pakete:(Auszug commanref)
        .deb package for Debian (noarch): presenced-1.3.deb http://svn.code.sf.net/p/fhem/code/trunk/fhem/contrib/PRESENCE/deb/presenced-1.3.deb
        .deb package for Raspberry Pi (raspbian): presenced-rpi-1.3.deb http://svn.code.sf.net/p/fhem/code/trunk/fhem/contrib/PRESENCE/deb/presenced-rpi-1.3.deb


         sudo dpkg -i presenced-rpi-1.3.de


8b) Installation perl script file (Auszug commanref)

direct perl script file: presenced http://svn.code.sf.net/p/fhem/code/trunk/fhem/contrib/PRESENCE/presenced


9) Fhem Konfigurieren - Einrichten des BT Device
          --   Name               Modul    Modus         MAC vom Gtag    IP vom PI Port    Abfragezeit in Sekunden

define MeinGtAG PRESENCE lan-bluetooth xx:xx:xx:xx:xx:xx 127.0.0.1:5111    120


10) Automatischer Start von lepresenced nach Reboot   (Anpassung am 10.04.2016)

Ein sh-Skript mit dem Inhalt:

sudo start-stop-daemon -d /opt/fhem/script -S -x /opt/fhem/script/lepresenced

unter dem Verzeichnis /home/pi ablegen, welches sich init_start.sh nennt.

Das Skript dann unter: sudo crontab -e einhängen mit folgender Folge:

@reboot        /home/pi/init_start.sh


Änderungen vom 16.02. durch Hinweise von adriano eingepflegt
Änderungen vom 20.02. durch Hinweise von rubbertail eingepflegt
Änderungen vom 10.04 Automatischer Start nach reboot
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 13 Februar 2016, 14:30:46
Betreibe das Ganze mit Tags "iTag" von Unitec (bei buyvip.de gekauft für knapp 17€ das Stück) und nem Bluetooth-4-Dongle von Conrad (Nr. 448876-5D) für knapp 10€ am Raspi - Vorgehensweise wie oben für lepresenced, plus Einrichtung von presenced wie in der command reference beschrieben. Klappt prächtig.
Meine Anleitung hat sich damit fast erledigt - aber wenn das oben nicht reicht - ich stell sie gerne auch zur Verfügung. Will nur den Thread nicht mit Doppelungen zumüllen. :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Adriano am 15 Februar 2016, 12:37:56
Kurze Frage zur Technik. Hat es Auswirkungen einen Tag zu pingen bzw. ein Telefon zu pingen? Rein vom Strom her? Also je höher die Pingrate um so höher der Stromverbrauch am Tag bzw. Telefon?

Meine beiden Handys können beide LE. Somit brauch ich nur lepresenced laufen zu lassen parallel zu den bestellten Gigaset Tags oder?

Aktuell benutze ich presenced.

Danke für Infos.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 15 Februar 2016, 13:38:32
Salut,

mein iPhone 6+ kann auch LE - empfangend. Ich kanns aber mit lepresenced nicht erreichen - deswegen lasse ich beide, lepresenced und presenced, nebeneinander und gleichzeitig laufen, ersteres für die iTags, zweiteres für die Telefone. Ich denke nicht, dass die Bluetooth-Pings viel Leistung aus dem Akku ziehen, aber das wäre wohl mal nen Test wert. Berichte doch mal! :))

Martin
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mbl am 25 Februar 2016, 18:32:57
Ich kann bestätigen, dass die Antwort von Devender (http://forum.fhem.de/index.php/topic,28753.msg408966.html#msg408966) auch mit einem TrackR und einem UDOO Neo soweit funktioniert. Der hciclient scheint sich momentan zwar noch etwas instabil zu verhalten, das könnte aber auch andere gründe haben.

Vielen Dank!

Edit: Jap, der hcitool-bug lag woanders. Funktioniert jetzt einwandfrei!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: raimundl am 29 Februar 2016, 14:47:37
Hallo!

ELV bietet den X4-LIFE Multifunkti BL-Anhänger um 12,95 an:

http://www.elv.at/x4-life-bluetooth-schluesselfinder-xmarty-mit-kamera-fernausloeser-schluesselfinder-und-diebstahlsicherung.html (http://www.elv.at/x4-life-bluetooth-schluesselfinder-xmarty-mit-kamera-fernausloeser-schluesselfinder-und-diebstahlsicherung.html)

Kennt den jemand bereits und funktioniert für die FHEM Funktion Anwesenheitserkennung damit?

LG

PS.: Bitte ev. gut funktionierende Alternative posten
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 29 Februar 2016, 17:59:30
Die Dinger sehen exakt so aus wie meine iTags von Unitec - die Chance ist groß, dass das damit auch klappt. Batterielaufzeit ist allerdings eher mäßig (beim Testen hat die mitgelieferte grade mal ne Woche gehalten - ich hoff, die war schon entsprechend entladen)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: raimundl am 01 März 2016, 08:55:51
Zitat von: raimundl am 29 Februar 2016, 14:47:37
Hallo!

ELV bietet den X4-LIFE Multifunkti BL-Anhänger um 12,95 an:

http://www.elv.at/x4-life-bluetooth-schluesselfinder-xmarty-mit-kamera-fernausloeser-schluesselfinder-und-diebstahlsicherung.html (http://www.elv.at/x4-life-bluetooth-schluesselfinder-xmarty-mit-kamera-fernausloeser-schluesselfinder-und-diebstahlsicherung.html)

Kennt den jemand bereits und funktioniert für die FHEM Funktion Anwesenheitserkennung damit?

LG

PS.: Bitte ev. gut funktionierende Alternative posten

Habe einen bestellt und werde berichten!

Edit: 7.3.2016 funktioniert mit Anleitung von Devender! Danke!!

LG
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 17 März 2016, 20:47:32
hi,

danke - ich habs gesehen, war ausgeloggt. Mein Fehler. Hat sich glaube ich überschnitten, hab den Post wieder rausgenommen.

Noch eine Frage:

sudo sh startlepresened.sh start

Müsste ich therotisch nach jedem reboot neu ausführen, oder? Kann ich das in den Systemstart integrieren?

BTW: ich hab die Tags hier - nicht mal 4$, funktionieren (im ersten Test): http://www.gearbest.com/home-gadgets/pp_157922.html (http://www.gearbest.com/home-gadgets/pp_157922.html)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 17 März 2016, 20:51:22
Hier:
http://www.forum-raspberrypi.de/Thread-tutorial-automatisches-starten-von-scripte-programme-autostart
Ein paar Möglichkeiten - hier für den Raspi, gilt aber m. E. für alle aktuellen Linuxe.

Ich selber habs quick & dirty in die /etc/rc.local geworfen. *duckundweglauf* <- Da wollen mich sicher gute Linuxer hauen dafür...

Und zwar so:
# start lepresenced
/usr/local/sbin/lepresenced -d


Ohne das Startscript, direkt so.

Deine Tags sehen verdächtig wie die meinen (und die oben erwähnten X4-LIFE Multifunkti BL-Anhänger) aus... du hast nur die bessere Quelle rein preislich aufgetan. Congrats! :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 17 März 2016, 21:38:01
Danke - 4 Wochen Lieferzeit, aber - who cares ;)
Ich kann zwar Windows-Server administrieren, aber bei Linux sind meine Kentnisse eher basal... ;) Das script wird laut # nicht ausgeführt, korrekt? Du hast das also ans Ende gepastet, und welchen Flag auf das File gesetzt?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 17 März 2016, 21:57:48
Die #-Zeile ist nur zur Erklärung der Zeile drunter, die natürlich ausgeführt wird - das Script muss ausführbar sein.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 17 März 2016, 22:24:57
Eine Frage habe ich noch - ich hatte ja vorher einen Lan-Ping benutzt, aber seit der Umstellung ballert er mir das Log voll:

2016.03.17 22:17:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:17:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:17:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:17:25 2: ROOMMATE set rr_Sascha home
2016.03.17 22:17:25 2: ROOMMATE set rr_Sascha home
2016.03.17 22:17:25 2: ROOMMATE set rr_Sascha home
2016.03.17 22:18:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:18:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:18:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:18:25 2: ROOMMATE set rr_Sascha home
2016.03.17 22:18:25 2: ROOMMATE set rr_Sascha home
2016.03.17 22:18:25 2: ROOMMATE set rr_Sascha home
2016.03.17 22:19:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:19:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:19:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:19:03 2: ROOMMATE set rr_Sascha home
2016.03.17 22:19:03 2: ROOMMATE set rr_Sascha home
2016.03.17 22:19:03 2: ROOMMATE set rr_Sascha home
2016.03.17 22:19:03 2: ROOMMATE set rr_Sascha home
2016.03.17 22:20:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:20:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:20:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:20:03 2: ROOMMATE set rr_Sascha home
2016.03.17 22:20:03 2: ROOMMATE set rr_Sascha home
2016.03.17 22:20:03 2: ROOMMATE set rr_Sascha home
2016.03.17 22:21:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:21:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:21:02 2: ROOMMATE set rr_Julia home
2016.03.17 22:21:03 2: ROOMMATE set rr_Sascha home
2016.03.17 22:21:03 2: ROOMMATE set rr_Sascha home
2016.03.17 22:21:03 2: ROOMMATE set rr_Sascha home


Habe ich einen Denkfehler? Prinzipiell funktioniert das jetzt so - zuerst die Anwesenheitskennung:

define iTag_Sascha PRESENCE lan-bluetooth FF:FF:70:00:96:52 127.0.0.1:5333 60

Mit dem Status triggere ich ein Notify, das die Roommates steuert:

define SaschaHEvt notify iTag_Sascha {\
  if (Value("iTag_Sascha") eq "present") {\
    fhem ("set rr_Sascha state home")\
  } elsif (Value("iTag_Sascha") eq "absent") {\
    fhem ("set rr_Sascha state gone")\
  }\
}


Wo liegt mein Fehler - jemand eine Idee?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 17 März 2016, 22:26:22
event-on-change-reading-Attribut vielleicht hilfreich?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 17 März 2016, 22:33:08
Hatte ich gesetzt, hat leider nichts geändert. Habe jetzt mal den verbose level auf 1 gesetzt - zumindest scheint jetzt Ruhe zu sein. Taste mich da mal langsam ran.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 17 März 2016, 22:34:20
Wo hattest du es denn gesetzt - auf welches Device?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 17 März 2016, 22:38:37
Direkt auf die Roommates - denn die tauchen ja im Log auf.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 17 März 2016, 22:41:05
Versuchs doch mal auf das PRESENCE-device... quasi auf den Bluetooth-Tag.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 18 März 2016, 08:56:13
Hi,

den hatte ich per verbose 1 auch schon ausgeschaltet. Die Meldungen kommen definitiv von roommate, loglevel 2.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 18 März 2016, 09:01:16
Moment - ich fürchte, du verwechselst Logeinträge mit Events... Wenn der Tag aber wegen möglichem fehlenden Eintrag event-on-change-reading auf .* ständig Events auslöst, wird dein Notify bei jedem solchen auch den Roommate anwesend setzen, egal welche verbose fürs Log eingestellt ist... Persönlich setz ich das Attribut sowieso automatisch bei jedem Device (bestimmte Heizungsdinger, die ich plotten will, mal ausgenommen)...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 18 März 2016, 09:56:59
Passt, danke! Manchmal hat man echt einen Knoten im Hirn. Besten Dank für Deine Unterstützung!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 18 März 2016, 10:00:45
Hats jetzt geklappt - und das Log bleibt frei? Wenn ja - freut mich. :)

Aber gern. Manchmal kann auch gesundes Viertelwissen helfen... ;)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: uelly am 23 März 2016, 21:36:21
Ich verwende einen Raspberry pi 3 mit dem integrierten Bluetooth.

Ich habe die Skripte eingerichtet und nach dem ausführen von
sudo sh startlepresened.sh start
startet alles und man meint, alles ist gut... aber nach einer geissen zeit (ca2min) hängt sich der raspberry pi weg und ich muss strom raus und wieder rein stecken...
hat dazu jemand spontan eine idee?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dieda am 23 März 2016, 22:42:52
Wäre es nicht einfacher statt Startscript einen Shell-Befehl von FHEM aus zu starten?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 23 März 2016, 23:08:22
Was sagt denn das Message log von deinem PI?
Hast du mal parallel mit TOP die Prozesse beobachtet?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 24 März 2016, 08:59:39
Zitat von: dieda am 23 März 2016, 22:42:52
Wäre es nicht einfacher statt Startscript einen Shell-Befehl von FHEM aus zu starten?

Ich feuer das per Cronjob bei Neustart raus.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: andre07 am 25 März 2016, 15:19:04
Wenn man mit collectord arbeitet muß man die Erkennung
bei allen Devices auf port 5222 setzen
lan-bluetooth xx:xx:80:xx:xx:AC 127.0.0.1:5222 20 120
In dem tutorial hier im Thread wurde das nicht erwähnt.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: xs3bt am 28 März 2016, 19:52:36
Zitat von: uelly am 23 März 2016, 21:36:21
Ich verwende einen Raspberry pi 3 mit dem integrierten Bluetooth.

Ich habe die Skripte eingerichtet und nach dem ausführen von
sudo sh startlepresened.sh start
startet alles und man meint, alles ist gut... aber nach einer geissen zeit (ca2min) hängt sich der raspberry pi weg und ich muss strom raus und wieder rein stecken...
hat dazu jemand spontan eine idee?

Hallo,

kann das Problem bestätigen, ich starte lepresence über das init.d script und nach 30sek bis 3min nach boot stürzt der raspberrypi3 (jessie) total ab, leider werden keinerlei syslogs erzeugt mit denen man dem Problem auf den Grund gehen könnte.

habe leider 2 mal raspberry komplett neu aufsetzten gebraucht bis ich es mit Sicherheit sagen konnte das es am lepresence liegt.

habe genau dieses init.d script und das lepresence script auch bei dem raspberrypi2 (wheezy) mit usb bluetooth zuvor auch verwendet ohne Probleme.

habe leider keine Idee wo ich ansetzten soll.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: MaxKnall am 28 März 2016, 20:09:23
Ich habe das gleiche Problem. Dachte zuerst es liegt nur an lepresence. Passiert bei mir aber auch mit local-bluetooth und dem PRESENCE-Modul.
Nach x Stunden Laufzeit (aktuell waren es 48) kompletter Freeze. Im Syslog sind keine auffälligen Einträge.
Momentan hängt der Raspi bei mir noch an einem 2A Netzteil. Habe mir mal das offizielle 2,5A Netzteil bestellt um diesen Faktor auszuschließen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: xs3bt am 28 März 2016, 20:23:16
Zitat von: MaxKnall am 28 März 2016, 20:09:23
Ich habe das gleiche Problem. Dachte zuerst es liegt nur an lepresence. Passiert bei mir aber auch mit local-bluetooth und dem PRESENCE-Modul.
Nach x Stunden Laufzeit (aktuell waren es 48) kompletter Freeze. Im Syslog sind keine auffälligen Einträge.
Momentan hängt der Raspi bei mir noch an einem 2A Netzteil. Habe mir mal das offizielle 2,5A Netzteil bestellt um diesen Faktor auszuschließen.

hey,

kannst du gleich wieder stornieren, genau das habe ich auch schon gemacht weil ich auch dachte das es daran liegt, nein leider kein unterschied sobald lepresence aktiviert wird freeze.
habe gerade das original raspberry Netzteil mit 2,5A in betrieb.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 29 März 2016, 13:50:29
Zum Thema iTags - an die anderen Nutzer: wie lange hält denn bei Euch die Batterie? Kann das sein dass nach ner Woche schon wieder Essig ist? Hab jetzt schon die dritte drin, aber die halten nicht grade lange?!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 29 März 2016, 14:54:17
Zitat von: Tedious am 29 März 2016, 13:50:29
wie lange hält denn bei Euch die Batterie?
Nicht ganz zur Deiner Frage passend, aber in 3/3 G-Tags hält die Batterie jetzt seit über 9 Monaten.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 29 März 2016, 17:16:26
Hatte ich weiter oben schon geschrieben - ist auch meine Erfahrung. Daher hängen die Dinger inzwischen nur noch an den Gästeschlüsseln.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mumpitz am 30 März 2016, 06:43:33
Hallo zusammen. Bei mir laufen die g-Tags seit 5 Monaten mit der mitgelieferten Batterie. Null Probleme und absolut zuverlässig!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Chris_Worms am 04 April 2016, 15:20:39
Hi,
vielleicht habe ich es nur übersehen: wie beeinflusse ich das Schreiben von Meldungen des blescan.pl Scriptes in die /var/log/syslog? Ich möchte das loggen in die syslog ausschalten.
Danke & Gruß
Chris
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: JayP am 09 April 2016, 23:28:54
Vielen Dank für die tolle Anleitung.
Das hat super geklappt.
Eine Frage hätte ich noch.
Zur Zeit muss ich nach jedem Neustart immer:
start-stop-daemon -d /opt/fhem/script -S -x /opt/fhem/script/lepresenced &
eingeben.

Wie kann man dies automatisieren?
Ich habe es schon mit er rc.local probiert. Leider ohne Erfolg.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 10 April 2016, 04:01:40
Hi!

Zitat von: Chris_Worms am 04 April 2016, 15:20:39
vielleicht habe ich es nur übersehen: wie beeinflusse ich das Schreiben von Meldungen des blescan.pl Scriptes in die /var/log/syslog? Ich möchte das loggen in die syslog ausschalten.


use constant SYSLOG_LEVEL => -1;

müsste funktionieren.

Du solltest allerdings lepresenced statt blescan.pl verwenden.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 10 April 2016, 09:44:20
Zitat von: JayP am 09 April 2016, 23:28:54
Vielen Dank für die tolles Anleitung.
Das hat super geklappt.
Eine Frage hätte ich noch.
Zur Zeit muss ich nach jedem Neustart immer:
start-stop-daemon -d /opt/fhem/script -S -x /opt/fhem/script/lepresenced &
eingeben.

Wie kann man dies automatisieren?
Ich habe es schon mit er rc.local probiert. Leider ohne Erfolg.

Moin Jay,

ich hab es folgendermaßen gelöst:

Ein sh-Skript mit dem Inhalt:

sudo start-stop-daemon -d /opt/fhem/script -S -x /opt/fhem/script/lepresenced

unter dem Verzeichnis /home/pi abgelegt, was sich init_start.sh nennt.

Das Skript dann unter sudo crontab -e angehängt mit folgender Folge:

@reboot        /home/pi/init_start.sh


Das funktioniert von Anfang an perfekt  8)

PS: Ich nehme das in Meine Anleitung von Seite 33 gleich mit auf.

Grüe,
Dirk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: BastianW am 30 April 2016, 02:04:42
Ich bin gerade ebenfalls dabei meine G-Tags einzubinden. Mir ist dabei aufgefallen das sich mein Jawbone UP3 beim Scannen (ich verwende einen BT0015 Adapter) ebenfalls meldet, dabei hängt der Raspi im Flur und der G-Tag an der Türe ca. 1m vom Rapi entfernt. Das Jawbone UP3 ist mehrere Meter entfernt ... Wäre für den ein oder anderen ggf. auch noch eine Möglichkeit.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 30 April 2016, 13:32:57
Hallo Leute,

Ich habe mir heute G-Tags geholt und wollte diese einfach pragmatisch und dumm so einbinden wie die Handys. Ein einfacher Test mittels l2ping MAC hat nicht geklappt. Bei den Handys ging das ohne Probleme. Könnte mir bitte einer kurz den Unterschied erklären?
Ich wollte nur presence mit local-bluetooth nehmen in FHEM, so wie bei den Handys.



Grüße
Leon
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: TecCheck am 30 April 2016, 22:33:21
Hallo Leon,

für  G-Tags brauchst du einen LE- Dongle.

"hcitool lescan" liefert bei mir sowohl meine G-Tag-  als auch Handy-MAC's.

Lg Wolfgang
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 30 April 2016, 23:18:01
Hallo Wolfgang,

Vielen Dank für die Info. Ich habe nun soweit alles einrichten können. Hat auch super funktioniert, so 1-2 Stunden. Nun habe ich das Problem das jedesmal wenn ich lepresenced starte (läuft auf dem selben Server wie FHEM), der Webzugriff auf FHEM total ausgebremst wird. Hat einer ne Info diesbezüglich für mich.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: TecCheck am 30 April 2016, 23:35:57
Leon,

von welcher Verzögerung (wieviel) redest du?

Ich kann auf meinem Cubie keine nennenswerte Verzögerung durch lepresenced feststellen.

Wolfgang
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 01 Mai 2016, 00:02:18
2-5 Minuten ladezeit einer FHEMWEB Seite. Habe lepresenced jetzt mal ausgelagert auf einen anderen Server und teste. Bin aber noch dabei.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 01 Mai 2016, 00:21:29
Gleiches Problem. Habe mal fhem neu gestartet und nun geht es wieder. Bin gespannt wie lange.

Muss ich bei den Intervallen etwas beachten. Ich habe jetzt 10 60 eingestellt, habe 5 Tags.



Grüße
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: TecCheck am 01 Mai 2016, 00:46:47
hallo Leon,

mein define sieht so aus

  lan-bluetooth 7C:2F:xx:xx:05:xx 127.0.0.1:5333 120     

bin nach der Anleitung von Devender  #483  vorgegangen und es funzt seit 2 Monaten. Hatte allerdings 2 Serverabstürze seither.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 01 Mai 2016, 07:13:38
Guten Morgen Wolfgang,

Also die Nacht hat das System schon mal überstanden und jetzt wo meine Freundin weg ist scannt er ja auch alle 10 Sekunden und das seit 2 Stunden. Bin gespannt wie er sich verhält wenn die beiden anderen dazu kommen.


Grüße
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: TecCheck am 01 Mai 2016, 09:20:52
Morgen Leon,

Schön das es geht,   :D

bei mir sind insgesamt 3 Tags im Einsatz und das klappt wunderbar.

Wolfgang
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 01 Mai 2016, 09:37:55
Bei mir sollen es in der höchsten Ausbaustufe 5 werden. Habe mal vorsichtshalber die Intervalle auf 20 60 gestellt. Und nun schauen wir mal.
Hoffe das klappt. Bei mir hängt da ne Menge hinter. Heizung, Licht, wecken. Wenn da eines nicht schaltet wäre es doof. Aber schauen wir mal. WLAN klappte nicht mehr sauber nach Fritzbox Firmwareupdate und Bluetooth über Handy hat das Akku leer gesaugt bei meiner Tochter.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 01 Mai 2016, 14:57:40
Mahlzeit!

@CoolTux:
Ich fürchte, das Auslagern auf einen anderen Server bringt nicht wirklich was. Im Gegensatz zu blescan.pl (was zu meiner großen Verwunderung teilweise immer noch benutzt wird) ist lepresenced ausgesprochen genügsam. Der Scan-Prozess läuft dauerhaft und unabhängig von der Zahl der Tags. Probleme kann es allenfalls geben, wenn Du das Bluetooth-Gerät außer für lepresenced noch für andere Dinge wie z. B. local-bluetooth nutzt.

Ich würde zwei Dinge probieren:
1. Mit apptime schauen, wo der Übeltäter sitzt.
2. Loglevel von lepresenced hochsetzen (Vorsicht, wenn /var/log liegt bei Dir auf einem Flash-Dateisystem liegt!)

Grüße
Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 01 Mai 2016, 19:11:38
Hallo Patrick,

Danke für die Tips. Vorerst läuft es erstmal und erstaunlich stabil. Heute waren 2 von drei absent und die 2 wurden dann im 15 Sekundentakt abgefragt. Alles schick. Sollte noch mal sowas sein nehme ich apptime, aber gesten Nacht hatte ich dafür kein Nerv mehr  ;D


Grüße
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 15 Mai 2016, 20:46:02
Guten Abend,

Nach einigen Wochen produktiven Betriebes kann ich nun sagen. Super. Eins a Arbeit. Vielen lieben Dank.
Ich habe das ganze noch etwas gepimt. Interessant fand ich zum Beispiel den rssi Wert und den Batterie Status.


Grüße
Leon
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 15 Mai 2016, 21:19:29
Moin,

Wie liest du denn den Batteriestatus aus *neugierig*?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 15 Mai 2016, 21:41:08
Da trickse ich etwas. Ich verwende dazu die Android App Automagic. In Verbindung mit der AMADCommBridge vom AMAD Modul. Hierzu muss der Tag mit einem Android Gerät verbunden sein.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 15 Mai 2016, 23:05:32
Ah, OK. Danke für die Info.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 16 Mai 2016, 14:15:18
Hi Leon!

Zitat von: CoolTux am 15 Mai 2016, 20:46:02
Nach einigen Wochen produktiven Betriebes kann ich nun sagen. Super. Eins a Arbeit. Vielen lieben Dank.
Ich habe das ganze noch etwas gepimt. Interessant fand ich zum Beispiel den rssi Wert und den Batterie Status.

Jetzt hast Du mich aber neugierig gemacht. Nach meinen Erfahrungen hält der G-Tag die Klappe wenn er gepairt ist; habe Dich aber so verstanden, dass Du in mit dem Androidgerät gepaart hast. Benutzt Du überhaupt noch lepresenced? Erzähl mal :) Die Details können wir dann beim Usertreffen besprechen *g*

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 16 Mai 2016, 14:33:11
Hallo Patrick,

Das ist gerade der Trick. Das Teil pairt sich zwar, aber es verbindet sich nicht. Keine Ahnung wie man das genau nennt. Aber schau mal auf das Foto. Ich habe da einen Bluetoothlautsprecher der tatsächlich verbunden ist, der andere Bluetoothlautsprecher und die G-Tags sind zwar gepairt aber nicht verbunden.
Ich lasse alle 30 min den Batterie Status abfragen.


Grüße
Leon
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 23 Mai 2016, 14:35:58
Hallo,

habt ihr da eine Bezugsquelle für mich?

@CoolTux
Machst du das zusammen mit deinem Modul? Also ist dein Bluetooth Empfänger in deine Androiden? Weil mein erster Blauzahn wäre im Hausflur mein Tablet an der Wand.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 23 Mai 2016, 14:55:21
Hallo Tim,

Das erkennen der Anwesenheit macht ein BT Dongle direkt am FHEM Server. Das Erkennen des Batteriestatus des BT Tags macht Automagic über einen speziellen Flow. Der Batteriestand wird dann aber in der Tat über die AMADCommunicationBridge in die presence Device geschrieben.


Grüße
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Chris_Worms am 24 Mai 2016, 08:29:15
Zitat von: PatrickR am 10 April 2016, 04:01:40
Hi!


use constant SYSLOG_LEVEL => -1;

müsste funktionieren.

Du solltest allerdings lepresenced statt blescan.pl verwenden.

Patrick

Hi,

danke, ich habe das SYSLOG Level angepasst.
Wo finde ich denn lepresenced? Was ist der Vorteil gegenüber blescan.pl? Ich habe seit längerer Zeit blescan.pl mit zwei PebbleBee Tags ohne Probleme laufen. Wie heißt es: never change a running system :-D
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 24 Mai 2016, 21:06:30
Mahlzeit!

lepresenced ist jetzt im SVN. Ihr findet den Daemon unter contrib/PRESENCE/lepresenced.

Zusätzlich gibt es eine neue Version 0.6:
-Neuer Kommandozeilenparameter: --loglevel

Ihr müsst also nicht mehr das Skript editieren, um den log level zu setzen. Das hat vor allem den geschmackvollen Vorteil, dass Ihr das Skript updaten könnt ohne Eure Einstellungen zu verlieren.

Um Debug-Meldungen zu bekommen (Vorsicht bei SD-Karten-Systemen wie dem RPi):
lepresenced --loglevel LOG_DEBUG

Wenn Ihr nur das absolut Wichtigste loggen wollt:
lepresenced --loglevel LOG_WARNING

Und wenn Ihr absolut nichts loggen möchtet:
lepresenced --loglevel LOG_EMERG

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 24 Mai 2016, 21:10:44
Hi!

Zitat von: Chris_Worms am 24 Mai 2016, 08:29:15
Wo finde ich denn lepresenced? Was ist der Vorteil gegenüber blescan.pl? Ich habe seit längerer Zeit blescan.pl mit zwei PebbleBee Tags ohne Probleme laufen. Wie heißt es: never change a running system :-D

blescan.pl hat u. a. das Problem, dass dank der wundervollen Bluetooth-Implementierung unter Linux ab und zu der Scan fehlschlägt und das Interface resettet werden muss. Das tut blescan.pl auch mit aller Gewalt. Dazu kommt, dass bei längeren Scanzeiten und vielen Tags sich die Prozesse anstauen, weil immer nur auf einen Tag "gewartet" wird. Außerdem wurden mit der Einführung von lepresenced sämtliche Supportverträge gekündigt ;)

lepresenced läuft dauerhaft und merkt sich bei allen sendenden Tags den Zeitstempel des letzten Empfangs. Markus' PRESENCE kann dann unter FHEM nachfragen. Alles in Allem schicker, stabiler und das Ergebnis liegt sofort vor und nicht erst nach der eingestellten Scanperiode.

Fazit: Wenn blescan.pl bei Dir läuft kannst Du es laufen lassen, aber lepresenced ist toller *g*.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Chris_Worms am 25 Mai 2016, 09:43:56
Zitat von: PatrickR am 24 Mai 2016, 21:10:44
Hi!

blescan.pl hat u. a. das Problem, dass dank der wundervollen Bluetooth-Implementierung unter Linux ab und zu der Scan fehlschlägt und das Interface resettet werden muss. Das tut blescan.pl auch mit aller Gewalt. Dazu kommt, dass bei längeren Scanzeiten und vielen Tags sich die Prozesse anstauen, weil immer nur auf einen Tag "gewartet" wird. Außerdem wurden mit der Einführung von lepresenced sämtliche Supportverträge gekündigt ;)

lepresenced läuft dauerhaft und merkt sich bei allen sendenden Tags den Zeitstempel des letzten Empfangs. Markus' PRESENCE kann dann unter FHEM nachfragen. Alles in Allem schicker, stabiler und das Ergebnis liegt sofort vor und nicht erst nach der eingestellten Scanperiode.

Fazit: Wenn blescan.pl bei Dir läuft kannst Du es laufen lassen, aber lepresenced ist toller *g*.

Patrick

Danke für die ausführliche Erklärung! Dann migriere ich wenn Zeit ist auf lepresenced.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: isy am 27 Mai 2016, 19:11:16
Moin Patrick,
habe heute die Installation des Scriptes lepresenced (aus git) vorgenommen und wollte mich erstmal bedanken!
Läuft! Habe zwei Gigaset G-Tags aktiviert.  :) :) :) :) :)

Macht es schon Sinn, schon ein Wiki anzulegen mit einer Anleitung?
Habe mich durch den Thread gelesen und somit alles gefunden. Könnte aber dem ein oder andern leichter fallen.

Viele Grüße,
Helmut

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 29 Mai 2016, 12:14:38
Zitat von: pv_is am 27 Mai 2016, 19:11:16
Macht es schon Sinn, schon ein Wiki anzulegen mit einer Anleitung?
Habe mich durch den Thread gelesen und somit alles gefunden. Könnte aber dem ein oder andern leichter fallen.

Viele Grüße,
Helmut

Mit meiner Anleitung von Seite 33 bezüglich der Einrichtung und Konfiguration wäre ich auch fuer einen Wiki Eintrag.
Denke man findet das irgendwann auch nicht mehr in dem Fred.

Ich kann das gerne uebernehmen - Einverständnis von PatrickR vorausgesetzt  :-)

@Helmut hast du mit der Anleitung von Seite 33 eingerichtet oder hast du noch zusätzlich was benötigt?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 29 Mai 2016, 15:06:49
Mahlzeit!

Die Idee mit einem Wiki-Eintrag finde ich sehr gut, auch die Anleitung von Devender (#483) hatte ich nicht in dem Detailgrad in Erinnerung. Daumen hoch! Noch zwei Anmerkungen:
-Ich habe schon länger DEB-Pakete auf der ToDo-Liste. Damit sollte die Anleitung etwas schlanker werden. Ist halt die Frage, ob der Wiki-Eintrag dann aktualisiert wird oder Ihr noch etwas wartet.
-@Devender: Hast Du mal die interne Daemonize-Funktion getestet? (d. h. lepresenced -d statt leperesenced &). Die sollte etwas schicker sein.
-Zu dem iPhone-Kapitel in #483 (vielleicht off-topic): Das funktioniert seit mehreren iOS-Versionen (iOS 8) nicht mehr, da das Gerät zumindest bei mir nach einiger Zeit nicht mehr reagiert. Dann geht überall das Licht aus und es gibt Diskussionen :)

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: isy am 29 Mai 2016, 17:24:07
Moin Devender,
ich habe deine Anleitung genommen, habe nur noch weitere Linux Tipps integriert. :-)

Sieht so aus:

Den Code für lepresenced habe ich hier gefunden, gibt es evtl. schicker:
https://github.com/mhop/fhem-mirror/blob/master/fhem/contrib/PRESENCE/lepresenced

Unter /fhem manuell den Ordner ,,script" anlegen:
mkdir script

Datei lepresenced reinkopieren und ausführbar machen:
sudo chmod +x /opt/fhem/script/lepresenced

Rechte ändern:
sudo -cR fhem:dialout ./script

Testen mit:
sudo ./lepresenced --loglevel LOG_EMERG -d

Gibt es beim Start des Scriptes eine FM, dann installieren:
sudo apt-get install libnet-server-*

Script beim Systemstart starten:
sudo nano /etc/rc.local

Datei rc.local, freie Stelle suchen, vor "exit 0":
# Start lepresenced
/opt/fhem/script/lepresenced --loglevel LOG_EMERG -d
exit 0


Fhem Definition:
define MeinGtAG PRESENCE lan-bluetooth xx:xx:xx:xx:xx:xx 127.0.0.1:5333 60 90

Den absent und present Mode kann man einfach testen, in dem man den Gtag mit Alufolie einwickelt.

Falls notwendig, PID herausbekommen und Daemon manuell stoppen:

ps -ef | grep lepresenced
sudo kill <pid>


Starten dann wieder wie oben!

Gruß Helmut

P.S. Beim Starten geht die grüne Leuchtdiode am BT Dongle (CSL - USB nano Bluetooth-Adapter V4.0 mit LED) auf "Dauerleuchten". Wäre evtl. auch einen Hinweis für die Umsteiger wert.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Markus Bloch am 29 Mai 2016, 17:28:22
Hallo Patrick,

Zitat von: PatrickR am 29 Mai 2016, 15:06:49
-Zu dem iPhone-Kapitel in #483 (vielleicht off-topic): Das funktioniert seit mehreren iOS-Versionen (iOS 8) nicht mehr, da das Gerät zumindest bei mir nach einiger Zeit nicht mehr reagiert. Dann geht überall das Licht aus und es gibt Diskussionen :)

Das kann ich so bei mir nicht bestätigen. Ich nutze ein iPhone 6S. Vorraussetzung für die richtige Funktion ist, dass mind. ein Gerät mit dem Handy per Bluetooth gepairt ist. In meinem Fall ist mein Handy mit meinem Auto gepairt (Freisprecheinrichtung) und dadurch hält das iPhone den Bluetooth-Empfang immer aufrecht, auch im Standby.

Gruß
Markus
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: isy am 29 Mai 2016, 17:31:05
Bei uns funktioniert IPhone 6 auch, nur das Samsung S4 schaltet ab und zu hin und her. Das ist in Summe lästig, daher die G-Tags.

Gruß Helmut
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 29 Mai 2016, 17:49:16
Hi!

Zitat von: Markus Bloch am 29 Mai 2016, 17:28:22
Das kann ich so bei mir nicht bestätigen. Ich nutze ein iPhone 6S. Vorraussetzung für die richtige Funktion ist, dass mind. ein Gerät mit dem Handy per Bluetooth gepairt ist. In meinem Fall ist mein Handy mit meinem Auto gepairt (Freisprecheinrichtung) und dadurch hält das iPhone den Bluetooth-Empfang immer aufrecht, auch im Standby.
Das mit dem Pairen hatte ich tatsächlich so auch gemacht und dann Probleme mit der Zuverlässigkeit. An Details kann ich mich zugegebenermaßen nicht mehr erinnern.

@pv_is: Oh, Du nutzt schon --loglevel. Sehr gut.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 31 Mai 2016, 12:34:24
Hallo zusammen,

kann mir einer von euch bitte helfen?

Ich habe einen Cubitruck, einen USB Bluetooth Stick Nano V4.0 und 3 G-Tags(einen aktiv)

Ich habe mich versucht an die Anleitung Post #483 von Devender zu halten, Scheiter aber schon an den ersten zwei schritten:

Zitat1) BT Stick dem PI bekannt machen
Code: [Auswählen]
apt-get install bluetooth

2) reboot

3) in /var/log/messages sollte der BT Dongle jetzt erkannt worden sein.

klappt bis dahin.

Inhalt ist dann folgendes:
Jun  1 12:14:49 localhost kernel: [    4.290222] Bluetooth: Core ver 2.16
Jun  1 12:14:49 localhost kernel: [    4.299764] NET: Registered protocol family 31
Jun  1 12:14:49 localhost kernel: [    4.311037] Bluetooth: HCI device and connection manager initialized
Jun  1 12:14:49 localhost kernel: [    4.320823] Bluetooth: HCI socket layer initialized
Jun  1 12:14:49 localhost kernel: [    4.347347] Bluetooth: L2CAP socket layer initialized
Jun  1 12:14:49 localhost kernel: [    4.351459] Bluetooth: SCO socket layer initialized
Jun  1 12:14:49 localhost kernel: [    4.379356] Bluetooth: HCI UART driver ver 2.2
Jun  1 12:14:49 localhost kernel: [    4.383182] Bluetooth: HCI H4 protocol initialized
Jun  1 12:14:49 localhost kernel: [    4.387131] Bluetooth: HCI BCSP protocol initialized
Jun  1 12:14:49 localhost kernel: [    4.390829] Bluetooth: HCILL protocol initialized
Jun  1 12:14:49 localhost kernel: [    4.394774] Bluetooth: HCIATH3K protocol initialized
Jun  1 12:14:49 localhost kernel: [    4.406469] ap6xxx: config 32k clock
Jun  1 12:14:49 localhost kernel: [    4.433733] Bluetooth: RFCOMM TTY layer initialized
Jun  1 12:14:49 localhost kernel: [    4.437931] Bluetooth: RFCOMM socket layer initialized
Jun  1 12:14:49 localhost kernel: [    4.440766] Bluetooth: RFCOMM ver 1.11
Jun  1 12:14:49 localhost kernel: [    4.457096] Bluetooth: HIDP (Human Interface Emulation) ver 1.2


Warum er das falsche Datum hat weiß ich nicht.

Dann versuche ich:
Zitat3.1) Die Tags lassen sich suchen mit...
Code: [Auswählen]
sudo hcitool lescan

antwort:
root@cubie:~# hcitool lescan
Set scan parameters failed: File descriptor in bad state


Ok, dann steht ja wenn kein erfolg Neustart

root@cubie:~# sudo hciconfig hci0 down
Can't get device info: No such device


SOOO und nun stehe ich auf dem Schlauch ?!?!?!?!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: hanami am 31 Mai 2016, 12:42:50
Hallo miteinander,

ich habe schon einige Wochen diesen Tread mitgelesen. Ich habe mich wegen der unübersichtlichkeit nun gefreut, mit der Antwort #549
eine Art Tutorial zu lesen. Leider jedoch hapert es bei mir an allen Ecken und Enden mit den Tags. :-(

Fangen wir zuerst an:
2 iPhones werden seit geraumer Zeit erfolgreich mit dem Presence Modul betrieben.
Hiermit wird geschaltet, Pushover ausgelöst und per Sonos begrüßt.
Alles schön und gut.
Nachdem mein Sohn welcher noch kein  Handy hat, mir in den Ohren lag das er auch gern begrüßt werden möchte wenn er nachhause kommt,
kam mir nach ein wenig recherchen die Idee es mal mit einem BT-Tag zu probieren.
Also kaufte ich mit einen "nut" für kleines Geld.
Dieser wird sowohl von hciconfig lescan als auch mit dem Handy erkannt.
Als ich diesen definierte kam erstmal nix...
Dann habe ich vieles aus diesem Tread ausprobiert und nichts will so wie ich will.
'Entweder werden nur die iPhones oder nur der tag erkannt.
Leider will die Installation des Scriptes bei mir schon irgendwie nicht so wirklich.
Wenn ich mich an die Anleitung halte, erhalte ich ab der Zeile mit den Rechten: sudo -cR fhem:dialout ./script
folgende Fehlermeldung:

usage: sudo -h | -K | -k | -V
usage: sudo -v [-AknS] [-g group] [-h host] [-p prompt] [-u user]
usage: sudo -l [-AknS] [-g group] [-h host] [-p prompt] [-U user] [-u user]
            [command]
usage: sudo [-AbEHknPS] [-r role] [-t type] [-C num] [-g group] [-h host] [-p
            prompt] [-u user] [VAR=value] [-i|-s] [<command>]
usage: sudo -e [-AknS] [-r role] [-t type] [-C num] [-g group] [-h host] [-p
            prompt] [-u user] file ...


Ich habe keine Ahnung mehr wo ich ansetzen soll :-(
Wüsst ich nicht das Ihr diese konstellation aus BT Scan und LE Scan bereits per script im Einsatz habt, würd ich den gnu tag wieder umtauschen :-(

Vielleicht habt Ihr ja noch einen Ansatz mit welchem sich die ganze Sache bewerkstelligen lässt.

Ich bedanke mich im voraus für eure Mühe und verbleibe
mit freundlichem Gruß
Hanami
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 31 Mai 2016, 12:55:09
sudo chown fhem:dialout ./script
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 31 Mai 2016, 13:03:48
Zitat von: hanami am 31 Mai 2016, 12:42:50
sudo -cR fhem:dialout ./script
folgende Fehlermeldung:

usage: sudo -h | -K | -k | -V
usage: sudo -v [-AknS] [-g group] [-h host] [-p prompt] [-u user]
usage: sudo -l [-AknS] [-g group] [-h host] [-p prompt] [-U user] [-u user]
            [command]
usage: sudo [-AbEHknPS] [-r role] [-t type] [-C num] [-g group] [-h host] [-p
            prompt] [-u user] [VAR=value] [-i|-s] [<command>]
usage: sudo -e [-AknS] [-r role] [-t type] [-C num] [-g group] [-h host] [-p
            prompt] [-u user] file ...


Er meint damit ändern des Besitzers und das geht dann so:

sudo chown  -cR fhem:dialout ./script

Er hat aus versehen den eigentlichen befehl vergessen!

*edit* ja irgendwie war ich zu langsam im tippen :-(

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 31 Mai 2016, 13:19:06
Bitte bitte lösche das wieder.
Als nächstes kommen die Fehlermeldungen das make nicht da ist und das Bibliotheken fehlen und das der gcc nicht kompatibel ist.
Das gibt nur Streß. Zum installieren das Repository der Distribution verwenden.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 31 Mai 2016, 15:01:55
Kann mir jemand eine Bezugsquelle für einen Funktionierenden USB Stick sagen.

Dieser wird weder am Cubritruck noch am Raspberry erkannt:

http://www.ebay.de/itm/400637067258 (http://www.ebay.de/itm/400637067258)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 31 Mai 2016, 15:05:21
Meiner von Conrad, Bestellinfo weiter oben im Thread. :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: isy am 31 Mai 2016, 15:19:19
Meiner von CSL, siehe #549
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: hanami am 31 Mai 2016, 15:57:19
Hi,

vielen Dank für die rasche Antwort.
Habe nun mal das Verzeichnis angepasst weil er dieses anmeckerte, ob das nun richtig war, keine #ahnung

sudo chown fhem:dialout opt/fhem/script
Nun wird der Befehl wohl übernommen. Nach einem Neustart sind jedoch leider nur die iPhones
present, der "nut" war mal present, steht nun jedoch auf diconnected.

@HoTi, ich habe den hier von Amzn https://www.amazon.de/LogiLink-BT0015-bluetooth-Class1-Micro/dp/B0096Y2HFW/ref=sr_1_6?ie=UTF8&qid=1464702890&sr=8-6&keywords=bluetooth+dongle (https://www.amazon.de/LogiLink-BT0015-bluetooth-Class1-Micro/dp/B0096Y2HFW/ref=sr_1_6?ie=UTF8&qid=1464702890&sr=8-6&keywords=bluetooth+dongle)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: The Spirit am 31 Mai 2016, 17:12:28
habe heute auch fhem auf nem rpi 3 in betrieb genommen und es tut wie es soll.
zum testen habe ich das presence modul versucht.
damit kann ich super anzeigen lassen ob mein android handy da ist oder nicht.
jetzt hab ich aber ein problem.
der status aktualisiert sich nicht automatisch. erst wenn ich die webseite aktualisiere sehe ich den neuen status.
was mache ich hier falsch?
Danke
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 31 Mai 2016, 17:48:43
longpool auf 1 in die Global eintragen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 31 Mai 2016, 17:49:49
Schau in die js konsole, ob Fehler auftreten. Virenscanner, Browser addons ala noScript können longpoll stören. Es gibt einige Threads dazu im Forum.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Calle78 am 01 Juni 2016, 00:00:29
Danke @Devender - Perfekte Anleitung in Antwort #483. Tracke fortan nicht nur WLAN und Phones sondern auch 5 Trackr bravo (Referal: https://www.thetrackr.com/?ref_code=c8Fxe)

ciao Carlo
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: The Spirit am 01 Juni 2016, 08:34:18
Zitat von: CoolTux am 31 Mai 2016, 17:48:43
longpool auf 1 in die Global eintragen

ich darf ich global longpoll nicht setzen.
hab es jetzt für web gemacht aber das tut noch immer nicht.
hab es mit chrome und firefox getestet.

@dev0: wie komm ich in die js konsole?

Danke
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 01 Juni 2016, 08:36:53
F12 drücken. Dann kommst in die Entwickler Debug Konsole. Das müßte es glaube sein.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 01 Juni 2016, 11:31:46
Zitat von: PatrickR am 29 Mai 2016, 15:06:49
Mahlzeit!

Die Idee mit einem Wiki-Eintrag finde ich sehr gut, auch die Anleitung von Devender (#483) hatte ich nicht in dem Detailgrad in Erinnerung. Daumen hoch! Noch zwei Anmerkungen:
-Ich habe schon länger DEB-Pakete auf der ToDo-Liste. Damit sollte die Anleitung etwas schlanker werden. Ist halt die Frage, ob der Wiki-Eintrag dann aktualisiert wird oder Ihr noch etwas wartet.
-@Devender: Hast Du mal die interne Daemonize-Funktion getestet? (d. h. lepresenced -d statt leperesenced &). Die sollte etwas schicker sein.
-Zu dem iPhone-Kapitel in #483 (vielleicht off-topic): Das funktioniert seit mehreren iOS-Versionen (iOS 8) nicht mehr, da das Gerät zumindest bei mir nach einiger Zeit nicht mehr reagiert. Dann geht überall das Licht aus und es gibt Diskussionen :)

Patrick

Hi Patrick,

bisher habe ich noch nichts weiter ausprobiert mit dem lepresenced. Werde mich aber damit am Wochenende mal auseinander setzen.
Bezüglich IPhones kann ich nur auf Dritte verweisen. Hab leider kein gerät zum Testen.
Ich würde mich dann auch mal mit dem WIKI Eintrag beschäftigen.

Auch wenn du später deb-Paket bereitstellst, ist eine Anleitung bis dahin vielleicht doch ganz gut zu haben.
Der Beitrag auf Seite 33 is mittlerweile auch wieder schlechter zu finden, da einige neue Seiten hinzugekomm sind.
Das im Nachgang noch mal zu erweitern sollte ja kein Problem darstellen.   :)


btw. Weiß jemand wie ich einen Account im Wiki beantragen kann? (einen Mod anschreiben?)

Danke!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 01 Juni 2016, 11:42:50
Zitat von: HoTi am 31 Mai 2016, 12:34:24
Hallo zusammen,

kann mir einer von euch bitte helfen?

Ich habe einen Cubitruck, einen USB Bluetooth Stick Nano V4.0 und 3 G-Tags(einen aktiv)

Ich habe mich versucht an die Anleitung Post #483 von Devender zu halten, Scheiter aber schon an den ersten zwei schritten:

klappt bis dahin.

Inhalt ist dann folgendes:
Jun  1 12:14:49 localhost kernel: [    4.290222] Bluetooth: Core ver 2.16
Jun  1 12:14:49 localhost kernel: [    4.299764] NET: Registered protocol family 31
Jun  1 12:14:49 localhost kernel: [    4.311037] Bluetooth: HCI device and connection manager initialized
Jun  1 12:14:49 localhost kernel: [    4.320823] Bluetooth: HCI socket layer initialized
Jun  1 12:14:49 localhost kernel: [    4.347347] Bluetooth: L2CAP socket layer initialized
Jun  1 12:14:49 localhost kernel: [    4.351459] Bluetooth: SCO socket layer initialized
Jun  1 12:14:49 localhost kernel: [    4.379356] Bluetooth: HCI UART driver ver 2.2
Jun  1 12:14:49 localhost kernel: [    4.383182] Bluetooth: HCI H4 protocol initialized
Jun  1 12:14:49 localhost kernel: [    4.387131] Bluetooth: HCI BCSP protocol initialized
Jun  1 12:14:49 localhost kernel: [    4.390829] Bluetooth: HCILL protocol initialized
Jun  1 12:14:49 localhost kernel: [    4.394774] Bluetooth: HCIATH3K protocol initialized
Jun  1 12:14:49 localhost kernel: [    4.406469] ap6xxx: config 32k clock
Jun  1 12:14:49 localhost kernel: [    4.433733] Bluetooth: RFCOMM TTY layer initialized
Jun  1 12:14:49 localhost kernel: [    4.437931] Bluetooth: RFCOMM socket layer initialized
Jun  1 12:14:49 localhost kernel: [    4.440766] Bluetooth: RFCOMM ver 1.11
Jun  1 12:14:49 localhost kernel: [    4.457096] Bluetooth: HIDP (Human Interface Emulation) ver 1.2


Warum er das falsche Datum hat weiß ich nicht.

Dann versuche ich:
antwort:
root@cubie:~# hcitool lescan
Set scan parameters failed: File descriptor in bad state


Ok, dann steht ja wenn kein erfolg Neustart

root@cubie:~# sudo hciconfig hci0 down
Can't get device info: No such device


SOOO und nun stehe ich auf dem Schlauch ?!?!?!?!

Hi HoTi,

in der Tat hatte ich den Fehler:

Can't get device info: No such device


beim Anlegen des zweiten G-TAG auch.
Ich hatte mir noch zwei Notizen gemacht im Nachgang, da schaue ich zu Hause noch mal nach und ergänze dann hier.
Allerdings meine ich mich zu erinnern, dass durch den Neustart (und wenn es zwei-drei sein müssen) der Tag dann lief.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 04 Juni 2016, 23:43:58
Nabend zusammen!

es ist vollbracht  8)
Ich habe aus meiner Anleitung https://forum.fhem.de/index.php/topic,28753.msg408966.html#msg408966 (https://forum.fhem.de/index.php/topic,28753.msg408966.html#msg408966) einen Wikieintrag erstellt.

Link zum Wiki:
http://www.fhemwiki.de/wiki/Anwesenheitserkennung#Anwesenheitserkennung_Bluetooth_PebbleBee_mit_PRESENCE_Modul (http://www.fhemwiki.de/wiki/Anwesenheitserkennung#Anwesenheitserkennung_Bluetooth_PebbleBee_mit_PRESENCE_Modul)

Ich hoffe ich habe alle neuen Informationen aus den folgenden Beiträgen mit aufgenommen.
Falls noch was fehlt bzw. etwas falsch oder unverständlich ist gebt mir bitte bescheid, damit ich es korrigieren kann.

Eventuell lässt sich auf der ersten Seite des Threads ein Hinweis auf das Wiki setzen.

@PatrickR Jetzt hast du nicht so viel Druck beim Erstellen von deb-Paketen  :D

Grüße,
Dirk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: isy am 05 Juni 2016, 01:38:45
Moin Dirk,
ganz super gemacht!

Vielleicht ist es notwendig, auf Raspbian Jessie hinzuweisen?
Seinerzeit hatte ich BT 4  mit Wheezy nicht begonnen, da bluez nicht als fertiges Paket zur Verfügung stand.

Gruß Helmut
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 05 Juni 2016, 18:30:08
Zitat von: pv_is am 05 Juni 2016, 01:38:45
Moin Dirk,
ganz super gemacht!

Vielleicht ist es notwendig, auf Raspbian Jessie hinzuweisen?
Seinerzeit hatte ich BT 4  mit Wheezy nicht begonnen, da bluez nicht als fertiges Paket zur Verfügung stand.

Gruß Helmut

Hi Helmut,

ich habe das alles unter Weezy laufen...
Wenn es unter Jessy auch läuft nehme ich das gerne im obigen Bereich des Wikis auf.

Grüsse,
Dirk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: isy am 05 Juni 2016, 18:43:08
Moin Dirk,
mein Fhem läuft mit Jessie und das lepresenced läuft perfekt mit den G-Tags.

Zur BT Installation unter Jessie bin ich unsicher, schon zu lange her.


Gruß Helmut
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stoxx am 06 Juni 2016, 14:41:58
Vielleicht für den ein oder anderen G-Tag Benutzer interessant: Hier eine Anleitung, wie man den Batterie-Ladestand der Tags abfragen und an FHEM schicken kann. Es gibt auch eine schöne Lösung über AMAD, aber da ich kein Android Gerät herumliegen habe, konnte ich diese Lösung nicht anwenden:
https://forum.fhem.de/index.php/topic,53169.msg458523.html#msg458523 (https://forum.fhem.de/index.php/topic,53169.msg458523.html#msg458523)

Also hier mein Ansatz:
- Ich musste an meinem Raspberry erstmal bc installieren:

apt-get install bc

Danach ein Skript ala sudo nano an einem Ort eurer Wahl erstellen mit folgendem Inhalt:


#!/bin/bash
stringZ=$(sudo gatttool -b <<MACADRESSE>> --char-read --handle=0x001b)
stringZ=${stringZ:33:2}
decimal=$(echo "ibase=16; $stringZ" | bc)
perl /opt/fhem/fhem.pl 7072 "setreading GTag Batterie $decimal"


ACHTUNG: <<MACADRESSE>> ersetzen mit der MAC Eures G-Tags!!
Beim Verlassen als .sh Datei speichern.
Das Skript natürlich noch über chmod +x ausführbar machen.
Am G-Tag Device muss noch ein userReading definiert werden:


attr GTag userReadings Batterie


Achtung: Das Ganze geht speziell nur für die Gigaset G-Tags. Andere Tags liefern garkeinen Batterie-Status, bei anderen kann das handle anders heissen..
Bei den nut-tags habe ich es bisher irgendwie nicht hinbekommen - die Werte lassen sich schon über z.B. die iOS App nRF MCP auslesen, aber über den Raspberry nicht... Vielleicht bekommt es ja jemand anderes hin oder hat einen Tipp?

vg stoxx

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 07 Juni 2016, 10:27:26
Zitat von: stoxx am 06 Juni 2016, 14:41:58
Vielleicht für den ein oder anderen G-Tag Benutzer interessant: Hier eine Anleitung, wie man den Batterie-Ladestand der Tags abfragen und an FHEM schicken kann. Es gibt auch eine schöne Lösung über AMAD, aber da ich kein Android Gerät herumliegen habe, konnte ich diese Lösung nicht anwenden:
https://forum.fhem.de/index.php/topic,53169.msg458523.html#msg458523 (https://forum.fhem.de/index.php/topic,53169.msg458523.html#msg458523)

Also hier mein Ansatz:
- Ich musste an meinem Raspberry erstmal bc installieren:

apt-get install bc

Danach ein Skript ala sudo nano an einem Ort eurer Wahl erstellen mit folgendem Inhalt:


#!/bin/bash
stringZ=$(sudo gatttool -b <<MACADRESSE>> --char-read --handle=0x001b)
stringZ=${stringZ:33:2}
decimal=$(echo "ibase=16; $stringZ" | bc)
perl /opt/fhem/fhem.pl 7072 "setreading GTag Batterie $decimal"


ACHTUNG: <<MACADRESSE>> ersetzen mit der MAC Eures G-Tags!!
Beim Verlassen als .sh Datei speichern.
Das Skript natürlich noch über chmod +x ausführbar machen.
Am G-Tag Device muss noch ein userReading definiert werden:


attr GTag userReadings Batterie


Achtung: Das Ganze geht speziell nur für die Gigaset G-Tags. Andere Tags liefern garkeinen Batterie-Status, bei anderen kann das handle anders heissen..
Bei den nut-tags habe ich es bisher irgendwie nicht hinbekommen - die Werte lassen sich schon über z.B. die iOS App nRF MCP auslesen, aber über den Raspberry nicht... Vielleicht bekommt es ja jemand anderes hin oder hat einen Tipp?

vg stoxx

Da mein Tablet dar AMAD drauf hat, aber anscheint kein BT4 kann, wäre das eine lösung für mich.

Aber wie und wann rufst du nun das script auf? Hast du für jeden GTAG ein eigenes Script?

Man sollte auch wissen das der FHEM Befehl bearbeitet gehört wenn der GTAG nicht "GTag" in FHEM heißt!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 07 Juni 2016, 11:51:33
Mein Tablet kein auch kein BT4 arbeitet aber dennoch mit den Tags zusammen. Hast mal versucht zu pairen?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 07 Juni 2016, 12:08:41
Ja habe ich, aber das Tablet findet die Tags nicht. Mein Handy schon (S6 edge)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 07 Juni 2016, 12:18:24
Ah, ok. Das ist ja doof. Vielleicht zu altes Android
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stoxx am 07 Juni 2016, 12:27:54
ZitatAber wie und wann rufst du nun das script auf? Hast du für jeden GTAG ein eigenes Script?
Ja, ich habe pro GTag ein Skript erstellt.. Geht aber natürlich auch anders, wenn man das möchte..
Ich rufe über einen at-Befehl jedes Skript dann in einem bestimmten Intervall auf, z.B.

define BatQuery at +*03:00:00 {if (Value("GTag") eq "present") {system('sudo /opt/fhem/<<Skriptname>>.sh&')}}


ZitatMan sollte auch wissen das der FHEM Befehl bearbeitet gehört wenn der GTAG nicht "GTag" in FHEM heißt!
Ja, das sollte man tatsächlich wissen..  ;)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Ellert am 07 Juni 2016, 13:15:42
@stoxx
Meine Anwesenheitserkennung mit G-Tags und lepresenced funktioniert.

Wenn ich
Zitatsudo gatttool -b <<MACADRESSE>> --char-read --handle=0x001b
ausführe erhalte ich folgende Meldung
ZitatHost is down (112)

Was mache ich falsch?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 07 Juni 2016, 13:29:15
Zitat von: stoxx am 06 Juni 2016, 14:41:58

#!/bin/bash
stringZ=$(sudo gatttool -b <<MACADRESSE>> --char-read --handle=0x001b)
stringZ=${stringZ:33:2}
decimal=$(echo "ibase=16; $stringZ" | bc)
perl /opt/fhem/fhem.pl 7072 "setreading GTag Batterie $decimal"

Merci! Wieder Forschungsarbeit gespart.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stoxx am 07 Juni 2016, 13:36:49
@Ellert:
Das habe ich schon öfter mal in verschiedenen Foren gelesen..
Vielleicht hilft Dir das weiter:
http://stackoverflow.com/questions/24853597/ble-gatttool-cannot-connect-even-though-device-is-discoverable-with-hcitool-lesc (http://stackoverflow.com/questions/24853597/ble-gatttool-cannot-connect-even-though-device-is-discoverable-with-hcitool-lesc)
Ist aber ungetestet.. Bei mir (Raspberry mit Jessie und aktuellem FHEM) lief das bei den GTags von Anfang an ohne Probleme.
vg stoxx
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 08 Juni 2016, 07:09:56
Hallo zusammen,

ich versuche ROOMMATE zu schalten je nachdem ob der GTAG da ist oder nicht. Dafür schein ich aber zu blöd zu sein. Es funktiniert nicht.

Es wird bestimmt nur eine kleinigkeit sein, aber ich sehe sie einfach  nicht. Könnt ihr mir bitte helfen?!

Hier mal den zusammenhang:


define Lauterbach RESIDENTS
attr Lauterbach alias Residents
attr Lauterbach devStateIcon .*home:status_available:absent .*absent:status_away_1:home .*gone:status_standby:home .*none:control_building_empty .*gotosleep:status_night:asleep .*asleep:status_night:awoken .*awoken:status_available:home .*:user_unknown:home
attr Lauterbach group Home State
attr Lauterbach icon control_building_filled
attr Lauterbach room Anwesenheit
attr Lauterbach webCmd state

define rr_Kathrin ROOMMATE Lauterbach
attr rr_Kathrin alias Status
attr rr_Kathrin devStateIcon .*home:user_available:absent .*absent:user_away:home .*gone:user_ext_away:home .*gotosleep:scene_toilet:asleep .*asleep:scene_sleeping:awoken .*awoken:scene_sleeping_alternat:home .*:user_unknown:home
attr rr_Kathrin group Kathrin
attr rr_Kathrin icon people_sensor
attr rr_Kathrin room Anwesenheit
attr rr_Kathrin rr_realname group
attr rr_Kathrin sortby 1
attr rr_Kathrin webCmd state

define gTag_Kathrin PRESENCE lan-bluetooth 00:00:00:00:00:00127.0.0.1:5333 60 90
attr gTag_Kathrin event-on-change-reading 1
attr gTag_Kathrin room Anwesenheit
attr gTag_Kathrin userReadings Batterie

define at_gTag_Kathrin at +*03:00:00 {if (Value("gTag_Kathrin") eq "present") {system('sudo /opt/fhem/script/batterie-kathrin.sh&')}}
attr at_gTag_Kathrin room Anwesenheit

define di_gTag_Kathrin_present DOIF ([gTag_Kathrin] eq "present") (set rr_Kathrin home) DOELSE (set rr_Kathrin absent)
attr di_gTag_Kathrin_present room Anwesenheit
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 08 Juni 2016, 08:37:41
attr gTag_Kathrin event-on-change-reading 1


Da solltest Du schon wenigstens state eintragen. Sonst bekommt der

define di_gTag_Kathrin_present DOIF ([gTag_Kathrin] eq "present") (set rr_Kathrin home) DOELSE (set rr_Kathrin absent)

kein Event zum triggern
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Ellert am 08 Juni 2016, 10:12:21
Zitat von: stoxx am 07 Juni 2016, 13:36:49
@Ellert:
Das habe ich schon öfter mal in verschiedenen Foren gelesen..
Vielleicht hilft Dir das weiter:
http://stackoverflow.com/questions/24853597/ble-gatttool-cannot-connect-even-though-device-is-discoverable-with-hcitool-lesc (http://stackoverflow.com/questions/24853597/ble-gatttool-cannot-connect-even-though-device-is-discoverable-with-hcitool-lesc)
Ist aber ungetestet.. Bei mir (Raspberry mit Jessie und aktuellem FHEM) lief das bei den GTags von Anfang an ohne Probleme.
vg stoxx

Mit Jessie klappt es bei mir auch sofort, unter Wheezy klappt es bei mir so:

Ich bin der Anleitung gefolgt: http://stackoverflow.com/questions/24853597/ble-gatttool-cannot-connect-even-though-device-is-discoverable-with-hcitool-lesc
dann habe ich gatttool kopiert und ausführbar gemacht, nochmal bluetooth installiert:

cd bluez-5.40
sudo cp attrib/gatttool /usr/local/bin
sudo chmod +x /usr/local/bin/gatttool
sudo apt-get install bluetooth


Danke für den Hinweis.

Das Script liefert allerdings einen Fehler weil gatttool einen kleinen Buchstaben zurück gibt "5e"bei
pi@RaspiTest ~ $ echo "ibase=16; 5e" | bc
(standard_in) 1: syntax error

und somit wird auch das Reading nicht gesetzt. Mit
stringZ=$(echo "$stringZ" | tr a-f A-F)
wird die Klein- in Grossschreibung umgewandelt und der Fehler verschwindet.




Wie ist der, aus dem G-Tag gelesene Wert zu interpretieren, z.B. als 0x5e/0xff *100%?

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: The Spirit am 08 Juni 2016, 20:34:10
hab das lepresenced script am laufen
leider bekomme ich immer ein absent, obwohl der g-tag direkt neben dem pi liegt.
was mache ich da falsch?
kann das was mit dem port  zu tun haben?
bzw. wie kann ich testen ob das script das tut was es soll ohne fhem?
Danke
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stoxx am 08 Juni 2016, 21:59:10
@Ellert:
Ist denn bc installiert? Ansonsten lass bc doch einfach mal weg und teste, was dann rauskommt.. bc ist ja nur dafür da, den hex wert in einen decimal-wert umzuwandeln..
also teste doch mal das script:

#!/bin/bash
stringZ=$(sudo gatttool -b <<MACADRESSE>> --char-read --handle=0x001b)
stringZ=${stringZ:33:2}
perl /opt/fhem/fhem.pl 7072 "setreading GTag Batterie $stringZ"

vg stoxx
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 08 Juni 2016, 22:50:18
@Spirit: Setze mal den Log Level auf LOG_INFO und schau ins Syslog.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Ellert am 09 Juni 2016, 06:19:06
Zitat von: stoxx am 08 Juni 2016, 21:59:10
@Ellert:
Ist denn bc installiert? Ansonsten lass bc doch einfach mal weg und teste, was dann rauskommt.. bc ist ja nur dafür da, den hex wert in einen decimal-wert umzuwandeln..
also teste doch mal das script:

#!/bin/bash
stringZ=$(sudo gatttool -b <<MACADRESSE>> --char-read --handle=0x001b)
stringZ=${stringZ:33:2}
perl /opt/fhem/fhem.pl 7072 "setreading GTag Batterie $stringZ"

vg stoxx

Ja, bc ist installiert.
gatttool liefert den Hex-Wert "5e" in Kleinbuchstaben
bc benötigt den Wert in Grossbuchstaben.
Daher habe ich die Umwandlung in Grossbuchstaben ins Script eingebaut: stringZ=$(echo "$stringZ" | tr a-f A-F)
Ich gehe mal davon aus, dass der Batteriezustand "FF" 100% bedeutet, dann wandle ich den Hex-Wert mit bc gleich in einen %-Wert um mit: decimal=$(echo "ibase=16; ($stringZ * 64 / FF)" | bc)

Damit funktioniert alles.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stoxx am 09 Juni 2016, 09:39:24
Zitat
Ich gehe mal davon aus, dass der Batteriezustand "FF" 100% bedeutet..
Bei mir liefert gatttool momentan 64, und das ist umgerechnet 100. Wenn es bei die 5e liefert, wären das doch 94 ...? Ich verstehe dann nicht, wie du auf FF kommst..
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 09 Juni 2016, 13:59:07
Zitat von: pv_is am 29 Mai 2016, 17:24:07

Testen mit:
sudo ./lepresenced --loglevel LOG_EMERG -d

Den absent und present Mode kann man einfach testen, in dem man den Gtag mit Alufolie einwickelt.

Falls notwendig, PID herausbekommen und Daemon manuell stoppen:

ps -ef | grep lepresenced
sudo kill <pid>


Starten dann wieder wie oben!

Hallo zusammen,

bei mir hat es jetzt tagelang funktioniert bis ich einen neuen GTAG hinzufügen wollte. Da ich die MAC Adresse nicht kannte habe ich alles gestopt und mit den hcitool abgefrag.

Leider läuft seit dem nicht mehr, auch ein neustart des Cub hat nichts gebracht.

Beim ausführen von sudo ./lepresenced --loglevel LOG_EMERG -d
bekomme ich folgendes -bash: .lepresenced: /usr/bin/perl^M: bad interpreter: No such file or directory

Was mache ich da falsch?

*EDIT*
Tja für alle die das vielicht auch haben. Es sollte schon das Unix Format haben... nicht windoof
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Ellert am 09 Juni 2016, 16:54:07
Zitat von: stoxx am 09 Juni 2016, 09:39:24
Bei mir liefert gatttool momentan 64, und das ist umgerechnet 100. Wenn es bei die 5e liefert, wären das doch 94 ...? Ich verstehe dann nicht, wie du auf FF kommst..

Ja, die Frage für mich ist, was sagt der von gatttool zurückgelieferte Wert aus?
Ist der Wert der direkte Batteriestatus in %.
Oder bedeutet FF=255=100%, weil die maximal darstellbare Hex-Zahl FF ist?

Auf diese Interpretation bin ich gekommen, weil meine G-Tags 4-5 Monate laufen und 5e und 64 zurückliefern. Soweit ich weiss ist die Batterielaufzeit mit bis zu einem Jahr angegeben. Damit wären dann Werte von 37% bzw. 39% (94*100/255 , 100*100/255) realistischer als 94% oder 100%. Aber sicher bin ich mir nicht.

Gibt es eine Schnittstellenbeschreibung, wo die handle-Adressen beschrieben sind?

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stoxx am 09 Juni 2016, 18:02:42
Zitat
Gibt es eine Schnittstellenbeschreibung, wo die handle-Adressen beschrieben sind?

Der Wert ist der Batterie- Ladestand in Prozent - hier der Link:

https://developer.bluetooth.org/gatt/services/Pages/ServiceViewer.aspx?u=org.bluetooth.service.battery_service.xml
(https://developer.bluetooth.org/gatt/services/Pages/ServiceViewer.aspx?u=org.bluetooth.service.battery_service.xml)
Ich glaube einfach, dass die Batterien beim GTag super lange halten.. Meine 4 GTags stehen alle aktuell bei 100%, sind aber noch keine 3 Wochen alt..

vg stoxx
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Ellert am 09 Juni 2016, 18:20:50
Zitat von: stoxx am 09 Juni 2016, 18:02:42
Der Wert ist der Batterie- Ladestand in Prozent - hier der Link:

https://developer.bluetooth.org/gatt/services/Pages/ServiceViewer.aspx?u=org.bluetooth.service.battery_service.xml
(https://developer.bluetooth.org/gatt/services/Pages/ServiceViewer.aspx?u=org.bluetooth.service.battery_service.xml)
Ich glaube einfach, dass die Batterien beim GTag super lange halten.. Meine 4 GTags stehen alle aktuell bei 100%, sind aber noch keine 3 Wochen alt..

vg stoxx
Ja, danke, dann werde ich nicht mehr zweifeln ;)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stoxx am 09 Juni 2016, 18:50:09
Hier nochmal der aktuelle Code für das Batterie-Level Skript für Gigaset G-Tags (die Großschreibung für bc berücksichtigt - danke Ellert für den Hinweis):

#!/bin/bash
stringZ=$(sudo gatttool -b <<MAC-Adresse>> --char-read --handle=0x001b)
stringZ=${stringZ:33:2}
stringZ=$(echo "$stringZ" | tr a-f A-F)
decimal=$(echo "ibase=16; $stringZ" | bc)
perl /opt/fhem/fhem.pl 7072 "setreading <<TagName>> Batterie $decimal"


<<MAC-Adresse>> = MAC des jeweiligen G-Tags
<<TagName>> = Device-Name des G-Tags

vg stoxx
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee mit RSSI anzeige
Beitrag von: justme1968 am 09 Juni 2016, 20:10:07
hallo zusammen,

ich habe eben etwas gespielt und aus allen möglichen bluetooth quelltexten eine lescan version zusammen kopiert die zusätzlich noch den rssi melden kann. vielleicht findet sich ja jemand der das ganze in den lepresenced und das PRESENCE modul einbaut :)

ich glaube die todos wären:
- im lepresenced das lescan binary aufrufen statt hcitool lescan
  mit dem eingenen quelltext haben wir auch das buffern im griff und könnten auf stdbuf verzichten
- das parsen anpassen
- die rssi werte mittels oder anders nachbearbeiten. sonst schwanken sie sehr stark
  vielleicht wären auch konfigurierbare schwellwerte gut. eventuell direkt im lescan binary
- die rssi werte an PRESENCE übetragen

bei meinem g-tag kommt der name nur ab und zu mit. wenn man darauf ganz verzichten kann: im quelltext in zeile 108 den type auf 0x00 ändern. eventuell ist dann der scann effizienter.


zum testen:
- die nötige bluetooth developer lib installieren:sudo apt-get install libbluetooth-dev

- kompilieren mit:gcc -o lescan lescan.c -lbluetooth

- laufen lassen mit: sudo ./lescan

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 09 Juni 2016, 21:15:10
Mahlzeit!

Hat zufällig jemand Lust und Zeit, das DEB-Paket zu testen? Bei mir sieht es unter raspbian jessie gut aus (allerdings nicht das Standard-Image sondern rasbian-ua-netinst). Der Log-level steht dort standardmäßig auf LOG_WARNING, was wirklich sehr überschaubar ist.

Patrick



Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mumpitz am 09 Juni 2016, 22:29:23
Zitat von: stoxx am 09 Juni 2016, 18:50:09
Hier nochmal der aktuelle Code für das Batterie-Level Skript für Gigaset G-Tags (die Großschreibung für bc berücksichtigt - danke Ellert für den Hinweis):

#!/bin/bash
stringZ=$(sudo gatttool -b <<MAC-Adresse>> --char-read --handle=0x001b)
stringZ=${stringZ:33:2}
stringZ=$(echo "$stringZ" | tr a-f A-F)
decimal=$(echo "ibase=16; $stringZ" | bc)
perl /opt/fhem/fhem.pl 7072 "setreading <<TagName>> Batterie $decimal"


<<MAC-Adresse>> = MAC des jeweiligen G-Tags
<<TagName>> = Device-Name des G-Tags

vg stoxx

Besten Dank für Deine Arbeit! Auf diese Möglichkeit warte ich schon eine Weile!

Merci
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 10 Juni 2016, 17:37:57
es gibt hier: https://forum.fhem.de/index.php/topic,54482.0.html (https://forum.fhem.de/index.php/topic,54482.0.html) einen neuen thread um die rssi auswertung weiter zu diskutieren.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mumpitz am 11 Juni 2016, 13:39:08
Zitat von: stoxx am 09 Juni 2016, 18:50:09
Hier nochmal der aktuelle Code für das Batterie-Level Skript für Gigaset G-Tags (die Großschreibung für bc berücksichtigt - danke Ellert für den Hinweis):

#!/bin/bash
stringZ=$(sudo gatttool -b <<MAC-Adresse>> --char-read --handle=0x001b)
stringZ=${stringZ:33:2}
stringZ=$(echo "$stringZ" | tr a-f A-F)
decimal=$(echo "ibase=16; $stringZ" | bc)
perl /opt/fhem/fhem.pl 7072 "setreading <<TagName>> Batterie $decimal"


darf ich fragen wie ich es handeln muss, wenn ich mehrere G-Tags abfragen muss? muss ich mehrere solche Scripts erstellen und diese laufen lassen oder kann ich alle in eines schreiben? Besten Dank
<<MAC-Adresse>> = MAC des jeweiligen G-Tags
<<TagName>> = Device-Name des G-Tags

vg stoxx
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stoxx am 11 Juni 2016, 14:46:23
Zitatdarf ich fragen wie ich es handeln muss, wenn ich mehrere G-Tags abfragen muss? muss ich mehrere solche Scripts erstellen und diese laufen lassen oder kann ich alle in eines schreiben? Besten Dank
Die Frage kam schonmal:
https://forum.fhem.de/index.php/topic,28753.msg459482.html#msg459482

Sicher kann man das auch über ein Skript machen; dann muss man halt mit mehreren Variablen arbeiten.. Ich habe mich aber für verschiedene Skripte entschieden, weil ich sie zu unterschiedlichen Zeiten bzw. in unterschiedlicher Häufigkeit aufrufen will..

vg stoxx
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mumpitz am 12 Juni 2016, 11:11:51
hmm, besten Dank. ich habe das num mal versucht. Leider bekomme ich folgenden Fehler im LogFile:

where <name> is a single device name, a list separated by komma (,) or a regexp. See the devspec section in the commandref.html for details.
Usage: setreading <name> <reading> <value>
/opt/fhem/batterie_gtag_reto.sh: line 2: warning: here-document at line 2 delimited by end-of-file (wanted `7C:2F:80:AA:5F:8C')
/opt/fhem/batterie_gtag_reto.sh: line 3: warning: here-document at line 3 delimited by end-of-file (wanted `7C:2F:80:AA:5F:8C')
2016.06.12 11:08:12 3: BatQuery: -1


UserReadings Batterie ist gesetzt. Allerdings wird kein entsprechendes Reading angezeigt. Weiss jemand Rat?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mumpitz am 12 Juni 2016, 13:11:10
Entschuldigung, kleiner Anfängerfehler: ich habe die Macadresse in je zwei << geschrieben als diese zu ersetzen :-)
sorry!

Zitat von: Mumpitz am 12 Juni 2016, 11:11:51
hmm, besten Dank. ich habe das num mal versucht. Leider bekomme ich folgenden Fehler im LogFile:

where <name> is a single device name, a list separated by komma (,) or a regexp. See the devspec section in the commandref.html for details.
Usage: setreading <name> <reading> <value>
/opt/fhem/batterie_gtag_reto.sh: line 2: warning: here-document at line 2 delimited by end-of-file (wanted `7C:2F:80:AA:5F:8C')
/opt/fhem/batterie_gtag_reto.sh: line 3: warning: here-document at line 3 delimited by end-of-file (wanted `7C:2F:80:AA:5F:8C')
2016.06.12 11:08:12 3: BatQuery: -1


UserReadings Batterie ist gesetzt. Allerdings wird kein entsprechendes Reading angezeigt. Weiss jemand Rat?

nun erhalte ich nur noch die Meldung:
where <name> is a single device name, a list separated by komma (,) or a regexp. See the devspec section in the commandref.html for details.
Usage: setreading <name> <reading> <value>
Host is down (112)
2016.06.12 13:08:36 3: BatQuery: -1


diese Meldung ist ja bereits bei Ellert aufgetaucht. Ich getraue mich jedoch nicht nach der Anleitung zu verfahren, da ich meinen Dongle mittels
sudo apt-get install bluetooth bluez-utils blueman

installiert habe und nicht wie in der Problemlösung beschrieben mittels bluez....

wäre das Problemlos auf das abzuändern???
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stoxx am 12 Juni 2016, 14:00:37
Zitatwäre das Problemlos auf das abzuändern???
Läuft Dein fhem auf wheezy oder jessie? Im Fall von wheezy würde ich mal nach der Anleitung vorgehen - mach halt vorher eine Sicherung..
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mumpitz am 12 Juni 2016, 14:06:57
Zitat von: stoxx am 12 Juni 2016, 14:00:37
Läuft Dein fhem auf wheezy oder jessie? Im Fall von wheezy würde ich mal nach der Anleitung vorgehen - mach halt vorher eine Sicherung..

wheezy!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mumpitz am 14 Juni 2016, 20:30:56
ich kriegs nicht hin. Wenn ich das Script auf der Konsole ausführe bekommen ich immer diese Meldung:

root@raspberrypi:~# /opt/fhem/batterie_gtag_reto.sh
Host is down (112)
Usage: setreading <name> <reading> <value>
where <name> is a single device name, a list separated by komma (,) or a regexp. See the devspec section in the commandref.html for details.


habe bereits den BT Dongle neu installiert. Genau das selbe....
Weiss jemand rat?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: darkness am 14 Juni 2016, 20:33:44
Hallo Zusammen,

ich wolllte heute auch mal einen G-Tag testen. Dazu habe ich mir einen CSL USB BT Stick Nano, V4.0   CSL USB BT2.0 in der Hardwareversion 4 geholt. Die Installation habe ich nach dem Wiki durchgeführt.

Wie sich herausgestellt hat, handelt es sich um einen BT2.0 Stick. Daher kann der G-Tag auch nicht gefunden werden

Erste Frage:

Im wiki steht:

ZitatEinen Tag sucht Ihr mit folgendem Befehl auf der Konsole:

sudo hcitool dev

Ausgabe z.b:
Devices: hci0    00:1A:7D:DA:71:0B

Dieser Befehl scan nach keinen BT Geräten sondern zeigt nur das locale BT Device, oder?

Ich habe daher ein hcitool lescan getestet. Leider bekomme ich dann immer die Meldung

Set scan parameters failed: Input/output error

Dazu habe ich eine Menge Bug-Reports gefunden. getestet habe ich mit Ubuntu 16.04 und Debian Jessie.

Syslog sagt

Jun 14 20:32:42 fhem-server bluetoothd[2728]: Bluetooth daemon 5.37
Jun 14 20:32:42 fhem-server bluetoothd[2728]: Starting SDP server
Jun 14 20:32:42 fhem-server bluetoothd[2728]: Bluetooth management interface 1.10 initialized
Jun 14 20:32:42 fhem-server bluetoothd[2728]: Failed to obtain handles for "Service Changed" characteristic
Jun 14 20:32:42 fhem-server bluetoothd[2728]: Not enough free handles to register service
Jun 14 20:32:42 fhem-server bluetoothd[2728]: Error adding Link Loss service
Jun 14 20:32:42 fhem-server bluetoothd[2728]: Not enough free handles to register service
Jun 14 20:32:42 fhem-server bluetoothd[2728]: message repeated 2 times: [ Not enough free handles to register service]
Jun 14 20:32:42 fhem-server bluetoothd[2728]: Current Time Service could not be registered
Jun 14 20:32:42 fhem-server bluetoothd[2728]: gatt-time-server: Input/output error (5)
Jun 14 20:32:42 fhem-server bluetoothd[2728]: Not enough free handles to register service
Jun 14 20:32:42 fhem-server bluetoothd[2728]: Not enough free handles to register service
Jun 14 20:32:42 fhem-server bluetoothd[2728]: Sap driver initialization failed.
Jun 14 20:32:42 fhem-server bluetoothd[2728]: sap-server: Operation not permitted (1)


Der G-Tag wird mir nicht angezeigt (Ein Scan auf dem Handy zeigt ihn aber)

Kann mir jemand weiter helfen?

Danke

Edith:

Ich schätze ich haben den Fehler gefunden. Der Stick ist ein Bluetooth USB Stick V2.0 Mini Dongle - USB 2.0 BT Nano Adapter.
Kann es sein, dass ich aber einen BT4.0 - Adapter benötige?

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 14 Juni 2016, 21:35:24
Hi,

ob es mit deinem Dongle funktioniert kann ich natürlich nicht sagen aber:


pi@fhem:/opt/fhem $ sudo hciconfig hci0 up
pi@fhem:/opt/fhem $ sudo hcitool lescan
LE Scan ...
7C:2F:80:A1:XA:XD (unknown)
7C:2F:80:A1:XA:XD Gigaset G-tag
7C:2F:80:A1:X4:X1 (unknown)
7C:2F:80:A1:X4:X1 Gigaset G-tag
7C:2F:80:A1:XA:XD (unknown)



Hast du deine Schnittstelle hochgefahren? (hci0) ggf. anpassen

sudo hciconfig hci0 up


Danach sollte der Scan wie folgt funktionieren

sudo hcitool lescan


ggf, den PI doch einmal mit Reboot starten.


PS: Du schreibst am Anfang, dass du dir einen V4.0 gekauft hattest..?!
Grüsse,
Dirk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: darkness am 14 Juni 2016, 21:40:15
Hallo Dirk,

die verschiedenen Varianten mit hiconfig habe ich durchgetestet. Ebenso neustarts.

Ja, auf meiner Anleitung zum Stick steht: USB BT Stick Nano, V4.0

Ich nehme an, es handelt sich um die Hardwareversion 4. Bei Ebay steht aber USB2.0
Mein Handy kann BT4.0 und kann daher die Tag auch orten.

Vielleicht sollte im Wiki der Hinweis hinzugefügt werden, dass zwingend BT4.0 erforderlich ist.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 14 Juni 2016, 21:44:44
Das USB2.0 hat nichts mit dem BT zu tun. Entscheidend ist das hier low Energy Bluetooth unterstützt werden muß welches erst ab der Bluetooth Spezifikation 4.0 erfolgt. Daher auch BT4.0 oder BT LE für Bluetooth Low Energy
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: darkness am 14 Juni 2016, 21:46:19
Ja, das passiert wenn man nebenbei vom Handy aus bestellt.  :(

Naja, jetzt warte ich auf den neuen Stick und dann schaue ich nochmal.

Danke
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 14 Juni 2016, 22:07:27
Ich habe den Hinweis hinzugefügt  :)
Berichte bitte dann nochmal, ob es mit dem neuen Stick funktioniert.

Die Batterieeekennung muss ich selbst noch Einrichten und wuerde diese dann auch aufnehmen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 15 Juni 2016, 11:56:55
anbei eine etwas erweiterte version des scripts.

- die mac adresse und der fhem device name müssen übergeben werden -> es ist nur ein script für mehrere gtags nötig
- das script versucht zu prüfen ob es schon läuft
- es wird ein nc aufruf statt fhem.pl aufruf zum setzen des readings verwendet. -> auf meinen remote raspberrys ist kein fhem installiert.

das ganze kann man z.b. auch aus einem notify auf present aus mit "gtag.sh <mac> $NAME" aufrufen und das reading im presence device selber setzen.

dann wird die batterie nur dann abgefragt wenn der tag in reichweite kommt. das spart vielleicht etwas batterie im vergleich zum pollen.

gruss
  andre


#!/bin/bash

mac=$1;
device=$2;

echo $mac;
if [ -z "$mac" ]
  then
  echo "no mac given";
  exit;
fi

while ps aw | grep gatttool | grep $mac |  wc -l | grep -v "^0$";do echo "already running"; exit;done;

hex=$(sudo gatttool -b $mac --char-read --handle=0x001b | tr a-f A-F)

if [ "$hex" ]
  then
    hex=${hex:33:2}
    dec=$(echo "ibase=16; $hex" | bc)
    echo $dec

    if [ "$device" ]
      then
      echo "setreading $device battery $dec" | nc 10.0.1.21 7072
    fi
  else
    echo "no value received";
fi
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: darkness am 17 Juni 2016, 08:37:58
Guten Morgen,

nach einer kurzen "Zwangspause" vom Forum hier meine Rückmeldung. Der BT4.0 Stick ist da und es funktioniert alles bestens.


Zitat von: Devender am 14 Juni 2016, 22:07:27
Ich habe den Hinweis hinzugefügt  :)
Berichte bitte dann nochmal, ob es mit dem neuen Stick funktioniert.

Die Batterieeekennung muss ich selbst noch Einrichten und wuerde diese dann auch aufnehmen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fh168 am 18 Juni 2016, 12:30:26
Ich habe mal mein Pebblebee und mein Gigaset Gtag wieder rausgeholt.
Wenn ich auf der Konsolen-Ebene hcitools lescan starte wird mein pebblebee erkannt.
Auch in Fhem
device_name
PebbleBee
2016-06-18 11:51:01
presence
absent
2016-06-18 12:24:23
state
absent
2016-06-18 12:24:23

Wenn ich jedoch die Konsole beende, geht meine Fhem Anzeige nach einiger Zeit auf absent, selbst bei 1000 sekunden ändert sich nichts. Obwohl ich das PebbleBee neben dem Pi liegen habe. Habe ich was vergessen?

LG
/robin
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Quatalspropella am 19 Juni 2016, 12:14:33
Hallo,

ich habe den Versuch gestartet die Nut2 http://www.nutspace.com/products/nut2 (http://www.nutspace.com/products/nut2) für die Anwesenheit zu nutzen. Bekomme da aber nur ein present wenn, ich in der Konsole einen lescan laufen haben und zusätzlich der Pair mode am nut aktiv ist. Ansonsten bleibt das Gerät "absent". Ausserdem schlug jeder Versuch den nut zu pairen fehl. Nur die App (iOS) konnte sich mit dem Gerät verbinden.

Wenn es einer Geschafft hat die Nut2 zum laufen zu bekommen wäre ich über eine Info die meine Aussage revidiert sehr verbunden. Ist ja warscheinlich möglich das ich was falsch mache.

BS: Debian 8 (Jessie) auf Raspberry Pi 2
Tool: bluez ver. 5.40
USB Dongle:  LogiLink® Bluetooth 4.0 Adapter  (http://www.logilink.eu/showproduct/BT0015.htm)
Script: wie im Wiki beschrieben das "lepresenced" (http://www.fhemwiki.de/w/index.php?title=Anwesenheitserkennung&amp%3Boldid=12445)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stoxx am 19 Juni 2016, 14:16:57
ZitatIst ja warscheinlich möglich das ich was falsch mache.
Mit den nut2 habe ich es auch nicht hinbekommen. Ich würde sie an Deiner Stelle durch nut 3 mini
http://www.ebay.de/itm/Nut-3-Smart-Tag-Mini-Bluetooth-Tracker-Key-Haustie-Tracer-Finder-AntiVerlorene-/151798031973 (http://www.ebay.de/itm/Nut-3-Smart-Tag-Mini-Bluetooth-Tracker-Key-Haustie-Tracer-Finder-AntiVerlorene-/151798031973)
(sind viel kleiner als die nut2) oder durch gigaset g-tags ersetzen. Bei den g-tags hast Du außerdem den Vorteil, dass du noch den Batterie-Stand auslesen kannst; die teile sind aber leider ziemlich klobig...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mumpitz am 19 Juni 2016, 14:38:35
Hallo Justme

Zitat von: justme1968 am 15 Juni 2016, 11:56:55
anbei eine etwas erweiterte version des scripts.

- die mac adresse und der fhem device name müssen übergeben werden -> es ist nur ein script für mehrere gtags nötig
- das script versucht zu prüfen ob es schon läuft
- es wird ein nc aufruf statt fhem.pl aufruf zum setzen des readings verwendet. -> auf meinen remote raspberrys ist kein fhem installiert.

das ganze kann man z.b. auch aus einem notify auf present aus mit "gtag.sh <mac> $NAME" aufrufen und das reading im presence device selber setzen.

dann wird die batterie nur dann abgefragt wenn der tag in reichweite kommt. das spart vielleicht etwas batterie im vergleich zum pollen.

gruss
  andre


#!/bin/bash

mac=$1;
device=$2;

echo $mac;
if [ -z "$mac" ]
  then
  echo "no mac given";
  exit;
fi

while ps aw | grep gatttool | grep $mac |  wc -l | grep -v "^0$";do echo "already running"; exit;done;

hex=$(sudo gatttool -b $mac --char-read --handle=0x001b | tr a-f A-F)

if [ "$hex" ]
  then
    hex=${hex:33:2}
    dec=$(echo "ibase=16; $hex" | bc)
    echo $dec

    if [ "$device" ]
      then
      echo "setreading $device battery $dec" | nc 10.0.1.21 7072
    fi
  else
    echo "no value received";
fi


ich habe das aktualisierte Script eingesetzt. Leider bekomme ich immernoch diese Rückmeldung:

root@raspberrypi:~# /opt/fhem/batterie_gtag.sh
7C:2F:80:AA:5F:03
Host is down (112)
no value received


Hast Du eine Idee?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 19 Juni 2016, 14:47:47
mit der alten raspian version hatte ich auch kein glück. mit der aktuellen jessie geht es out of the box.

irgendwo habe ich eine seite gefunden auf der beschrieben wird wie man in der alten version diverse updates von hand machen kann um eine aktuelle bluez version zu bekommen. damit geht es angeblich auch. das habe ich aber nicht weiter probiert.

gruss
  andre
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 19 Juni 2016, 15:42:33
Hi!

Zitat von: fh168 am 18 Juni 2016, 12:30:26
Wenn ich auf der Konsolen-Ebene hcitools lescan starte wird mein pebblebee erkannt.
Auch in Fhem
device_name
PebbleBee
2016-06-18 11:51:01
presence
absent
2016-06-18 12:24:23
state
absent
2016-06-18 12:24:23

Wenn ich jedoch die Konsole beende, geht meine Fhem Anzeige nach einiger Zeit auf absent, selbst bei 1000 sekunden ändert sich nichts. Obwohl ich das PebbleBee neben dem Pi liegen habe. Habe ich was vergessen?

Irgendwie werde ich daraus nicht schlau. Wie genau startest Du lepresenced?

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fh168 am 19 Juni 2016, 18:55:15
lt. wiki über crontab (version 1)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 19 Juni 2016, 19:59:58
Zitat von: fh168 am 19 Juni 2016, 18:55:15
lt. wiki über crontab (version 1)
Poste doch mal bitte ein Log mit LOG_DEBUG.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Quatalspropella am 19 Juni 2016, 21:06:27
Hallo stoxx,

danke für die Info. Mal kurz als Feedback. Ich hatte einen der Nut2 für ca. 3 Stunden am laufen. Das war erst möglich als ich diesen mit einem Androis Handy verbunden hatt. Nach den ca. drei Stunden funktionieren diese nur noch wenn ich einen "lescan" nebenbei liefen lies.

Werde die Nuts zurücksenden und die Gigaset Gtag nehmen / probieren. Wie es aussieht sind die hier sehr verbreitet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fh168 am 22 Juni 2016, 21:13:41
Zitat von: PatrickR am 19 Juni 2016, 19:59:58
Poste doch mal bitte ein Log mit LOG_DEBUG.

Patrick


2016-06-22 21:05:55 - caught SIGTERM

2016-06-22 21:05:55 - removed PID-File /var/run/presenced.pid

2016-06-22 21:05:55 - exiting

2016-06-22 21:06:00 - =================================================

2016-06-22 21:06:00 - started with PID 423

2016-06-22 21:06:00 - forked with PID 634

2016-06-22 21:06:00 - created socket on 0.0.0.0:5111

2016-06-22 21:10:59 - caught SIGTERM

2016-06-22 21:10:59 - removed PID-File /var/run/presenced.pid

2016-06-22 21:10:59 - exiting

2016-06-22 21:11:05 - =================================================

2016-06-22 21:11:05 - started with PID 429

2016-06-22 21:11:05 - forked with PID 638

2016-06-22 21:11:05 - created socket on 0.0.0.0:5111

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 22 Juni 2016, 21:15:42
@fh168:
Nee von lepresenced bitte. Das loggt ins syslog.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fh168 am 22 Juni 2016, 21:20:12
Zitat von: PatrickR am 22 Juni 2016, 21:15:42
@fh168:
Nee von lepresenced bitte. Das loggt ins syslog.

Patrick

ich habe nur das hier gefunden:

Jun 22 21:11:05 raspberrypi presenced[395]: Starting Presence Daemon: presenced.
Jun 22 21:11:05 raspberrypi systemd[1]: Started LSB: Presence Daemon for detecting the presence of bluetooth devices for FHEM.


und mein pebblebee sagt das

ADDRESS
0E:0A:14:09:64:A7
DEF
lan-bluetooth 0E:0A:14:09:64:A7 127.0.0.1:5333 1000
DeviceName
127.0.0.1:5333
MODE
lan-bluetooth
NAME
GTagPebblebee
NEXT_OPEN
1466623277
NOTIFYDEV
global
NR
1916
NTFY_ORDER
50-GTagPebblebee
PARTIAL
STATE
disconnected
TIMEOUT_NORMAL
1000
TIMEOUT_PRESENT
1000
TYPE
PRESENCE
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 22 Juni 2016, 21:23:19
Zitat von: fh168 am 22 Juni 2016, 21:20:12
ich habe nur das hier gefunden:

Jun 22 21:11:05 raspberrypi presenced[395]: Starting Presence Daemon: presenced.
Jun 22 21:11:05 raspberrypi systemd[1]: Started LSB: Presence Daemon for detecting the presence of bluetooth devices for FHEM.

Dann läuft entweder der lepresenced nicht oder der log level steht auf LOG_EMERG. Bitte mal mit
-l LOG_DEBUG
starten.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fh168 am 22 Juni 2016, 21:30:24
Zitat von: PatrickR am 22 Juni 2016, 21:23:19
Dann läuft entweder der lepresenced nicht oder der log level steht auf LOG_EMERG. Bitte mal mit
-l LOG_DEBUG
starten.

Patrick

rc.local

#start lepresenced
/opt/fhem/script/lepresenced --l LOG_DEBUG

exit 0


Jun 22 21:27:47 raspberrypi presenced[393]: Starting Presence Daemon: presenced.
Jun 22 21:27:47 raspberrypi systemd[1]: Started LSB: Presence Daemon for detecting the presence of bluetooth devices for FHEM.
Jun 22 21:27:47 raspberrypi systemd[1]: Started Light Display Manager.


root@raspberrypi:~# ps -ef | grep lepresenced
root      1120   862  0 21:32 pts/0    00:00:00 grep lepresenced
root@raspberrypi:~#


2016.06.22 21:40:15 3: Opening GTagPebblebee device 127.0.0.1:5333
2016.06.22 21:40:15 3: Can't connect to 127.0.0.1:5333: Verbindungsaufbau abgelehnt


gleiches Problem
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 22 Juni 2016, 22:05:26
Mach mal
-l LOG_DEBUG
statt
--l LOG_DEBUG

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fh168 am 24 Juni 2016, 13:48:51
Zitat von: PatrickR am 22 Juni 2016, 22:05:26
Mach mal
-l LOG_DEBUG
statt
--l LOG_DEBUG

Patrick

hab ich gemacht,

Jun 24 13:07:07 raspberrypi systemd[1]: Started Light Display Manager.
Jun 24 13:07:07 raspberrypi presenced[397]: Starting Presence Daemon: presenced.
Jun 24 13:07:07 raspberrypi systemd[1]: Started LSB: Presence Daemon for detecting the presence of bluetooth devices for FHEM.
Jun 24 13:07:07 raspberrypi dhcpcd[431]: wlan0: rebinding lease of 192.168.178.67


2016.06.24 13:50:51 3: Opening GTagPebblebee device 192.168.178.67:5333
2016.06.24 13:50:51 3: Can't connect to 192.168.178.67:5333: Verbindungsaufbau abgelehnt
2016.06.24 13:50:51 3: Opening GtAG2 device 192.168.178.67:5222
2016.06.24 13:50:51 3: Can't connect to 192.168.178.67:5222: Verbindungsaufbau abgelehnt
2016.06.24 13:50:57 1: usb create starting
2016.06.24 13:51:03 1: usb create end
2016.06.24 13:51:03 0: Featurelevel: 5.7


Gtag2 ist einer von meinen GigaTags

mehr gibt er zu Thema presenced nicht raus
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 26 Juni 2016, 15:06:51
Hi!

Zitat von: fh168 am 24 Juni 2016, 13:48:51
Jun 24 13:07:07 raspberrypi systemd[1]: Started Light Display Manager.
Jun 24 13:07:07 raspberrypi presenced[397]: Starting Presence Daemon: presenced.
Jun 24 13:07:07 raspberrypi systemd[1]: Started LSB: Presence Daemon for detecting the presence of bluetooth devices for FHEM.
Jun 24 13:07:07 raspberrypi dhcpcd[431]: wlan0: rebinding lease of 192.168.178.67


Also keine Logmeldung bei LOG_DEBUG ist etwas wenig. Ich glaube, wir müssen das mal systematischer angehen.

Bitte starte lepresenced mal per Hand und im Vordergrund:

/opt/fhem/script/lepresenced -l LOG-DEBUG


/Edit: In Deiner rc.local fehlt übrigens noch das -d (für daemonize)

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fh168 am 26 Juni 2016, 21:11:59
Zitat von: PatrickR am 26 Juni 2016, 15:06:51
Hi!

Also keine Logmeldung bei LOG_DEBUG ist etwas wenig. Ich glaube, wir müssen das mal systematischer angehen.

Bitte starte lepresenced mal per Hand und im Vordergrund:

/opt/fhem/script/lepresenced -l LOG-DEBUG


/Edit: In Deiner rc.local fehlt übrigens noch das -d (für daemonize)

Patrick


Das sieht schon etwas gesprächiger aus

Jun 26 21:00:45 raspberrypi lepresenced[1079]: [tid:0] main::stats_task: Active clients: 2, known devices: 6 (min/max age: 0/1651)
Jun 26 21:02:39 raspberrypi lepresenced[1079]: [tid:0] main: Sending update for mac address 1c:1a:c0:6a:a8:10, age: 27, max age: 120, result: present.
Jun 26 21:02:39 raspberrypi rsyslogd-2007: action 'action 17' suspended, next retry is Sun Jun 26 21:04:09 2016 [try http://www.rsyslog.com/e/2007 ]
Jun 26 21:04:39 raspberrypi lepresenced[1079]: [tid:0] main: Sending update for mac address 1c:1a:c0:6a:a8:10, age: 1, max age: 120, result: present.
Jun 26 21:04:39 raspberrypi rsyslogd-2007: action 'action 17' suspended, next retry is Sun Jun 26 21:06:09 2016 [try http://www.rsyslog.com/e/2007 ]
Jun 26 21:04:56 raspberrypi kernel: [ 3379.359957] usb 1-1.2: usbfs: process 675 (perl) did not claim interface 0 before use
Jun 26 21:04:56 raspberrypi kernel: [ 3379.360020] usb 1-1.2: usbfs: process 675 (perl) did not claim interface 0 before use
Jun 26 21:05:09 raspberrypi wpa_supplicant[443]: wlan0: WPA: Group rekeying completed with c8:0e:14:cc:d7:f8 [GTK=CCMP]
Jun 26 21:05:26 raspberrypi kernel: [ 3409.364284] usb 1-1.2: usbfs: process 675 (perl) did not claim interface 0 before use
Jun 26 21:05:26 raspberrypi kernel: [ 3409.364338] usb 1-1.2: usbfs: process 675 (perl) did not claim interface 0 before use
Jun 26 21:05:46 raspberrypi lepresenced[1079]: [tid:0] main::stats_task: Active clients: 2, known devices: 6 (min/max age: 1/1952)
Jun 26 21:05:56 raspberrypi kernel: [ 3439.368939] usb 1-1.2: usbfs: process 675 (perl) did not claim interface 0 before use
Jun 26 21:05:56 raspberrypi kernel: [ 3439.369003] usb 1-1.2: usbfs: process 675 (perl) did not claim interface 0 before use
Jun 26 21:06:31 raspberrypi kernel: [ 3474.099686] usb 1-1.2: usbfs: process 675 (perl) did not claim interface 0 before use
Jun 26 21:06:31 raspberrypi kernel: [ 3474.099740] usb 1-1.2: usbfs: process 675 (perl) did not claim interface 0 before use
Jun 26 21:06:31 raspberrypi rsyslogd-2007: action 'action 17' suspended, next retry is Sun Jun 26 21:08:01 2016 [try http://www.rsyslog.com/e/2007 ]
Jun 26 21:06:39 raspberrypi lepresenced[1079]: [tid:0] main: Sending update for mac address 1c:1a:c0:6a:a8:10, age: 9, max age: 120, result: present.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 26 Juni 2016, 22:57:16
Hi!

Das sieht in der Tat gut aus, auch wenn ich mich bei LOG_DEBUG vertippt habe. Unterstrich ist richtig, nicht Minus.

Patrick

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: fh168 am 27 Juni 2016, 07:12:27
Zitat von: PatrickR am 26 Juni 2016, 22:57:16
Hi!

Das sieht in der Tat gut aus, auch wenn ich mich bei LOG_DEBUG vertippt habe. Unterstrich ist richtig, nicht Minus.

Patrick

Yep, den Fehler hab ich noch bemerkt.
Das Problem muss also irgendwo bei Fhem liegen.

LG
/robin
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 22 Juli 2016, 06:27:11
Hallo zusammen,

Ich habe bei mir zwei G-Tags am laufen. Mein "grüner" läuft einwandfrei. Daneben hängt der "rote" von meiner Frau, dieser Toggelt hin und her.

Kann mir jemand einen Tipp geben wo ich da suchen kann? Die beiden hängen am Schlüsselbrett ca. 10cm auseinander.

2016.07.22 03:21:31 2: ROOMMATE set rr_Kathrin absent
2016.07.22 03:22:31 2: ROOMMATE set rr_Kathrin home
2016.07.22 03:25:31 2: ROOMMATE set rr_Kathrin absent
2016.07.22 03:27:31 2: ROOMMATE set rr_Kathrin home
2016.07.22 03:29:01 2: ROOMMATE set rr_Kathrin absent
2016.07.22 03:32:01 2: ROOMMATE set rr_Kathrin home
2016.07.22 04:02:01 2: ROOMMATE set rr_Kathrin absent
2016.07.22 04:04:01 2: ROOMMATE set rr_Kathrin home
2016.07.22 04:13:01 2: ROOMMATE set rr_Kathrin absent
2016.07.22 04:15:01 2: ROOMMATE set rr_Kathrin home
2016.07.22 04:24:01 2: ROOMMATE set rr_Kathrin absent
2016.07.22 04:25:01 2: ROOMMATE set rr_Kathrin home
2016.07.22 04:34:01 2: ROOMMATE set rr_Kathrin absent
2016.07.22 04:35:01 2: ROOMMATE set rr_Kathrin home
2016.07.22 04:45:31 2: ROOMMATE set rr_Kathrin absent
2016.07.22 04:47:31 2: ROOMMATE set rr_Kathrin home
2016.07.22 05:01:01 2: ROOMMATE set rr_Kathrin absent
2016.07.22 05:01:01 2: ROOMMATE set rr_Tim absent
2016.07.22 05:08:01 2: ROOMMATE set rr_Kathrin home
2016.07.22 05:09:31 2: ROOMMATE set rr_Kathrin absent
2016.07.22 06:08:31 2: ROOMMATE set rr_Kathrin home
2016.07.22 06:10:01 2: ROOMMATE set rr_Kathrin absent


rr_Tim abwesend passt  ;D da bin ich aus dem Haus gegangen, war heute etwas spät dran...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Braakhekke am 22 Juli 2016, 06:57:13
Hallo Tim,

ich habe zur Zeit das gleiche Problem und der Batterie im Verdacht. Wollte sie soeben austauschen und habe nicht den entsprechenden Schraubendreher gefunden. Heute Abend werde ich sie austauschen und berichten.

Grüße,
Ben
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 22 Juli 2016, 07:04:34
Hallo Ben,

das wäre schon schlecht. Der "rote" G-Tag ist erst 3 Wochen aktiv und habe ich vor 5 Wochen gekauft.

Bin aber mal auf deine Rückmeldung gespannt.

Vg
Tim
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Braakhekke am 22 Juli 2016, 07:07:19
Hallo Tim,

auch meiner sind nicht viel älter habe ein 5-er Pack gekauft und der Rest geht einwandfrei

Grüße,

Ben
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 22 Juli 2016, 09:20:12
Hatte ich auch bei einem, nach zwei Wochen. Hab die Batterien getauscht, gleiches Problem. Spannungen gemessen, alles gut - also wohl defekt. Ich hatte sie bei Amazon bestellt und den einen denn problemlos umgetauscht, seit dem alles gut!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Ellert am 22 Juli 2016, 10:01:56
Ab hier wird beschrieben, wie man den Batteriestatus auslesen und in FHEM als Reading darstellen kann.
https://forum.fhem.de/index.php/topic,28753.msg459142.html#msg459142

Händisch geht es so:
sudo gatttool -b <<MACADRESSE>> --char-read --handle=0x001b
Es kommt ein Hexadezimalwert zurück, mit dem Batteriestatus in %
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 26 Juli 2016, 09:47:34
Zitat von: stoxx am 06 Juni 2016, 14:41:58
Vielleicht für den ein oder anderen G-Tag Benutzer interessant: Hier eine Anleitung, wie man den Batterie-Ladestand der Tags abfragen und an FHEM schicken kann. Es gibt auch eine schöne Lösung über AMAD, aber da ich kein Android Gerät herumliegen habe, konnte ich diese Lösung nicht anwenden:
https://forum.fhem.de/index.php/topic,53169.msg458523.html#msg458523 (https://forum.fhem.de/index.php/topic,53169.msg458523.html#msg458523)

Also hier mein Ansatz:
- Ich musste an meinem Raspberry erstmal bc installieren:

apt-get install bc

Danach ein Skript ala sudo nano an einem Ort eurer Wahl erstellen mit folgendem Inhalt:


#!/bin/bash
stringZ=$(sudo gatttool -b <<MACADRESSE>> --char-read --handle=0x001b)
stringZ=${stringZ:33:2}
decimal=$(echo "ibase=16; $stringZ" | bc)
perl /opt/fhem/fhem.pl 7072 "setreading GTag Batterie $decimal"


ACHTUNG: <<MACADRESSE>> ersetzen mit der MAC Eures G-Tags!!
Beim Verlassen als .sh Datei speichern.
Das Skript natürlich noch über chmod +x ausführbar machen.
Am G-Tag Device muss noch ein userReading definiert werden:


attr GTag userReadings Batterie


Achtung: Das Ganze geht speziell nur für die Gigaset G-Tags. Andere Tags liefern garkeinen Batterie-Status, bei anderen kann das handle anders heissen..
Bei den nut-tags habe ich es bisher irgendwie nicht hinbekommen - die Werte lassen sich schon über z.B. die iOS App nRF MCP auslesen, aber über den Raspberry nicht... Vielleicht bekommt es ja jemand anderes hin oder hat einen Tipp?

vg stoxx

Hi,

habe ich probiert, aber FHEM meldet einen Fehler im Log bei Ausführung:

sudo: no tty present and no askpass program specified

Ist das ein Berechtigungsproblem? Rückgabewert ist denn -1
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 26 Juli 2016, 11:54:01
Zitat von: Tedious am 26 Juli 2016, 09:47:34
sudo: no tty present and no askpass program specified
Siehe z.B. hier (http://lmgtfy.com/?q=no+tty+present+and+no+askpass+program+specified) ;)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 26 Juli 2016, 12:01:36
Wirst es kaum glauben, exakt das habe ich gemacht ;) Aber im HowToFix gibt es diverse Wege, die alle recht tief ins System eingreifen. und da ich kein Fan von "tippe ab ohne zu verstehen was ich da mache" bin hatte ich die Hoffnung einen dedizierteren Verweis zu bekommen ;) Ich kann zwar prima Windows-Server administrieren, aber bei Linux bin ich denn doch nicht soooo firm ;)

EDIT: Alles klar, ist gefixt
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Ellert am 26 Juli 2016, 17:16:35
Du kannst die Benutzerrechte des Users unter dem FHEM läuft über die Datei sudoers mit visudo anpassen oder mit usermod die Gruppenrechte. Im Wiki zum Modul Text2Speech gibt es Beispiele, die sich auf den mplayer beziehen.

Edit: zu spät.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 26 Juli 2016, 17:19:34
Hi,

danke, habe ich soweit angepasst. Scheint aber irgendwas noch nicht zu passen, da muss ich noch mal bei...

2016.07.26 17:18:26 3: GTag_BatCheck_Julia: -1
Host is down (112)
Usage: setreading <name> <reading> <value>
where <name> is a single device name, a list separated by komma (,) or a regexp. See the devspec section in the commandref.html for details.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Ellert am 26 Juli 2016, 17:44:12
Zitat von: Tedious am 26 Juli 2016, 17:19:34
Hi,

danke, habe ich soweit angepasst. Scheint aber irgendwas noch nicht zu passen, da muss ich noch mal bei...

2016.07.26 17:18:26 3: GTag_BatCheck_Julia: -1
Host is down (112)
Usage: setreading <name> <reading> <value>
where <name> is a single device name, a list separated by komma (,) or a regexp. See the devspec section in the commandref.html for details.


Schau mal hier: https://forum.fhem.de/index.php/topic,28753.msg459776.html#msg459776
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 27 Juli 2016, 09:25:01
Besten Dank, wühle ich mich mal durch  :D
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mumpitz am 27 Juli 2016, 14:51:31
hallo zusammen

Ich habe jetzt die ganze Installation nochmals durchgemacht. Nun bekomme ich auf die Abfrage:


sudo gatttool -b 7C:2F:80:AA:5F:8C --char-read --handle=0x001b


jedoch folgende Antwort:


connect: Connection refused (111)


hat jemand eine Ahnung woran das liegen könnte?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 29 Juli 2016, 10:40:49
Zitat von: Ellert am 26 Juli 2016, 17:44:12
Schau mal hier: https://forum.fhem.de/index.php/topic,28753.msg459776.html#msg459776

Ich hab mich mal soweit durch die Guides gekämpft, aber irgendwo steckt noch der Wurm drin

Zitatconnect: Connection refused (111)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Muwe am 29 Juli 2016, 16:00:11
Hallo allerseits

erstmal vielen Dank für Eure tolle Arbeit.

Mithilfe dieses Forums habe ich 2 G-tags erfolgreich in FHEM (Jessie auf Raspberry 3) eingebunden.
Die beiden G-Tags werden gefunden:
pi@raspberrypi:~ $ sudo hcitool lescan
LE Scan ...
7C:2F:80:A1:2F:06 (unknown)
7C:2F:80:A1:2F:06 Gigaset G-tag
7C:2F:80:AD:C3:86 (unknown)
7C:2F:80:AD:C3:86 Gigaset G-tag

Lepresenced läuft ohne Fehler, in FHEM wird die Anwesenheit und Abwesenheit korrekt angezeigt.

Leider laufen in den Logdateien /var/log/syslog und /var/log/kernel im Sekundentakt folgende Meldungen auf:

Jul 29 15:08:11 raspberrypi kernel: [ 4905.634211] bt_err_ratelimited: 1 callbacks suppressed
Jul 29 15:08:11 raspberrypi kernel: [ 4905.634231] Bluetooth: hci0 advertising data length corrected
Jul 29 15:08:12 raspberrypi kernel: [ 4906.647350] Bluetooth: hci0 advertising data length corrected
Jul 29 15:08:13 raspberrypi kernel: [ 4907.532081] Bluetooth: hci0 advertising data length corrected
Jul 29 15:08:13 raspberrypi kernel: [ 4907.655564] Bluetooth: hci0 advertising data length corrected
...

Wobei der Befehl "hcitool lescan" genau 2 Meldungen in den Logdateien erzeugt.
Bei "hcitool --duplicates" werden dann fortlaufend Meldungen generiert.

Leider habe ich bisher keine Möglichkeiten gefunden diese Meldungen abzustellen bzw. zu unterdrücken.

Habt Ihr vielleicht eine Idee ?

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jack_n am 29 Juli 2016, 18:07:42
Hallo,

ich brauche bitte Eure Hilfe.

Habe mir die Nut Mini Tracker besorgt, die laut verschiedenen Post's hier im Forum funktionieren sollen.

Wenn ich auf dem Raspberry sudo hcitool lescan ausführe dann sehe ich die MAC der 2 Nut's die ich gekauft habe.
Stecke ich eine davon in eine Blechdose dann verschwindet diese MAC auch.

Ich habe dann in FHEM die Nut's laut Wiki so eingefügt: define Nut_1 PRESENCE local-bluetooth XX:XX:XX:XX:XX:XX - wobei XX natürlich die MAC aus dem Lescan ist.

Leider zeigt mir FHEM immer nur absent an.

Hat bitte Jemand einen Tip für mich an was ich da scheitere ?

Vielen Dank

Joachim
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stoxx am 29 Juli 2016, 19:48:59
Hi Jack_n,

ich habe meinen nut mini so angelegt

Zitat
define blabla PRESENCE lan-bluetooth aa:aa:aa:aa:aa:aa localhost:5333 10 30

also wenn du mich fragst , fehlt bei dir was.. schau mal in die fhem Referenz..

grüße stoxx

ah, seh gerade , das du  local-bluetooth verwendest.. da ist es vielleicht anders..
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 29 Juli 2016, 22:21:06
Hi! local-bluetooth funktioniert nicht mit Bluetooth LE. Du brauchst lepresenced und lan-bluetooth.


Gruß
Patrick

Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jack_n am 30 Juli 2016, 09:26:38
Hallo Stoxx, Hallo Patrick,

Ihr hattet Recht, danke für Eure Hilfe, jetzt läuft es !  :)

Gruss
Joachim
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 02 August 2016, 18:37:15
Ich habe irgendwie Probleme mit den timeouts von lan-bluetooth.
Meine 4 Bluetooth PRESENCE Devices sind alle mit timeout "5 15" angelegt. Also 5 sec bei Abwesenheit und 15 bei Anwesenheit.
Mein Log auf die Devices zeigt aber andere Werte:

2016.08.02 18:16:26 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:16:27 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:16:29 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:16:31 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:16:35 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:16:36 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:16:41 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:16:41 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:16:46 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:16:48 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:16:50 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:16:51 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:16:56 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:16:56 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:17:01 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:17:02 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:17:06 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:17:08 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:17:10 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:17:11 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:17:16 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:17:16 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:17:21 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:17:22 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:17:26 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:17:28 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:17:30 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:17:31 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:17:36 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:17:36 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:17:41 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:17:43 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:17:46 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:17:49 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:17:50 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:17:51 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:17:56 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:17:57 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:18:01 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:18:03 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:18:06 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:18:09 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:18:11 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:18:11 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:18:16 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:18:17 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:18:21 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:18:23 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:18:26 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:18:29 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:18:31 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:18:31 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:18:36 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:18:37 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:18:41 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:18:43 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:18:46 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:18:49 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:18:51 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:18:52 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:18:56 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:18:58 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:19:01 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:19:04 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:19:06 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:19:10 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:19:11 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:19:12 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:19:16 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:19:19 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:19:21 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:19:25 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:19:26 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:19:31 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:19:31 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:19:33 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:19:36 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:19:39 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:19:41 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:19:45 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:19:46 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:19:51 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:19:52 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:19:53 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:19:56 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:19:59 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:20:01 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:20:06 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:20:06 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:20:11 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:20:12 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:20:13 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:20:16 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:20:20 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:20:21 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:20:26 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:20:26 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:20:31 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:20:32 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:20:34 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:20:36 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:20:40 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:20:41 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:20:46 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:20:46 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:20:51 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:20:52 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:20:55 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:20:56 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:21:01 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:21:01 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:21:06 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:21:07 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:21:11 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:21:13 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:21:15 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:21:16 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:21:21 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:21:21 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:21:26 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:21:28 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:21:31 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:21:34 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:21:36 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:21:36 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:21:41 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:21:42 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:21:46 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:21:48 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:21:51 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:21:54 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:21:56 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:21:56 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:22:01 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:22:02 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:22:06 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:22:08 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:22:11 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:22:15 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:22:16 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:22:16 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:22:21 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:22:22 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:22:26 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:22:29 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:22:31 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:22:35 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:22:36 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:22:37 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:22:41 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:22:43 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:22:46 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:22:49 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:22:51 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:22:55 5 : PRESENCE (Handy_PRESENCE_rg_Mutter) - received data: absence
2016.08.02 18:22:56 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:22:57 5 : PRESENCE (Handy_PRESENCE_rr_Dan) - received data: present;Dans iPhone
2016.08.02 18:23:01 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence
2016.08.02 18:23:03 5 : PRESENCE (Handy_PRESENCE_rg_SBert) - received data: absence
2016.08.02 18:23:06 5 : PRESENCE (Handy_PRESENCE_rg_Gast) - received data: absence


Bei Handy_PRESENCE_rr_Dan kommt es mit 20-21 sec ja fast hin, bin ja anwesend.
Bei Handy_PRESENCE_rg_Gast stimmt es genau mit 5 sec, da abwesend.

Bei Handy_PRESENCE_rg_SBert und bei Handy_PRESENCE_rg_Mutter ist allerdings ein Timeout von 13-14 sec zu sehen, wie kommt das?

Nur Handy_PRESENCE_rg_Gast ist ein BTLE Gerät, der Rest normal BT.

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: bjoernbo am 18 August 2016, 08:08:36
interessantes Video!

Ich plane folgendes umzusetzen. Alle Familienmitglieder bekommen einen G-Tag. Wenn keine Familienmitglied im Hause ist, also alle 4 G-Tags nicht da sind, soll, wenn aufeinmal ein Fenster geöffnet wird (Einbruch) ein Alarm ausgelöst werden. Meine Frage ist jedoch, kann man 4 G-Tags integrieren mit denen sich die Anwesenheit steuern lässt???
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 18 August 2016, 08:15:34
Genau dafür ist das PRESENCE-Modul prädestiniert. Commandref angucken. :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: bjoernbo am 18 August 2016, 08:29:44
Ok, anders ausgedrückt. Kann ich an einem Bluetoothempfänger 4 G-Tags koppeln, oder wird immer nur einer erkannt bzw. kann immer nur einer eine Verbindung herstellen. Wenn ja alle 4 Personen im Hause sind, müssen ja 4 Tag mit dem Empfänger verbunden sein.

Aber Danke schonmal für den "PRESENCE"-Hinweis
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 18 August 2016, 08:33:30
Nein, es gehen alle 4. Allerdings - denk an die Reichweite von so nem Bluetooth-Dongle - möglicherweise wird da ein Haus nicht ganz davon abgedeckt.

Aber das wurde hier im Thread schon öfter angesprochen. Insofern: Zeit nehmen und ganz lesen. :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 18 August 2016, 10:30:07
bzw:

http://www.fhemwiki.de/wiki/Anwesenheitserkennung#Anwesenheitserkennung_Bluetooth_PebbleBee_mit_PRESENCE_Modul

Da dürfte ersichtlich sein, dass mehrer BT Tags verbunden sein können.
Die Tags mit PRESENCE dann am besten in eine structure packen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: bjoernbo am 18 August 2016, 10:38:46
Danke für eure Rückmeldungen. Werde mir das mal zur Gemüte ziehen!
Das mit der Reichweite stimmt allerdings. Es muss natürlich gewährleistet werden, wenn ich meinen Schlüssel hoch ins Studio nehme, dass dann trotzdem erkannt wird das ich im Hause bin.  :-\
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 19 August 2016, 10:19:44
Ich habe das ganze bei mir gestern aufgesetzt und es hat auf Anhieb geklappt, vielen Dank für den Wiki-Eintrag. Der ist wirklich sehr gut.

Allerdings verflog die Freude schnell, wie schon so oft aufgrund der Reichweite in unserem Haus. Wir haben Stahlbetondecken und im EG auch Fussbodenheizung.

Das Problem ist - der Raspi steht im 1.OG (muss er auch aufgrund des JeeLink - nur hier werden alle Sensoren vom Keller bis Dach grade noch so empfangen).
Aber die Bluetooth-Reichweite reicht leider nicht wirklich bis zum Schlüsselbrett im EG (Vorraum), wo auch die Tags immer hängen. Die Tags flippen dauernd zwischen off/on.
Wenn die Tür zum Vorraum geschlossen ist, oder der Schlüssel in der Haustür steckt, wird gar nichts mehr empfangen.

Die einzige Lösung die mir momentan einfällt wäre ein zweiter Raspi im EG, mit FHEM2FHEM. Dieser wäre dann ausschliesslich für die Bluetooth-Geschichte.

Das ist natürlich etwas oversized....oder? Gibt es noch andere Möglichkeiten?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 19 August 2016, 11:06:03
Wenn die Möglichkeit besteht (so habe ich es gemacht) einfach eine 10m USB-Verlängerung an den Pi und den BT-Stick damit zentraler in der Wohnung platzieren oder eben sogar einen zusätzlichen BT-Stick dran hängen.

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 19 August 2016, 11:55:33
Wenn ichs recht verstanden habe, reicht eigentlich der (le)presenced mit Bluetooth-Stick auf einem kleinen Rechner im Netzwerk, zB einem Raspi oÄ. Der stellt damit ja quasi einen Netzwerkdienst auf einem Port zur Verfügung, der dann zentral "eingesammelt" werden kann über den collectord.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 19 August 2016, 11:59:57
USB-Verlängerung scheidet leider aus. Der Raspi hängt im schmalen Flur im 1.OG (einzige zentrale Möglichkeit), da kann ich kein Kabel quer langlegen. Es sieht so schon grenzwertig aus, was den WAF angeht :D

Man muss sich vorstellen: Im Flur im 1.OG ist nur eine einzige Steckdose. In dieser steckt ein Fritz-DECT-Repeater (mit durchgeschleifter Steckdose). In der durchgeschleiften Steckdose steckt wiederrum das Netzteil vom Raspi. Und der Raspi liegt quer auf dem DECT-Repeater oben auf. Aus dem Raspi ragen dann CUL und Jeelink heraus...  ::)

Danke für den Hinweis mit dem collectord. Das würde, wenn es funktioniert, wenigstens eine weitere FHEM Installation ersparen.

Wobei - im EG werkelt noch ein HMLAN ... diesen könnte ich ja durch den neuen, zusätzlichen Raspi+CUL ersetzen...ach herrje. Ein Gefrickel ist das!  ;D

Ich hatte ja schon die Idee, den Raspi und den HMLAN einfach zu tauschen (also Raspi ins EG, HMLAN ins OG) - aber dann renne ich in das Problem mit der Reichweite des Jeelink. ich verliere dann die Sensoren aus dem Dach. Alles nicht so einfach.

Und das alles "nur" wegen der Anwesenheitserkennung. Die treibt mich von Beginn an in den Wahnsinn. Mit den Smartphones per WLAN funktioniert es einfach nicht brauchbar.
Titel: nur Connected bzw Disconnected
Beitrag von: geiercasi am 19 August 2016, 17:11:04
Juhuu, ich habe das Ende des Threads erreicht. Danke euch, für die reichhaltigen Informationen und Vorarbeiten. Besonderen Dank an @PatrickR & @Devender

Leider bekomme ich nur Disconnected bzw Connected als Ausgabe.
die beide 73_PR*.pm sind als aktuelle Version aus dem Thread installiert.
/opt/fhem/script/lepresenced läuft und der Sender wird gefunden.
nach diesem Post wurde eingerichtet,
https://forum.fhem.de/index.php/topic,28753.msg455835.html#msg455835
nur die script/lepresenced Version Stammt aus dem TGhread und nicht von Git, da Diese bei mir einen Fehler brachte. Mit meiner Version (0.4) funktionert aber z.b. /opt/fhem/script/lepresenced -l LOG-DEBUG noch nicht.

define HA.Casi PRESENCED
define HA.Casi PRESENCE lan-bluetooth 98:7B:F3:6D:FC:38 127.0.0.1:5222 10 30
attr HA.Casi eventMap 1
attr HA.Casi room Haus


/var/log/syslog sagt Dies:
Aug 19 17:04:36 FHEM lepresenced[3153]: [tid:0] main: Version 0.4 started (device: hci0, listen addr: 127.0.0.1, listen port: 5333, daemonize: 0).
Aug 19 17:04:36 FHEM lepresenced[3153]: [tid:0] main::cleanup_task: Cleanup finished, deleted 0 devices in 0 seconds.
Aug 19 17:04:36 FHEM lepresenced[3153]: [tid:1] main::bluetooth_thread: Received 'LE Scan ...'.
Aug 19 17:04:36 FHEM lepresenced[3153]: [tid:0] main::stats_task: Active clients: 0, known devices: 1 (min/max age: 0/0)


Hat jemand eine Idee, warum ich kein
present bzw absent
als Status erhalte ?

Gruß und danke für Eure Hilfe
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 19 August 2016, 22:46:32
Hallo geiercasi,

ich kann Dir wahrscheinlich nicht wirklich helfen, da ich auch gerade erst damit begonnen habe...aber ich schreibe Dir einfach mal, was mir dazu einfällt.

Ich bin bei mir nach dem Wiki-Eintrag vorgegangen, damit hat es auf Anhieb geklappt:

http://www.fhemwiki.de/wiki/Anwesenheitserkennung#Anwesenheitserkennung_Bluetooth_PebbleBee_mit_PRESENCE_Modul (http://www.fhemwiki.de/wiki/Anwesenheitserkennung#Anwesenheitserkennung_Bluetooth_PebbleBee_mit_PRESENCE_Modul)

Was die "73_PR*.pm" sein soll, keine Ahnung - ich habe nichts dergleichen gemacht, kommt im Wiki auch nicht vor.

Dann sehe ich noch bei Dir:


define HA.Casi PRESENCE lan-bluetooth 98:7B:F3:6D:FC:38 127.0.0.1:5222 10 30


Und:


Aug 19 17:04:36 FHEM lepresenced[3153]: [tid:0] main: Version 0.4 started (device: hci0, listen addr: 127.0.0.1, listen port: 5333, daemonize: 0).


...der GTag wird auf Port 5222 angefragt, der Dongle hört aber auf 5333. Ich weiss nicht, ob das so funktioniert.

Ich würde alles nochmal rauswerfen und genau nach dem Wiki-Eintrag vorgehen und auch das Script von Github verwenden.

Schöne Grüße und viel Erfolg
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 20 August 2016, 01:21:33
Hi geiercasi,

ich sehe das auch so wie errazzor. Dein lepresenced lauscht auf Port 5333 und du legst ein Device mit Port 5222 an.
Korrigiere mal dein DEF von HA.Casi auf den Port vom lepresenced.

Ich denke, du hast hier das Wiki und den Post von Helmut (auf den du verlinkt hast) durcheinander geworfen.
Unterschiedliche Ports brauchst du nur, wenn du z.b G-Tags und IPhone (presenced/lepresenced) zusammen betreiben willst.
Siehe (Roter Kasten) http://www.fhemwiki.de/wiki/Anwesenheitserkennung#Anwesenheitserkennung_Bluetooth_PebbleBee_mit_PRESENCE_Modul (http://www.fhemwiki.de/wiki/Anwesenheitserkennung#Anwesenheitserkennung_Bluetooth_PebbleBee_mit_PRESENCE_Modul)

Mit 73_PR*.pm meinst du bestimmt das Modul 73_PRESENCE.pm.
Das sollte per normalem FHEM Update auf einem Stand sein, der mit Patricks lepresenced einwandfrei funktioniert.

Grüße,
Dirk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 20 August 2016, 11:03:33
Ein Script manuell einzusetzen ist doch gar nicht mehr nötig!
collectord, presenced und lepresenced gibt es doch auch schon seit einiger Zeit als deb Pakete.
Schaut mal hier (https://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/contrib/PRESENCE/deb/).

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: uelly am 20 September 2016, 20:44:07
Zitat von: DeeSPe am 20 August 2016, 11:03:33
Ein Script manuell einzusetzen ist doch gar nicht mehr nötig!
collectord, presenced und lepresenced gibt es doch auch schon seit einiger Zeit als deb Pakete.
Schaut mal hier (https://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/contrib/PRESENCE/deb/).

Gruß
Dan

Und das funktioniert dann im Detail wie? (sry doofe Anfängerfrage ^^)

lg, uelly
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 20 September 2016, 20:47:55
Einfach die benötigten Pakete installieren und wie hier im Thema erklärt einrichten.

Gruß
Dan
Titel: Anwesenheitserkennung BluetoothLE bei gleichzeitiger Verbindung mit Handy TrackR
Beitrag von: Calle78 am 03 Oktober 2016, 16:56:32
Hey Leute, ich hab mir die TrackR geholt weil man die Batterie wechseln kann. Klappt prima, aber wenn ich sie auch mit der HandyApp verbinde, zeigt er sie mir in FHEM als Abwesend an. Ich vermute damit muss man leben? Ist so natürlich nur der halbe Spaß ;)

ciao Carlo
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 03 Oktober 2016, 16:59:23
Jepp, sobald BTLE Devices gekoppelt sind, sind sie nicht mehr sichtbar.
Hab mich auch mit ein paar Billig-Trackern angeschmiert! Die sind nur kurze Zeit nach Knopfdruck sichtbar und warten auf Kopplung.

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 03 Oktober 2016, 19:36:39
Hallo,

ich habe drei G-tags wie in der Wiki beschrieben angelegt.
Das mit present und absent funzte wunderbar. Jetzt wollt ich den Batteriestatus holen und das funktioniert überhaupt nicht.
Nachdem ich das script ausgeführt habe, werden die Gtags (nach Raspi-Neustart) auch nicht mehr erkannt?! EDIT: Berechtigungsfehler für die start_ini.sh Datei! Sorry! Der andere Fehler besteht weiterhin.
Vorhanden ist ein Raspi 3, drei G-tags und folgende Fehlermeldung (im Raspi) wenn ich das script ausführe, welches im Wiki beschrieben ist:

connect error: Transport endpoint is not connected (107)
./Auto_GtagBatterie.sh: Zeile 5: bc: Kommando nicht gefunden.
Usage: setreading <name> <reading> <value>
where <name> is a single device name, a list separated by komma (,) or a regexp. See the devspec section in the commandref.html for details.


Das ist das script:

#!/bin/bash
stringZ=$(sudo gatttool -b 7C:XX:80:XX:AD:XX --char-read --handle=0x001b)
stringZ=${stringZ:33:2}
stringZ=$(echo "$stringZ" | tr a-f A-F)
decimal=$(echo "ibase=16; $stringZ" | bc)
perl /opt/fhem/fhem.pl 7072 "setreading Auto_Gtag Batterie $decimal"


Da ich im Raspi eh nur nach Anweisung handle, weiß ich nicht, was ich mit dem Fehler anfangen soll...

Infos:

Fhem info:
  Release  : 5.7 FeatureLevel: 5.7
  OS       : linux
  Arch     : arm-linux-gnueabihf-thread-multi-64int
  Perl     : v5.20.2
  uniqueID : 9d111b22c0bada5a85dd4b82aaeb7c83
  upTime   : 2 days, 22:58:31

Defined modules:
  DOIF          : 28
  Dashboard     : 1
  EnOcean       : 12
  FHEMWEB       : 3
  FileLog       : 12
  GUEST         : 1
  PRESENCE      : 5
  RESIDENTS     : 1
  ROOMMATE      : 2
  SVG           : 1
  TCM           : 1
  Twilight      : 1
  Weather       : 1
  allowed       : 3
  autocreate    : 1
  dummy         : 69
  eventTypes    : 1
  notify        : 1
  readingsGroup : 8
  telnet        : 1
  weblink       : 1

Defined models per module:
  EnOcean       : TF


Könnte mir da jemand sachkundiges weiterhelfen?
Vielen Dank!

SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 03 Oktober 2016, 19:49:13

./Auto_GtagBatterie.sh: Zeile 5: bc: Kommando nicht gefunden.


Also noch tiefer kann man die Nase gar nicht rein gesteckt bekommen. Es fehlt das bc Programm. Siehe auch Wiki.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 03 Oktober 2016, 19:56:28
Vielen Dank für Deine Antwort...

Aber wie bereits geschrieben, bin ich da einfach nur Abtipper innerhalb des Raspi.
Welches bc Programm? Und was ist das? Im Wiki von der Anwesenheit lässt sich für mich auf nichts dergleichen schließen.
Wo kriege ich das her und was macht es?


sudo apt-get install bc

Für die, die es nicht wissen... das ist der BasisCalculator! (?!)
Naja, installiert und funzt.

Nochmals danke und einen schönen Abend wünsche ich ;)

SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 03 Oktober 2016, 20:14:40
https://packages.debian.org/de/sid/bc

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 03 Oktober 2016, 20:26:30
Da war ich knapp 1,5 min schneller ;)

Trotzdem vielen vielen Dank!
Bin immer wieder fasziniert, wie viele Leute sich mit sowas auskennen... Und außerdem über die grandiose Arbeit, die an und im fhem geleistet wird! 

Bis denn
SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 03 Oktober 2016, 22:02:20
Zitat von: SouzA am 03 Oktober 2016, 19:56:28
sudo apt-get install bc
Für die, die es nicht wissen... das ist der BasisCalculator! (?!)

ich habe das Wiki dementsprechend ergänzt.  :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Taasba am 05 Oktober 2016, 13:00:10
Hallo miteinander,

ich habe mich durch den gesamten Thread "gekämpft" und muss sagen: Respekt vor Eurer Arbeit und der Geduld mit Neulingen hier in diesem Forum.

Hier noch das Stichwort für die Suche:
- Problem Batterieüberwachung mit G-TAG - Wert wird nicht an fhem übergeben - Lösung


Ich möchte meine Erfahrungen hier kurz mitteilen. Vielleicht können auch andere davon profizieren.

- ich habe 5 G-Tags im Einsatz und wolle dazu auch die Batterieüberachung umsetzen
- entsprechend dem WIKI Eintrag (http://www.fhemwiki.de/wiki/Anwesenheitserkennung#Anwesenheitserkennung_Bluetooth_PebbleBee_mit_PRESENCE_Modul) alles soweit eingerichtet. Funktionierte bis auf die Batterieüberwachung prima.
- Ich habe mir für jeden G-Tag eine eigenes Shell-Script angelegt, welche per crontab (1x mal in der Nacht) aufgerufen werden.
- Das Problem war, dass die Daten nicht an fhem übergeben wurden. ( perl /opt/fhem/script/fhem.pl 7072 "setreading <NAME-GTAG> Batterie $decimal" )

Nach langem Suchen habe ich nun den Übeltäter gefunden! Es lag an der Übergabe an telnet.

Mein telnet-Zugang war mit einem password gesichert, welches beim Aufruf des Scripts auch erwartet wurde. Nach Änderung in der fhem.cfg in globalpassword ging es dann.

Hier die Änderung:
define telnetPort telnet 7072 global
define allowed_telnetPort allowed
attr allowed_telnetPort globalpassword passwort
attr allowed_telnetPort validFor telnetPort
 
Jetzt klappt auch die Übergabe an fhem :-)

LG

Torsten
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Taasba am 05 Oktober 2016, 21:03:43
Zitat von: Muwe am 29 Juli 2016, 16:00:11
Hallo allerseits

erstmal vielen Dank für Eure tolle Arbeit.

Mithilfe dieses Forums habe ich 2 G-tags erfolgreich in FHEM (Jessie auf Raspberry 3) eingebunden.
Die beiden G-Tags werden gefunden:
pi@raspberrypi:~ $ sudo hcitool lescan
LE Scan ...
7C:2F:80:A1:2F:06 (unknown)
7C:2F:80:A1:2F:06 Gigaset G-tag
7C:2F:80:AD:C3:86 (unknown)
7C:2F:80:AD:C3:86 Gigaset G-tag

Lepresenced läuft ohne Fehler, in FHEM wird die Anwesenheit und Abwesenheit korrekt angezeigt.

Leider laufen in den Logdateien /var/log/syslog und /var/log/kernel im Sekundentakt folgende Meldungen auf:

Jul 29 15:08:11 raspberrypi kernel: [ 4905.634211] bt_err_ratelimited: 1 callbacks suppressed
Jul 29 15:08:11 raspberrypi kernel: [ 4905.634231] Bluetooth: hci0 advertising data length corrected
Jul 29 15:08:12 raspberrypi kernel: [ 4906.647350] Bluetooth: hci0 advertising data length corrected
Jul 29 15:08:13 raspberrypi kernel: [ 4907.532081] Bluetooth: hci0 advertising data length corrected
Jul 29 15:08:13 raspberrypi kernel: [ 4907.655564] Bluetooth: hci0 advertising data length corrected
...

Wobei der Befehl "hcitool lescan" genau 2 Meldungen in den Logdateien erzeugt.
Bei "hcitool --duplicates" werden dann fortlaufend Meldungen generiert.

Leider habe ich bisher keine Möglichkeiten gefunden diese Meldungen abzustellen bzw. zu unterdrücken.

Habt Ihr vielleicht eine Idee ?

Ist zwar schon ein wenig her...aber bis auf den Tipp einer zusätzlichen "constant" in lepresenced gibt es keine weiteren Ideen. Scheinbar ist es ein Problem mit dem G-Tag und meinen RasPi3. Hat noch jemand diese Erfahrung?

Ist schon blöd, wenn die syslog pro Tag über 100.000 Einträge generiert (mehrere Einträge poro Sekunde!).

Lieben Dank.

Torsten

provisorische Lösung:

Edit: 06.10.2016
- zunächst einmal herzlichen Dank an Patrick Reinhardt (Entwickler lepresenced), der mir den Tipp gegeben hat.
- scheinbar tritt das Problem beim RasPi 3 auf. Fehlermeldungen werden in verschiedene log's geschrieben. Bei mir wurden maßgeblich "syslog" und "kern.log" zugemüllt. 
- eine provisorische Lösung, weil die Ursache damit ja nicht gelöst wird, ist das reine Unterbinden der Einträge:

1. Unter "/etc/rsyslog.d" eine Datei erzeugen mit dem Namen "01-blocklist.conf"
2. Inhalt: (Die Ausdrücke in den "" sind diejenigen, die aus dem log verschwinden sollen. - bei mir waren es die unten stehenden")
    :msg,contains,"Bluetooth: hci0 advertising data length corrected" ~
    :msg,contains,"bt_err_ratelimited:" ~
3. Dienst neu starten "sudo service rsyslog restart"
4. log prüfen und freuen, wenn alles geklappt hat.

Grundlage dieser Idee ist hier beschrieben: http://askubuntu.com/questions/18970/is-there-a-way-to-suppress-one-specific-message-from-syslog
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jamo am 06 Oktober 2016, 13:51:37
Batterieüberwachung mit G-TAG - bei mir stehen da jetzt im Batterie Reading Werte von "94" und "85" für die Batterie. Bei welchem Wert sollte man die Batterie denn Wechseln? Oder sind das die "% voll" Werte der Batterie?

Danke ! 
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 06 Oktober 2016, 14:16:50
Das sind Prozentangaben
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 06 Oktober 2016, 14:28:01
Hier mal wie ich es bei mir gemacht habe.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jamo am 06 Oktober 2016, 17:15:34
Hallo Cooltux,
kannst Du mir vielleicht noch erklären, wie Du das zweite userreading "device_battery" angelegt hast?

Ich habe mir jetzt einen abgebrochen, und folgendes probiert, aber das funktoniert nicht:

attr Presence_GTAG_collect userReadings Batterie, Device_Battery:state.* {if ( ReadingsNum("Presence_GTAG_collect","Batterie","NA") < 30) {fhem("setreading Presence_GTAG_collect Device_Battery low")} else {fhem("setreading Presence_GTAG_collect Device_Battery ok")}}

Danke !
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 06 Oktober 2016, 17:19:28
Also um ehrlich zu sein ist das kein Userreading sondern Readings die durch eine Funktion gesetzt werden.
Wie das mit Userreadings geht müsste ich auch erst schauen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jamo am 06 Oktober 2016, 17:24:14
OK, ich denke Du willst das gleiche erreichen wie ich, nämlich das bei einem bestimmten % batterie-level das Reading 'device_battery' auf 'low' gesetzt wird. Wenn das elegant über eine Funktion geht ist das auch prima für mich :-)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 06 Oktober 2016, 17:31:54
Ich denke es ist besser wenn Du auf jemanden wartest der weiß wie das mit dem userReading richtig geht.
Grund ist das meine Funktion das macht was das hier beschriebene bash Script macht.
Ich rufe in meiner Funktion das Toll gatttool auf und lese den Wert aus der dann umgerechnet wird. Danach setze ich das Reading mit dem Prozentwert und das Reading mit ok oder Low dessen Wert ich vorher noch bestimme.
Das ganze lasse ich nonBlocking arbeiten. Ist also Recht komplex.

Wenn Bedarf besteht kann ich alles gerne hier einstellen.


Grüße
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 08 Oktober 2016, 01:53:31
Heute ist mir gleiches aufgefallen:
Zitat von: Muwe am 29 Juli 2016, 16:00:11
Hallo allerseits

erstmal vielen Dank für Eure tolle Arbeit.

Mithilfe dieses Forums habe ich 2 G-tags erfolgreich in FHEM (Jessie auf Raspberry 3) eingebunden.
Die beiden G-Tags werden gefunden:
pi@raspberrypi:~ $ sudo hcitool lescan
LE Scan ...
7C:2F:80:A1:2F:06 (unknown)
7C:2F:80:A1:2F:06 Gigaset G-tag
7C:2F:80:AD:C3:86 (unknown)
7C:2F:80:AD:C3:86 Gigaset G-tag

Lepresenced läuft ohne Fehler, in FHEM wird die Anwesenheit und Abwesenheit korrekt angezeigt.

Leider laufen in den Logdateien /var/log/syslog und /var/log/kernel im Sekundentakt folgende Meldungen auf:

Jul 29 15:08:11 raspberrypi kernel: [ 4905.634211] bt_err_ratelimited: 1 callbacks suppressed
Jul 29 15:08:11 raspberrypi kernel: [ 4905.634231] Bluetooth: hci0 advertising data length corrected
Jul 29 15:08:12 raspberrypi kernel: [ 4906.647350] Bluetooth: hci0 advertising data length corrected
Jul 29 15:08:13 raspberrypi kernel: [ 4907.532081] Bluetooth: hci0 advertising data length corrected
Jul 29 15:08:13 raspberrypi kernel: [ 4907.655564] Bluetooth: hci0 advertising data length corrected
...

Wobei der Befehl "hcitool lescan" genau 2 Meldungen in den Logdateien erzeugt.
Bei "hcitool --duplicates" werden dann fortlaufend Meldungen generiert.

Leider habe ich bisher keine Möglichkeiten gefunden diese Meldungen abzustellen bzw. zu unterdrücken.

Habt Ihr vielleicht eine Idee ?

Hat jemand dazu mittlerweile eine Idee?

Da kommen ganz schön viele Einträge zusammen... ob das so gut ist für ne SD?
Könnte das mal bitte jemand an seinem Raspi checken, ob es bei Ihm genauso ist?
sudo nano /var/log/syslog

Vielen Dank!
SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 08 Oktober 2016, 03:32:43
@SouZa: Lies mal #684


Gesendet von iPhone mit Tapatalk Pro
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stoxx am 09 Oktober 2016, 14:44:47
Hi CoolTux,

ZitatWenn Bedarf besteht kann ich alles gerne hier einstellen.

Also mich würde das sehr interessieren.. Auch wie Du das nonBlocking gemacht hast..

Grüße
stoxx
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 09 Oktober 2016, 14:55:23
Zitat von: stoxx am 09 Oktober 2016, 14:44:47
Hi CoolTux,

Also mich würde das sehr interessieren.. Auch wie Du das nonBlocking gemacht hast..

Grüße
stoxx

Ich kann den Code heute Abend oder Morgen hier gerne zur Verfügung stellen, inklusive kleiner Anleitung.

Grüße
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 09 Oktober 2016, 18:38:11
Ich habe mir eine kleine Sub geschrieben. In der kann ich blockierende Systemkommandos aufrufen und diese werden dann NonBlocking ausgeführt.

99_myUtils_SystemCommands.pm

package main;

use strict;
use warnings;
use POSIX;
use Blocking;



sub myUtils_SystemCommands_Initialize($$) {

  my ($hash) = @_;

}

sub systemCommand($$) {

    my ($name,$command) = @_;
    my $hash = $defs{$name};
   
    Log3 $name, 4, "(Sub systemCommand - $name) - Starte Subroutine systemCommand";
   
   
    if( lc $name eq 'notifycontrolwlan0'
            || lc $name eq 'notifyfirewall_isabelhandy'
    || lc $command eq 'gtagbattery') {
       
        BlockingKill($hash->{helper}{RUNNING_PID}) if(defined($hash->{helper}{RUNNING_PID}));

        $hash->{helper}{RUNNING_PID} = BlockingCall("systemCommand_Run", $name."|".$command, "systemCommand_Done", 60, "systemCommand_Aborted", $hash) unless(exists($hash->{helper}{RUNNING_PID}));
        Log3 $name, 4, "(Sub systemCommand - $name) - Starte Blocking Call";
    }
}

sub systemCommand_Run($) {

    my ($string) = @_;
    my ( $name, $command ) = split("\\|", $string);
    my $state;
   
    Log3 $name, 4, "(Sub systemCommand - $name) - Führe Systemkommando im nonBlocking Mode aus: $command";
   
   
    #####################################
    ### Wlan0 auf proxy01 #####
    if( $name eq "notifyControlWlan0" ) {
        Log3 $name, 4, "(Sub systemCommand - $name) - Starte $name";
       
        if( $command eq "inet up" ) {
            qx(ssh proxy01 'sudo /sbin/ifup wlan0');
            Log3 $name, 3, "(Sub systemCommand - $name) - wlan0 wird gestartet";
        }
   
        elsif( $command eq "inet down" ) {
            qx(ssh proxy01 'sudo /sbin/ifdown wlan0');
            Log3 $name, 3, "(Sub systemCommand - $name) - wlan0 wird beendet";
        }
   
        elsif( $command eq "inet reconnect" ) {
            qx(ssh proxy01 'sudo /sbin/ifdown wlan0');
            sleep(2);
            qx(ssh proxy01 'sudo /sbin/ifup wlan0');
            Log3 $name, 3, "(Sub systemCommand - $name) - wlan0 wird neu gestartet";
        }
       
        ### Check is wlan0 alive
        $state = qx(ssh proxy01 'cat /sys/class/net/wlan0/carrier');
        Log3 $name, 3, "(Sub systemCommand - $name) - Check is wlan0 alive";
    }
   
    #######################################
    #### Firewall Skripte auf proxy01 ###
    elsif( $name =~ /notifyFirewall/ ) {
       
        Log3 $name, 4, "(Sub systemCommand - $name) - Starte $name";
       
       
        if ( $command eq "erlaubt" ) {
       
            while ( qx(ps ax | grep -v grep | grep iptables) ) {
                Log3 $name, 4, "(Sub systemCommand - $name) - iptables noch aktiv, wait 0.5s for new check";
                sleep 0.5;
            }
           
            $state = qx(ssh proxy01 'sudo /etc/iptables/rules.scripts/isabel_handy_tablet.sh allow') if( $name eq "notifyFirewall_IsabelHandy" );
            Log3 $name, 3, "(Sub systemCommand - $name) - Zugriff erlaubt für $name";
        }
   
        elsif( $command eq "verboten" ) {
           
            while ( qx(ps ax | grep -v grep | grep iptables) ) {
                Log3 $name, 3, "(Sub systemCommand - $name) - iptables noch aktiv, wait 0.5s for new check";
                sleep 0.5;
            }
       
            $state = qx(ssh proxy01 'sudo /etc/iptables/rules.scripts/isabel_handy_tablet.sh deny') if( $name eq "notifyFirewall_IsabelHandy" );
            Log3 $name, 3, "(Sub systemCommand - $name) - Zugriff verboten für $name";
        }
    }
   
    ##########################################
    #### G-Tag Batterie Status ############### 
    elsif( $command eq "gtagbattery" ) {
       
        my %btmac = (
            notifyPresenceLocationIsabel => '12:34:56:78:90:F8',
            notifyPresenceLocationSteven => '12:34:56:78:90:61',
        );
       
        while ( qx(ps ax | grep -v grep | grep gatttool) ) {
            Log3 $name, 4, "(Sub systemCommand - $name) - gatttool noch aktiv, wait 0.5s for new check";
            sleep 0.5;
        }
       
        $state = qx(gatttool -b $btmac{$name} --char-read --handle=0x001b);
        Log3 $name, 3, "(Sub systemCommand - $name) - Rufe Batteriestatus vom GTag ab. MAC: $btmac{$name}";
    }
   
   
    #################################################
    #### Weiterverarbeitung der Rückgabewerte ######
    Log3 $name, 4, "(Sub systemCommand - $name) - Rückgabe an Auswertungsprogramm beginnt Name: $name, Command: $command, State: $state";
    $state = encode_base64($state,"");
    return "$name|$command|$state";
}

sub systemCommand_Done($) {

    my ($string) = @_;
    my @a = split("\\|",$string);
    my $hash = $defs{$a[0]};
    my $name = $hash->{NAME};
    my $command = $a[1];
    my $state = $a[2];
   
   
    delete($hash->{helper}{RUNNING_PID});
   
    Log3 $name, 3, "(Sub systemCommand_Done - $name) - Der Helper ist diabled. Daher wird hier abgebrochen" if($hash->{helper}{DISABLED});
    return if($hash->{helper}{DISABLED});
   
   
    $state = decode_base64($state);
   
    Log3 $name, 4, "(Sub systemCommand_Done - $name) - State gleich: $state und command: $command";
    Log3 $name, 3, "(Sub systemCommand_Done - $name) - Abschluss vom Systemkommandoaufruf im nonBlocking Mode. Auswertungsteil beginnt.";
   
   
   
    ##############################################################
    #########   Auswertungsteil   ############
   
   
    ####################################################
    ##### wlan0 stop, start, restart, status
    if( ($name eq "notifyControlWlan0") and ($state) ) {
   
            fhem "set buttonProxy01Wlan0Status $state";
    }

    ####################################################
    ####### Firewall Skripte auf proxy01 ###########
    elsif( ($name =~ /notifyFirewall/) and (!$state) ) {
   
            fhem "set buttonSshInetFWstatus fehler" if( $name eq "notifyFirewall_IsabelHandy" )
    }
   
    ####################################################
    #### G-Tag Batterie Status ###############
    elsif( ($name =~ /notifyPresenceLocation/) and ($state) ) {
   
        my %DEVICE = (
            notifyPresenceLocationIsabel => 'presenceIsabel',
            notifyPresenceLocationSteven => 'presenceSteven',
        );
       
        my $dhash = $defs{$DEVICE{$name}};
        my $dname = $dhash->{NAME};
       
        my @blevel = split(": ",$state);
        my $blevel = hex("0x${blevel[1]}");
       
        readingsBeginUpdate($dhash);
        readingsBulkUpdate($dhash,"device_batteryLevel",$blevel);
       
        if( $blevel < 20 ) {
            readingsBulkUpdate($dhash,"device_battery","low");
        } else {
            readingsBulkUpdate($dhash,"device_battery","ok");
        }
       
        readingsEndUpdate($dhash,1);
    }
       
}

sub systemCommand_Aborted($) {

    my ($hash) = @_;
    my $name = $hash->{NAME};

    delete($hash->{helper}{RUNNING_PID});
    Log3 $name, 3, "($name) - The BlockingCall Process terminated unexpectedly. Timedout";

}

1;


Ich habe hier mal versucht nur Auszüge darzustellen, damit es nicht zu viel wird.
Bleiben wir bei den G-Tags. Werden die G-Tags vom jeweiligen Presence Modul erkannt, wird ein Notify geschalten welches unter anderem dann auch die sub systemCommand($$) auf ruft. Hier werden zwei Parameter übergeben.
Einmal der Device name des Device welches die Sub aufruft. Also das Notify in diesem Fall und ein Zusatzparameter das er weiß was genau er machen soll.
Der Devicename ist sehr wichtig und wird über die gesamte Prozedure über alle Subs für das NonBlocking transportiert.

systemCommand("notifyPresenceLocationIsabel","gtagbattery")


Da wir nun wissen welcher "Menuepunkt" gewählt wurde können wir das in den entsprechenden Subs weiter verarbeiten.

sub systemCommand($$) hier starten wir rein und es wird geschaut ob wir auch kein Blödsinn eingegeben haben. Danach wird ein paralleler Thread gestartet

$hash->{helper}{RUNNING_PID} = BlockingCall("systemCommand_Run", $name."|".$command, "systemCommand_Done", 60, "systemCommand_Aborted", $hash) unless(exists($hash->{helper}{RUNNING_PID}));

Im abgetrennten Thread wird nun der blockierende Systembefehl ausgeführt

$state = qx(gatttool -b $btmac{$name} --char-read --handle=0x001b);

Da ich bemerkt habe wenn 3 Leute gleichzeitig nach Hause kommen und gatttool dreimal aufgerufen wird das es zu Problemen kommt, prüfe ich ob gatttool läuft und wenn ja wird eine Warteschleife generiert.

while ( qx(ps ax | grep -v grep | grep gatttool) ) {
            Log3 $name, 4, "(Sub systemCommand - $name) - gatttool noch aktiv, wait 0.5s for new check";
            sleep 0.5;
        }


Danach erfolgt die Übergabe zurück in den FHEM Hauptthread und dann werden dort die Readings gesetzt


    ####################################################
    #### G-Tag Batterie Status ###############
    elsif( ($name =~ /notifyPresenceLocation/) and ($state) ) {
   
        my %DEVICE = (
            notifyPresenceLocationIsabel => 'presenceIsabel',
            notifyPresenceLocationSteven => 'presenceSteven',
        );
       
        my $dhash = $defs{$DEVICE{$name}};
        my $dname = $dhash->{NAME};
       
        my @blevel = split(": ",$state);
        my $blevel = hex("0x${blevel[1]}");
       
        readingsBeginUpdate($dhash);
        readingsBulkUpdate($dhash,"device_batteryLevel",$blevel);
       
        if( $blevel < 20 ) {
            readingsBulkUpdate($dhash,"device_battery","low");
        } else {
            readingsBulkUpdate($dhash,"device_battery","ok");
        }
       
        readingsEndUpdate($dhash,1);
    }


Ich gebe zu es ist nicht leicht, aber ich habe sehr viele solcher Aufrufe gerade was das ausführen von Shellskripten auf entfernten Rechnern an geht, daher der einmalig größere Aufwand.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stoxx am 09 Oktober 2016, 20:15:05
Wow, danke für die Anleitung - elegante Lösung!
Das werde ich in den nächsten Tagen mal auf meinem Testsystem ausprobieren.

Grüße
stoxx
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PsychoD am 10 Oktober 2016, 00:25:08
Guten Abend zusammen,

ich hatte schon gesondert geschrieben, aber vielleicht ist hier doch der bessere Platz:
Ich habe meinen RPI2 mit dem CSL Bluetooth-LE Stick ausgerüstet, und verwende ein G-Tag zur Anwesenheitserkennung wie im Wiki beschrieben. Das klappt auch prinzipiell alles wunderbar. Der Tag bleibt auch zuverlässig anwesend. Wenn ich kurz abwesend bin, wird die erneute Anwesenheit super erkannt. Wenn ich aber einige Zeit abwesend war, und dann wiederkomme, wird der Tag jedoch nicht mehr erkannt. Führe ich einen Reboot vom Pi aus oder starte lepresenced neu, wird sie sofort wieder erkannt. Interessanterweise wird sie auch dann wieder erkannt, wenn ich den Batteriestatus wie im Wiki beschrieben mit gatttool prüfe. Es wirkt auf mich fast, als würd sich der BT-Stick schlafen legen oder so...

Bin dankbar für jeden Tipp!!!

Danke & Gruß
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 10 Oktober 2016, 09:02:18
@PsychoD: Problem scheint ja rekonstruierbar zu sein. Poste doch mal ein Log mit LOG_DEBUG vom Zeitpunkt des Auftretens.

Ist der G-Tag mit irgenwas (App etc.) gepairt?


Gesendet von iPhone mit Tapatalk Pro
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PsychoD am 10 Oktober 2016, 10:38:23
Zitat von: PatrickR am 10 Oktober 2016, 09:02:18
@PsychoD: Problem scheint ja rekonstruierbar zu sein. Poste doch mal ein Log mit LOG_DEBUG vom Zeitpunkt des Auftretens.

Ist der G-Tag mit irgenwas (App etc.) gepairt?


Gesendet von iPhone mit Tapatalk Pro

Hallo Patrick,
Danke für den Tip! Ich hab das Debug-log mal eingeschaltet, und werde heute Abend, wenn ich nach Hause komme und die Erkennung vermutlich nicht funktioniert hat, berichten.

Aktuell scheint alles OK:

Oct 10 10:34:44 osmc lepresenced[3709]: [tid:0] main: Sending update for mac address xx:xx:xx:xx:xx:xx, max age: 15, result: absence.


Ich hatte das Tag mal mit der iPhone App gepairt, das iPhone ist jedoch seit einigen Tagen nicht zuhause, sollte also eigentlich nicht reinfunken können.

Viele Grüße
Psy
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PsychoD am 10 Oktober 2016, 23:19:29
Hallo nochmal,
aus dem Log werde ich leider nicht schlau. Das Tag lag seit ca. 22:10 Uhr unverändert an der gleichen Stelle in der Wohnung, wurde aber mal wieder nicht erkannt. Hier mal der relevante Teil aus dem Log:

Oct 10 22:58:01 osmc CRON[27530]: pam_unix(cron:session): session closed for user root
Oct 10 22:58:14 osmc lepresenced[3709]: [tid:0] main: Sending update for mac address xx:xx:xx:xx:xx:xx, max age: 15, result: absence.
Oct 10 22:58:29 osmc lepresenced[3709]: [tid:0] main: Sending update for mac address xx:xx:xx:xx:xx:xx, max age: 15, result: absence.
Oct 10 22:58:44 osmc lepresenced[3709]: [tid:0] main: Sending update for mac address xx:xx:xx:xx:xx:xx, max age: 15, result: absence.
Oct 10 22:58:59 osmc lepresenced[3709]: [tid:0] main: Sending update for mac address xx:xx:xx:xx:xx:xx, max age: 15, result: absence.
Oct 10 22:59:01 osmc CRON[27557]: pam_unix(cron:session): session opened for user root by (uid=0)
Oct 10 22:59:01 osmc CRON[27558]: (root) CMD (/opt/fhem/fhem-watchdog.sh)
Oct 10 22:59:01 osmc CRON[27557]: pam_unix(cron:session): session closed for user root
Oct 10 22:59:14 osmc lepresenced[3709]: [tid:0] main: Sending update for mac address xx:xx:xx:xx:xx:xx, max age: 15, result: absence.
Oct 10 22:59:29 osmc lepresenced[3709]: [tid:0] main: Sending update for mac address xx:xx:xx:xx:xx:xx, max age: 15, result: absence.
Oct 10 22:59:44 osmc lepresenced[3709]: [tid:0] main: Sending update for mac address xx:xx:xx:xx:xx:xx, max age: 15, result: absence.
Oct 10 22:59:59 osmc lepresenced[3709]: [tid:0] main: Sending update for mac address xx:xx:xx:xx:xx:xx, max age: 15, result: absence.
Oct 10 23:00:01 osmc CRON[27591]: pam_unix(cron:session): session opened for user root by (uid=0)
Oct 10 23:00:01 osmc CRON[27592]: pam_unix(cron:session): session opened for user root by (uid=0)
Oct 10 23:00:01 osmc CRON[27593]: (root) CMD (/opt/fhem/fhem-watchdog.sh)
Oct 10 23:00:01 osmc CRON[27594]: (root) CMD (/opt/fhem/script/gtagbattery)
Oct 10 23:00:01 osmc sudo[27604]: root : TTY=unknown ; PWD=/root ; USER=root ; COMMAND=/home/osmc/bluez-5.42/attrib/gatttool -b xx:xx:xx:xx:xx:xx --char-read --handle=0x001b
Oct 10 23:00:01 osmc sudo[27604]: pam_unix(sudo:session): session opened for user root by (uid=0)
Oct 10 23:00:01 osmc CRON[27592]: pam_unix(cron:session): session closed for user root
Oct 10 23:00:02 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:03 osmc lepresenced[3709]: [tid:1] main::bluetooth_thread: Received unknown output: 'Disable scan failed: Input/output error'!
Oct 10 23:00:03 osmc lepresenced[3709]: [tid:1] main::bluetooth_thread: hcitool exited, retrying...
Oct 10 23:00:04 osmc sudo[27604]: pam_unix(sudo:session): session closed for user root
Oct 10 23:00:04 osmc lepresenced[3709]: [tid:1] main::bluetooth_thread: Received 'LE Scan ...'.
Oct 10 23:00:04 osmc CRON[27591]: pam_unix(cron:session): session closed for user root
Oct 10 23:00:06 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:08 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:09 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:10 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:11 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:12 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:14 osmc lepresenced[3709]: [tid:0] main: Sending update for mac address xx:xx:xx:xx:xx:xx, age: 2, max age: 15, result: present.
Oct 10 23:00:14 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:14 osmc lepresenced[3709]: [tid:0] main::handle_command: Received query update for mac address xx:xx:xx:xx:xx:xx, interval: 120 by client 127.0.0.1:36178.
Oct 10 23:00:14 osmc lepresenced[3709]: [tid:0] main: Sending update for mac address xx:xx:xx:xx:xx:xx, age: 0, max age: 120, result: present.
Oct 10 23:00:15 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:16 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:18 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:20 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:21 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:22 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:23 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:24 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:25 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:27 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:28 osmc kernel: Bluetooth: hci0 advertising data length corrected
Oct 10 23:00:29 osmc kernel: Bluetooth: hci0 advertising data length corrected


Wie man sieht, hab ich im presence einen absent-Interval von 15 Sekunden eingestellt. Obwohl das Tag da ist, wird es aber nicht erkannt (22:58:14 - 23:00:14). Erst nachdem um 23:00:01 via CRON das gtagbattery script gatttool verwendet, ist der Tag auf einmal present, und bleibt es interessanterweise auch, bis er wieder einige Zeit außer Reichweite ist. Interessant ist vielleicht diese Stelle:

Oct 10 23:00:03 osmc lepresenced[3709]: [tid:1] main::bluetooth_thread: Received unknown output: 'Disable scan failed: Input/output error'!
Oct 10 23:00:03 osmc lepresenced[3709]: [tid:1] main::bluetooth_thread: hcitool exited, retrying...
Oct 10 23:00:04 osmc sudo[27604]: pam_unix(sudo:session): session closed for user root
Oct 10 23:00:04 osmc lepresenced[3709]: [tid:1] main::bluetooth_thread: Received 'LE Scan ...'.


Ratlos bin ich, was mir die "data length corrected" Einträge während der Anwesenheit des Tags sagen wollen...

Bin dankbar für jeden Tipp!

Viele Grüße
Psy
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 11 Oktober 2016, 08:49:58
Löse das Pairing mal auf. Nach meinen Erfahrungen senden die G-Tags keine bzw. deutlich weniger Beacons sobald sie in der App registriert sind.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PsychoD am 11 Oktober 2016, 10:05:21
Danke Patrick! Kann ich versuchen, dauert aber ein paar Tage (Mein iPhone ist aktuell in Reparatur). Kann ich den G-Tag vielleicht irgendwie auf Werkseinstellungen zurücksetzen? Ich vermute aber das Problem woanders. Wenn ich das Batteriescript nicht starte (oder neustarte etc), wird der Tag auch über Stunden nicht erkannt. Nach dem Neustart jedoch umgehend.

Mir ist aufgefallen, dass ich lepresenced ohne "-d" Flag gestartet hatte, also nicht im Daemon-mode. Das hab ich nun korrigiert, aber kann das die Ursache sein? Ich werde es erst heute Abend prüfen können, wenn ich von der Arbeit zurück bin.

Viele Grüße
Psy
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 11 Oktober 2016, 20:56:03
Zitat von: PsychoD am 11 Oktober 2016, 10:05:21
Danke Patrick! Kann ich versuchen, dauert aber ein paar Tage (Mein iPhone ist aktuell in Reparatur). Kann ich den G-Tag vielleicht irgendwie auf Werkseinstellungen zurücksetzen?
Um ehrlich zu sein, nie gemacht. Hatte gepairt, festgestellt, dass der Tag nicht mehr sendet und es wieder aus der App gelöscht.

Zitat von: PsychoD am 11 Oktober 2016, 10:05:21
Ich vermute aber das Problem woanders. Wenn ich das Batteriescript nicht starte (oder neustarte etc), wird der Tag auch über Stunden nicht erkannt. Nach dem Neustart jedoch umgehend.
Wie gesagt. Meine Erfahrung ist, dass der G-Tag die Klappe hält, sobald er in der App hinzugefügt wurde und wieder wie gewohnt losplappert, wenn er gelöscht ist. Möglicherweise verleitet ihn das Batterieskript dazu, sich nochmal zu melden. Ist aber Spekulation. Daher bitte Pairing auflösen und berichten :)

Ich gebe aber auch ehrlich zu, dass ich mir aus dem Fehlerbild keinen Reim machen kann. Du bist da sozusagen Fehler-Pionier. Leute, die funktionierende Systeme durch Ankucken in einen Fehlerzustand bringen können, sind in der Wirtschaft übrigens sehr gefragt :)

Zitat von: PsychoD am 11 Oktober 2016, 10:05:21
Mir ist aufgefallen, dass ich lepresenced ohne "-d" Flag gestartet hatte, also nicht im Daemon-mode. Das hab ich nun korrigiert, aber kann das die Ursache sein? Ich werde es erst heute Abend prüfen können, wenn ich von der Arbeit zurück bin.
Letztlich hat das keine Auswirkung auf die Funktion, solange der Prozess läuft (siehst Du mit ps oder daran, dass er das Syslog vollschreibt).

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PsychoD am 11 Oktober 2016, 23:04:50
Zitat von: PatrickR am 11 Oktober 2016, 20:56:03
Um ehrlich zu sein, nie gemacht. Hatte gepairt, festgestellt, dass der Tag nicht mehr sendet und es wieder aus der App gelöscht.
Wie gesagt. Meine Erfahrung ist, dass der G-Tag die Klappe hält, sobald er in der App hinzugefügt wurde und wieder wie gewohnt losplappert, wenn er gelöscht ist. Möglicherweise verleitet ihn das Batterieskript dazu, sich nochmal zu melden. Ist aber Spekulation. Daher bitte Pairing auflösen und berichten :)

OK, Danke! Werde ich machen, ich bekomme in ca. 3 Tagen hoffentlich mein iPhone zurück, dann kann ich das Pairing löschen und werde berichten.

Zitat von: PatrickR am 11 Oktober 2016, 20:56:03
Ich gebe aber auch ehrlich zu, dass ich mir aus dem Fehlerbild keinen Reim machen kann. Du bist da sozusagen Fehler-Pionier. Leute, die funktionierende Systeme durch Ankucken in einen Fehlerzustand bringen können, sind in der Wirtschaft übrigens sehr gefragt :)
Letztlich hat das keine Auswirkung auf die Funktion, solange der Prozess läuft (siehst Du mit ps oder daran, dass er das Syslog vollschreibt).

Na da freue ich mich aber über dieses seltene Talent!  ;D ;D ;D Ich glaube ich habe allerdings nichtmal geguckt - einfach nur dem Wiki gefolgt ;)

Ich habe nun rausgefunden, dass der Tag bei einem "sudo hcitool lescan" auch gefunden wird, und anschließend auch wieder im FHEM auftaucht.

Es wirkt auf mich alles, als würde das Bluetooth Modul am RPI irgendwie schlafen gehen oder so - finde aber keine Infos dazu, dass sowas möglich wäre...

Bleibe dran und freue mich über Tipps!
Viele Grüße
Psy
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Papaloewe am 12 Oktober 2016, 09:01:58
Ich möchte mal kurz fragen, wie die Erfahrungen sind mit den verschiedenen TAG-Modellen.

Ich suche noch etwas im Preissegment unter 20€, möglichst ohne Knopf und wasserdicht (für den Hund) und das Teil soll auch noch eine vernünftige Reichweite haben.

Was könnt ihr mir empfehlen?

Vielen Dank.

MfG
Thomas
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Ellert am 12 Oktober 2016, 09:12:18
G-Tag läuft bei mir seit  8 Monaten ohne Fehler. Der Batterielevel hat sich in der Zeit nicht geändert und liegt bei 100% und 94%. Die nominale Reichweite liegt bei 10 m, mit sind noch keine Tags mit grösserer Reichweite untergekommen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 12 Oktober 2016, 11:23:25
Habe auch mehrere Tags probiert und der G-Tag ist eindeutig bisher der Beste.
Sowohl Batterielaufzeit als auch Empfang sind sehr gut.

Allerdings haben auch die (für mich) Nachteile:

Gruß
Dan

EDIT: Im 3er-Pack gibt es die gerade bei A.... für 38,60€, also nicht einmal 13€ pro Stück.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 12 Oktober 2016, 19:55:21
Habe auch seit ca. 2 Wochen drei Gtags hier.
Musste allerdings schon bei zweien die Batterien wechseln!
Wurden vom Pi und von der App nicht mehr erkannt.

Also aus meiner Erfahrung bis jetzt, sind die nicht so toll...

Bis denn
SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 12 Oktober 2016, 20:50:01
Hallo in die Runde!

ich habe auch seit einigen Wochen 2 G-Tags hier und betreibe diese am BT des Rasperry Pi 3

Anfangs war das auch alles echt zuverlässig.
Ich habe mir dazu ein FileLog gemacht, und einen Plot eingerichtet um es schnell grafisch darzustellen ob es Ausfälle gab. Anfangs war wie gesagt alles OK.
Irgendwann später (ich weiss aber nicht wieviel später, Tage oder Wochen) habe ich noch das mit dem BatterieStatus irgendwo gelesen und eingerichtet.
Ich kann aber nicht sagen, dass sich das negativ ausgewirkt hätte.

Jetzt allerdings hat sich das geändert und ich weiss nicht wieso.
Ich habe seitdem ich das mit den G-Tags mache keine Änderungen am OS des Pi unternommen, habe lediglich ein paar Dummys und Notify´s definiert, aber am G-Tag Szenario habe ich nichts geändert.

Hier das Problem...
Ich bin ja aktuell daheim, der G-Tag liegt auf dem Tisch, und FHEM meint, ich bin abwesend.

Ich habe es wiefolgt in FHEM eingebunden:

define Holger_GtAG PRESENCE lan-bluetooth 7C:2F:XX:XX:XX:XX 127.0.0.1:5333 30
attr Holger_GtAG absenceThreshold 2
attr Holger_GtAG alarmDevice Sensor
attr Holger_GtAG alarmSettings alarm0,alarm2,alarm3,alarm4,alarm5,alarm6,alarm7,|Holger_GtAG:present|Holger GtAG anwesend|off
attr Holger_GtAG devStateIcon present:rc_GREEN absent:rc_RED maybe.*:rc_YELLOW
attr Holger_GtAG event-on-change-reading presence,state
attr Holger_GtAG group HolgerScript
attr Holger_GtAG presenceThreshold 1
attr Holger_GtAG room Anwesenheit
attr Holger_GtAG sortby 1
attr Holger_GtAG verbose 5


Auch habe ich ein Batterie Script im Hintergrund per CRON.

Die Tags  sind NIE mit einer App gekoppelt gewesen.

Immer wieder geht mein G-Tag Status auf absent.
>>> Sobald ich aber dann das BatterieScript von Hand auf CMD starte kommt auch der present Status wieder.

Ich habe auch schon einige Beiträge hier gelesen, aber ich sehe keinen möglichen Grund für dieses Verhalten meiner Anwesenheitserkennung. Oder habe ich was überlesen?

Ich habe heute bei der Untersuchung der Problematik aber mal was anders gesehen...
hcitool lescan
Set scan parameters failed: Input/output error

Danach musste ich ein
hciconfig hci0 down
hciconfig hci0 up

machen, und dann hat auch der lescan wieder funktioniert.
Aber trotzdem geht der Status das immer absent, present.

Und jetzt noch eins oben drauf...
Wenn ich in FHEM absent bin, kann ich den lescan auf CMD ausführen und er finden den G-Tag. Und erst wenn ich per ctrl+c abbreche, geht auch der Status in FHEM auf present.

Bedeutet, batterie und manuelles hcitool lescan triggern irgendwas das den G-Tag findet.


Kann mir jemand helfen?
Ich suche nach einer nahezu 100%ig zuverlässigen Methode per g_tag die Anwesenheit zu prüfen. Das ist deshalb wichtig weil das auch Auswirkung auf meine Alarmanlage hat.
Daher wäre es mir wirklich sehr wichtig.

Danke Euch
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 12 Oktober 2016, 21:08:40
Mach mal nen Log mit LOG_DEBUG.

/Edit: Werde das Gefühl nicht los, dass die Batterieskripte sich irgendwie mit lepresenced ins Gehege kommen. lepresenced merkt zwar, wenn es Probleme mit dem Scan gibt und startet den Scan neu bzw. resetted das Bluetooth-Interface aber ggf. reicht das bei kurzen Intervallen nicht...

Gesendet von iPad mit Tapatalk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 12 Oktober 2016, 21:46:21
Ja, das läuft: (nicht wunder, aber ich habe vorhin mal durchgestartet)
root@fhempi3:/var/log# ps -ef | grep lepresenced
root       760     1  0 20:54 ?        00:00:03 /usr/bin/perl /opt/fhem/script/lepresenced --loglevel LOG_EMERG -d
root      1255   888  0 21:26 pts/0    00:00:00 grep lepresenced
root@fhempi3:/var/log#

Ich habe das in der rc.local stehen:
# Start lepresenced
/opt/fhem/script/lepresenced --loglevel LOG_EMERG -d

Ich habe den Prozess gekillt, und dann manuell auf CMD so gestartet:

/opt/fhem/script/lepresenced --loglevel LOG_DEBUG

Ausgaben kommen nicht, ein Logfile habe ich auch nicht gefunden, und das was ich im syslog sehe ist:

root@fhempi3:~tail -f /var/log/syslognt
Oct 12 21:40:50 fhempi3 kernel: [ 2815.523704] Bluetooth: hci0 advertising data length corrected
Oct 12 21:40:50 fhempi3 kernel: [ 2815.533175] Bluetooth: hci0 advertising data length corrected
Oct 12 21:40:51 fhempi3 kernel: [ 2816.534250] Bluetooth: hci0 advertising data length corrected
Oct 12 21:40:52 fhempi3 kernel: [ 2817.536176] Bluetooth: hci0 advertising data length corrected
Oct 12 21:40:52 fhempi3 kernel: [ 2817.548744] Bluetooth: hci0 advertising data length corrected
Oct 12 21:40:53 fhempi3 kernel: [ 2818.546527] Bluetooth: hci0 advertising data length corrected
Oct 12 21:41:01 fhempi3 lepresenced[1472]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 8, max age: 30, result: present.
Oct 12 21:41:01 fhempi3 lepresenced[1472]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 9, max age: 30, result: present.
Oct 12 21:41:05 fhempi3 kernel: [ 2830.598494] Bluetooth: hci0 advertising data length corrected
Oct 12 21:41:06 fhempi3 kernel: [ 2831.605690] Bluetooth: hci0 advertising data length corrected
Oct 12 21:41:31 fhempi3 lepresenced[1472]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 25, max age: 30, result: present.
Oct 12 21:41:31 fhempi3 lepresenced[1472]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 26, max age: 30, result: present.
Oct 12 21:41:31 fhempi3 rsyslogd-2007: action 'action 17' suspended, next retry is Wed Oct 12 21:43:01 2016 [try http://www.rsyslog.com/e/2007 ]
Oct 12 21:42:01 fhempi3 lepresenced[1472]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, max age: 30, result: absence.
Oct 12 21:42:01 fhempi3 lepresenced[1472]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, max age: 30, result: absence.
Oct 12 21:42:31 fhempi3 lepresenced[1472]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, max age: 30, result: absence.
Oct 12 21:42:31 fhempi3 lepresenced[1472]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, max age: 30, result: absence.
Oct 12 21:43:01 fhempi3 lepresenced[1472]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, max age: 30, result: absence.
Oct 12 21:43:01 fhempi3 lepresenced[1472]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, max age: 30, result: absence.


Gibt es da noch irgendwo ein Logfile das ich nicht finde??

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 12 Oktober 2016, 21:54:25
Hi!

lepresenced loggt ins syslog, wie sich das gehört. Du bist also richtig.

Im Log sieht man ganz gut, dass keine Beacons mehr ankommen.

Für den 'ff'-Tag wird um 21:41Uhr das letzte Update gesendet. Da ist es schon kurz vor 12, sprich 25 Sekunden ist das letzte Beacon schon her, 30 wären erlaubt. Um 21:42 Uhr ist es dann soweit und das G-Tag-Sterben geht los.

Kannst Du mal mitloggen, wann das Batterieskript aufgerufen wird. Das geht bspw. mit:

logger -t gtagbattery Hole Batteriewerte.
*hier dann die Werte holen*
logger -t gtagbattery Fertig.

logger muss natürlich installiert sein.

Dann könnte man im Log gut sehen, ob der Massentod zeitlich in Zusammenhang mit dem Skript steht.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 12 Oktober 2016, 22:03:52
sorry, ich check grad nicht wie das mit dem "logger" gehen soll.
Muss ich das in mein BatterieScript reinpacken?

Da steht aktuell das drinnen.

#!/bin/bash
mytelnetPW="mypassword"
stringZ=$(sudo gatttool -b 7C:2F:YY:XX:XX:XX--char-read --handle=0x001b)
stringZ=${stringZ:33:2}
stringZ=$(echo "$stringZ" | tr a-f A-F)
decimal=$(echo "ibase=16; $stringZ" | bc)
perl /opt/fhem/fhem.pl 7072 $mytelnetPW "setreading Holger_GtAG Batterie $decimal"


Logger ist scheinbar auf dem System

root@fhempi3:~# logger --help

Usage:
logger [options] [<message>]

Options:
-T, --tcp             use TCP only
-d, --udp             use UDP only
-i, --id              log the process ID too
-f, --file <file>     log the contents of this file
-n, --server <name>   write to this remote syslog server
-P, --port <number>   use this UDP port
-p, --priority <prio> mark given message with this priority
     --prio-prefix     look for a prefix on every line read from stdin
-s, --stderr          output message to standard error as well
-t, --tag <tag>       mark every line with this tag
-u, --socket <socket> write to this Unix socket
     --journald[=<file>]  write journald entry

-h, --help     display this help and exit
-V, --version  output version information and exit

For more details see logger(1).

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 12 Oktober 2016, 22:57:10

#!/bin/bash
mytelnetPW="mypassword"
logger -t gtagbattery Hole Batteriewert für Holger_GtAG.
stringZ=$(sudo gatttool -b 7C:2F:YY:XX:XX:XX--char-read --handle=0x001b)
stringZ=${stringZ:33:2}
stringZ=$(echo "$stringZ" | tr a-f A-F)
decimal=$(echo "ibase=16; $stringZ" | bc)
perl /opt/fhem/fhem.pl 7072 $mytelnetPW "setreading Holger_GtAG Batterie $decimal"
logger -t gtagbattery Fertig.


Wie oft rufst Du das Skript eigentlich auf?

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: uelly am 13 Oktober 2016, 06:44:07
Ich habe bisher bei mir mit RPi 3 und 2 G-Tag die Erfahrung gemacht, dass das presence mit Batterie Skript nicht funktioniert... soll heißen, ohne Batterieskript laufen die G-Tag prima, Status wird immer richtig erkannt, startet das battierskript mit dann beginnen auch die Probleme, trotz Anwesenheit werden die G-Tag dann wahllos als Abschnitt gemeldet oder aber das presence Modul bekommt gar keine Verbindung zum G-Tag... weiß nun nicht ob es an meiner Blödheit liegt oder tatsächlich an der Hardware oder oder...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 13 Oktober 2016, 07:00:58
Habe die selbe Beobachtung gemacht. Bei mir kam es immer dann vor wenn mehrere G-Tags zeitgleich abgefragt werden und gatttool doppelt aufgerufen wurde.

Ich arbeite gerade an einem Modul zum abfragen der G-Tags. BTLE_Sensor. Die Frage die sich mir stellt ist, ist es ok wenn die Readings in dem Moduldevice stecken oder sollen sie lieber ins presence Device.
Patrick arbeitet auch an einer Batterie Lösung direkt in lepresenced. Ich mache meine Lösung nicht als Konkurrents sondern um was zum testen bei mir zu haben. Das BTLE_Sensor Modul wird auch einen Pflanzensensor unterstützen.



Grüße
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 13 Oktober 2016, 07:10:49


Zitat von: DeeSPe am 12 Oktober 2016, 11:23:25
Allerdings haben auch die (für mich) Nachteile:

  • lassen sich nicht ausschalten und sind somit für einen optionalen Gäste-Tag, der nur ab und zu benutzt werden soll, nicht geeignet

Ich benutze dafür in fhem das Attribut disable=1

Micky

Gesendet von meinem Toaster.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Ellert am 13 Oktober 2016, 09:39:46
Zitat von: uelly am 13 Oktober 2016, 06:44:07
Ich habe bisher bei mir mit RPi 3 und 2 G-Tag die Erfahrung gemacht, dass das presence mit Batterie Skript nicht funktioniert... soll heißen, ohne Batterieskript laufen die G-Tag prima, Status wird immer richtig erkannt, startet das battierskript mit dann beginnen auch die Probleme, trotz Anwesenheit werden die G-Tag dann wahllos als Abschnitt gemeldet oder aber das presence Modul bekommt gar keine Verbindung zum G-Tag... weiß nun nicht ob es an meiner Blödheit liegt oder tatsächlich an der Hardware oder oder...

Bei mir ist der Batterielevel seit Monaten konstant, deshalb frage ich den Level nur einmal Nachts ab, falls ich anwesend bin, dann stört es nicht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: uelly am 13 Oktober 2016, 09:47:26
Zitat von: CoolTux am 13 Oktober 2016, 07:00:58
Habe die selbe Beobachtung gemacht. Bei mir kam es immer dann vor wenn mehrere G-Tags zeitgleich abgefragt werden und gatttool doppelt aufgerufen wurde.

Ich arbeite gerade an einem Modul zum abfragen der G-Tags. BTLE_Sensor. Die Frage die sich mir stellt ist, ist es ok wenn die Readings in dem Moduldevice stecken oder sollen sie lieber ins presence Device.
Patrick arbeitet auch an einer Batterie Lösung direkt in lepresenced. Ich mache meine Lösung nicht als Konkurrents sondern um was zum testen bei mir zu haben. Das BTLE_Sensor Modul wird auch einen Pflanzensensor unterstützen.



Grüße

Mit wären sie im presence Modul lieber... ich hab das batteriescript erstmal ausgeschaltet und prüfe den Batteriestatus immermal auf Arbeit mit dem Handy (wenn ich das Zuhause tue würde der Tag auf absence gehen)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 13 Oktober 2016, 11:29:48
Hier mal die 2 Module in der Übersicht. Einmal das IODev Modul 10_BTLE.pm und einmal das Sensor Modul 42_BTLESensor.pm mit eingerichtet für den GTag zum Batterie auslesen

Erstmal nur mit dem battery Reading im Device selber. Später kann man über Attribut noch das presence Device einstellen wo dann auch reingeschrieben wird.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 13 Oktober 2016, 20:27:55
Zitat von: PatrickR am 12 Oktober 2016, 22:57:10

#!/bin/bash
mytelnetPW="mypassword"
logger -t gtagbattery Hole Batteriewert für Holger_GtAG.
stringZ=$(sudo gatttool -b 7C:2F:YY:XX:XX:XX--char-read --handle=0x001b)
stringZ=${stringZ:33:2}
stringZ=$(echo "$stringZ" | tr a-f A-F)
decimal=$(echo "ibase=16; $stringZ" | bc)
perl /opt/fhem/fhem.pl 7072 $mytelnetPW "setreading Holger_GtAG Batterie $decimal"
logger -t gtagbattery Fertig.


Wie oft rufst Du das Skript eigentlich auf?

Patrick

Hallo Patrick,
Ich rufe die Batterie-Checks so gescheduled durch CRON auf:

*/30 */2 * * * /opt/fhem/script/Holger_GtAG_Batterie.sh >/dev/null 2>&1
*/30 1-23/2 * * * /opt/fhem/script/Mirjam_GtAG_Batterie.sh >/dev/null 2>&1


Ich weiss nicht genau was ich sagen soll. Aber es läuft jetzt derzeit ziemlich zuverlässig. Also heute!

Was habe ich gestern noch gemacht?!
1)
ich habe mein /var/log in eine RAM Disk verschoben. und zwar so:
cmd>vi /etc/fstab
und diesen Eintrag hinzugefügt:

none        /var/log        tmpfs   size=5M,noatime         00


2)
Ergebnis nach Reboot:

root@fhempi3:~# df -h
Dateisystem              Größe Benutzt Verf. Verw% Eingehängt auf
/dev/root                  30G    5,2G   23G   19% /
devtmpfs                  483M       0  483M    0% /dev
tmpfs                     487M       0  487M    0% /dev/shm
tmpfs                     487M     56M  432M   12% /run
tmpfs                     5,0M    4,0K  5,0M    1% /run/lock
tmpfs                     487M       0  487M    0% /sys/fs/cgroup
none                      5,0M    2,8M  2,3M   55% /var/log
/dev/mmcblk0p1             63M     21M   43M   33% /boot
tmpfs                      98M       0   98M    0% /run/user/0


3) Nachteil:
Ich kann natürlich nichts nachverfolgen sollte ich mal Probleme haben.
Die Logs sind dann entweder schon voll, oder nach nem Reboot weg! Aber dafür entlaste ich meine SD Karte!

4)
Dann habe ich noch ein RasPi Update gemacht.
cmd>sudo apt-get install rpi-update
und dann natürlich
cmd>sudo rpi-update

5)
Sofort danach hatte sich das BT Device besser verhalten. Ich hatte die I/O Error nicht mehr, die G-Tags waren stabil da, und ich habe ein cmd>tail -f auf das syslog gemacht und konnte da die folgenden Messages sehen:
(Ok, das ist von jetzt aktuell)

root@fhempi3:~# tail -f /var/log/syslog | grep lepresenced
Oct 13 20:13:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 2, max age: 30, result: present.
Oct 13 20:13:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:14:09 fhempi3 lepresenced[1036]: [tid:0] main::stats_task: Active clients: 2, known devices: 2 (min/max age: 1/1)
Oct 13 20:14:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 2, max age: 30, result: present.
Oct 13 20:14:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 2, max age: 30, result: present.
Oct 13 20:14:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:14:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:15:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:15:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:15:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:15:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:16:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:16:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:16:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 2, max age: 30, result: present.
Oct 13 20:16:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:17:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 2, max age: 30, result: present.
Oct 13 20:17:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:17:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 2, max age: 30, result: present.
Oct 13 20:17:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 0, max age: 30, result: present.
Oct 13 20:18:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:18:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:18:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:18:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:19:10 fhempi3 lepresenced[1036]: [tid:0] main::stats_task: Active clients: 2, known devices: 2 (min/max age: 1/1)
Oct 13 20:19:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 2, max age: 30, result: present.
Oct 13 20:19:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:19:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:19:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:20:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:20:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:20:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:20:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:21:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:21:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 0, max age: 30, result: present.
Oct 13 20:21:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 2, max age: 30, result: present.
Oct 13 20:21:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:22:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:22:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:22:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:22:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.


Ich habe das Update deshalb gemacht, weil ich noch ein Paar Forenbeiträge über Google gefunden habe die sagten, dass es bei den BT Problemen mit dem Pi hilfreich sein kann und einer das so gelöst hatte.
Siehe hier:
https://urbanjack.wordpress.com/2014/04/17/fix-bluez-keeps-crashing/ (https://urbanjack.wordpress.com/2014/04/17/fix-bluez-keeps-crashing/)
Ich habe allerdings keine Änderungen an der "/boot/cmdline.txt" vorgenommen.

Jetzt habe ich

root@fhempi3:~# cat /proc/version
Linux version 4.4.23-v7+ (dc4@dc4-XPS13-9333) (gcc version 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611) ) #913 SMP Tue Oct 4 14:16:19 BST 2016
root@fhempi3:~#




Fazit:
Aktuell läuft es wieder. Und ich kann es nicht rekonstruieren.
Ich melde mich also hier wieder wenn ich was melden kann.

Danke aber trotzdem, dass Du so schnell reagiert hast!

Beste Grüße

Holger

Update a few minutes later


Oct 13 20:29:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:29:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:30:02 fhempi3 lepresenced[1036]: [tid:1] main::bluetooth_thread: Received unknown output: 'Disable scan failed: Input/output error'!
Oct 13 20:30:02 fhempi3 lepresenced[1036]: [tid:1] main::bluetooth_thread: hcitool exited, retrying...
Oct 13 20:30:03 fhempi3 lepresenced[1036]: [tid:1] main::bluetooth_thread: Received 'LE Scan ...'.
Oct 13 20:30:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:30:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:30:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:30:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:31:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:31:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:31:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:31:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:32:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 2, max age: 30, result: present.
Oct 13 20:32:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 2, max age: 30, result: present.
Oct 13 20:32:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 3, max age: 30, result: present.
Oct 13 20:32:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:33:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:33:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:33:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:33:49 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 13 20:34:13 fhempi3 lepresenced[1036]: [tid:0] main::stats_task: Active clients: 2, known devices: 2 (min/max age: 1/1)
Oct 13 20:34:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 13 20:34:19 fhempi3 lepresenced[1036]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.


Es gibt also doch noch irgendwelche I/O Error, haben aber scheinbar keinen Einfluss auf die Sache
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 13 Oktober 2016, 20:47:36
Hey Holger,

danke für das Update!

Kannst Du vielleicht eine externe Festplatte oder einen alten USB-Stick anschließen und auf den loggen? Ich gehe mal nicht davon aus, dass Du einen syslog-Server hast.

Zu Deinem Cronjob: Ich bin mir nicht sicher, welches Resultat Deine Notation hat. Eine Kombination mehrerer /-Notationen habe ich ehrlich gesagt noch nicht gesehen. Ich würde unabhängig davon auch davon abraten, das Skript so oft auszuführen. Mein erster G-Tag ist seit April 2015, also nach 17 Monaten, im Dauerbetrieb (also ungekoppelt, d. h. er sendet am laufenden Band) und läuft immer noch. Man sollte davon ausgehen, dass der Stromverbrauch konstant ist - zumindest sofern man ihn nicht mit periodischen Batteriefragen malträtiert. Insofern sollte eine Abfrage am Tag mehr als genug sein, z. B.:

0 1 * * * /opt/fhem/script/Holger_GtAG_Batterie.sh >/dev/null 2>&1 ; /opt/fhem/script/Mirjam_GtAG_Batterie.sh >/dev/null 2>&1

Damit stellst Du auch gleich sicher, dass die beiden Skripte garantiert nicht zeitgleich laufen, was möglicherweise auch ein Problem ist. Das sehen wir aber gut wenn das Logging klappt.

Für den Test, ob es Wechselwirkungen zwischen lepresenced und den Batterieskripten gibt, ist diese häufige Ausführung aber gar nicht so schlecht.

@Alle, die das gleiche Problem haben:
Setzt Ihr auch RPi3s mit dem internen Bluetooth-Chip ein?


Grüße
Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 13 Oktober 2016, 21:07:37
Ich benutze auch das Skript, lasse es aber durch ein notify bei erkanntem present ausführen.
Das sichert dass der G-Tag wirklich zur Ausführungszeit auch anwesend ist.
Und mehr als 2-3x mal komme ich für gewöhnlich nicht nach Hause pro Tag.

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 13 Oktober 2016, 22:08:16
Zitat von: DeeSPe am 13 Oktober 2016, 21:07:37
Ich benutze auch das Skript, lasse es aber durch ein notify bei erkanntem present ausführen.
Das sichert dass der G-Tag wirklich zur Ausführungszeit auch anwesend ist.
Und mehr als 2-3x mal komme ich für gewöhnlich nicht nach Hause pro Tag.

Gruß
Dan

Mache ich gaaanz genau so.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 14 Oktober 2016, 07:11:32
Dürfte ich mal fragen, wie eure Anweisung dazu aussieht?
Bin auf der Suche nach einem Fehler...

https://forum.fhem.de/index.php/topic,58727.0.html
(https://forum.fhem.de/index.php/topic,58727.0.html)

Thx
SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 14 Oktober 2016, 07:24:40
Ist einfach ein Notify. Wenn presenceDevice present dann triggert das Notify und in meinem Fall wird eine Perl Sub ausgeführt damit die Abfrage NonBlocking passiert.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 14 Oktober 2016, 21:51:19
Zitat von: PatrickR am 13 Oktober 2016, 20:47:36
Hey Holger,

danke für das Update!

Kannst Du vielleicht eine externe Festplatte oder einen alten USB-Stick anschließen und auf den loggen? Ich gehe mal nicht davon aus, dass Du einen syslog-Server hast.

Zu Deinem Cronjob: Ich bin mir nicht sicher, welches Resultat Deine Notation hat. Eine Kombination mehrerer /-Notationen habe ich ehrlich gesagt noch nicht gesehen. Ich würde unabhängig davon auch davon abraten, das Skript so oft auszuführen. Mein erster G-Tag ist seit April 2015, also nach 17 Monaten, im Dauerbetrieb (also ungekoppelt, d. h. er sendet am laufenden Band) und läuft immer noch. Man sollte davon ausgehen, dass der Stromverbrauch konstant ist - zumindest sofern man ihn nicht mit periodischen Batteriefragen malträtiert. Insofern sollte eine Abfrage am Tag mehr als genug sein, z. B.:

0 1 * * * /opt/fhem/script/Holger_GtAG_Batterie.sh >/dev/null 2>&1 ; /opt/fhem/script/Mirjam_GtAG_Batterie.sh >/dev/null 2>&1

Damit stellst Du auch gleich sicher, dass die beiden Skripte garantiert nicht zeitgleich laufen, was möglicherweise auch ein Problem ist. Das sehen wir aber gut wenn das Logging klappt.

Für den Test, ob es Wechselwirkungen zwischen lepresenced und den Batterieskripten gibt, ist diese häufige Ausführung aber gar nicht so schlecht.

@Alle, die das gleiche Problem haben:
Setzt Ihr auch RPi3s mit dem internen Bluetooth-Chip ein?


Grüße
Patrick

Hi Patrick,

also ich habe mal deinen Vorschlag bzgl. der CRON Ausführung übernommen und bei mir so eingetragen.
Meine Werte habe ich einfach auskommentiert.
Danach noch ein cmd>service cron reload und gut is.

Dann hab ich noch drüber nachgedacht ob ich auf meiner Synology nen SYSLOG Server einrichte, und dachte mir, cool wäre es schon, aber dann lag direkt vor mir ein alter USB2.0 16GB Stick, und den hab ich mir nun als /var/log MountPoint per UUID in die fstab eingetragen.
Ein reboot, und schon hab ich ein 16GB Logfiles Device.
Nebeneffekt ist dass dadurch die CRON 100%ig geladen wurde.

So, jetzt mach ich grad ein tail auf das syslog und sehe da sehr stabil ein max age von 0, von 1, und hin und wieder mal ein age von 2

Worauf zielt Deine Frage ab ob wir einen Pi3 nutzen?
Willst Du Dein "lepresenced" umstricken so dass es konfigurierbar wird und man hci0, oder was anderes definieren kann? oder vll auch ein Logfiles Dir angeben?

Ich kenn mich damit ja nicht aus. Aber ich fände es genial wenn dieses Modul, oder Script Bestandteil von FHEM würde das per Modul eingerichtet werden könnte.

Für mich wird es immer schwerer den Überblick zu behalten was ich alles an Scripten am Laufen habe.

LG
Holger
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 14 Oktober 2016, 22:05:17
Zitat von: forum-merlin am 14 Oktober 2016, 21:51:19
Worauf zielt Deine Frage ab ob wir einen Pi3 nutzen?
Willst Du Dein "lepresenced" umstricken so dass es konfigurierbar wird und man hci0, oder was anderes definieren kann?

Hi Holger,
Du kannst bereits mit dem Attribute bluetooth_hci_device definieren welches hci Device angesprochen werden soll. Das kannst du beim jeweiligen G-tag z.B hinterlegen.

Ich nutze eine Pi2. Wenn ich so drüber nachdenken habe ich auch einen gTag, der eigentlich irgendwie immer abwesend ist.
Der liegt im Auto und das steht in der Einfahrt. Aktuell in der Garage. Er ist meist abwesend. Auto zwei ist aber egal wo es steht korrekt Anwesend oder Abwesend.
Ich deaktiviere jetzt auch mal das Batteriescript welches per Cron gesteuert wird.
Mal sehen was sich verändert...

Gruesse,
Dirk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 14 Oktober 2016, 22:26:41
Zitat von: Devender am 14 Oktober 2016, 22:05:17
Hi Holger,
Du kannst bereits mit dem Attribute bluetooth_hci_device definieren welches hci Device angesprochen werden soll. Das kannst du beim jeweiligen G-tag z.B hinterlegen.

Ich nutze eine Pi2. Wenn ich so drüber nachdenken habe ich auch einen gTag, der eigentlich irgendwie immer abwesend ist.
Der liegt im Auto und das steht in der Einfahrt. Aktuell in der Garage. Er ist meist abwesend. Auto zwei ist aber egal wo es steht korrekt Anwesend oder Abwesend.
Ich deaktiviere jetzt auch mal das Batteriescript welches per Cron gesteuert wird.
Mal sehen was sich verändert...

Gruesse,
Dirk

Und vielleicht hilft bei Dir auch ein Kernel-Update!
Seit dem ich das gemacht habe läuft das alles wie geschmiert. Also ich empfinde es wirklich so.
Die heutigen Änderungen habe ich eigentlich proaktiv gemacht, da sie grundsätzlich Sinn machen.

Ich habe auch gerade noch die Anpassung mit der Blacklist für Kernel und Syslog Messages gemacht.
Auch wenn ich jetzt auf einen USB Stick schreibe, muss ich ja nicht andauernd diese Meldungen haben die Schreibzugriffe bedeuten. Auch ein Stick lebt nicht ewig.


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 14 Oktober 2016, 22:58:30
Ein rpi-update wäre mir aktuell zu unsicher.
Du nutzt ja einen Pi3. Aus deinem Link weiter oben geht nicht hervor mit welcher Hardware der Threadersteller arbeitet.
Mein externer BT-Stick läuft ja einwandfrei und schreibt keine Fehler ins Log.

Vielleicht liegt es auch an der Entfernung bzw. irgendwelchen "Umwelteinflüssen"...
Ich weiß auch nicht, in wie fern das Metall eines Autodaches oder bedampfte Scheiben die Sendeleistung eines Tags beeinflussen.
Ich hole den Tag morgen mal ins Haus. Wenn er dann wieder erkannt wird kann es ja nur an der Sendeleistung liegen.

Ich werde berichten  :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 14 Oktober 2016, 23:56:01
Hallo Holger!

Zitat von: forum-merlin am 14 Oktober 2016, 21:51:19
So, jetzt mach ich grad ein tail auf das syslog und sehe da sehr stabil ein max age von 0, von 1, und hin und wieder mal ein age von 2
Auch wenn das Batterieskript läuft?

Zitat von: forum-merlin am 14 Oktober 2016, 21:51:19
Worauf zielt Deine Frage ab ob wir einen Pi3 nutzen?
Willst Du Dein "lepresenced" umstricken so dass es konfigurierbar wird und man hci0, oder was anderes definieren kann? oder vll auch ein Logfiles Dir angeben?
Nein. Das Device ist schon konfigurierbar und ich sehe keinen Grund, anderes Logging als Syslog einzubauen. Das Flash-Problem würde es nicht besser lösen als die Dinge, die Du jetzt schon umgesetzt hast. Mit der Frage nach dem Pi3 ging es mir lediglich darum, ob vielleicht der Bluetooth-Chip das Problem ist.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 15 Oktober 2016, 00:03:30
Zitat von: PatrickR am 14 Oktober 2016, 23:56:01
Hallo Holger!
Auch wenn das Batterieskript läuft?
Nein. Das Device ist schon konfigurierbar und ich sehe keinen Grund, anderes Logging als Syslog einzubauen. Das Flash-Problem würde es nicht besser lösen als die Dinge, die Du jetzt schon umgesetzt hast. Mit der Frage nach dem Pi3 ging es mir lediglich darum, ob vielleicht der Bluetooth-Chip das Problem ist.

Patrick

Hi Patrick,
ja, ich habe das Batt-Script einfach mal manuell MEHRFACH (3x) getriggert während ich ein tail auf mein syslog gemacht habe...
Siehe Log Auszug:

Oct 14 23:58:31 fhempi3 lepresenced[1184]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 14 23:58:39 fhempi3 lepresenced[1184]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 2, max age: 30, result: present.
Oct 14 23:58:39 fhempi3 rsyslogd-2007: action 'action 19' suspended, next retry is Fri Oct 14 23:59:39 2016 [try http://www.rsyslog.com/e/2007 ]
Oct 14 23:58:40 fhempi3 gtagbattery: Hole Batteriewert für Holger_GtAG
Oct 14 23:58:42 fhempi3 lepresenced[1184]: [tid:1] main::bluetooth_thread: Received unknown output: 'Disable scan failed: Input/output error'!
Oct 14 23:58:42 fhempi3 lepresenced[1184]: [tid:1] main::bluetooth_thread: hcitool exited, retrying...
Oct 14 23:58:43 fhempi3 gtagbattery: Fertig
Oct 14 23:58:43 fhempi3 lepresenced[1184]: [tid:1] main::bluetooth_thread: Received 'LE Scan ...'.
Oct 14 23:59:01 fhempi3 lepresenced[1184]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 1, max age: 30, result: present.
Oct 14 23:59:01 fhempi3 CRON[2802]: (root) CMD (/SCRIPTE/send-ip-mail-evening.sh)
Oct 14 23:59:01 fhempi3 CRON[2798]: (CRON) info (No MTA installed, discarding output)
Oct 14 23:59:09 fhempi3 lepresenced[1184]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 14 23:59:21 fhempi3 gtagbattery: Hole Batteriewert für Holger_GtAG
Oct 14 23:59:22 fhempi3 lepresenced[1184]: [tid:1] main::bluetooth_thread: Received unknown output: 'Disable scan failed: Input/output error'!
Oct 14 23:59:22 fhempi3 lepresenced[1184]: [tid:1] main::bluetooth_thread: hcitool exited, retrying...
Oct 14 23:59:23 fhempi3 gtagbattery: Fertig
Oct 14 23:59:23 fhempi3 lepresenced[1184]: [tid:1] main::bluetooth_thread: Received 'LE Scan ...'.
Oct 14 23:59:31 fhempi3 lepresenced[1184]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:aa, age: 2, max age: 30, result: present.
Oct 14 23:59:34 fhempi3 gtagbattery: Hole Batteriewert für Holger_GtAG
Oct 14 23:59:35 fhempi3 lepresenced[1184]: [tid:1] main::bluetooth_thread: Received unknown output: 'Disable scan failed: Input/output error'!
Oct 14 23:59:35 fhempi3 lepresenced[1184]: [tid:1] main::bluetooth_thread: hcitool exited, retrying...
Oct 14 23:59:36 fhempi3 lepresenced[1184]: [tid:1] main::bluetooth_thread: Received 'LE Scan ...'.
Oct 14 23:59:36 fhempi3 gtagbattery: Fertig
Oct 14 23:59:39 fhempi3 lepresenced[1184]: [tid:0] main: Sending update for mac address 7C:2f:xx:xx:xx:ff, age: 1, max age: 30, result: present.
Oct 14 23:59:39 fhempi3 rsyslogd-2007: action 'action 19' suspended, next retry is Sat Oct 15 00:00:39 2016 [try http://www.rsyslog.com/e/2007 ]


Gruß
Holger


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PsychoD am 15 Oktober 2016, 01:36:08
Zitat von: PsychoD am 11 Oktober 2016, 23:04:50
OK, Danke! Werde ich machen, ich bekomme in ca. 3 Tagen hoffentlich mein iPhone zurück, dann kann ich das Pairing löschen und werde berichten.

Ich habe nun rausgefunden, dass der Tag bei einem "sudo hcitool lescan" auch gefunden wird, und anschließend auch wieder im FHEM auftaucht.

Es wirkt auf mich alles, als würde das Bluetooth Modul am RPI irgendwie schlafen gehen oder so - finde aber keine Infos dazu, dass sowas möglich wäre...

Bleibe dran und freue mich über Tipps!
Viele Grüße
Psy

Ich habe Neuigkeiten! Zunächst habe ich das Pairing im iPhone aufgehoben, ohne Erfolg.

Ich habe heute Morgen jedoch dann mal das Battery-Skript aus dem Cron rausgenommen, und den Pi neugestartet. Als ich heute Abend nach Hause kam, ist der Tag gefunden worden!!!! Meine aktuelle Theorie ist, dass das Battery-Skript, welches ich sonst zu jeder vollen Stunde aufrufe, abschmiert wenn der Tag nicht in Reichweite ist. Erst beim nächsten Scan, bei dem auch der Tag wieder in Reichweite ist, stabilisiert sich der Zustand wieder. Soweit meine Theorie - wenn dem so ist, ist der einzige Weg den Batteriestatus zu prüfen wirklich an Presence gekoppelt.

Ich hoffe es bleibt so, werde berichten. 

Viele Grüße
Psy
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 15 Oktober 2016, 02:40:26
Hey Holger!
Zitat von: forum-merlin am 15 Oktober 2016, 00:03:30

Oct 14 23:58:40 fhempi3 gtagbattery: Hole Batteriewert für Holger_GtAG
Oct 14 23:58:42 fhempi3 lepresenced[1184]: [tid:1] main::bluetooth_thread: Received unknown output: 'Disable scan failed: Input/output error'!
Oct 14 23:58:42 fhempi3 lepresenced[1184]: [tid:1] main::bluetooth_thread: hcitool exited, retrying...
Oct 14 23:58:43 fhempi3 gtagbattery: Fertig
Oct 14 23:58:43 fhempi3 lepresenced[1184]: [tid:1] main::bluetooth_thread: Received 'LE Scan ...'.

Da sieht man gut, dass das Batterieskript den Scan zerschießt. Glücklicherweise ist das in dem Fall nicht dramatisch, da lepresenced das detektiert.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 16 Oktober 2016, 10:01:47
Aber so oder so ist das Batterie Script dann kontraproduktiv und bringt auch dann nichts wenn man es zusammen mit presence koppelt. Aber ich muss auch sagen dass es sich mit dem reconnect besser seit dem neuen Kernel verhält. Ich kann mich aber auch irren.


Gesendet von meinem SM-G920F mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 16 Oktober 2016, 12:53:41
Hi!

Zitat von: forum-merlin am 16 Oktober 2016, 10:01:47
Aber so oder so ist das Batterie Script dann kontraproduktiv und bringt auch dann nichts wenn man es zusammen mit presence koppelt. Aber ich muss auch sagen dass es sich mit dem reconnect besser seit dem neuen Kernel verhält. Ich kann mich aber auch irren.

Ich hatte bei der Entwicklung von blescan.pl (dem Vorgänger von lepresenced) generell riesigie Probleme mit der Bluetooth-Implementierung. blescan hat ja für jeden Check einen neuen Scanprozess auf und nach der eingestellten Zeit (z. B. 30 Sekunden) wieder zugemacht. Dabei kam es oft vor, dass sich der Scan nicht starten ließ, so dass nur noch hciconfig reset half. Das ist alles in lepresenced auch noch drin, greift aber sehr selten, da der Scan nur noch selten gestartet wird.

Was ich damit sagen will: Die Bluetooth-Implementierung unter Linux (vermutlich tatsächlich der Kernel-Part) ist nicht gerade bugfrei. Daher könnte Deine Beobachtung passen.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 19 Oktober 2016, 10:07:11
Oh je, jetzt hatte ich mal 8 Wochen keine Zeit und alles überschlägt sich...

Ich weiß ihr erschlagt mich jetzt, aber kann jemand oder wurde hier schon (Wo?) eine Anleitung gepostet wo ich die gtags mit SOC anzeige (CoolTux seine Modul) betreiben kann?
Ich habe leide keine Zeit alle Seiten zu lesen... :'( :'( :'(
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 19 Oktober 2016, 11:22:27
Zitat von: HoTi am 19 Oktober 2016, 10:07:11
gtags mit SOC anzeige (CoolTux seine Modul) betreiben kann?
Hallo Tim,

Das habe ich jetzt nicht verstanden. Welches Modul genau meinst Du? Das BTLEDev Modul? Das wird es so nicht weiter geben da Designschwächen. Jörg und ich arbeiten an einer anderen Lösung und sie ist bis jetzt seeeehr cool. Sind aber noch in den Anfängen.


Grüße
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 19 Oktober 2016, 12:09:29
Zitat von: CoolTux am 13 Oktober 2016, 11:29:48
Hier mal die 2 Module in der Übersicht. Einmal das IODev Modul 10_BTLE.pm und einmal das Sensor Modul 42_BTLESensor.pm mit eingerichtet für den GTag zum Batterie auslesen

Erstmal nur mit dem battery Reading im Device selber. Später kann man über Attribut noch das presence Device einstellen wo dann auch reingeschrieben wird.

Das meine ich. Ist das nicht dein Modul?!

Ich habe aber da noch ein Problem. Ich halt emich da gerade an das Wiki und bin an der Stelle:

sudo su -
mkdir /opt/fhem/script
cd /opt/fhem/script
wget https://raw.githubusercontent.com/micky0867/lebattery/master/lebattery
chmod 755 lebattery


Wenn ich dann so starten will:
/opt/fhem/script/lebattery -v

kommt:
-bash: /opt/fhem/script/lebattery: /bin/bash^M: bad interpreter: No such file or directory

*edit*
OK löschen und nochmal von vorne, jetzt gehts weiter

Die Fehlermeldung stammt von der Bash und sagt eindeutig, dass da ein DOS-Zeilenende ist - wie auch immer das da hingekommen ist.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 19 Oktober 2016, 12:50:09
Zitat
Einmal das IODev Modul 10_BTLE.pm und einmal das Sensor Modul 42_BTLESensor.pm
Das sind meine 2 Module, aber die gibt es so noch nicht und wird es nach neustem Stand auch sooo nicht geben. Es wird an einer besseren Lösung gearbeitet. Im Grunde geht es erstmal darum ein IODev Modul für BTLE zu schreiben. Das beinhaltet im Moment gatttool und hcitool. Nach neustem Stand kann es später in der Tat auch zur presence Erkennung genutzt werden. Aber das alles ist noch in der Entwicklung und nicht mal Ansatzweise verwendbar.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 19 Oktober 2016, 15:00:14
Kann mir vielleicht jemand helfen?

ich bekomme beim ausführen von:

gatttool -t random -b <MAC-Adresse> --char-read --uuid 0x2a19

folgenden Fehler:

Read characteristics by UUID failed: Internal application error: I/O
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 19 Oktober 2016, 15:03:44
gatttool -b btmac --char-read --uuid 0x2a19

Wenn dann so.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 19 Oktober 2016, 15:10:16
so wäre die ausgabe:
handle: 0x001b value: 64

Steht aber anderes im Wiki.

Und der Befehl:
/opt/fhem/script/lebattery -v

Funktioniert auch nicht:

awk: line 2: function strtonum never defined
No valid data found for gTag_Kathrin (***)


*edit*
das hilft.
sudo apt-get install gawk

aber ich habe auch noch das Script abgeändert. so wie CoolTux das schrieb
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 19 Oktober 2016, 15:17:01
Zitat von: HoTi am 19 Oktober 2016, 15:10:16
so wäre die ausgabe:
handle: 0x001b value: 64

Steht aber anderes im Wiki.

Und der Befehl:
/opt/fhem/script/lebattery -v

Funktioniert auch nicht:

awk: line 2: function strtonum never defined
No valid data found for gTag_Kathrin (***)

Na siehste der gatttool Befehl klappt doch. Zum Script kann ich nichts sagen, das benutze ich nicht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: HoTi am 19 Oktober 2016, 15:22:01
nach 4 Monaten Betrieb noch 100% ist das realistisch?

frech gefragt, wie machst du das? Wenn du das Script nicht nutzt?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 19 Oktober 2016, 15:33:10
Zitat von: HoTi am 19 Oktober 2016, 15:22:01
nach 4 Monaten Betrieb noch 100% ist das realistisch?

frech gefragt, wie machst du das? Wenn du das Script nicht nutzt?

Seit dem ich das Script benutze (ca. 1 Monat) hatte mein GTag immer 85% Batterie.
Nun, seit gestern, zeigt mir der GTag 94% Batterie.
Wie geht das? Stimmt da eventuell was am Script nicht?
Die Batterie wurde definitiv nicht getauscht.

Gruß
Dan

P.S. Habe das Script für mich so angepasst dass ich die Mac-Adresse und den FHEM-Namen mit übergeben kann. Somit ist das selbe Script für alle GTags benutzbar (per present notify). Das läuft auch schon eine Weile erfolgreich so.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 19 Oktober 2016, 15:42:05
Ich führe den gatttool Befehl in einer nonBlocking 99_myUtils aus.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 21 Oktober 2016, 12:24:00
Mal eine Frage...wer von euch nutzt Bluetooth und WLAN am gleichen Raspberry?

Bei mir ist es so, dass der BT-Dongle bei Aktivität schon ganz schön das WLAN stört. Scant der PI nach den Bluetooth-Tags, ist der PI per WLAN kurzfristig nicht mehr oder nur noch mit sehr hoher Latenz erreichbar. Liegt ja wohl leider in der Natur der Sache, da sowohl Bluetooth als auch WLAN auf 2,4Ghz funken.

Wie habt ihr das gelöst oder akzeptiert ihr das so wie es ist? PS: 5GHz Wlan ist bei mir keine Option.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: shaddi am 21 Oktober 2016, 13:10:59
Ich benutze nur den BLE-Scanner. Soweit ich verstanden habe, scant der ja icht aktiv sondern "horcht" nur...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: isy am 21 Oktober 2016, 20:13:20
Hallo,
ich habe keinen PI 3, aber nutze lepresenced mit PI 2 und Bluetooth  Dongle. Der ist räumlich vom Wlan Router abgesetzt. Übersteuern der Empfänger wird dadurch etwas reduziert. Bei mir sinkt allerdings die nutzbare Bandbreite, z.b. für HD Videos. Daher nutze ich  Wifi fast nur noch auf dem  5 GHz  Band.

Bluetooth sendet auf allen möglichen Frequenzen im 2,4 GHz Band und Wifi auf der gleichen Frequenz gibt Interferenzen.
In der Firma haben wir Bereiche, wo sich die Anwender entscheiden müssen. Dort bauen wir dann fast immer die Bluetooth Tastaturen und Mäuse ab und die Headsets, die in der Regel kaum noch ordentliche Tonübertragung ermöglichen.

Hilfe bringt nur ein Wechsel auf das 5 GHz Band, allerdings gibt es da auch Einschränkungen in den Kanälen, da einige Frequenzen vom Radar genutzt werden.

Gruß Helmut.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: accessburn am 22 Oktober 2016, 12:47:04
Morgääään.
Ich habe ein Pebblebe tatsächlich einmal zum laufen bekommen. Er hat normal zwischen present und absent unterschieden. So lange bis ich den Raspi einmal neustarten musste. Seitdem habe ich nur "Disconnect" da stehen.
Irgendeine Idee was ich machen muss?

Wie hier beschrieben (http://www.fhemwiki.de/wiki/Anwesenheitserkennung#Anwesenheitserkennung_Bluetooth_PebbleBee_mit_PRESENCE_Modul) habe ich einfach alles nochmal von vorne ausgeführt. Jedoch bleibe ich bei folgendem Befehl hängen:
sudo ./lepresenced --loglevel LOG_EMERG -d


Zitatpi@raspberrypi /opt/fhem/script $ sudo ./lepresenced --loglevel LOG_EMERG -d
./lepresenced: 33: ./lepresenced: use: not found
./lepresenced: 34: ./lepresenced: use: not found
./lepresenced: 36: ./lepresenced: use: not found
./lepresenced: 37: ./lepresenced: use: not found
./lepresenced: 39: ./lepresenced: use: not found
./lepresenced: 40: ./lepresenced: use: not found
./lepresenced: 42: ./lepresenced: use: not found
./lepresenced: 43: ./lepresenced: Syntax error: "(" unexpected
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 22 Oktober 2016, 20:12:35
Sieht so aus, als fehle da ein
#!/usr/bin/perl
In der ersten Zeile

Gesendet von meinem Toaster.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: accessburn am 24 Oktober 2016, 10:36:30
Zitat von: micky0867 am 22 Oktober 2016, 20:12:35
Sieht so aus, als fehle da ein
#!/usr/bin/perl
In der ersten Zeile

Gesendet von meinem Toaster.

Dein Toaster hatte leider nicht recht :-)
Die Zeile fehlte zwar, änderte aber nichts :'(
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 24 Oktober 2016, 18:10:20
Bitte sag, dass die Datei nicht von irgendeinem Wahnsinnigen aus dem Browser in einen Editor kopiert wurde.

Ungeachtet dessen: Bitte Datei frisch runterladen.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: bjoernbo am 20 November 2016, 09:56:06
Guten Morgen zusammen, habe meine 3 GTAGs gem. WIKI eingerichtet. Soweit so gut. Jetzt habe ich einen Tag in 4fach Alufolie eingepackt und das Geräte wird weiterhin als ACTIVE angezeigt  ::) kann das sein?

lan-bluetooth 7C:FF:FF:FF:91:A3 192.168.178.51:8083 120

Ich hätte zudem erwartet, dass ich einen Status "present" bzw. "absent" irgendwo finde
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 20 November 2016, 10:02:29
Du hast den falschen Wikieintrag gelesen. Suche mal nach lepresence oder halte Dich an die Einträge in diesem Thread.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PsychoD am 20 November 2016, 10:05:22
Zitat von: bjoernbo am 20 November 2016, 09:56:06
Guten Morgen zusammen, habe meine 3 GTAGs gem. WIKI eingerichtet. Soweit so gut. Jetzt habe ich einen Tag in 4fach Alufolie eingepackt und das Geräte wird weiterhin als ACTIVE angezeigt  ::) kann das sein?

lan-bluetooth 7C:FF:FF:FF:91:A3 192.168.178.51:8083 120

Ich hätte zudem erwartet, dass ich einen Status "present" bzw. "absent" irgendwo finde

Ich hab mein gtag zum testen immer in die Mikrowelle gelegt. Das klappt auf jeden Fall. Tür zu, und schon ist man absent. :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: bjoernbo am 20 November 2016, 10:13:09
Wie lange und bei wie viel Watt?  ;D

mmmm. Brachte aber auch nicht's  :-\

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: bjoernbo am 20 November 2016, 11:37:34
@CoolTux: War das auf meinen Post bezogen? Ich habe mich gem. WIKI an "lepresence" gehalten.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: bjoernbo am 20 November 2016, 11:40:58
OK, ich habe meinen Fehler gefunden! Ich musste den PORT 5333 verwenden, warum auch immer, dass hatte ich nicht verstanden!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 20 November 2016, 11:44:41
Zitat von: bjoernbo am 20 November 2016, 11:37:34
@CoolTux: War das auf meinen Post bezogen? Ich habe mich gem. WIKI an "lepresence" gehalten.

8083 ist mit Sicherheit nicht der richtige Port für BTLE.
8083 ist der FHEM Port!
Laut Wiki ist BTLE auf Port 5333 und ohne LE auf 5111.

Gruß
Dan

P.S. active ist nicht present oder absent!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 20 November 2016, 12:22:25
Zitat von: bjoernbo am 20 November 2016, 11:37:34
@CoolTux: War das auf meinen Post bezogen? Ich habe mich gem. WIKI an "lepresence" gehalten.

Du hast Recht. Sorry war in Gedanken noch bei einem Script für Presence.
Geht jetzt also sagst?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: bjoernbo am 20 November 2016, 14:36:15
JA, jetzt funktioniert alles!  8)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 28 November 2016, 10:21:44
Guten Morgen zusammen,

kleine Frage am Rande - ich musste nach einem Hardwaredefekt FHEM komplett aus einem Backup heraus auf einen neuen Pi migrieren - von Pi2 auf Pi3. Soweit läuft alles, aber der Punkt "automatischer Start von lepreseced" klemmt - nach einem Reboot läuft lepreseced nicht (mehr), Status ist disconnected. Im Wiki werden zwei Wege aufgezeigt, beide funktionieren bei mir nicht

Damit das leprecend Skript beim Systemstart mitgestartet wird, sollte eine Crontab Eintrag gesetzt werden. Alternativ die rc.local anpassen. Ersteres würde so aussehen:

Ein sh-Skript mit dem Inhalt:

sudo start-stop-daemon -d /opt/fhem/script -S -x /opt/fhem/script/lepresenced
unter dem Verzeichnis /home/pi ablegen, welches sich init_start.sh nennt.

Das Skript dann unter: sudo crontab -e einhängen mit folgender Folge:

@reboot        /home/pi/init_start.sh
Zweiteres so:

sudo nano /etc/rc.local
Datei rc.local, freie Stelle suchen, vor "exit 0":

# Start lepresenced
/opt/fhem/script/lepresenced --loglevel LOG_EMERG -d
exit 0


Starte ich per ssh direkt ( sudo ./lepresenced --loglevel LOG_EMERG -d) läuft alles bestens. Jemand eine spontane Idee wo es klemmt?

Grüße

Sascha
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 28 November 2016, 18:05:04
@Sascha: Installiere mal das Paket, dann musst Du nicht basteln.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 28 November 2016, 18:05:36
@Sascha: Installiere mal das Paket, dann musst Du nicht basteln.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 29 November 2016, 09:31:01
Hi,

welches Paket meinst Du?

Grüße Sascha
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 29 November 2016, 11:04:30
Sicher diese Pakete (https://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/contrib/PRESENCE/deb/)!

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 29 November 2016, 11:06:20
Hi,

danke für die Info. Bedeutet denn weg von Lepresened hin zu den Presence-Paketen, korrekt?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 29 November 2016, 11:12:01
Zitat von: Tedious am 29 November 2016, 11:06:20
Hi,

danke für die Info. Bedeutet denn weg von Lepresened hin zu den Presence-Paketen, korrekt?

Die entsprechenden Pakete können statt des/der Skripte verwendet werden und machen das selbe!

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 29 November 2016, 11:29:36
Sorry, jetzt bin ich leider ein bisschen verwirrt. Ich nutze G-Tags, und bin der Anleitung im Wiki gefolgt, das hatte an sich in der Vergangenheit funktioniert.

Exemplarisch:

define iTag_Sascha PRESENCE lan-bluetooth 7C:2F:XX:XX:XX:XX 127.0.0.1:5333 60 300
attr iTag_Sascha event-on-change-reading .*
attr iTag_Sascha group iTag
attr iTag_Sascha room Residents


Das Ganze fange ich denn per Notify ab und triggere das Residents-Modul

#Notifys für Residents Modul
#Sascha
define SaschaHEvt notify iTag_Sascha {\
  if (Value("iTag_Sascha") eq "present") {\
    fhem ("set rr_Sascha state home")\
  } elsif (Value("iTag_Sascha") eq "absent") {\
    fhem ("set rr_Sascha state gone")\
  }\
}
attr SaschaHEvt room Residents


Das funktioniert bestens, nur muss ich lepreseced immer per Hand starten. Bitte entschuldige meine Konfusion, aber ich weiß grade nicht wo Du meinst dass ich ansetzten muss :(

Grüße

Sascha
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 29 November 2016, 12:02:34
Zitat von: Tedious am 29 November 2016, 11:29:36
Sorry, jetzt bin ich leider ein bisschen verwirrt. Ich nutze G-Tags, und bin der Anleitung im Wiki gefolgt, das hatte an sich in der Vergangenheit funktioniert.

Exemplarisch:

define iTag_Sascha PRESENCE lan-bluetooth 7C:2F:XX:XX:XX:XX 127.0.0.1:5333 60 300
attr iTag_Sascha event-on-change-reading .*
attr iTag_Sascha group iTag
attr iTag_Sascha room Residents


Das Ganze fange ich denn per Notify ab und triggere das Residents-Modul

#Notifys für Residents Modul
#Sascha
define SaschaHEvt notify iTag_Sascha {\
  if (Value("iTag_Sascha") eq "present") {\
    fhem ("set rr_Sascha state home")\
  } elsif (Value("iTag_Sascha") eq "absent") {\
    fhem ("set rr_Sascha state gone")\
  }\
}
attr SaschaHEvt room Residents


Das funktioniert bestens, nur muss ich lepreseced immer per Hand starten. Bitte entschuldige meine Konfusion, aber ich weiß grade nicht wo Du meinst dass ich ansetzten muss :(

Grüße

Sascha

Einfach die benötigten Pakete installieren (presenced und lepresenced).
Diese starten automatisch den jeweiligen Dienst!

Falls Du Lust hast kannst Du auch gerne statt Deinen ganzen notify/DOIF mal mein neues Modul HouseMode (https://forum.fhem.de/index.php/topic,61462) ausprobieren, das regelt u.a. genau diese Abhängigkeit zwischen ROOMMATE/GUEST Device und dem korrespondierenden PRESENCE Device.
Es macht auch noch viel mehr Dinge und einige Ideen zur Erweiterung sind auch noch in der Pipeline.

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 29 November 2016, 13:15:13
Hi,

danke für die Info, schaue ich mir gerne mal an!

Grüße Sascha
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Puschel74 am 11 Dezember 2016, 21:42:17
Bin auch etwas ratlos und hol den Thread nochmal hervor.

Ich hab lepresenced lt. Wiki und commandref eingerichtet und es funktioniert einwandfrei.
Meine Gigaset G-Tag werden tadellos erkannt.
Also wollte ich die Batterieüberwachung nachrüsten.
Erst danach https://wiki.fhem.de/wiki/Anwesenheitserkennung#Batterie.C3.BCberwachung_.28aktuell_nur_G-Tags.29 (https://wiki.fhem.de/wiki/Anwesenheitserkennung#Batterie.C3.BCberwachung_.28aktuell_nur_G-Tags.29)
vorgegangen.
Auf der Kommandozeile bekomme ich aber nur ein
ZitatHost ist down (112)
Also die Suche bemüht und das gefunden:
https://forum.fhem.de/index.php/topic,28753.msg459776.html#msg459776 (https://forum.fhem.de/index.php/topic,28753.msg459776.html#msg459776)
So wie Ellert bin ich der verlinkten Anleitung gefolgt (make dauert auf einem RasPi1 ganz schön lange  ::) ) aber nach make install
noch den lepresenced per dpkg installiert, die Abhängigkeiten aufgelöst apt-get -f install (Bluez habe ich das bereits vorhandene 5.43 gelassen also nicht drüber installiert) und lepresenced läuft.
Die G-Tags werden in FHEM wieder erkannt und als present angezeigt.

Wenn ich das Script GtagBatterie.sh mit
./GtagBatterie.sh
ausführe bekomme ich aber wieder ein
ZitatHost is down (112)
:o

Dann hab ich aus dem Wiki das
https://wiki.fhem.de/wiki/Anwesenheitserkennung#Batterie.C3.BCberwachung_.28alle_Devices_vom_Typ_.22MODE.3Dlan-bluetooth.22.29 (https://wiki.fhem.de/wiki/Anwesenheitserkennung#Batterie.C3.BCberwachung_.28alle_Devices_vom_Typ_.22MODE.3Dlan-bluetooth.22.29)
versucht.
Ende vom Lied:
ZitatNo valid data found for Mein_GTag (7C:2F:80:AD:B8:FF)
die MAC-Adresse stimmt mit meinem G-Tag überein und er ist in FHEM auch per MODE=lan-bluetooth angebunden.

Lt. Verpackung sind es Gigaset G-Tag und die Erkennung an sich (present/absent) funktioniert einwandfrei nur das auslesen der Batterie will nicht so richtig  >:(

Internals:
   ADDRESS    7C:2F:80:AD:B8:FF
   DEF        lan-bluetooth 7C:2F:80:AD:B8:FF 127.0.0.1:5333 20 120
   DeviceName 127.0.0.1:5333
   FD         5
   MODE       lan-bluetooth
   NAME       Mein_GTag
   NOTIFYDEV  global
   NR         21
   NTFY_ORDER 50-Mein_GTag
   PARTIAL
   STATE      present
   TIMEOUT_NORMAL 20
   TIMEOUT_PRESENT 120
   TYPE       PRESENCE
   Readings:
     2016-12-11 21:15:52   command_accepted yes
     2016-12-11 21:39:52   device_name     Gigaset G-tag
     2016-12-11 21:39:52   presence        present
     2016-12-11 21:39:52   state           present
   Helper:
     CURRENT_TIMEOUT present
Attributes:
   devStateIcon present:10px-kreis-gruen absent:10px-kreis-rot


Nu hab ich mal wieder keine Ahnung wo ich noch ansetzen könnte und wäre für Tipps dankbar  :-[
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 12 Dezember 2016, 22:02:45
Ich verlinkte zwar ungern wenn ich mir unsicher ob es hilft, aber ein Versuch ist es ja wert.https://www.raspberrypi.org/forums/viewtopic.php?t=133246&p=890410 (https://www.raspberrypi.org/forums/viewtopic.php?t=133246&p=890410)

Der Ersteller schreibt das hier:
now i know, what was an issue... BLE or / and Bluez are not compatible with raspbian on linux 4.+ kernel! Ive installed common version with raspbian wheezy 3.18.11 and it works like a charm XD
ive received another option to try


Ggf. kannst du doch mal probieren eine aeltere Version von BlueZ zu installieren.

Bei mir ist die 5.23 installiert und der Batteriecheck lief von Anfang an.

pi@fhem:~ $ dpkg --status bluez
Package: bluez
Status: install ok installed
Source: bluez (5.23-2)
Version: 5.23-2+b1
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 13 Dezember 2016, 09:01:57
Mittels

gatttool -t random -b <MAC-Adresse> --char-read --uuid 0x2a19

kann man relativ einfach prüfen, ob das Device sich mit gattool auslesen läßt.

0x2a19 entspricht der GATT Spezifikation
https://www.bluetooth.com/specifications/gatt/characteristics

Was nicht bedeutet, dass jeder Hersteller das auch beherzigt.

Micky
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ToKa am 13 Dezember 2016, 22:05:49
Hallo zusammen,

ich habe am Wochenende meinen G-Tag am RPi nach der Anleitung im Wiki eingerichtet. Die Anwesenheitserkennung funktioniert bislang problemlos und auch die Abfrage des Batteriestatus nach der Anleitung geht problemlos.

Allerdings erhalte ich nun im Log sekündlich die Meldung:
Bluetooth: hci0 advertising data length corrected

Diese Meldung taucht hier im Beitrag schon mal auf, aber ich konnte keine Lösung entdecken. Auch google hat mir nicht wirklich weiter geholfen. Hat jemand eine Ahnung, woran das liegt und wie man den Fehler los wird?

Beste Grüße

Torsten
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 14 Dezember 2016, 18:02:23
@Torsten:
Als ich das letzte Mal geschaut habe, war die einzige Lösung - Kernel Patches mal außen vor -, die Meldung im Syslog auszufiltern. Lies mal #684 hier im Thread.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 14 Dezember 2016, 18:02:55
@Torsten:
Als ich das letzte Mal geschaut habe, war die einzige Lösung - Kernel Patches mal außen vor -, die Meldung im Syslog auszufiltern. Lies mal #684 hier im Thread.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Puschel74 am 14 Dezember 2016, 20:34:12
@Devender + Micky

Danke für Eure Denkanstösse.

Allerdings musste ich feststellen das bluez nach einem
dpkg --status bluez
immer noch
ZitatVersion: 4.99-2
liefert  >:(

Auch musste ich grad sehen das ein
gatttool -t random -b 7C:2F:80:AD:B8:FF --char-read --uuid 0x2a19
auf einen G-Tag der present ist mit
ZitatUnknown option -t
auf der Kommandozeile quittiert wird *grummel*
Ein
gatttool -b 7C:2F:80:AD:B8:FF --char-read --uuid 0x2a19
wird mit
ZitatHost is down (112)
quittiert.

Ein uname -a
liefert
ZitatLinux RasPiGarage 4.1.19+ #858 Tue Mar 15 15:52:03 GMT 2016 armv61 GNU/Linux

Ich muss am Wochenende mal schauen wie ich das System resp. bluetooth/bluez auf einen funktionierenden Stand bekomme was die Batterieabfrage betrifft.

P.S.: Auf der Kommandozeile bin ich als sudo unterwegs.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ToKa am 14 Dezember 2016, 20:50:24
Hallo Patrick,

vielen Dank für den Hinweis zu dem Eintrag (ist übrigens die #683), den ich nicht gesehen hatte. Funktioniert prima, auch wenn es nur ein workaround ist.

Gruß

Torsten
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ext23 am 14 Dezember 2016, 22:39:02
Nabend,

ich habe jetzt auch mal meinen G-Tag eingerichtet (lepresenced). Weiß jemand wie hoch das Sendeintervall von dem Ding ist? Ich habe das mal von den default 120 Sekunden polling auf 10 Sekunden gesetzt, dann war er absent und kommt nicht mehr wieder, auch bei 120 Sekunden nicht. 120 Sekunden ist ja etwas sehr träge, eigentlich dachte ich so an 5 - 10 Sekunden. Ich ab ja keine Lust 120 Sekunden zu warten bis das Licht an geht, oder kann ich das dann vergessen?

Generell wurde das teil bei mir erst gefunden nachdem ich den aus der App gelöscht habe. mit lescan kommt der nur ganz selten, dafür aber irgend ein Samsung TV im Sekundentakt. Ka ob das für die 3D Brillen ist oO

/Daniel
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: justme1968 am 14 Dezember 2016, 22:47:43
die g-tags (und die meisten andren bluetooth tags) lassen sich nur erkennen wenn sie nicht mit irgendeiner app verbunden sind.

mein g-tag meldet sich etwa alle 1-2 sekunden. manchmal noch häufiger.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ext23 am 14 Dezember 2016, 22:58:13
Mhh dann scheint mein CSL Dongle den schwer zu erkennen. Da kommt bei lescan nur ganz selten was.

Aber interessant, was macht man wenn man die App nicht mehr hat um die Verbindung zu trennen. Batterie raus nehmen oder wie?

Und der treiber scheint sich auf zu hängen:
pi@fhemrpi ~ $ sudo hcitool lescan
Set scan parameters failed: Input/output error
pi@fhemrpi ~


/Daniel
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 14 Dezember 2016, 23:06:18
@Daniel: Lösche ihn mal aus der Smartphone-App


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ext23 am 14 Dezember 2016, 23:07:36
Habe ich ja, aus der App und aus der BT Verbindung von Android.

Aber, ich hab das Teil mal aufgeschraubt und die Batterie raus genommen, jetzt kommt er auch alle 1-2 Sekunden! Blöder misst, aber der Schalter war wohl zu teuer gewesen ;-)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ext23 am 14 Dezember 2016, 23:10:49
Mhh jetzt wieder mal 2 Minuten garnichts, dann wieder alle paar Sekunden, merkwürdig.

Dieser blöde 40:16:3B:... [TV] Samsung 5 Series (49) kommt aber wirklich als Dauerfeuer. Nicht das der irgendwie stört.

Ich hab das jetzt auf 30 Sekunden, mal schauen wie stabil das läuft...

/Daniel
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ext23 am 15 Dezember 2016, 07:48:40
Moin,

irgend etwas haut da nicht hin. Erstmal funktioniert die reset Funktion des lepresenced nicht und dann verschwindet mein G-Tag nach einiger Zeit mit lescan. Die Batterie ist aber voll. aptitude full-upgrade habe ich auch gemacht, also sollte alles auf dem aktuellen Stand sein. Ich hab keine Idee was das Problem ist. Als BT Dongle habe ich eigentlich das empfohlene Modell aus dem Wiki. Und der G-Tag ist noch ein alter ohne Piepser dran.

Mit der sinnlosen Handy App funktioniert das Teil aber tadellos.

So ein Block kommt pro Sekunde als Ausgabe:
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)
40:16:3B:0D:6C:05 (unknown)
40:16:3B:0D:6C:05 [TV] Samsung 5 Series (49)


Ich weiß nicht mal wo der scheiss her kommt, mein Fernseher ist aus, also Stromlos. Muss vom Nachbarn kommen.


Update:
Ich habe jetzt nochmal die Batterie raus genommen. Danach funktioniert der Tag ein paar Minuten und dann ist er wieder weg. Vielleicht ist der Tag auch defekt, mhh.

/Daniel
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 15 Dezember 2016, 08:34:40
Zitat von: ext23 am 15 Dezember 2016, 07:48:40
mein Fernseher ist aus
Hat Dein Nachbar vielleicht auch ein Samsung TV?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ext23 am 15 Dezember 2016, 08:51:16
Japp muss irgendwie, ich kann es nicht orten, sind -72dbm könnte unter mir sein ;-)

Aber mein Tag macht echt Probleme. Nach jedem Batterie Reset ist er ein paar Minuten da und verschwindet dann auf nimmer wiedersehen.

Ich glaub ich schick den mal zurück und lass mit ein neuen kommen.

/Daniel
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ext23 am 16 Dezember 2016, 12:33:42
So ich habe heute einen neuen G-Tag bekommen, laut der MAC aber ein etwas älteres Modell. Da ist hinten noch ein weißer Aufkleber mit der Seriennummer etc. drauf. Ich habe es diesmal auch tunlichst gelassen das Teil mit irgend einem Gerät zu Verbinden geschweige denn die App zu öffnen.

Bis jetzt läuft er, mal schauen wie lange. Aber wenn ich in FHEM das Abfrageintervall auf 30 Sekunden einstelle, wechselt er zwischen present und absent. Vermutlich ist was etwas kurz obwohl er eigentlich oft seine Bake schickt.

Wie genau funktioniert das Script? Speichert das alle gesehenen Baken bis zum nächsten Abfragen durch FHEM oder wie läuft das?

/Daniel
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 16 Dezember 2016, 19:22:44
@ext23:
Es lauscht permanent auf Bluetooth-LE-Beacons und aktualisiert ständig die Timestamps, wann die jeweilige MAC das letzte mal gesehen wurde.

Was mich stutzig macht ist Deine Aussage, dass der Reset nicht zuverlässig funktioniert. Das suggeriert ja, dass der bei Dir regelmäßig nötig ist, was er eigentlich nicht sein sollte. Das passiert eigentlich nur, wenn es Kämpfe um das Bluetooth-Device gibt wie z. B. weiter oben wo 3 Batterieskripte gleichzeitig auf das Device zugegriffen haben...

Siehst Du die Beacons mit hcitool lescan --duplicates, wenn lepresenced nicht läuft?

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ext23 am 16 Dezember 2016, 19:34:34
Zitat von: PatrickR am 16 Dezember 2016, 19:22:44
weiter oben wo 3 Batterieskripte gleichzeitig auf das Device zugegriffen haben...

OK, dann war es wohl mein Fehler, ich habe parallel zu dem Script das hcitool nochmal aufgerufen um zu sehen ob der Tag da ist. Aber mit dem neuen Tag klappt das komischerweise auch ohne Ausfälle. Generell funktioniert der neue G-Tag super, jetzt geht es auch unter 10 Sekunden. Vielleicht hatte der alte Tag auch für die Abstürze gesorgt. Auf alle Fälle aber was mit dem was nicht in Ordnung.

Jetzt läuft jedenfalls alles. Ich werd es mal ein paar Wochen beobachten und dann schauen ob man damit was schlaues machen kann. Für Anwesenheitserkennung nutze ich eigentlich schon 1-Wire iButtons. Den G-Tag hatte ich mit geholt weil ich das mit SmartLock auf dem Telefon benutzen wollte, das geht aber mit LE Geräten gar nicht. Aber ich finde schon eine Anwendung dafür ;-)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 16 Dezember 2016, 19:42:16
Zitat von: ext23 am 16 Dezember 2016, 19:34:34
OK, dann war es wohl mein Fehler, ich habe parallel zu dem Script das hcitool nochmal aufgerufen um zu sehen ob der Tag da ist.
Oh, nein, das mag der Highlander garnicht. hcitool ist schon instabil genug, wenn es nur 1x gleichzeitig läuft, daher ja die Resets...

Zitat von: ext23 am 16 Dezember 2016, 19:34:34
Aber mit dem neuen Tag klappt das komischerweise auch ohne Ausfälle. Generell funktioniert der neue G-Tag super, jetzt geht es auch unter 10 Sekunden.
Sehr schön.

Zitat von: ext23 am 16 Dezember 2016, 19:34:34
Für Anwesenheitserkennung nutze ich eigentlich schon 1-Wire iButtons
Wie das denn? Kellnerschlüssel und wenn Du zu Hause bist hängt der immer am Leser?

Patrick

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ext23 am 16 Dezember 2016, 19:52:15
Zitat von: PatrickR am 16 Dezember 2016, 19:42:16
Wie das denn? Kellnerschlüssel und wenn Du zu Hause bist hängt der immer am Leser?

Richtig:
https://forum.fhem.de/index.php/topic,15730.msg102220.html#msg102220
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Puschel74 am 17 Dezember 2016, 21:34:14
So, das "Problem" mit der Batterie mal aussen vor ... steh ich am nächsten "Problemchen".
Ich hab 2 RasPi mit lepresenced ausgestattet und die Erkennung meiner G-Tags klappt einwandfrei.
Ein RasPi ist in der Garage und der zweite im Keller - G-Tag in der Garage wird vom dortigen RasPi erkannt, G-Tag im Haus wird vom RasPi im Keller erkannt.

Nun habe ich den collectord auf meinem Cubie eingerichtet -
ein Verzeichniss scripts unter /opt/fhem erstellt - den collectord-1.6.deb reinkopiert und mit
chown fhem:dialout collectord-1.6.deb
den User und die Gruppe angepasst und mit
chmod +x collectord-1.6.deb
ausführbar gemacht.
Danach ein
dpkg -i collectord-1.6.deb
und anschliessend mit
Zitatapt-get install -f
die Abhängigkeiten aufgelöst.
Dann die collectord.conf angepasst:
[Garage]
address=192.168.2.56
port=5111
presence_timeout=180
absence_timeout=20
[Haus]
address=192.168.2.100
port=5111
presence_timeout=180
absence_timeout=20

In meinem Haupt-FHEM dann ein
define Mein_GTag lan-bluetooth 7C:2F:80:AD:B8:FF 127.0.0.1:5222
definiert aber der Status bleibt auf active.

Auf dem RasPi mit der IP 192.168.2.100 steht der gleiche G-Tag aber auf present
lan-bluetooth 7C:2F:80:AD:B8:FF 127.0.0.1:5333 20 120

Wenn ich auf meinem Cubie aber ein PRESENCE mit der IP des RasPi erstelle ist der Status auch present:
lan-bluetooth 7C:2F:80:AD:B8:FF 192.168.2.100:5333 20 120

Nur mit dem collectord hab ich wohl was nicht verstanden  :-[

Ich hab mich aber daran
http://fhem.de/commandref_DE.html#PRESENCE (http://fhem.de/commandref_DE.html#PRESENCE)
und daran
https://wiki.fhem.de/wiki/Anwesenheitserkennung#Bluetooth-.C3.9Cberwachung_von_Ger.C3.A4ten_durch_verteilte_Agenten_in_der_Wohnung_.28presencd.2Fcollectord.29 (https://wiki.fhem.de/wiki/Anwesenheitserkennung#Bluetooth-.C3.9Cberwachung_von_Ger.C3.A4ten_durch_verteilte_Agenten_in_der_Wohnung_.28presencd.2Fcollectord.29)
orientiert.

Kann collectord nur mit presenced oder auch mit lepresenced?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Gasmast3r am 17 Dezember 2016, 21:36:38
Kann ich  mit Precend hatte die frage die tage auch.
Richte leprecend auf jedem pi ein und frage die tag dann mit der IP des jeweiligen pi ab das kannst dann in einer Strukturen zusammen  setzen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Puschel74 am 17 Dezember 2016, 21:42:55
Zitat von: Gasmast3r am 17 Dezember 2016, 21:36:38
Kann ich  mit Precend hatte die frage die tage auch.
Häh  ???

Zitat von: Gasmast3r am 17 Dezember 2016, 21:36:38
Richte leprecend auf jedem pi ein und frage die tag dann mit der IP des jeweiligen pi ab das kannst dann in einer Strukturen zusammen  setzen

lepresenced ist auf beiden PI eingerichtet und funktioniert.
Das ich das auch mit structure gelöst bekommen kann ist mir klar aber warum soll ich 6 Geräte in mein Haupt-FHEM einbinden wenn es mit collectord auch gehen sollte (oder auch nicht weil ich mal wieder etwas falsch verstanden habe)?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Gasmast3r am 17 Dezember 2016, 21:45:23
Autokorektur Handy sorry
Fragte ich mich zu dem Zeitpunkt auch
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 18 Dezember 2016, 00:50:16
@Puschel74: Nimm mal die richtigen Ports in der collectord.conf


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Puschel74 am 18 Dezember 2016, 12:02:11
Zitat von: PatrickR am 18 Dezember 2016, 00:50:16
@Puschel74: Nimm mal die richtigen Ports in der collectord.conf


Von unterwegs gesendet.

So einfach kann es sein  ::)

Danke PatrickR für den Schubs in die richtige Richtung.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mumpitz am 21 Dezember 2016, 06:48:38
Hallo zusammen


Folgende Situation:
Ich steuere das  Residents Modul über meinen gTag, welchen meine Frau und ich je am Schlüsselbund haben, mit folgendem DOiF:
[([gtag_reto] eq "present" or [gtag_reto] eq "disconnected") (set rr_Reto home) DOELSE (set rr_Reto absent)/CODE]

Soweit so gut, es funktioniert tiptop.

Ich bin nun dabei, eine Alarmanlage aufzubauen. Diese wird aktiviert wenn Residents auf Gone oder absent steht und wieder deaktiviert wenn Residents auf Home wechselt.

Nun möchte ich zusätzlich auch noch die Alarmanlage intern scharf stellen können. Das heisst, ich möchte den Status von Residents auf gotoBed stellen können. Dadurch würden nur die Fensterkontakte scharfgestellt.

Nun, die Fragestellung ist, wie kann ich es erreichen, dass der der gTag nicht wieder das Residentdmodul auf Home stellt. Er ist ja angemeldet und gibt daher present durch, was wiederum das genannte DOIF auslösen wird.

Wie habt ihr das gelöst?

Ist der eleganteste weg einfach das doif zu disablen wenn ich auf Status gotobed aktiviere und wieder aktiviere wenn ich am morgen aufstehe?

Danke für die Inputs
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Mumpitz am 21 Dezember 2016, 06:49:09
Hallo zusammen


Folgende Situation:
Ich steuere das  Residents Modul über meinen gTag, welchen meine Frau und ich je am Schlüsselbund haben, mit folgendem DOiF:
[([gtag_reto] eq "present" or [gtag_reto] eq "disconnected") (set rr_Reto home) DOELSE (set rr_Reto absent)

Soweit so gut, es funktioniert tiptop.

Ich bin nun dabei, eine Alarmanlage aufzubauen. Diese wird aktiviert wenn Residents auf Gone oder absent steht und wieder deaktiviert wenn Residents auf Home wechselt.

Nun möchte ich zusätzlich auch noch die Alarmanlage intern scharf stellen können. Das heisst, ich möchte den Status von Residents auf gotoBed stellen können. Dadurch würden nur die Fensterkontakte scharfgestellt.

Nun, die Fragestellung ist, wie kann ich es erreichen, dass der gTag nicht wieder das Residentdmodul auf Home stellt?
Er ist ja angemeldet und gibt daher present durch, was wiederum das genannte DOIF auslösen wird.
Dieses wiederum würde die Alarmanlage disablen..

Wie habt ihr das gelöst?

Ist der eleganteste Weg einfach das doif zu disablen wenn ich auf Status gotobed aktiviere und wieder aktiviere wenn ich am morgen aufstehe?

Danke für die Inputs
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 21 Dezember 2016, 07:08:08
event-on-change-reading bei den presence Devices als Attribut angeben.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PsychoD am 03 Januar 2017, 00:07:01
Nabend zusammen,

erstmal allen noch ein frohes Neues! :)

Ich hab ein Problem mit meinen GTags. Ich habe seit einigen Monaten ein GTag an meinem Schlüsselbund getestet, und wollte jetzt ein zweites für die Dame des Hauses hinzufügen.

Beide GTags sind exakt gleich definiert, und unterscheiden sich eigentlich nur in der Macadresse:

define pr_gtag PRESENCE lan-bluetooth 7C:2F:80:AC:9A:20 127.0.0.1:5333 10 120
attr pr_gtag userattr bt_devices bt_devices_map structexclude
attr pr_gtag absenceThreshold 3
attr pr_gtag bt_devices_damian str_pr_damian_bt
attr pr_gtag event-on-change-reading .*
attr pr_gtag eventMap 1
attr pr_gtag room Residents
attr pr_gtag userReadings battery


Mit einem GTag war alles super, nachdem ich das zweite gestern aktiviert habe, werden beide Tags nicht mehr zuverlässig erkannt. Teilweise stehen dann die Tags auf "absent", obwohl beide da sind. Wenn ich auf dem RPI im Linux dann "rfkill unblock all" ausführe, werden sie kurz danach wieder gefunden. Soweit jedenfalls meine aktuelle Beobachtung - was kann ich dagegen tun? Bei anderen hier scheint es ja keine Probleme mit mehreren Gtags zu geben.

Danke & Gruß
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 03 Januar 2017, 09:17:28
Hi!
Habe seit einem Jahr 3 G-Tags im Einsatz mit 0 Problemen.

Poste doch mal ein Log mit LOG_DEBUG.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 03 Januar 2017, 09:18:00
Hi!
Habe seit einem Jahr 3 G-Tags im Einsatz mit 0 Problemen.

Poste doch mal ein Log mit LOG_DEBUG.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 03 Januar 2017, 09:30:52
Ich habe 5 im Einsatz und auch keine Probleme.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: dev0 am 03 Januar 2017, 09:39:20
Zitat von: PsychoD am 03 Januar 2017, 00:07:01
Mit einem GTag war alles super, nachdem ich das zweite gestern aktiviert habe, werden beide Tags nicht mehr zuverlässig erkannt.

Vielleicht mag Dein BT Stick oder dessen Treiber nicht mehr als 1 Device gleichzeit oder läßt sich dadurch verwirren...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 03 Januar 2017, 09:59:29
Wobei die Frage ja ist was bedeutet gleichzeitig. Eine aktive Verbindung mit den Tags wird ja nicht hergestellt. Soweit mir bekannt ist das eine rein passive suche.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PsychoD am 03 Januar 2017, 22:19:06
Hmm, ich hab den ganzen Pi einmal neu gestartet, und heute den Tag über hat es mit beiden funktioniert. Ich hoffe, das bleibt dabei ;)

Danke für die Infos!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PsychoD am 08 Januar 2017, 10:48:22
Zitat von: dev0 am 03 Januar 2017, 09:39:20
Vielleicht mag Dein BT Stick oder dessen Treiber nicht mehr als 1 Device gleichzeit oder läßt sich dadurch verwirren...

Ich hab das Gefühl, hier ist was dran. Ich verwende Bluetooth einmal um einen Lautsprecher für Sprachausgaben daran anzuschließen, und dann auch für die GTags. Wenn ich mit bluetoothctl neue Geräte suche, oder das Batteriescript ausführe o.ä. ist mir aufgefallen, dass lepresenced anscheinend nicht mehr scannen darf/kann. rfkill list zeigt mir dann auch, dass auf meinem bluetoothdevice ein softblock liegt. Den muss ich dann entfernen, und neu starten, und manchmal nochmal entfernen - sonst klappt gar nichts mehr.

Das ist mir eindeutig zu hoch, aber es nervt mich natürlich sehr vor allem weil ich den Batteriezustand nicht prüfen kann.

Der Stick ist der empfohlene "CSL NET BT USB2.0 Stick", an einem RPI2 mit OSMC (basiert auf Raspian Jessie).

Bin für jeden Rat dankbar...

Viele Grüße
Psy
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Gasmast3r am 08 Januar 2017, 10:52:18
Deswegen lasse ich den Skript auf ne zeroPi Laufen der als Cam die Haustür bewacht. Da ich Bluetooth Thermostate nutze ;)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PsychoD am 08 Januar 2017, 10:53:50
Hattest du ähnliche Probleme? Wäre natürlich auch ne Möglichkeit, dafür einfach n anderen Pi zu verwenden, aber das ist n bissschen wie weglaufen ;)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Gasmast3r am 08 Januar 2017, 10:57:03
Es geht nur Le oder normal nicht beides zusammen, das ist meine Erfahrung und da ich 4pi im meinem Haushalt habe ist es mir eh egal auf welchem was läuft solange es geht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 08 Januar 2017, 11:06:17
Zitat von: PsychoD am 08 Januar 2017, 10:53:50
Hattest du ähnliche Probleme? Wäre natürlich auch ne Möglichkeit, dafür einfach n anderen Pi zu verwenden, aber das ist n bissschen wie weglaufen ;)

Es ist ein Bluetooth Framework für FHEM in Arbeit. Dies ist allerdings sehr Aufwendig und Zeitintensiv und wird daher noch etwas Zeit für die Entwicklung bedürfen. Mit dem Framework wird dann BT LE Presence und BT Schalten ohne weiteres möglich sein.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PsychoD am 08 Januar 2017, 14:51:21
Super, danke für das Update! Dann weiche ich erstmal auf nen zweiten pi aus und warte gespannt auf das bringt framework!
Schönen Sonntag!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 08 Januar 2017, 15:14:02
@PsychoD: Ich benutze sowohl lepresenced (3 Tags) als such eine rfcomm-Verbindung zu meinem Staubsaugerroboter. Interessanterweise habe ich keine erkennbaren Probleme.

Schau Dir doch mal das Log mit LOG_DEBUG an, um zu erkennen, ob das Batterieskript der Übeltäter ist.

Du könntest auch überlegen, den rfkill-Command testweise in lepresenced zu integrieren und zwar an die Stelle, wo auch hciconfig reset aufgerufen wird.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PsychoD am 08 Januar 2017, 23:08:08
Danke, guter Tipp! Ich habe rfkill nun in lepresenced integriert, mal schauen ob es das Problem lösen kann.

Viele Grüße
Psy
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 14 Januar 2017, 23:08:24
Ist das hier die aktuelle Anleitung zur Einrichtung von Gigaset G-Tag?

https://wiki.fhem.de/w/index.php?title=Anwesenheitserkennung&amp%3Boldid=12445#Anleitung_f.C3.BCr_ein_LE_Device_.28z.B._Gtags.2CPebbles_etc..29 (https://wiki.fhem.de/w/index.php?title=Anwesenheitserkennung&amp%3Boldid=12445#Anleitung_f.C3.BCr_ein_LE_Device_.28z.B._Gtags.2CPebbles_etc..29)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 14 Januar 2017, 23:12:49
Zitat von: Spezialtrick am 14 Januar 2017, 23:08:24
Ist das hier die aktuelle Anleitung zur Einrichtung von Gigaset G-Tag?

https://wiki.fhem.de/w/index.php?title=Anwesenheitserkennung&amp%3Boldid=12445#Anleitung_f.C3.BCr_ein_LE_Device_.28z.B._Gtags.2CPebbles_etc..29 (https://wiki.fhem.de/w/index.php?title=Anwesenheitserkennung&amp%3Boldid=12445#Anleitung_f.C3.BCr_ein_LE_Device_.28z.B._Gtags.2CPebbles_etc..29)

Nein!
Mittlerweile gibt es unter fhem/contrib/PRESENCE/deb entsprechende Pakete für presenced und lepresenced.
Lade sie Dir am besten im SVN (https://svn.fhem.de/fhem/trunk/fhem/contrib/PRESENCE/deb/) runter.

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 15 Januar 2017, 11:04:13
Vielen Dank für die schnelle Antwort, Dan!  :)

Ich habe die beiden Skripte nun mit

sudo dpkg -i lepresenced-0.6-1.deb

und

sudo dpkg -i presenced-1.4.deb

installiert und die G-Tags in Fhem mit

define G_Tag PRESENCE lan-bluetooth xx:xx:xx:xx:xx:xx 127.0.0.1:5333 120

definiert. War das schon alles?  :o

Die entsprechenden Status werden schon angezeigt.  :)

EDIT:

Ich nutze an meinem Cubietruck nicht das interne Bluetooth, sondern einen zusätzlichen Bluetooth Stick. Lässt sich irgendwie feststellen, welches Bluetooth Decive tatsächlich vom Skript genutzt wird?  ???
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 15 Januar 2017, 11:53:57
Zitat von: Spezialtrick am 15 Januar 2017, 11:04:13
Ich nutze an meinem Cubietruck nicht das interne Bluetooth, sondern einen zusätzlichen Bluetooth Stick. Lässt sich irgendwie feststellen, welches Bluetooth Decive tatsächlich vom Skript genutzt wird?  ???

Am besten das interne BT abschalten!
Innerhalb er PRESENCE Devices kannst Du auch noch "bluetooth_hci_device" setzen.

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 15 Januar 2017, 11:57:11
Zitat von: DeeSPe am 15 Januar 2017, 11:53:57
Am besten das interne BT abschalten!

Magst du mir verraten wie das funktioniert?

Die G-Tags steuern übrigens schon erfolgreich dein neues Modul. :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 15 Januar 2017, 12:10:36
Zitat von: Spezialtrick am 15 Januar 2017, 11:57:11
Magst du mir verraten wie das funktioniert?

Das kann ich Dir nicht sagen wie es beim Cubietruck zu deaktivieren geht.
Such mal nach "blacklist bluetooth".

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: cseuss am 15 Januar 2017, 20:10:32
Hallo zusammen,

ich nutze Lepresened auf einem rpi3 mit internem Bluetooth. Klappt so weit gut. Auf die Batterieprüfung für meine G-Tags verzichte ich derzeit (noch), da diese mit Lepresened kollidiert, wie viele hier auch berichtet haben.

Ich habe hier einmal gelesen, dass ein neues Lepresened-Supermodul in Vorbereitung ist, dass auch die Batterieprüfung für die G-Tags integiert haben soll.

Gibt es hierzu schon einen neuen Stand?

Treten die Probleme in den konkurrierenden Zugriffen auch bei Nutzung eines externen USB-BT-Sticks auf?

Gruß

Christian
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: CoolTux am 15 Januar 2017, 20:23:00
Hallo Christian,

Das erwähnte neue Lepresened-Supermodul wird ein Bluetooth Framework sein. Es hat nur am Rande was mit lepresenced zu tun. Die presence funktion ist quasi ein Abfallprodukt so zu sagen. Und ja es wird dann möglich sein Anwesenheit zu scannen und eine Batterieabfrage mit gatttool zu machen.
Wann dieses Framework fertig sein wird steht noch nicht fest, halten wir es einfach so "Es ist fertig, wenn es fertig ist"  ;D



Grüße
Leon
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 09 Februar 2017, 21:03:34
Ich habe seit heute neben meinen NUTs auch GTAGs.
Deshalb habe ich lebattery angepasst, damit es auch mit GTAGs funktioniert.

Hintergrund ist scheinbar, dass die GTAGs offizielle Adressen (-t public) und die NUTs inoffizielle/statische Adressen (-t random) benutzen.
public ist übrigens der default in gatttool.
Warum man das allerdings mitgeben muss, erschliesst sich mir nicht.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 12 Februar 2017, 12:28:39
Zitat von: Muwe am 29 Juli 2016, 16:00:11
Hallo allerseits

erstmal vielen Dank für Eure tolle Arbeit.

Mithilfe dieses Forums habe ich 2 G-tags erfolgreich in FHEM (Jessie auf Raspberry 3) eingebunden.
Die beiden G-Tags werden gefunden:
pi@raspberrypi:~ $ sudo hcitool lescan
LE Scan ...
7C:2F:80:A1:2F:06 (unknown)
7C:2F:80:A1:2F:06 Gigaset G-tag
7C:2F:80:AD:C3:86 (unknown)
7C:2F:80:AD:C3:86 Gigaset G-tag

Lepresenced läuft ohne Fehler, in FHEM wird die Anwesenheit und Abwesenheit korrekt angezeigt.

Leider laufen in den Logdateien /var/log/syslog und /var/log/kernel im Sekundentakt folgende Meldungen auf:

Jul 29 15:08:11 raspberrypi kernel: [ 4905.634211] bt_err_ratelimited: 1 callbacks suppressed
Jul 29 15:08:11 raspberrypi kernel: [ 4905.634231] Bluetooth: hci0 advertising data length corrected
Jul 29 15:08:12 raspberrypi kernel: [ 4906.647350] Bluetooth: hci0 advertising data length corrected
Jul 29 15:08:13 raspberrypi kernel: [ 4907.532081] Bluetooth: hci0 advertising data length corrected
Jul 29 15:08:13 raspberrypi kernel: [ 4907.655564] Bluetooth: hci0 advertising data length corrected
...

Wobei der Befehl "hcitool lescan" genau 2 Meldungen in den Logdateien erzeugt.
Bei "hcitool --duplicates" werden dann fortlaufend Meldungen generiert.

Leider habe ich bisher keine Möglichkeiten gefunden diese Meldungen abzustellen bzw. zu unterdrücken.

Habt Ihr vielleicht eine Idee ?

Hallo. selbes habe ich hier.

Bluetooth: hci0  advertising data length corrected

Benutze Presence mit dem Bluetooth-Modul vom Raspi 3 und G-Tags zusätzlich das EnOcean-Pi-Modul auf dem Raspi.
Hat jemand eine Ahnung, wodurch das hervor gerufen wird?

Vielen Dank und bis denn
SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ToKa am 12 Februar 2017, 13:44:44
Schau Dir mal den Eintrag #683 an
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 12 Februar 2017, 19:44:54
Goil,
was ich nicht mehr wusste, dass ich den Beitrag schonmal im Oktober letzten Jahres gefunden hatte :)
Hatte da nen hilfreich angklickt.
Umsetzen konnte ich das aber nicht... warum auch immer. Wahrscheinlich war wieder was anderes in fhem zu machen ;)
Was mir persönlich nicht gefällt ist genau das, was du auch schreibst:
Das Problem ist damit nicht behoben.
Was bedeutet die Fehlermeldung eigentlich? Und warum taucht die überhaupt auf?
UND:
sind wir die einzigen hier, die dieses Problem haben?

Bis denn
SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 12 Februar 2017, 21:38:55
Zitat von: SouzA am 12 Februar 2017, 19:44:54
Was bedeutet die Fehlermeldung eigentlich? Und warum taucht die überhaupt auf?
UND:
sind wir die einzigen hier, die dieses Problem haben?

Wohl ja, denn alle anderen (die ein zuverlässiges BT benötigen) habe diese Konstellation gewechselt.

Es wurde schon mehrfach hier im Forum und auch anderswo berichtet dass das integrierte BT Modul am RPi3 nicht (oder sehr schlecht) mit einem gleichzeitig per UART betriebenen Modul zurecht kommt. Es gibt da wohl (Interrupt?)Überschneidungen.
Darum hatte ich an meinem RPi3 immer ein RaZberry Modul per UART und einen per USB angeschlossenen BT Stick. Das integrierte BT Modul hatte ich deaktiviert.
Das gab dann nie irgendwelche Probleme!

RPI + UART Modul + (integriertes) BT Modul = schlecht!!!

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 12 Februar 2017, 23:34:26
Hi,
Danke für die Antwort.
Bei mir wäre das der dritte USB-Teilnehmer... Neben Jeelink und HomeMatic.
Ich habe sonst echt überhaupt keine Probleme mit dem Bluetooth vom Pi.
Gibt es irgendwo eine verständliche Anleitung, wie man in Linux die USB-Sticks immer den gleichen Port zuweisen kann? Da habe ich eher Probleme mit... Wenn das behoben wäre, könnte man mal über einen BT-Stick nachdenken.

Bis denn
SouzA 
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 12 Februar 2017, 23:38:11
Zitat von: SouzA am 12 Februar 2017, 23:34:26
Gibt es irgendwo eine verständliche Anleitung, wie man in Linux die USB-Sticks immer den gleichen Port zuweisen kann? Da habe ich eher Probleme mit...

Sowas: https://wiki.fhem.de/wiki/LinuxDeviceNaming ?

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 12 Februar 2017, 23:48:44
Hi,
Ich habe auch noch mal gegoogelt...
Das klingt irgendwie einfacher :

https://steigerbalett.wordpress.com/2015/05/24/mehrere-usb-devices-am-raspberrypi-richtig-in-fhem-zuordnen/

Jetzt hoffe ich nur, dass funktioniert nach zwei Jahren heutr auch noch. Das werde ich in den nächsten Tagen mal testen.

Bis denn
SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: RaspiLED am 13 Februar 2017, 13:51:32
Hi SouzA,
Du hättest auch die empfohlene Seite zu Ende lesen können und das Thema serial-by-id am Ende gefunden! Zu Deiner Beruhigung: Ja das geht noch genau so ;-)
Gruß Arnd


Raspi2 mit FHEM, CUL, MySensor, HomeBridge, Presence, Bravia, ...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 13 Februar 2017, 22:12:23
Hi,
Boahh wer liest schon das Kleingedruckte?  ;D
Für mich als Linux-Noob waren das schon ab Mitte des Wiki böhmische Dörfer. Da hab ich nur noch mal abgescrollt und natürlich das Ende verpasst.
Is wie im Kino... Wer nicht sitzen bleibt, der verpasst die Outtakes.  :D

Bis denn
SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 16 Februar 2017, 16:57:12
Ich musste mein System leider neu aufsetzen und habe nun Probleme mit der Anwesenheitserkennung der GTAGs über Bluetooth.

Ich habe die beiden Skripte mit

sudo dpkg -i lepresenced-0.6-1.deb

und

sudo dpkg -i presenced-1.4.deb

installiert und die G-Tags in Fhem mit

define G_Tag PRESENCE lan-bluetooth xx:xx:xx:xx:xx:xx 127.0.0.1:5333 120

definiert:

fhem@cubietruck:~$ cd /opt/fhem
fhem@cubietruck:~$ sudo dpkg -i presenced-1.4.deb
[sudo] password for fhem:
Selecting previously unselected package presenced.
(Reading database ... 76158 files and directories currently installed.)
Preparing to unpack presenced-1.4.deb ...
Unpacking presenced (1.4) ...
Setting up presenced (1.4) ...
Start presenced ... OK
Processing triggers for systemd (215-17+deb8u6) ...
fhem@cubietruck:~$ sudo dpkg -i lepresenced-0.6-1.deb
Selecting previously unselected package lepresenced.
(Reading database ... 76160 files and directories currently installed.)
Preparing to unpack lepresenced-0.6-1.deb ...
Unpacking lepresenced (0.6-1) ...
Setting up lepresenced (0.6-1) ...
[ ok ] Starting lepresenced (via systemctl): lepresenced.service.
Processing triggers for systemd (215-17+deb8u6) ...
fhem@cubietruck:~$


Ein paar Sekunden nach der Installation melden sich beide GTags problemlos an und werden erkannt. Nach einem Neustart des Cubietruck wird leider nichts mehr erkannt, obwohl die beiden Skripte weiterhin laufen:

fhem@cubietruck:~$ sudo service presenced status
● presenced.service - LSB: starts presenced for presence detection
   Loaded: loaded (/etc/init.d/presenced)
   Active: active (running) since Thu 2017-02-16 16:46:58 CET; 8min ago
  Process: 686 ExecStart=/etc/init.d/presenced start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/presenced.service
           └─1162 /usr/bin/perl /usr/sbin/presenced -d -P /var/run/presenced.pid -v -l /var/log/presenced.log

Feb 16 16:46:58 cubietruck systemd[1]: Started LSB: starts presenced for presence detection.
Feb 16 16:46:58 cubietruck presenced[686]: Start presenced ... OK


fhem@cubietruck:~$ sudo service lepresenced status
● lepresenced.service - LSB: lepresenced - presenced for Bluetooth LE devices.
   Loaded: loaded (/etc/init.d/lepresenced)
   Active: active (running) since Thu 2017-02-16 16:46:59 CET; 9min ago
  Process: 738 ExecStart=/etc/init.d/lepresenced start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/lepresenced.service
           ├─1226 /usr/bin/perl /usr/sbin/lepresenced --daemon --device hci0 --listenaddress 0.0.0.0 --listenport 5333 --loglevel LOG_WARNING
           └─1273 hcitool -i hci0 lescan --duplicates

Feb 16 16:46:47 cubietruck systemd[1]: Starting LSB: lepresenced - presenced for Bluetooth LE devices....
Feb 16 16:46:59 cubietruck lepresenced[738]: Starting the process: lepresenced.
Feb 16 16:46:59 cubietruck systemd[1]: Started LSB: lepresenced - presenced for Bluetooth LE devices..


Wenn ich die Skripte mit

fhem@cubietruck:~$ sudo service lepresenced restart
fhem@cubietruck:~$ sudo service presenced restart


neustarte, werden die GTAGs Innerhalt kurzer Zeit wieder gefunden.

Hat jemand eine Idee woran das liegen könnte und wie man es beheben kann?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 16 Februar 2017, 19:13:06
Was steht denn nach dem Reboot zu lepresenced im Syslog? Was sagt denn list G_Tag (in FHEM)?


Von unterwegs gesendet.
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: RaspiLED am 16 Februar 2017, 19:45:18
Hi,
Ich tippe auf ein Timing Problem beim starten der Dienste! Kannst Du uns mal ein "ps ax" nach dem booten senden? Welcher Dienst ist vor und welcher nach FHEM gestartet (anhand der PID)? Kann man die Startreihenfolge im init.d ändern? Z. B. so https://debianforum.de/forum/viewtopic.php?f=27&t=116065
Workaround sind sleep Befehle oder die Dienste im FHEM init.d script anstatt im runlevel script starten...
Gruß Arnd


Raspi2 mit FHEM, CUL, MySensor, HomeBridge, Presence, Bravia, ...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 16 Februar 2017, 20:01:18
Zitat von: RaspiLED am 16 Februar 2017, 19:45:18
Hi,
Ich tippe auf ein Timing Problem beim starten der Dienste! Kannst Du uns mal ein "ps ax" nach dem booten senden? Welcher Dienst ist vor und welcher nach FHEM gestartet (anhand der PID)? Kann man die Startreihenfolge im init.d ändern? Z. B. so https://debianforum.de/forum/viewtopic.php?f=27&t=116065
Workaround sind sleep Befehle oder die Dienste im FHEM init.d script anstatt im runlevel script starten...
Gruß Arnd


Raspi2 mit FHEM, CUL, MySensor, HomeBridge, Presence, Bravia, ...

Hier die Ausgabe:


root@cubietruck:~# ps ax
  PID TTY      STAT   TIME COMMAND
    1 ?        Ss     0:09 /sbin/init
    2 ?        S      0:00 [kthreadd]
    3 ?        S      0:00 [ksoftirqd/0]
    4 ?        S      0:00 [kworker/0:0]
    5 ?        S<     0:00 [kworker/0:0H]
    6 ?        S      0:00 [kworker/u4:0]
    7 ?        S      0:00 [rcu_sched]
    8 ?        S      0:00 [rcu_bh]
    9 ?        S      0:00 [migration/0]
   10 ?        S<     0:00 [lru-add-drain]
   11 ?        S      0:00 [cpuhp/0]
   12 ?        S      0:00 [cpuhp/1]
   13 ?        S      0:00 [migration/1]
   14 ?        S      0:00 [ksoftirqd/1]
   15 ?        S      0:00 [kworker/1:0]
   16 ?        S<     0:00 [kworker/1:0H]
   17 ?        S      0:00 [kdevtmpfs]
   18 ?        S<     0:00 [netns]
   19 ?        S      0:00 [oom_reaper]
   20 ?        S<     0:00 [writeback]
   21 ?        S      0:00 [kcompactd0]
   22 ?        S<     0:00 [crypto]
   23 ?        S<     0:00 [kintegrityd]
   24 ?        S<     0:00 [bioset]
   25 ?        S<     0:00 [kblockd]
   26 ?        S<     0:00 [ata_sff]
   27 ?        S<     0:00 [devfreq_wq]
   28 ?        S<     0:00 [watchdogd]
   29 ?        S<     0:00 [rpciod]
   30 ?        S      0:00 [kworker/0:1]
   31 ?        S<     0:00 [xprtiod]
   32 ?        S      0:00 [kworker/1:1]
   33 ?        S      0:00 [kswapd0]
   34 ?        S<     0:00 [vmstat]
   35 ?        S<     0:00 [nfsiod]
   36 ?        S      0:00 [jfsIO]
   37 ?        S      0:00 [jfsCommit]
   38 ?        S      0:00 [jfsCommit]
   39 ?        S      0:00 [jfsSync]
   40 ?        S<     0:00 [bioset]
   41 ?        S<     0:00 [xfsalloc]
   42 ?        S<     0:00 [xfs_mru_cache]
   86 ?        S<     0:00 [kthrotld]
   87 ?        S<     0:00 [bioset]
   88 ?        S<     0:00 [bioset]
   89 ?        S<     0:00 [bioset]
   90 ?        S<     0:00 [bioset]
   91 ?        S<     0:00 [bioset]
   92 ?        S<     0:00 [bioset]
   93 ?        S<     0:00 [bioset]
   94 ?        S<     0:00 [bioset]
   95 ?        S<     0:00 [bioset]
   96 ?        S<     0:00 [bioset]
   97 ?        S<     0:00 [bioset]
   98 ?        S<     0:00 [bioset]
   99 ?        R      0:00 [kworker/u4:1]
  102 ?        S      0:00 [irq/87-axp20x_i]
  103 ?        S      0:00 [irq/27-sunxi-mm]
  104 ?        S      0:00 [irq/56-1c0f000.]
  106 ?        S<     0:00 [ipv6_addrconf]
  107 ?        S<     0:00 [bioset]
  116 ?        S      0:00 [kworker/1:2]
  117 ?        S      0:00 [kworker/1:3]
  118 ?        S<     0:00 [bioset]
  119 ?        S      0:00 [mmcqd/0]
  120 ?        S      0:00 [scsi_eh_0]
  121 ?        S<     0:00 [scsi_tmf_0]
  123 ?        S<     0:00 [bioset]
  124 ?        S      0:00 [kworker/u4:2]
  133 ?        S      0:00 [kworker/0:2]
  156 ?        S      0:00 [irq/28-sunxi-mm]
  159 ?        S<     0:00 [kworker/0:1H]
  161 ?        S<     0:00 [kworker/1:1H]
  177 ?        S      0:00 [kworker/0:3]
  187 ?        S      0:00 [jbd2/sda1-8]
  188 ?        S<     0:00 [ext4-rsv-conver]
  200 ?        S      0:00 [kworker/0:4]
  232 ?        S<     0:00 [cfg80211]
  233 ?        S<     0:00 [brcmf_wq/mmc1:0]
  234 ?        S      0:00 [brcmf_wdog/mmc1]
  235 ?        S<     0:00 [krfcommd]
  236 ?        S<     0:00 [bond0]
  238 ?        S      0:00 [kauditd]
  249 ?        Ss     0:02 /lib/systemd/systemd-journald
  250 ?        Ss     0:01 /lib/systemd/systemd-udevd
  319 ?        S      0:00 [rc0]
  333 ?        S<     0:00 [kworker/u5:0]
  334 ?        S<     0:00 [hci0]
  335 ?        S<     0:00 [hci0]
  336 ?        S<     0:00 [kworker/u5:1]
  337 ?        S<     0:00 [kworker/u5:2]
  396 ?        S      0:00 [jbd2/mmcblk0p1-]
  397 ?        S<     0:00 [ext4-rsv-conver]
  630 ?        Ss     0:03 /usr/sbin/haveged --Foreground --verbose=1 --write=1024
  631 ?        Ss     0:00 /usr/sbin/cron -f
  632 ?        Ssl    0:00 /usr/sbin/NetworkManager --no-daemon
  636 ?        Ss     0:00 /usr/sbin/sshd -D
  637 ?        Ssl    0:00 /usr/sbin/rsyslogd -n
  639 ?        Ss     0:00 avahi-daemon: running [cubietruck.local]
  643 ?        Ss     0:00 /lib/systemd/systemd-logind
  647 ?        Ss     0:00 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
  649 ?        S      0:00 avahi-daemon: chroot helper
  684 ?        Ss     0:00 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -c /var/lib/ntp/ntp.conf.dhcp -u 105:110
  696 ?        Sl     0:00 /usr/bin/shairport-sync --daemon
  707 ?        Ss     0:00 /bin/sh /etc/init.d/fhem start
  727 ?        S      0:00 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -c /var/lib/ntp/ntp.conf.dhcp -u 105:110
  731 ?        Ssl    0:00 /usr/sbin/cupsd -f
  742 ?        Ss     0:00 /usr/sbin/lircd --driver=devinput --device=/dev/input/
  810 ?        S      0:04 /usr/sbin/dnsmasq -x /var/run/dnsmasq/dnsmasq.pid -u dnsmasq -7 /etc/dnsmasq.d,.dpkg-dist,.dpkg-old,.dpkg-new --local-service
  880 ?        Ss     0:00 /usr/sbin/xinetd -pidfile /run/xinetd.pid -stayalive -inetd_compat -inetd_ipv6
  895 ?        Ss     0:00 /usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf
  901 ?        S      0:00 /bin/sh /usr/bin/mysqld_safe
  927 ?        Ss     0:00 /sbin/dhcpcd
  974 ?        Ss     0:00 sshd: root@pts/0   
  979 ?        S      0:00 /opt/hmcfgusb/hmland -d -p 1234 -r 0
  980 ?        R      0:04 perl fhem.pl configDB
1128 ?        Ss     0:00 /lib/systemd/systemd --user
1135 ?        Ssl    0:00 /usr/lib/policykit-1/polkitd --no-debug
1141 ?        S      0:00 (sd-pam) 
1147 tty1     Ss+    0:00 /sbin/agetty --noclear tty1 linux
1153 ttyS0    Ss+    0:00 /sbin/agetty --keep-baud 115200 38400 9600 ttyS0 vt102
1181 ?        Ss     0:00 /usr/bin/php-cgi
1197 ?        S      0:00 /usr/bin/perl /usr/sbin/presenced -d -P /var/run/presenced.pid -v -l /var/log/presenced.log
1238 ?        S      0:00 /usr/bin/php-cgi
1239 ?        S      0:03 /usr/bin/php-cgi
1240 ?        S      0:00 /usr/bin/php-cgi
1241 ?        S      0:00 /usr/bin/php-cgi
1249 ?        Ssl    0:00 /usr/bin/perl /usr/sbin/lepresenced --daemon --device hci0 --listenaddress 0.0.0.0 --listenport 5333 --loglevel LOG_WARNING
1278 ?        Ss     0:00 /sbin/wpa_supplicant -u -s -O /run/wpa_supplicant
1297 ?        S      0:00 hcitool -i hci0 lescan --duplicates
1314 ?        Sl     0:02 homebridge                   
1359 ?        S      0:00 /bin/bash /etc/init.d/armhwinfo start
1365 ?        S      0:00 sleep 20
1379 ?        Ss     0:00 /lib/systemd/systemd --user
1384 ?        S      0:00 (sd-pam) 
1489 ?        S<     0:00 [hci1]
1490 ?        S<     0:00 [hci1]
1492 ?        S      0:00 hciattach /dev/ttyS2 any
1498 ?        Ss     0:00 /usr/lib/bluetooth/bluetoothd
1525 ?        Sl     0:01 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --log-error=/var/log/mysql/error.log --pid-file=/var/run/mysqld/mysqld.p
1531 ?        Ss     0:00 /lib/systemd/systemd-hostnamed
1650 ?        Ss     0:00 /usr/sbin/nmbd -D
1651 ?        Ss     0:00 /bin/sh /etc/init.d/smbd start
1668 pts/0    Ss     0:00 -bash
1692 ?        S      0:00 /bin/bash /etc/mysql/debian-start
1717 ?        S      0:00 xargs -i /usr/bin/mysql --defaults-file=/etc/mysql/debian.cnf --skip-column-names --silent --batch --force -e {}
1736 ?        S      0:00 /bin/sh -c /bin/echo -n "$(npm -g prefix)/lib/node_modules"
1737 ?        Rl     0:00 /usr/local/bin/node /usr/local/bin/npm -g prefix
1760 ?        R      0:00 /usr/sbin/smbd -D
1775 pts/0    R+     0:00 ps ax
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: RaspiLED am 16 Februar 2017, 21:03:58
Hi,
Wenn das nach dem Reboot ist, dann stimmt die Reihenfolge. Erst fhem dann die presence Dienste. Gibt es irgendwo Logs zu den Diensten?
Gruß Arnd


Raspi2 mit FHEM, CUL, MySensor, HomeBridge, Presence, Bravia, ...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 16 Februar 2017, 21:06:56
Zitat von: RaspiLED am 16 Februar 2017, 21:03:58
Hi,
Wenn das nach dem Reboot ist, dann stimmt die Reihenfolge. Erst fhem dann die presence Dienste. Gibt es irgendwo Logs zu den Diensten?
Gruß Arnd


Raspi2 mit FHEM, CUL, MySensor, HomeBridge, Presence, Bravia, ...

Das ist exakt die Reihenfolge nach dem Reboot, aber offenbar fehlte den Presence Diensten das Bluetooth. Ich habe es nun hinbekommen, in dem ich in beiden Skripten unter "Required-Start" "bluetooth" ergänzt habe. Nun klappt es einwandfrei.  :)

Vielen Dank für deine Hilfe!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: RaspiLED am 16 Februar 2017, 21:23:52
Hi,
Ja super! Dann lag ich nicht ganz falsch ;-)
Kannst Du Deine Änderungen hier noch posten oder machst Du einen Pull request bei github ;-)
Gruß Arnd


Raspi2 mit FHEM, CUL, MySensor, HomeBridge, Presence, Bravia, ...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 16 Februar 2017, 21:27:27
Zitat von: RaspiLED am 16 Februar 2017, 21:23:52
Hi,
Ja super! Dann lag ich nicht ganz falsch ;-)
Kannst Du Deine Änderungen hier noch posten oder machst Du einen Pull request bei github ;-)
Gruß Arnd


Raspi2 mit FHEM, CUL, MySensor, HomeBridge, Presence, Bravia, ...

Gerne doch, war aber nichts großes. Anbei meine Änderungen, jeweils der Anfang des Skripts:

#!/bin/sh

### BEGIN INIT INFO
# Provides:                             lepresenced
# Required-Start:               networking bluetooth
# Required-Stop:                networking bluetooth
# Default-Start:                2 3 4 5
# Default-Stop:                 0 1 6
# Short-Description:    lepresenced - presenced for Bluetooth LE devices.
# Description:                  lepresenced
#                                               checks for one or multiple bluetooth *low energy*
#                                               devices for their presence state and reports it
#                                               to the 73_PRESENCE.pm module.
### END INIT INFO


#!/bin/sh
#
# Author: Markus Bloch
#
# /etc/init.d/collectord
#
### BEGIN INIT INFO
# Provides:        presenced
# Required-Start: bluetooth
# Required-Stop:
# Default-Start:   2 3 5
# Default-Stop:    0 1 6
# Short-Description: starts presenced for presence detection
# Description:       Collector Daemon for the Presence detection of multiple rooms (presenced)
#
# Installation:
# - copy this file to /etc/init.d
# - chmod 744 /etc/init.d/presenced
# - enable and edit in YAST system services
### END INIT INFO
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 19 Februar 2017, 12:50:52
Zitat von: DeeSPe am 12 Februar 2017, 21:38:55
Wohl ja, denn alle anderen (die ein zuverlässiges BT benötigen) habe diese Konstellation gewechselt.

Es wurde schon mehrfach hier im Forum und auch anderswo berichtet dass das integrierte BT Modul am RPi3 nicht (oder sehr schlecht) mit einem gleichzeitig per UART betriebenen Modul zurecht kommt. Es gibt da wohl (Interrupt?)Überschneidungen.
Darum hatte ich an meinem RPi3 immer ein RaZberry Modul per UART und einen per USB angeschlossenen BT Stick. Das integrierte BT Modul hatte ich deaktiviert.
Das gab dann nie irgendwelche Probleme!

RPI + UART Modul + (integriertes) BT Modul = schlecht!!!

Gruß
Dan

Hi,

ich habe mir nen BT-Stick besorgt und an den Raspi gepackt.
Ich habe nun dennoch Fehlermedungen
Bluetooth: hci0 advertising data length corrected

Habe folgendes bis dahin gemacht:

sudo nano /boot/config.txt
dtoverlay=pi3-disable-bt

und

systemctl disable hciuart

Speichern, schließen und neustarten.


Weiß da jemand Rat?

Vielen Dank und bis denn.
SouzA

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 19 Februar 2017, 12:59:20
Zitat von: SouzA am 19 Februar 2017, 12:50:52
Hi,

ich habe mir nen BT-Stick besorgt und an den Raspi gepackt.
Ich habe nun dennoch Fehlermedungen
Bluetooth: hci0 advertising data length corrected

Habe folgendes bis dahin gemacht:

sudo nano /boot/config.txt
dtoverlay=pi3-disable-bt

und

systemctl disable hciuart

Speichern, schließen und neustarten.


Weiß da jemand Rat?

Vielen Dank und bis denn.
SouzA

/etc/modprobe.d/raspi-blacklist.conf

#wifi
blacklist brcmfmac
blacklist brcmutil
#bt
blacklist btbcm
blacklist hci_uart


Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 19 Februar 2017, 13:11:03
Hi,

vielen Dank. Werde ich testen.
Ungeachtet der Fehlermeldungen habe ich versucht die Presence-Module mit dem BT-Stick über local-bluetooth zu verheiraten...
Der BT-Stick wird vom Raspi erkannt und die G-Tags sehe ich auch.

In FHEM wechselt nun allerdings ständig der Status:
present, timeout, absent, present...

Wasn da los?
Vielen Dank!

Bis denn
SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: cseuss am 19 Februar 2017, 14:06:39
Hallo SouzA,

ZitatUngeachtet der Fehlermeldungen habe ich versucht die Presence-Module mit dem BT-Stick über local-bluetooth zu verheiraten...
Der BT-Stick wird vom Raspi erkannt und die G-Tags sehe ich auch.

In FHEM wechselt nun allerdings ständig der Status:
present, timeout, absent, present...

G-Tags sind LE-Bluetooth-Devices. Ich würde es erst einmal mit lepresenced versuchen. Siehe: https://wiki.fhem.de/wiki/Anwesenheitserkennung#Anleitung_f.C3.BCr_ein_LE_Device_.28z.B._Gtags.2CPebbles_etc..29 und dann Mode: lan-bluetooth.

lepresenced bekommst Du in der Zwischenzeit auch als fertiges Debian-Paket. Findet man in der Commandref zum PRESENCE Modul: https://fhem.de/commandref.html#PRESENCE

Gruß

Christian
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 19 Februar 2017, 18:29:32
Hi,
Zitat von: DeeSPe am 19 Februar 2017, 12:59:20
/etc/modprobe.d/raspi-blacklist.conf

#wifi
blacklist brcmfmac
blacklist brcmutil
#bt
blacklist btbcm
blacklist hci_uart


Gruß
Dan

Habe ich durchgeführt. Die Fehlermeldungen bleiben?!
Woran kann das noch liegen?
Ich gehe davon aus, dass der Raspi den BT-Stick verwendet, da keine BT-Verbindung angezeigt wird, wenn ich den abziehe.

Zitat von: cseuss am 19 Februar 2017, 14:06:39
Hallo SouzA,

G-Tags sind LE-Bluetooth-Devices. Ich würde es erst einmal mit lepresenced versuchen. Siehe: https://wiki.fhem.de/wiki/Anwesenheitserkennung#Anleitung_f.C3.BCr_ein_LE_Device_.28z.B._Gtags.2CPebbles_etc..29 und dann Mode: lan-bluetooth.

lepresenced bekommst Du in der Zwischenzeit auch als fertiges Debian-Paket. Findet man in der Commandref zum PRESENCE Modul: https://fhem.de/commandref.html#PRESENCE

Gruß

Christian
Ja, die G-Tags waren zuvor auch so eingebunden... Keine Ahnung, warum ich jetzt auf den Trichter kam, da nen local-bluetooth von zu machen. Habs wieder auf lan geändert und funzt auch nicht.
Der BT-Stick meldet sich irgendwann vom Raspi ab, bzw. fhem erkennt keine BT teilnehmer mehr...

Vielen Dank für eure Unterstützung!

Bis denn
SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: majestro84 am 06 März 2017, 11:04:00
Hallo

Habe am Wochenende zwei Nut LE-Bluetooth-Devices mit lepresenced in FHEM integriert.
Zuerst habe ich es mit dem Skript lepresenced-0.8-1.deb probiert und habe es nicht hinbekommen eine Verbindung zu herzustellen aus Fhem heraus. Hcitool Lescan funktioniert auf dem PI.
Habe es dann mit dem Skript lepresenced-0.6-1.deb auch auf anhiebt zum laufen bekommen.

Jetzt meine Frage wo ist der Unterschied zwischen den beiden Skripten?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 06 März 2017, 11:58:05
Hi!

Zitat von: majestro84 am 06 März 2017, 11:04:00
Habe am Wochenende zwei Nut LE-Bluetooth-Devices mit lepresenced in FHEM integriert.
Zuerst habe ich es mit dem Skript lepresenced-0.8-1.deb probiert und habe es nicht hinbekommen eine Verbindung zu herzustellen aus Fhem heraus. Hcitool Lescan funktioniert auf dem PI.
Habe es dann mit dem Skript lepresenced-0.6-1.deb auch auf anhiebt zum laufen bekommen.
Oh, das ist aber merkwürdig. Gab es beim Installieren Abhängigkeitsprobleme oder sonstige Meldungen? Kannst Du mal schauen, ob bluez-hcidump installiert ist, bzw. ob Du hcidump ausführen kannst?

Zitat von: majestro84 am 06 März 2017, 11:04:00
Jetzt meine Frage wo ist der Unterschied zwischen den beiden Skripten?
Vor allem die Auswertung der Feldstärke und diverse kleine Verbesserungen.

Patrick

@Alle: Das Paket wurde ja - auch hier im Forum - diverse Male heruntergeladen. Gab es Probleme?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 06 März 2017, 12:18:25
@majestro84:
Habe die Installation gerade auf einem "nackten" Pi3 noch einmal durchprobiert und es läuft auf Anhieb. So müsste es bei Dir ausgesehen haben:

root@rpi-test:~# dpkg -i lepresenced-0.8-1.deb
Vormals nicht ausgewähltes Paket lepresenced wird gewählt.
(Lese Datenbank ... 42030 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von lepresenced-0.8-1.deb ...
Entpacken von lepresenced (0.8-1) ...
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von lepresenced:
lepresenced hängt ab von bluez-hcidump; aber:
  Paket bluez-hcidump ist nicht installiert.

dpkg: Fehler beim Bearbeiten des Paketes lepresenced (--install):
Abhängigkeitsprobleme - verbleibt unkonfiguriert
Trigger für systemd (215-17+deb8u6) werden verarbeitet ...
Fehler traten auf beim Bearbeiten von:
lepresenced
root@rpi-test:~# apt-get -f install
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Abhängigkeiten werden korrigiert ... Fertig
Die folgenden zusätzlichen Pakete werden installiert:
  bluez-hcidump
Die folgenden NEUEN Pakete werden installiert:
  bluez-hcidump
0 aktualisiert, 1 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
1 nicht vollständig installiert oder entfernt.
Es müssen 157 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 490 kB Plattenplatz zusätzlich benutzt.
Möchten Sie fortfahren? [J/n]
Holen: 1 http://archive.raspberrypi.org/debian/ jessie/main bluez-hcidump armhf 5.23-2+rpi2 [157 kB]
Es wurden 157 kB in 0 s geholt (921 kB/s).
Vormals nicht ausgewähltes Paket bluez-hcidump wird gewählt.
(Lese Datenbank ... 42033 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von .../bluez-hcidump_5.23-2+rpi2_armhf.deb ...
Entpacken von bluez-hcidump (5.23-2+rpi2) ...
Trigger für man-db (2.7.0.2-5) werden verarbeitet ...
bluez-hcidump (5.23-2+rpi2) wird eingerichtet ...
lepresenced (0.8-1) wird eingerichtet ...
[ ok ] Starting lepresenced (via systemctl): lepresenced.service.

Das Einzige, was ich mir vorstellen kann, ist dass Du nach dem dpkg -i "aufgehört" hast. Wie Du siehst, ist danach noch apt-get -f install nötig, um die Abhängigkeit bluez-hcidump zu installieren, die bei Version 0.6 noch nicht erforderlich ist.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: majestro84 am 06 März 2017, 20:16:37
Hi

Sorry habe es jetzt erst geschafft nochmal zu gucken.
Erstmal danke für die schnelle Antwort.
Du hast recht das apt-get -f install habe ich nicht gemacht.
Danke für den Tipp nun läuft die Version 0.8-1.

Schönen Abend noch
Gruß
Alex
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jojo11 am 13 März 2017, 17:04:51
Hallo zusammen,

dank dieses threads habe ich erfolgreich Folgendes in Betrieb genommen:
- 2x Raspberry Pi 2 mit laufendem lepresenced-Skript (installiert habe ich das .deb-Paket unter Jessie) und je einem BT-dongle.
- 1x Raspberry Pi 3 mit laufendem lepresenced- und collectord-Skript (.deb-Pakete unter Jessie) und BT onboard.

Läuft alles bestens mit 3 G-Tags.

Der RPI3 hängt an einem Netzwerkstrang zusammen mit einem HMLAN (selber switch). Letzterer disconnected sich, sofern er nicht alle 25 (?) Sekunden mit FHEM kommuniziert. Üblicher Weise passiert das, wenn in FHEM irgendwas blockiert oder das Netzwerk ausfällt. Ich habe einen weiteren HMLAN, der allerdings an einem anderen Strang hängt (im selben LAN).

Jetzt habe ich beobachtet, dass der HMLAN sich regelmäßig alle paar Minuten disconnected, falls ALLE G-Tags abwesend sind. Ist auch nur einer wieder anwesend, hören die disconnects auf. Der andere HMLAN zeigt nichts Auffälliges.
Ich habe versucht,
a) die Intervalle in der collecord.conf zu erhöhen. Insbesondere die 20 s bei Abwesenheit (auf 180 s). Das hat allerdings rein gar nichts gebracht.
b) mittels apptime blockierende Module zu finden. Hier finde ich nichts Auffälliges, was ich mit presence in Verbindung bringen kann.

Kann es sein, dass collectord eine hohe Netzwerklast bei Abwesenheit erzeugt? Welche Interaktion findet zwischen collectord und lepresenced-Rechnern statt, die evtl. das Netzwerk blockieren kann?
Wo könnte ich alternativ suchen? Ich bin etwas ratlos  :-\
Vielen Dank!

schöne Grüße
Jo

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 13 März 2017, 20:46:57
Hi!

Zitat von: Jojo11 am 13 März 2017, 17:04:51
Kann es sein, dass collectord eine hohe Netzwerklast bei Abwesenheit erzeugt? Welche Interaktion findet zwischen collectord und lepresenced-Rechnern statt, die evtl. das Netzwerk blockieren kann?
Das halte ich (ich bin nicht der collectord-Entwickler) für ausgesprochen unwahrscheinlich. Der collectord hat ja kaum etwas mitzuteilen und mit dem bisschen Text zwingt man wohl keine 100MBit/s-Verbindung in die Knie.

Ich bin mir auch zugegebenermaßen nicht sicher, ob Deine Beobachtung reiner Zufall ist.

Zitat von: Jojo11 am 13 März 2017, 17:04:51
Wo könnte ich alternativ suchen? Ich bin etwas ratlos  :-\

Schwierig, das Wichtigste hast Du ja schon getan, nämlich apptime zu befragen. Zur Sicherheit könntest Du noch Perfmon nutzen. Ich bekomme in Perfmon ab und zu Freezes, die ich in Apptime nicht sehe.


Patrick

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jojo11 am 13 März 2017, 21:14:02
Hallo,

vielen Dank für die Anregungen. Zwischenzeitlich denke ich auch, dass es evtl Zufall ist, dass die disconnects gerade mit Einführung der gtags kamen. Habe die HMLANs mal auf FW 0.965 aktualisiert. Netzwerk habe ich mit Etherape untersucht. Einzig die ipcams erzeugen signifikanten traffic. Das konnte ich aber ausschließen, da sie ausgeschaltet waren. Seltsam ist halt, dass der andere hmlan keine Probleme macht. Wdtimer ändere ich lieber nicht. Bisher habe ich immer noch die Ursache finden können  8) Ich werde mal weiter beobachten und die logs studieren  ::)

Schöne Grüße
Jo
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 14 März 2017, 08:46:41
Auch wenn wir jetzt off-topic werden: Logge doch mal die Auslastung der HMLANs mit.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jojo11 am 14 März 2017, 09:39:26
Die ist sehr gering. Aber seit dem update der FW scheint das Problem behoben zu sein. Mal weiter beobachten  ::)
Von den Gtags bin ich übrigens jetzt auch überzeugt. Bisher läuft die Erkennung sehr stabil  :)

Schöne Grüße
Jo
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jojo11 am 15 März 2017, 19:27:12
Hallo,

jetzt habe ich doch etwas entdeckt, was ich mir nicht erklären kann:
3 G-Tags über lepresenced und collectord verbunden und in FHEM mittels PRESENCE eingebunden. Die PRESENCE-Instanzen haben je ein log-File.
Alle G-Tags sind außerhalb der BT-Reichweite (>10 km). Jetzt kommt einer nach Hause und wird erkannt. Gleichzeitig (+/- < 1 Minute) finden sich in den log-files der beiden anderen tags ebenfalls "present"-Meldungen (jeweils nur eine). Die beiden sind dann aber sofort wieder abwesend. Beide tags sind definitiv sehr weit weg gewesen. Woran kann diese Fehlerkennung liegen?
Das Einzige was mir aufgefallen ist: Alle 3 tags haben sehr ähnliche BT-Adressen, die sich nur an den letzten beiden Stellen unterscheiden.
absenceThreshold bring natürlich nichts, da der Eintrag trotzdem kommt und im Plot komisch ausschaut.

schöne Grüße
Jo

Edit: Das Phänomen ist reproduzierbar und tritt jeden Tag auf.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: kevkolb am 18 März 2017, 22:00:43
Guten Abend,

ich habe heute mein FHEM auf Raspberry 3 mit Jessie umgestellt. Nachdem jetzt endlich meine HomeBridge wieder läuft., möchte ich die Bluetooth-Anwesenheit angreifen.

Leider stelle ich mir da wieder mal selber ein Bein....
Installiert sind auf RPI3:
presenced-rpi-1.4.deb
lepresenced-0.8-1.deb
collectord-1.7.deb


Hier meine collectord.conf:
# room definition
#[room-name]           # name of the room
#address=192.168.0.10   # ip-address or hostname
#port=5111                # tcp port which should be used (5111 is default)
#presence_timeout=120     # timeout in seconds for each check when devices are present
#absence_timeout=20       # timeout in secondsfor each check when devices are absent

[Wohnzimmer]
address=192.168.178.45
port=5333
presence_timeout=180
absence_timeout=10

[Schlafzimmer]
address=192.168.178.35
port=5333
presence_timeout=180
absence_timeout=10


Und hier ein Device aus der FHEM.cfg:
define iDeviceBluetooth PRESENCE lan-bluetooth B8:53:AC:42:E6:26 127.0.0.1:5222
So sieht mein Sys-Log aus:
pi@fhemrpi:~ $ grep lepresenced /var/log/syslog
Mar 18 20:51:27 fhemrpi systemd[1]: Starting LSB: lepresenced - presenced for Bluetooth LE devices....
Mar 18 20:51:27 fhemrpi lepresenced[4132]: Starting the process: lepresenced.
Mar 18 20:51:27 fhemrpi systemd[1]: Started LSB: lepresenced - presenced for Bluetooth LE devices..
Mar 18 21:02:19 fhemrpi systemd[1]: Starting LSB: lepresenced - presenced for Bluetooth LE devices....
Mar 18 21:02:21 fhemrpi lepresenced[485]: Starting the process: lepresenced.
Mar 18 21:02:21 fhemrpi systemd[1]: Started LSB: lepresenced - presenced for Bluetooth LE devices..
Mar 18 21:02:21 fhemrpi lepresenced[624]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
Mar 18 21:02:21 fhemrpi lepresenced[624]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Mar 18 21:02:21 fhemrpi lepresenced[624]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Mar 18 21:02:22 fhemrpi lepresenced[624]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
Mar 18 21:02:22 fhemrpi lepresenced[624]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Mar 18 21:02:22 fhemrpi lepresenced[624]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Mar 18 21:02:23 fhemrpi lepresenced[624]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
Mar 18 21:02:23 fhemrpi lepresenced[624]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Mar 18 21:02:23 fhemrpi lepresenced[624]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Mar 18 21:03:17 fhemrpi systemd[1]: Starting LSB: lepresenced - presenced for Bluetooth LE devices....
Mar 18 21:03:19 fhemrpi lepresenced[480]: Starting the process: lepresenced.
Mar 18 21:03:19 fhemrpi systemd[1]: Started LSB: lepresenced - presenced for Bluetooth LE devices..
Mar 18 21:03:19 fhemrpi lepresenced[626]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
Mar 18 21:03:19 fhemrpi lepresenced[626]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Mar 18 21:03:19 fhemrpi lepresenced[626]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Mar 18 21:03:20 fhemrpi lepresenced[626]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
Mar 18 21:03:20 fhemrpi lepresenced[626]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Mar 18 21:03:20 fhemrpi lepresenced[626]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Mar 18 21:03:21 fhemrpi lepresenced[626]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
Mar 18 21:03:21 fhemrpi lepresenced[626]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Mar 18 21:03:21 fhemrpi lepresenced[626]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Mar 18 21:08:44 fhemrpi systemd[1]: Starting LSB: lepresenced - presenced for Bluetooth LE devices....
Mar 18 21:08:45 fhemrpi lepresenced[489]: Starting the process: lepresenced.
Mar 18 21:08:45 fhemrpi systemd[1]: Started LSB: lepresenced - presenced for Bluetooth LE devices..
Mar 18 21:08:45 fhemrpi lepresenced[627]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
Mar 18 21:08:45 fhemrpi lepresenced[627]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Mar 18 21:08:45 fhemrpi lepresenced[627]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Mar 18 21:08:46 fhemrpi lepresenced[627]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
Mar 18 21:08:46 fhemrpi lepresenced[627]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Mar 18 21:08:46 fhemrpi lepresenced[627]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Mar 18 21:08:47 fhemrpi lepresenced[627]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
Mar 18 21:08:47 fhemrpi lepresenced[627]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Mar 18 21:08:47 fhemrpi lepresenced[627]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Mar 18 21:41:12 fhemrpi systemd[1]: Starting LSB: lepresenced - presenced for Bluetooth LE devices....
Mar 18 21:41:13 fhemrpi lepresenced[485]: Starting the process: lepresenced.
Mar 18 21:41:13 fhemrpi systemd[1]: Started LSB: lepresenced - presenced for Bluetooth LE devices..
Mar 18 21:41:13 fhemrpi lepresenced[621]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
Mar 18 21:41:13 fhemrpi lepresenced[621]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Mar 18 21:41:13 fhemrpi lepresenced[621]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Mar 18 21:41:14 fhemrpi lepresenced[621]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
Mar 18 21:41:14 fhemrpi lepresenced[621]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Mar 18 21:41:14 fhemrpi lepresenced[621]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Mar 18 21:41:15 fhemrpi lepresenced[621]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
Mar 18 21:41:15 fhemrpi lepresenced[621]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Mar 18 21:41:15 fhemrpi lepresenced[621]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...


Wo liegt mein Fehler? Kann mir da einer behilflich sein?

P.S. ohne lepresenced wurden alle meine Handy's problemlos erkannt. Ich möchte parallel aber noch ein Fitnessband auf Anwesenheit prüfen (UP2 von Jawbone)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: lichtimc am 19 März 2017, 01:34:47
Mit der letzten Version ( 0.8 ) bekomme ich als Status immer "absent" retour, obwohl meine Pebblebees online sind.

Hier ein Auszug des Logs von lepresenced:
Mar 19 01:21:37 raspi-wf lepresenced[2173]: [tid:0] main: Sending update for mac address 0e:0e:a0:XX:XX:XX, max age: 120, result: absence.
Mar 19 01:22:38 raspi-wf lepresenced[2173]: [tid:0] main: Sending update for mac address 0e:0e:a0:XX:XX:XX, max age: 120, result: absence.
Mar 19 01:22:38 raspi-wf lepresenced[2173]: [tid:0] main: Sending update for mac address 0e:0e:a0:XX:XX:XX, max age: 120, result: absence.
Mar 19 01:23:37 raspi-wf lepresenced[2173]: [tid:0] main: Sending update for mac address 0e:0e:a0:XX:XX:XX, max age: 120, result: absence.
Mar 19 01:24:38 raspi-wf lepresenced[2173]: [tid:0] main: Sending update for mac address 0e:0e:a0:XX:XX:XX, max age: 120, result: absence.
Mar 19 01:24:38 raspi-wf lepresenced[2173]: [tid:0] main: Sending update for mac address 0e:0e:a0:XX:XX:XX, max age: 120, result: absence.
Mar 19 01:25:04 raspi-wf lepresenced[2173]: [tid:0] main::stats_task: Active clients: 3, known devices: 0 (min/max age: %/%)
Mar 19 01:25:37 raspi-wf lepresenced[2173]: [tid:0] main: Sending update for mac address 0e:0e:a0:XX:XX:XX, max age: 120, result: absence.
Mar 19 01:26:23 raspi-wf lepresenced[2173]: [tid:0] main::handle_command: Received now command from client 192.168.10.92:39163. Scheduling update...
Mar 19 01:26:23 raspi-wf lepresenced[2173]: [tid:0] main: Sending update for mac address 0e:0e:a0:XX:XX:XX, max age: 120, result: absence.
Mar 19 01:26:38 raspi-wf lepresenced[2173]: [tid:0] main: Sending update for mac address 0e:0e:a0:XX:XX:XX, max age: 120, result: absence.
Mar 19 01:26:38 raspi-wf lepresenced[2173]: [tid:0] main: Sending update for mac address 0e:0e:a0:XX:XX:XX, max age: 120, result: absence.


Und hier Auszug von "sudo strace -p 2178 -s9999 -e write" des vom lepresenced gestarteten "hcitool -i hci0 lescan --duplicates":
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28
write(1, "0E:0E:A0:XX:XX:XX FNDR\n", 23) = 23
write(1, "0E:0E:A0:XX:XX:XX (unknown)\n", 28) = 28


Wie man sieht findet das hcitool alle meine Pebblebees in kurzen Abständen. Dennoch meldet lepresenced immer abwesend zurück.
Weiß jemand von euch, was da los ist?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 19 März 2017, 04:56:28
Hi!
Zitat von: kevkolb am 18 März 2017, 22:00:43
Wo liegt mein Fehler? Kann mir da einer behilflich sein?

Offenbar hier:
Zitat von: kevkolb am 18 März 2017, 22:00:43

Mar 18 21:02:21 fhemrpi lepresenced[624]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!


Das Bluetooth-Device, mit dem Du den Daemon aufrufst gibt es nicht. Wenn Du nicht weiter kommst bitte mal ein Log mit LOG_DEBUG, eine Minute reicht.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 19 März 2017, 05:02:47
Hi!

Zitat von: lichtimc am 19 März 2017, 01:34:47
Mit der letzten Version ( 0.8 ) bekomme ich als Status immer "absent" retour, obwohl meine Pebblebees online sind.

Hier ein Auszug des Logs von lepresenced:

Zitat von: lichtimc am 19 März 2017, 01:34:47
Wie man sieht findet das hcitool alle meine Pebblebees in kurzen Abständen. Dennoch meldet lepresenced immer abwesend zurück.
Weiß jemand von euch, was da los ist?
Hmm. Bei den Informationen kann ich nur mutmaßen. Die neueste Version von lepresenced ignoriert die Ausgabe von hcitool lescan, da diese den rssi-Wert nicht enthält. Stattdessen wird das parallel gestartete hcidump geparst. Mglw. liegt da der Hund begraben.

Schick mir doch mal bitte die Ausgabe wie hier beschrieben: https://forum.fhem.de/index.php/topic,54482.msg562629.html#msg562629

Ansonsten kannst Du noch den Log Level auf LOG_DEBUG setzen und die Ausgabe hier posten oder lepresenced im legacymode starten (der verwertet die Ausgabe von hcitool, gibt aber keine rssis zurück.)

Patrick


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: lichtimc am 19 März 2017, 11:33:50
OK, dann ist alles klar... musste einfach das Paket "bluez-hcidump" installieren... vielleicht wäre eine Hinweis-Meldung im Log beim Fehlen von Abhängigkeiten hilfreich.

Danke für lepresenced, lg
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 19 März 2017, 13:12:42
Hi!
Zitat von: lichtimc am 19 März 2017, 11:33:50
OK, dann ist alles klar... musste einfach das Paket "bluez-hcidump" installieren... vielleicht wäre eine Hinweis-Meldung im Log beim Fehlen von Abhängigkeiten hilfreich.
Dachte eigentlich, ich hätte das drin. Muss ich mir für die nächste Version mal ansehen.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: kevkolb am 19 März 2017, 18:42:14
Zitat von: PatrickR am 19 März 2017, 04:56:28
Hi!
Offenbar hier:
Das Bluetooth-Device, mit dem Du den Daemon aufrufst gibt es nicht. Wenn Du nicht weiter kommst bitte mal ein Log mit LOG_DEBUG, eine Minute reicht.

Patrick
Zu meiner Schande muss ich gestehen, ich weiß nicht wie ich diese Log-File erstelle
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jojo11 am 22 März 2017, 12:45:54
Hallo,

kann hier jemand, der mehrere G-tags mit collectord (und lepresenced) verwendet, folgendes bestätigen:

- Ausgangssituation: alle gtags "abwesend"
- einer kommt jetzt in Reichweite
- bei allen anderen wird der Status ebenfalls kurz auf anwesend gesetzt, obwohl nicht in Reichweite.

Im logfile der presence-Instanzen sehr reproduzierbar zu finden.

Wir kann ich das abstellen?

Schöne Grüße
Jo
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: kevkolb am 23 März 2017, 19:19:35
Guten Abend,

ich habe jetzt mehrfach versucht die Bluetooth Anwesenheit zum laufen zu bekommen. Leider nur Teilerfolge. Ich komme einfach nicht weiter.

Wenn ich im FHEM ein Device so konfiguriere:
lan-bluetooth B8:53:AC:42:E6:26 127.0.0.1:5111

Bekomme ich folgendes Reading:
state present 2017-03-23 19:16:29

Alle anderen Readings werden nicht aktualisiert.
Wenn ich im FHEM ein Device so konfigurier:
lan-bluetooth B8:53:AC:42:E6:26 127.0.0.1:5222

Bekomme ich immer absent als Reading.

Bitte um Hilfestellung.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 23 März 2017, 19:22:22
Zitat von: kevkolb am 19 März 2017, 18:42:14
Zu meiner Schande muss ich gestehen, ich weiß nicht wie ich diese Log-File erstelle

Ok, dann probieren wir es erstmal anders. Poste doch mal bitte die Ausgabe von:


ps aux | grep lepresenced ; hciconfig ; dpkg -l | grep -i bluez


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: kevkolb am 26 März 2017, 19:28:23
Zitat von: PatrickR am 23 März 2017, 19:22:22
Ok, dann probieren wir es erstmal anders. Poste doch mal bitte die Ausgabe von:


ps aux | grep lepresenced ; hciconfig ; dpkg -l | grep -i bluez



pi       23577  0.0  0.2   4772  1948 pts/1    S+   19:25   0:00 grep --color=auto lepresenced
hci0: Type: BR/EDR  Bus: UART
BD Address: B8:27:EB:D0:E0:AB  ACL MTU: 1021:8  SCO MTU: 64:1
UP RUNNING
RX bytes:10651362 acl:0 sco:0 events:82923 errors:0
TX bytes:561658 acl:0 sco:0 commands:40051 errors:0

ii  bluez                           5.23-2+rpi2                armhf        Bluetooth tools and daemons
ii  bluez-firmware                  1.2-3+rpi1                 all          Firmware for Bluetooth devices
ii  bluez-hcidump                   5.23-2+rpi2                armhf        Analyses Bluetooth HCI packets


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Jojo11 am 26 März 2017, 19:38:57
Hallo,

ich hab da mal noch eine Beobachtung gemacht (lepresenced + collectord):
Alle G-TAGs außer Reichweite und trotzdem wird bei einem nach Stunden (und Stunden bevor alle zurück sind) kurz Anwesenheit detektiert.
Woran kann sowas liegen?
Was kann ich an Daten liefern, um dem Problem auf die Spur zu kommen?
Die Zuverlässigkeit ist zwar schon um Einiges besser, als die WLAN-Pingerei, aber solche Fehlauslösungen trüben doch etwas das Gesamtbild.
Kann es evtl damit zu tun haben, dass einer der Satelliten-RPI's per WLAN angebunden ist und dieses evtl. ab und an mal verliert? Es wird ja wohl kaum ein Nachbar zufällig ein identisches device haben  :o

schöne Grüße
Jo
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 26 März 2017, 19:53:52
Hi!

Zitat von: kevkolb am 26 März 2017, 19:28:23
pi       23577  0.0  0.2   4772  1948 pts/1    S+   19:25   0:00 grep --color=auto lepresenced
hci0: Type: BR/EDR  Bus: UART
BD Address: B8:27:EB:D0:E0:AB  ACL MTU: 1021:8  SCO MTU: 64:1
UP RUNNING
RX bytes:10651362 acl:0 sco:0 events:82923 errors:0
TX bytes:561658 acl:0 sco:0 commands:40051 errors:0

ii  bluez                           5.23-2+rpi2                armhf        Bluetooth tools and daemons
ii  bluez-firmware                  1.2-3+rpi1                 all          Firmware for Bluetooth devices
ii  bluez-hcidump                   5.23-2+rpi2                armhf        Analyses Bluetooth HCI packets


Bitte nochmal wenn lepresenced läuft.

Pakete und Bluetooth sehen schonmal gut aus. Möglicherweise ist das Device falsch eingestellt.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: kevkolb am 26 März 2017, 19:59:01
pi       24872  0.0  0.2   4772  1924 pts/2    S+   19:57   0:00 grep --color=auto lepresenced
hci0:   Type: BR/EDR  Bus: UART
        BD Address: B8:27:EB:D0:E0:AB  ACL MTU: 1021:8  SCO MTU: 64:1
        UP RUNNING
        RX bytes:10735527 acl:0 sco:0 events:83580 errors:0
        TX bytes:566082 acl:0 sco:0 commands:40367 errors:0

ii  bluez                           5.23-2+rpi2                armhf        Bluetooth tools and daemons
ii  bluez-firmware                  1.2-3+rpi1                 all          Firmware for Bluetooth devices
ii  bluez-hcidump                   5.23-2+rpi2                armhf        Analyses Bluetooth HCI packets


Lepresened läuft doch, oder? In der ersten Zeile steht doch das lepresened läuft

Wie kann man ein device denn einstellen? Gibt esda eine config file?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 26 März 2017, 21:12:09
Zitat von: kevkolb am 26 März 2017, 19:59:01
pi       24872  0.0  0.2   4772  1924 pts/2    S+   19:57   0:00 grep --color=auto lepresenced


Lepresened läuft doch, oder? In der ersten Zeile steht doch das lepresened läuft
Nee, da steht nur, dass Du gerade danach suchst...

Korrekt müsste es z. B. so aussehen:
pr     16970  0.0  0.2   4296  2012 pts/0    S+   21:15   0:00 grep lepresenced
root     21646  1.2  1.5  36700 14244 ?        Ssl  Mär06 357:29 /usr/bin/perl /usr/sbin/lepresenced --daemon --device hci0 --listenaddress 0.0.0.0 --listenport 5333 --loglevel LOG_WARNING


Zitat von: kevkolb am 26 März 2017, 19:59:01
Wie kann man ein device denn einstellen? Gibt esda eine config file?
Kannst Du in /etc/default/lepresenced einstellen. Aber die Ausgabe von dem Befehl bei laufendem lepresenced wäre trotzdem hilfreich.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: kevkolb am 27 März 2017, 17:43:04
Zitat
Kannst Du in /etc/default/lepresenced einstellen. Aber die Ausgabe von dem Befehl bei laufendem lepresenced wäre trotzdem hilfreich.

Patrick
pi@RaspiCam ~ $ ps aux | grep lepresenced ; hciconfig ; dpkg -l | grep -i bluez
root      2356  4.0  2.6  30080  9908 ?        Ssl  M�r23 225:47 /usr/bin/perl /usr/sbin/lepresenced --daemon --device hci0 --listenaddress 0.0.0.0 --listenport 5333 --loglevel LOG_WARNING
pi        5520  0.0  0.9   6024  3464 pts/0    S+   17:36   0:00 grep --color=auto lepresenced
hci0: Type: BR/EDR  Bus: USB
BD Address: 00:1A:7D:DA:71:06  ACL MTU: 310:10  SCO MTU: 64:8
UP RUNNING PSCAN
RX bytes:96149809 acl:0 sco:0 events:4039887 errors:0
TX bytes:1320 acl:0 sco:0 commands:80 errors:0

ii  bluez                                 4.99-2                                  armhf        Bluetooth tools and daemons
ii  bluez-alsa:armhf                      4.99-2                                  armhf        Bluetooth ALSA support
ii  bluez-cups                            4.99-2                                  armhf        Bluetooth printer driver for CUPS
ii  bluez-gstreamer                       4.99-2                                  armhf        Bluetooth GStreamer support
ii  bluez-hcidump                         2.4-1                                   armhf        Analyses Bluetooth HCI packets
ii  bluez-utils                           4.99-2                                  all          Transitional package
ii  libbluetooth3:armhf                   4.99-2                                  armhf        Library to use the BlueZ Linux Bluetooth stack

Das ist die Ausgabe von meinem 2. Rasperry...
Dort scheint der Service zu laufen. Aber auf dem anderen bekomme ich das nicht hin. Der einzigste unterschied ist der erste ist noch ein RPI2 (Wheezy) und der andere ein RP3 (Jessie) 

Auf dem RPI2 hab ich lepresenced mit:
dpkg -I lepresenced....
installiert. Und sonst habe ich nichts gemacht.
Auf meinem RPI3 das selbe. leider mit unterschiedlichem Ergebnis ;-(

So jetzt hab ich alles auf dem RPI3 neu installiert und folgende Ausgabe:
pi@fhemrpi:~ $ ps aux | grep lepresenced ; hciconfig ; dpkg -l | grep -i bluez
root       711  1.3  1.1  34036 11184 ?        Ssl  18:02   0:00 /usr/bin/perl /usr/sbin/lepresenced --daemon --device hci0 --listenaddress 0.0.0.0 --listenport 5333 --loglevel LOG_WARNING
pi         958  0.0  0.2   4772  2028 pts/0    S+   18:03   0:00 grep --color=auto lepresenced
hci0: Type: BR/EDR  Bus: UART
BD Address: B8:27:EB:D0:E0:AB  ACL MTU: 1021:8  SCO MTU: 64:1
UP RUNNING
RX bytes:18857 acl:0 sco:0 events:809 errors:0
TX bytes:1549 acl:0 sco:0 commands:44 errors:0

ii  bluez                           5.23-2+rpi2                armhf        Bluetooth tools and daemons
ii  bluez-firmware                  1.2-3+rpi1                 all          Firmware for Bluetooth devices
ii  bluez-hcidump                   5.23-2+rpi2                armhf        Analyses Bluetooth HCI packets


@PatrickR: Und vorab schon mal ein DANKESCHÖN für die Geduld mit mir ;-)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 27 März 2017, 22:29:45
Hi!

Hilfe! Bitte nicht abwechselnd von zwei verschiedenen Systemen posten, sonst platzt mein Kopf :)

Zitat von: kevkolb am 27 März 2017, 17:43:04
Dort scheint der Service zu laufen. Aber auf dem anderen bekomme ich das nicht hin. Der einzigste unterschied ist der erste ist noch ein RPI2 (Wheezy) und der andere ein RP3 (Jessie) 

Bitte sag, dass an dem Rpi2 ein Bluetooth-4.0-fähiger USB-Stick hängt.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: kevkolb am 28 März 2017, 05:39:33
Zitat von: PatrickR am 27 März 2017, 22:29:45
Hi!

Hilfe! Bitte nicht abwechselnd von zwei verschiedenen Systemen posten, sonst platzt mein Kopf :)

Bitte sag, dass an dem Rpi2 ein Bluetooth-4.0-fähiger USB-Stick hängt.

Patrick

Sorry wollte dich nicht verwirren eigentlich nur mehr Infos liefern um der Lösung näher zu kommen.
Ja der erkennt und trackt ein Fintnessarmband mit BluetoothLE und liefert an fhem. (Reading mit rssi-werten)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 29 März 2017, 11:35:16
Mahlzeit!

Zitat von: Jojo11 am 26 März 2017, 19:38:57
Alle G-TAGs außer Reichweite und trotzdem wird bei einem nach Stunden (und Stunden bevor alle zurück sind) kurz Anwesenheit detektiert.

In https://forum.fhem.de/index.php/topic,69759.0.html wird ein ähnliches/das gleiche Problem beschrieben. Würde die Diskussion gerne dort zusammenfassen. Letzte (Verzweiflungs-)Idee war, testweise den Legacymode einzusetzen. Näheres im Thread. Interessant wäre in Deinem Fall ein Log mit LOG_DEBUG um sicher zu stellen, dass es das gleiche Problem ist.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 29 März 2017, 14:33:50
@kevkolb:
Ich muss zugeben, dass ich auch nach einigem Nachlesen bei Dir nicht 100% durchblicke. Das ist deshalb nicht ganz einfach, weil Du offenbar 2 RPis betreibst, collectord einsetzt und parallel Handys mit Bluetooth und Einen Jawbone mit Bluetooth LE überwachen möchtest. Zu allem Überfluss glaube ich, dass Du mindestens zwei Probleme gleichzeitig hast. Das müssen wir trennen:

-Problem 1: In Posting #869 überwachst Du ein Gerät mit der mac B8:53:AC:42:E6:26.
Ich gehe davon aus, dass es sich um - kein - Bluetooth-LE-Gerät handelt, offenbar ein Apple-Gerät. Das müsstest Du in einem separaten Thread klären, da es hier nur um Bluetooth-LE geht. Wenn das schon einmal funktioniert hat kannst Du auch einfach wieder Deine alte collectord.conf nehmen. Hinweis: Wenn Du collectord benutzt, benötigst Du sinnvollerweise für Bluetooth und Bluetooth LE separate collectords.

-Problem 2: Der Jawbone wird nicht gefunden.
Da der Jawbone UP2 Blueooth LE einsetzt, gehört er in diesen Thread. Wir sollten das schrittweise angehen:
1.) lepresenced auf pi3 zum Laufen bekommen
2.) lepresenced auf pi2 zum Laufen bekommen
3.) ggf. beide lepresenced-Instanzen in einen collectord integrieren.

Auf dem Pi3 scheint der lepresenced ja zu laufen, also starten wir mit dem. Lege doch mal bitte in FHEM ein neues Presence-Gerät für den UP an:

define Presence_UP2 presence lan-bluetooth <mac-adresse-des-up2> <ip-adresse des pi3>:5333


Danach bitte die Ausgabe von

list Presence_UP2

in FHEM posten.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: majestro84 am 01 April 2017, 00:03:16
Hallo

Ich hätte mal eine Frage. Auf mein Pi3 mit Fhem läuft lepresenced und NUT LE Devices das läuft auch ganz gut soweit zur Anwesenheitserkennung.
Jetzt wollte ich über einen weiteren PI im Schlafzimmer und einen MI Band feststellen wann man im Bett ist. Das würde ich nun mit collectord an den Pi3 weitergeben.
Meine Frage  ist muss ich die NUTs dann auch auf collectord  umstellen oder können die ganz normal mit lepresenced weiterlaufen?

Danke
Gruß
Alex
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 02 April 2017, 18:36:23
Hallo zusammen,

aus gegebenem Anlass habe ich im Wiki zur Anwesenheitserkennung einen neuen Punkt zur Einrichtung des Collectord Daemon eingetragen.
Ich hatte doch ein paar Probleme beim Verständnis, wo welche IP hin kommt und welche Ports für was sind  ::)

Damit der Nächste es einfacher hat hier der Link:
https://wiki.fhem.de/wiki/Anwesenheitserkennung#Verwendung_von_Collectord_bei_mehreren_PRESENCE_Installationen_mit_LE-Devices

vg,
Dirk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ergerd am 14 April 2017, 10:56:24
Hallo zusammen,

ich bekomme meine zwei G-Tags nicht ans laufen.

Konfiguration:
FHEM auf RasPi3 mit PRESENCE lan-bluetooth
lepresenced auf RasPi Zero W

Wenn ich auf dem Zero sudo hcitool lescan laufen lasse werden die Adressen der G-Tags ausgewiesen.
Im Log von lepresenced steht aber nur:

Apr 14 10:45:15 zero_one lepresenced[1500]: [tid:0] main: Sending update for mac address 7c:2f:80:af:26:ac, max age: 30, result: absence.


Any idea?

Danke und Grüße
Rainer
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 14 April 2017, 11:25:41
@Reiner: Eine Logzeile ist mehr als ungewöhnlich. Sicher, dass das wirklich alles ist?


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ergerd am 14 April 2017, 11:32:37
Zitat von: PatrickR am 14 April 2017, 11:25:41
@Reiner: Eine Logzeile ist mehr als ungewöhnlich. Sicher, dass das wirklich alles ist?


Von unterwegs gesendet.

Ich bin testweise auf meinen zweiten RPI3 geschwenkt, sieht genauso aus (im ersten Post habe ich die für mich schlüssigen Zeilen weg gelassen):


Apr 14 11:28:54 zero_one lepresenced[926]: [tid:0] main: Version 0.8 started (device: hci0, listen addr: 192.168.48.64, listen port: 5333, daemonize: 1, legacy mode: 0, rssi threshold: 10, log level: 7).
Apr 14 11:28:54 zero_one lepresenced[927]: [tid:1] main::bluetooth_scan_thread: Received 'LE Scan ...'.
Apr 14 11:29:07 zero_one lepresenced[927]: [tid:0] main: Connection from 192.168.48.45:59724. Connected clients: 1.
Apr 14 11:29:07 zero_one lepresenced[927]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:af:27:2a, interval: 30. Adding client 192.168.48.45:59724 to clients list.
Apr 14 11:29:07 zero_one lepresenced[927]: [tid:0] main: Sending update for mac address 7c:2f:80:af:27:2a, max age: 30, result: absence.
Apr 14 11:29:21 zero_one lepresenced[927]: [tid:0] main: Connection from 192.168.48.45:59738. Connected clients: 2.
Apr 14 11:29:21 zero_one lepresenced[927]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:af:26:ac, interval: 30. Adding client 192.168.48.45:59738 to clients list.
Apr 14 11:29:21 zero_one lepresenced[927]: [tid:0] main: Sending update for mac address 7c:2f:80:af:26:ac, max age: 30, result: absence.
Apr 14 11:29:37 zero_one lepresenced[927]: [tid:0] main: Sending update for mac address 7c:2f:80:af:27:2a, max age: 30, result: absence.
Apr 14 11:29:51 zero_one lepresenced[927]: [tid:0] main: Sending update for mac address 7c:2f:80:af:26:ac, max age: 30, result: absence.


Grüße
Rainer
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 14 April 2017, 11:59:42
@Rainer: Alles klar. Da lepresenced passiv ist, sind auch die schlüssigen Zeilen zumindest ansatzweise aufschlussreich.
Sieht soweit gut aus. In regelmäßigen Abständen kommt eine Statistik (stats_task). Die wäre hilfreich.

Nutzt hcitool lescan auch hci0?

Patrick


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 14 April 2017, 12:01:08
Nachtrag: bluez-hcidump ist installiert?


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ergerd am 14 April 2017, 13:26:09
Hallo PatrickR,

Zitat von: PatrickR am 14 April 2017, 11:59:42
@Rainer: Alles klar. Da lepresenced passiv ist, sind auch die schlüssigen Zeilen zumindest ansatzweise aufschlussreich.
Sieht soweit gut aus. In regelmäßigen Abständen kommt eine Statistik (stats_task). Die wäre hilfreich.

Nutzt hcitool lescan auch hci0?

Patrick


Von unterwegs gesendet.


Apr 14 12:59:00 zero_one lepresenced[927]: [tid:0] main::cleanup_task: Cleanup finished, deleted 0 devices in 0 seconds.
Apr 14 12:59:07 zero_one lepresenced[927]: [tid:0] main: Sending update for mac address 7c:2f:80:af:27:2a, max age: 30, result: absence.
Apr 14 12:59:12 zero_one lepresenced[927]: [tid:0] main::stats_task: Active clients: 2, known devices: 0 (min/max age: %/%)



Devices:
        hci0    B8:27:EB:2C:A1:10


Hallo PatrickR,

Zitat von: PatrickR am 14 April 2017, 12:01:08
Nachtrag: bluez-hcidump ist installiert?


Von unterwegs gesendet.

Nicht das ich wüsste.

Grüße
Rainer
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 14 April 2017, 13:53:42
Dann haben wir die Ursache.

Das würde auch "known devices: 0" erklären.

Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ergerd am 14 April 2017, 14:12:18
Hallo Patrick,

Zitat von: PatrickR am 14 April 2017, 13:53:42
Dann haben wir die Ursache.

Das würde auch "known devices: 0" erklären.

Von unterwegs gesendet.

hurra, install, reboot und jetzt funzt es :-)

Habe ich irgendwo etwas überlesen? Ich kann mich nicht erinnern etwas über bluez-hcidump gelesen zu haben.

Vielen Dank, dieses Forum gehört zu den besten die ich kenne!

Viele Grüße
Rainer
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 14 April 2017, 16:04:32
@Rainer: Das ist später dazugekommen, um die rssi-Werte auslesen zu können. Die einfachste Möglickeit ist, das deb-Paket von lepresenced zu installieren, dann kümmert sich der Paketmanager um die Abhängigkeiten. Leider entscheiden sich die Nutzer oft für den "steinigen" Weg und installieren alles per Hand.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 14 April 2017, 16:59:54
@Dokumaster Devender: Die manuelle Installation führt seit der neuen Abhängigkeit gehäuft zu Problemen. Daher sollte m. E. die Paketinstallation (sudo dpkg -i lepresenced.deb&&sudo apt-get -f install) das Standardverfahren sein. Hättest Du Zeit, das mal im Wiki zu aktualisieren?

Patrick


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ergerd am 14 April 2017, 19:51:10
Hallo Patrick,


sudo dpkg -i lepresenced.deb


Dazu meinte Jessie immer, das wäre kein Debian Paket, daher meine "Handarbeit".

Grüße
Rainer
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 14 April 2017, 20:05:09
Zitat von: PatrickR am 14 April 2017, 16:59:54
@Dokumaster Devender: Die manuelle Installation führt seit der neuen Abhängigkeit gehäuft zu Problemen. Daher sollte m. E. die Paketinstallation (sudo dpkg -i lepresenced.deb&&sudo apt-get -f install) das Standardverfahren sein. Hättest Du Zeit, das mal im Wiki zu aktualisieren?

Patrick


Von unterwegs gesendet.

Hallo Patrick ,

Klar. Werde ich mich am Wochenende drum kümmern !
ist erledigt: https://wiki.fhem.de/wiki/Anwesenheitserkennung#Anleitung_f.C3.BCr_ein_LE_Device_.28z.B._Gtags.2CPebbles_etc..29


Frohes Osterfest!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 14 April 2017, 20:58:03
Hallo Rainer,

das macht Sinn, da du auch kein Paket runtergeladen hast sondern irgendwas anderes was den Namen hat.
Am besten du gehst mit dem Browser auf die SVN Seite:


https://svn.fhem.de/trac/browser/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.8-1.deb

und klickst dort auf :  Try downloading the file instead.  und speicherst dir diese Datei auf dem Rechner.
Danach kopierst du diese auf deine Pi und startest wie von Patrick beschrieben die Installation :

sudo dpkg -i lepresenced-0.8-1.deb

und
sudo apt-get -f install

Das hat bei mir ohne Probleme gerade funktioniert.


Alternativ, allerdings muss dazu das 0.8. deb Paket schon im CONTRIB von fhem sein kannst du es über
cd /opt/fhem/contrib/PRESENCE/deb

auf deinem RPi finden und dort direkt installieren ohne es extra downloaden zu müssen.
Grüße,
Dirk

Zitat von: ergerd am 14 April 2017, 19:51:10
Hallo Patrick,


sudo dpkg -i lepresenced.deb


Dazu meinte Jessie immer, das wäre kein Debian Paket, daher meine "Handarbeit".

Grüße
Rainer
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ergerd am 14 April 2017, 21:11:53
Hallo Dirk,

Zitat von: Devender am 14 April 2017, 20:58:03
sudo dpkg -i lepresenced-0.8-1.deb

vielen Dank für die Unterstützung, aber ich war sicher,  das auch so versucht zu haben.

Mein Ergebnis:

pi@zero_one:~ $ sudo dpkg -i lepresenced-0.8-1.deb
dpkg-deb: Fehler: »lepresenced-0.8-1.deb« ist kein Archiv im Debian-Format
dpkg: Fehler beim Bearbeiten des Archivs lepresenced-0.8-1.deb (--install):
Unterprozess dpkg-deb --control gab den Fehlerwert 2 zurück
Fehler traten auf beim Bearbeiten von:
lepresenced-0.8-1.deb
pi@zero_one:~ $


Aber bitte keine weiteren Anstrengungen investieren, bei mir läuft ja jetzt alles.

Grüße
Rainer
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 14 April 2017, 21:33:36
Hallo Rainer,

kein Problem, ich musste es ja gerade selbst testen um den Wikibeitrag zu überarbeiten.
Bei mir hat es funktioniert mit dem manuellen download.

Ich habe beim Download per wget immer eine zu große Datei heruntergeladen:

wget http://svn.fhem.de/trac/browser/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.8-1.deb
--2017-04-14 21:26:48--  http://svn.fhem.de/trac/browser/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.8-1.deb
Auflösen des Hostnamen »svn.fhem.de (svn.fhem.de)«... 88.99.31.202, 2a01:4f8:10a:806::2
Verbindungsaufbau zu svn.fhem.de (svn.fhem.de)|88.99.31.202|:80... verbunden.
HTTP-Anforderung gesendet, warte auf Antwort... 301 Moved Permanently
Platz: https://svn.fhem.de//trac/browser/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.8-1.deb[folge]
--2017-04-14 21:26:48--  https://svn.fhem.de//trac/browser/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.8-1.deb
Verbindungsaufbau zu svn.fhem.de (svn.fhem.de)|88.99.31.202|:443... verbunden.
HTTP-Anforderung gesendet, warte auf Antwort... 200 Ok
Länge: nicht spezifiziert [text/html]
In »»lepresenced-0.8-1.deb«« speichern.

lepresenced-0.8-1.deb                                           [ <=>                                                                                                                                       ]  11,71K  --.-KB/s   in 0,03s 

2017-04-14 21:26:48 (424 KB/s) - »lepresenced-0.8-1.deb« gespeichert [11991]



Das eigentlich .deb Paket ist allerdings nur 6,5K groß. Sprich da ist weit mehr drin als nur das deb Paket. Daher klappte die Installation auch nicht bei dir.

Könntest du bitte noch mal prüfen ob du mit der nun beschrieben Methode eine Installation starten kannst? Du kannst ja direkt nach dem Aufruf mit strg-c die Installation abbrechen.
Dann passiert auch nichts bei deiner funktionierenden Version  :)

Danke!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ergerd am 14 April 2017, 22:14:25
Hallo Dirk,

hier das Ergebnis meines Versuches, heruntergeladen wie beschrieben aus dem SVN:

pi@zero_one:~ $ sudo dpkg -i lepresenced-0.8-1.deb
Vormals nicht ausgewähltes Paket lepresenced wird gewählt.
(Lese Datenbank ... 32160 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von lepresenced-0.8-1.deb ...
Entpacken von lepresenced (0.8-1) ...
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von lepresenced:
lepresenced hängt ab von libnet-server-perl; aber:
  Paket libnet-server-perl ist nicht installiert.

dpkg: Fehler beim Bearbeiten des Paketes lepresenced (--install):
Abhängigkeitsprobleme - verbleibt unkonfiguriert
Trigger für systemd (215-17+deb8u6) werden verarbeitet ...
Fehler traten auf beim Bearbeiten von:
lepresenced
pi@zero_one:~ $


Aha, libnet-server-perl fehlt. Installation ging aber nicht, wegen Abhängigkeitsfehlern.
Ok,
sudo apt-get -f install
ausgeführt, da wurde einiges gerade gebogen und auch lepresenced installiert.
Ich muss annehmen, das irgendetwas an meiner Perl-Installation schief war.

Übrigens, unter /opt/fhem/contrib/PRESENCE/deb habe ich kein lepresenced... gefunden, nur presenced... (letztes Update: Gestern)

Grüße
Rainer
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 14 April 2017, 22:26:28
Danke fürs Testen!  8)
Freut mich das es bei dir jetzt auch richtig installiert funktioniert.

Vielleicht hat Patrick noch eine Idee, warum es mit wget nicht klappt.

Bezüglich contrib:
Auf meinem Pi2 ist auch kein lepresenced vorhanden. Auf dem neuen PI3 immerhin die Version lepresenced-0.6-1.deb. Vermutlich habe ich die da mal selbst reinkopiert.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: ergerd am 14 April 2017, 22:47:52
Hallo Dirk,

das testen mach ich immer wieder gern, das hilft oft auch anderen weiter :-)

Zitat von: Devender am 14 April 2017, 22:26:28
Bezüglich contrib:
Auf meinem Pi2 ist auch kein lepresenced vorhanden. Auf dem neuen PI3 immerhin die Version lepresenced-0.6-1.deb. Vermutlich habe ich die da mal selbst reinkopiert.

Dann stimmt aber das Wiki mit der Beschreibung "2.Variante" nicht.

Grüße
Rainer
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 14 April 2017, 23:03:02
Im Wiki angepasst.

Ich habe die benötigten Infos für das aktualisieren des SVN noch mit beschrieben.
Allerdings bleibt es auch nach einer Aktualisierung des contrib bei der Version 0.6.deb. ggf muss hier Patrick die 0.8er noch einchecken !?

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 14 April 2017, 23:51:24
Hi!

Kurze Anmerkungen:
Die URL "http://svn.fhem.de/trac/browser/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.8-1.deb" ist nicht korrekt, da sie auf die SVN-Website(!) führt aber nicht auf den Datei-Download. Probiere mal https://svn.fhem.de/trac/export/13992/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.8-1.deb

Der FHEM-Update-Befehl aktualisiert das Contrib-Verzeichnis nicht.

Aktuelle Version ist übrigens 0.81, aber ein Paket habe ich bislang nur für 0.8 gebaut.

Danke fürs Aktualisieren der Doku und fürs Testen!

Patrick


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 14 April 2017, 23:54:41
Zitat von: PatrickR am 14 April 2017, 23:51:24
Hi!

Kurze Anmerkungen:
Die URL "http://svn.fhem.de/trac/browser/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.8-1.deb" ist nicht korrekt, da sie auf die SVN-Website(!) führt aber nicht auf den Datei-Download. Probiere mal https://svn.fhem.de/trac/export/13992/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.8-1.deb


japp, das geht mit wget https://svn.fhem.de/trac/export/13992/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.8-1.deb

Danke Patrick!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 17 April 2017, 12:56:45
Hallo,

ich habe mal wieder ein Problem mit der Batterieüberwachung.
Nachdem ich mal einen Ausflug mit dem Modul bletagbattery gemacht habe und danach das lepresenced gar nicht mehr funktioniert hat, bin ich nun wieder mit den Anleitungen von der Anwesenheitserkennung im Wiki unterwegs.
Habe alles nach Wiki eingerichtet, lepresenced läuft, die Gtags werden auch erkannt.
Wenn ich die Anleitung für die Batterieüberwachung durchgehe, mache ich folgendes:

sudo apt-get install bc


mit nano ein skript in /home/pi namens Auto_GtagBatterie.sh mit folgendem Inhalt erstellen:
#!/bin/bash
stringZ=$(sudo gatttool -b 7C:2F:80:AD:AD:4D --char-read --handle=0x001b)
stringZ=${stringZ:33:2}
stringZ=$(echo "$stringZ" | tr a-f A-F)
decimal=$(echo "ibase=16; $stringZ" | bc)
perl /opt/fhem/fhem.pl 7072 "setreading Auto_Gtag batteryLevel $decimal"


Ausführbar machen:
sudo chmod +x Auto_GtagBatterie.sh


in fhem erweitere ich das userreading vom device entsprechend:
attr Auto_Gtag userReadings batteryLevel

Wenn ich das skript nun ausführen will mit:
./Auto_GtagBatterie.sh
oder
sudo ./Auto_GtagBatterie.sh
oder
bash ./Auto_GtagBatterie.sh
oder
sudo bash ./Auto_GtagBatterie.sh

kommt folgende Fehlermeldung:
Use of uninitialized value in numeric gt (>) at /opt/fhem/fhem.pl line 452.

Wenn ich nun mit nano mal /opt/fhem/fhem.pl in Zeile 452 gucke, steht dieses hier dort:
  while(sysread($client, $buf, 256) > 0) {


Das gehört in Summe zu:
# Client code
if(int(@ARGV) > 1 && $ARGV[$#ARGV] ne "-i") {
  my $buf;
  my $addr = shift @ARGV;
  $addr = "localhost:$addr" if($addr !~ m/:/);
  my $client = IO::Socket::INET->new(PeerAddr => $addr);
  die "Can't connect to $addr\n" if(!$client);
  for(my $i=0; $i < int(@ARGV); $i++) {
    syswrite($client, $ARGV[$i]."\n");
  }
  shutdown($client, 1);
  while(sysread($client, $buf, 256) > 0) {
    $buf =~ s/\xff\xfb\x01Password: //;
    $buf =~ s/\xff\xfc\x01\r\n//;
    $buf =~ s/\xff\xfd\x00//;
    print($buf);
  }
  exit(0);
}
# End of client code
###################################################


Was hat das mit dem batteryLevel zu tun? Wofür ist das überhaupt? Wo kommt das her?
Und warum kommt der Fehler überhaupt?

Kann mich da jemand unterstützen?

Fragen über Fragen... ;)

Vielen Dank und bis denn
SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 17 April 2017, 13:23:55
Meine Vermutung, er uebersetzt dir in der Zeile das $dezimal nicht mit einer Zahl.
Sender mal zum Test

perl /opt/fhem/fhem.pl 7072 "setreading Auto_Gtag batteryLevel $decimal"

In

perl /opt/fhem/fhem.pl 7072 "setreading Auto_Gtag batteryLevel 100"


Die fhem pl Meldung dürfte mit dem Aufruf fuer das Setreading zu tun haben. Nicht mit dem eigentlich Abruf der Batteriewerte. Ggf kannst du noch ein echo in das Skript einbauen.

Bei mir funktionieren die Skripte grundsätzlich nicht mehr, da es wohl einen Konflikt mit der blueZ Version gibt.
Ein downgrade hatte damals noch mehr Schaden angerichtet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 17 April 2017, 13:39:37
Zitat von: Devender am 17 April 2017, 13:23:55
Bei mir funktionieren die Skripte grundsätzlich nicht mehr, da es wohl einen Konflikt mit der blueZ Version gibt.
Ein downgrade hatte damals noch mehr Schaden angerichtet.

Hast du noch eine Batterieüberwachung drin?
Wenn ja, wie machst du das?


BTW.:
Es kommt der gleiche Fehler, wenn ich 100 statt $decimal eingebe.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 17 April 2017, 14:25:24
Was passiert wenn du den fhem Aufruf entfernt und mit echo das dezimal ausgeben lässt?
Wir müssten ja erst mal schauen, ob das Skript generell Werte liefert.

Du kannst auch noch das #!bin/bash entfernen. Bei einigen klappte es dann mit der Ausgabe.

Ich nutze auf einem neuen Pi3 (komplett neu aufgesetzt) das Modul BleTagBattery. Das funktioniert.

Jetzt erinnere ich mich auch. Das war kein Problem mit bluez sondern mit dem Kernel des Pi.  :-X. Mit dem downgrade hatte ich dann richtig Probleme auf dem Hauptpi.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 17 April 2017, 14:36:23
So gerade das Skript auf dem Pi3 getestet: --> funktioniert, ohne den #!/bin/bash Teil.

Auf dem Hauptpi geht es weiterhin nicht wegene Connection Refused 111 Problem.

Der Hauptpi hat den Kernel:
Linux fhem 4.4.48-v7+ #962 SMP Fri Feb 10 16:25:08 GMT 2017 armv7l GNU/Linux

Der neue Pi (wo es klappt)
Linux fhem2 4.4.50-v7+ #970 SMP Mon Feb 20 19:18:29 GMT 2017 armv7l GNU/Linux

Vielleicht hilft dir das noch weiter. Falls du ein Upgrade machen solltest, sicher vorher deine SD-Karte  ;)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 20 April 2017, 18:41:55
Hi,

ich hab die Version
Linux raspberrypi 4.9.22-v7+ #987 SMP Fri Apr 14 23:23:05 BST 2017 armv7l GNU/Linux


Ich hab es im übrigen auch hinbekommen.
Der Telnetport hatte ein Passwort.
Habe das durch ein Globalpasswort ersetzt und die interne Adresse auf allowed gesetzt.
--> Funzt

;)

Bis denn
SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 21 April 2017, 21:32:32
Nabend zusammen,

Hat irgendjemand aktuell auch das Problem, das die Tags oft njcht mehr als Anwesend erkannt werden?
Habe zwei PIs + Collectored laufen und seit ein paar Tagen scheint es hier ein Problem zu geben.
Letztes FHEm Udpate dürfte Montag gewesen sein.
Heute bei einem Kumpel das gleich. Die Tags, obwohl fast direkt neben dem PI plaziert nicht mehr anwesend.

Wenn ich die DEF des Tags bearbeitet - Kleinigkeit aendere und die MAC wieder mal falsch setze und wieder korrigieren - ist der jeweilige Tag wieder einen Moment active und Anwesend.
Über lescan werden die Tags gefunden...

Bin gerade etwas verwundert, das es nicht nur bei mir nicht mehr geht.

Gruesse,
Dirk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 21 April 2017, 22:03:35
@Devender: Was sagt denn das Debug-Log?


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 21 April 2017, 22:30:25
gute Frage, wie bekomme ich das lepresend dazu im DEBUG zu starten?
Hat sich da was geändert?

Ich bekomme bei Eingabe von:
sudo /opt/fhem/script/lepresenced --loglevel LOG_DEBUG

pi@fhem:/opt/fhem/script $ sudo /opt/fhem/script/lepresenced --loglevel LOG_DEBUG
Unknown option: loglevel
usage:
        lepresenced --bluetoothdevice <bluetooth device> --listenaddress <listen address> --listenport <listen port> --daemon
        lepresenced -b <bluetooth device> -a <listen address> -p <listen port> -d
example:
        lepresenced --bluetoothdevice hci0 --listenaddress 127.0.0.1 --listenport 5333 --daemon


im Normalmode steht ja nicht viel aussagekräftiges im syslog.

Ich weiß, ich hab es damals sogar ins Wiki geschrieben..  :-[ :-[ :-[
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 21 April 2017, 22:59:09
so, jetzt hab ich es.

Hier das syslog vom PI mit collectored (Hauptsystem)


Apr 21 22:51:28 fhem kernel: [  464.408389] Bluetooth: hci0 advertising data length corrected
Apr 21 22:51:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 18, max age: 60, result: present.
Apr 21 22:51:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 18, max age: 60, result: present.
Apr 21 22:51:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 18, max age: 60, result: present.
Apr 21 22:51:29 fhem lepresenced[451]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:a1:2a:4d, interval: 60. Adding client 127.0.0.1:47970 to clients list.
Apr 21 22:51:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 18, max age: 60, result: present.
Apr 21 22:51:30 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 2, max age: 60, result: present.
Apr 21 22:51:30 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 2, max age: 60, result: present.
Apr 21 22:51:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 21, max age: 60, result: present.
Apr 21 22:51:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 21, max age: 60, result: present.
Apr 21 22:51:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 2, max age: 60, result: present.
Apr 21 22:51:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 2, max age: 60, result: present.
Apr 21 22:51:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 21, max age: 60, result: present.
Apr 21 22:51:32 fhem lepresenced[451]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:a1:2a:4d, interval: 60. Adding client 127.0.0.1:47986 to clients list.
Apr 21 22:51:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 21, max age: 60, result: present.
Apr 21 22:51:32 fhem kernel: [  468.434889] Bluetooth: hci0 advertising data length corrected
Apr 21 22:51:33 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, max age: 60, result: absence.
Apr 21 22:51:35 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, max age: 60, result: absence.
Apr 21 22:53:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 22:53:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 22:53:29 fhem kernel: [  585.013436] Bluetooth: hci0 advertising data length corrected
Apr 21 22:53:30 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.
Apr 21 22:53:30 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.
Apr 21 22:53:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 22:53:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 22:53:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.
Apr 21 22:53:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.
Apr 21 22:53:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 22:53:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 22:53:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
pr 21 22:58:32 fhem lepresenced[451]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:a1:2a:4d, interval: 60. Adding client 127.0.0.1:47986 to clients list.
Apr 21 22:58:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 19, max age: 60, result: present.
Apr 21 22:58:33 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, max age: 60, result: absence.
Apr 21 22:58:35 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, max age: 60, result: absence.
Apr 21 22:58:56 fhem lepresenced[451]: [tid:0] main::cleanup_task: Cleanup finished, deleted 0 devices in 0 seconds.
Apr 21 22:58:58 fhem lepresenced[451]: [tid:0] main::stats_task: Active clients: 23, known devices: 3 (min/max age: 1/902)
Apr 21 22:59:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, result: present.
Apr 21 22:59:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, result: present.
Apr 21 22:59:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, result: present.
Apr 21 22:59:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, result: present.
Apr 21 22:59:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, result: present.
Apr 21 22:59:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, result: present.
Apr 21 22:59:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, result: present.
Apr 21 22:59:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, result: present.
Apr 21 22:59:30 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.
Apr 21 22:59:30 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.
Apr 21 22:59:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 4, max age: 60, result: present.
Apr 21 22:59:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 4, max age: 60, result: present.
Apr 21 22:59:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.
Apr 21 22:59:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.
Apr 21 22:59:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 4, max age: 60, result: present.
Apr 21 22:59:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 4, max age: 60, result: present.
Apr 21 22:59:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 4, max age: 60, result: present.
Apr 21 22:59:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 4, max age: 60, result: present.
Apr 21 22:59:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 4, max age: 60, result: present.
Apr 21 22:59:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 4, max age: 60, result: present.
Apr 21 22:59:33 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, max age: 60, result: absence.
Apr 21 22:59:35 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, max age: 60, result: absence.
Apr 21 23:00:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:29 fhem lepresenced[451]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:a1:2a:4d, interval: 60. Adding client 127.0.0.1:47970 to clients list.
Apr 21 23:00:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:30 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.
Apr 21 23:00:30 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.
Apr 21 23:00:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.
Apr 21 23:00:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.
Apr 21 23:00:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:32 fhem lepresenced[451]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:a1:2a:4d, interval: 60. Adding client 127.0.0.1:47986 to clients list.
Apr 21 23:00:32 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:00:33 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 34, max age: 60, result: present.
Apr 21 23:00:33 fhem lepresenced[451]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:ad:bc:f7, interval: 60. Adding client 127.0.0.1:48000 to clients list.
Apr 21 23:00:33 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 34, max age: 60, result: present.
Apr 21 23:00:35 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 36, max age: 60, result: present.
Apr 21 23:00:35 fhem lepresenced[451]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:ad:bc:f7, interval: 60. Adding client 127.0.0.1:48006 to clients list.
Apr 21 23:00:35 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 36, max age: 60, result: present.
Apr 21 23:01:11 fhem lepresenced[451]: [tid:0] main: Client 127.0.0.1:47992 disconnected. Connected clients: 6.
Apr 21 23:01:11 fhem lepresenced[451]: [tid:0] main: Client 127.0.0.1:48006 disconnected. Connected clients: 5.
Apr 21 23:01:11 fhem lepresenced[451]: [tid:0] main: Client 127.0.0.1:47986 disconnected. Connected clients: 4.
Apr 21 23:01:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:01:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:01:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:01:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:01:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:01:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:01:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:01:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:01:29 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 21 23:01:30 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.
Apr 21 23:01:30 fhem lepresenced[451]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, result: present.


Hatte das System eben neu gestartet. Das Zweitsystem welches eigentlich sogar näher an den Tags dran ist bringt mir im Log eigentlich fast gar keine lepresend Einträge:


Apr 21 22:55:49 salidadelsol kernel: [  689.435289] Bluetooth: hci0 advertising data length corrected
Apr 21 22:55:50 salidadelsol kernel: [  689.955501] Bluetooth: hci0 advertising data length corrected
Apr 21 22:55:50 salidadelsol kernel: [  690.152283] Bluetooth: hci0 advertising data length corrected
Apr 21 22:55:52 salidadelsol kernel: [  691.959700] bt_err_ratelimited: 4 callbacks suppressed
Apr 21 22:55:52 salidadelsol kernel: [  691.959722] Bluetooth: hci0 advertising data length corrected
Apr 21 22:55:52 salidadelsol kernel: [  692.154716] Bluetooth: hci0 advertising data length corrected
Apr 21 22:57:34 salidadelsol lepresenced[1633]: [tid:0] main::stats_task: Active clients: 1, known devices: 4 (min/max age: 1/1)


Kannst du damit was anfangen?

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 22 April 2017, 00:39:13
Guten Abend!

Zitat von: Devender am 21 April 2017, 22:59:09
Kannst du damit was anfangen?
Ja.


Apr 21 22:58:58 fhem lepresenced[451]: [tid:0] main::stats_task: Active clients: 23, known devices: 3 (min/max age: 1/902)

23 Clients. Heiliger DoS, Batman! Das sollte zwar eigentlich lepresenced nicht in die Knie zwingen, könnte aber das Resultat von einem Problem an anderer Stelle sein, z. B. FHEM oder collectord bauen aus unerfindlichem Grund immer wieder neue Verbindungen zu lepresenced auf. Kannst Du Dir das erklären?

Schlage Folgendes vor: Du updatest auf allen Knoten lepresenced auf die aktuelle Version (>=0.8), setzt den Log Level auf LOG_DEBUG und postest sagen wir 5 Minuten Log beginnend ab dem Start der lepresenceds. Tags neben den Pis, nicht bewegen, keine Reconnects in FHEM etc.

/Edit: lepresenced Version 0.81 inkl DEB-Paket eingecheckt.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 22 April 2017, 10:34:34
Guten Morgen Patrick,

danke für deine Unterstützung :-)
Du weißt doch, "Never touch a running system", aber ich hab jetzt auch mal das deb Paket installiert und den Daemon gestartet.

Die mir bekannten MAC Adressen (aktuell 3 Tags) sind:
7C:2F:80:A1:2A:4D Batterie ca 35% -- Liegt im Auto in der Einfahrt
7C:2F:80:AD:BC:F7 Batterie ca 95% -- Liegt im Auto in der Garage
7C:2F:80:A1:14:31 Batterie ca 95% --macht eigentlich fast keine Probleme, ausser in den letzten Tagen regelmäßiges absent obwohl immer im Haus

Weitere BT Geräte habe ich nicht am Laufen.

Für die Test habe ich jetzt alle drei Tags "zwischen" die beiden Pis gelegt.

Hier mal der Log_DEBUG des Hauptpi mit collectored:

Apr 22 10:09:14 fhem lepresenced[25123]: [tid:0] main: Version 0.8 started (device: hci0, listen addr: 0.0.0.0, listen port: 5333, daemonize: 0, legacy mode: 0, rssi threshold: 10, log level: 7).
Apr 22 10:09:14 fhem lepresenced[25123]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Apr 22 10:09:16 fhem lepresenced[25123]: [tid:0] main: Connection from 127.0.0.1:33622. Connected clients: 1.
Apr 22 10:09:16 fhem lepresenced[25123]: [tid:0] main: Connection from 127.0.0.1:33626. Connected clients: 2.
Apr 22 10:09:16 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:a1:2a:4d, interval: 60. Adding client 127.0.0.1:33622 to clients list.
Apr 22 10:09:16 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 22 10:09:16 fhem lepresenced[25123]: [tid:0] main: Connection from 127.0.0.1:33627. Connected clients: 3.
Apr 22 10:09:16 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:a1:2a:4d, interval: 60 by client 127.0.0.1:33622.
Apr 22 10:09:16 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:ad:bc:f7, interval: 60. Adding client 127.0.0.1:33626 to clients list.
Apr 22 10:09:16 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 22 10:09:16 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, max age: 60, result: absence.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main: Connection from 127.0.0.1:33624. Connected clients: 4.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:ad:bc:f7, interval: 60 by client 127.0.0.1:33626.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:ad:bc:f7, interval: 60. Adding client 127.0.0.1:33627 to clients list.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, max age: 60, result: absence.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, max age: 60, result: absence.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main: Connection from 127.0.0.1:33630. Connected clients: 5.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:ad:bc:f7, interval: 60 by client 127.0.0.1:33627.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:a1:14:31, interval: 60. Adding client 127.0.0.1:33624 to clients list.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, max age: 60, result: absence.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, max age: 60, result: absence.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main: Connection from 127.0.0.1:33632. Connected clients: 6.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:a1:14:31, interval: 60 by client 127.0.0.1:33624.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:a1:2a:4d, interval: 60. Adding client 127.0.0.1:33630 to clients list.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, max age: 60, result: absence.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:a1:2a:4d, interval: 60 by client 127.0.0.1:33630.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:a1:14:31, interval: 60. Adding client 127.0.0.1:33632 to clients list.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 22 10:09:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, max age: 60, result: absence.
Apr 22 10:09:18 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:a1:14:31, interval: 60 by client 127.0.0.1:33632.
Apr 22 10:09:18 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, max age: 60, result: absence.
Apr 22 10:09:25 fhem lepresenced[25123]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Apr 22 10:09:26 fhem lepresenced[25123]: [tid:1] main::bluetooth_scan_thread: Received 'Invalid device: Network is down', resetting...
Apr 22 10:09:27 fhem lepresenced[25123]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Apr 22 10:09:28 fhem lepresenced[25123]: [tid:1] main::bluetooth_scan_thread: Received 'LE Scan ...'.
Apr 22 10:10:02 fhem lepresenced[25123]: [tid:0] main: Connection from 127.0.0.1:33736. Connected clients: 7.
Apr 22 10:10:02 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query for mac address b0:b4:48:9d:04:22, interval: 48000. Adding client 127.0.0.1:33736 to clients list.
Apr 22 10:10:02 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address b0:b4:48:9d:04:22, max age: 48000, result: absence.
Apr 22 10:10:16 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -48, result: present.
Apr 22 10:10:16 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:a1:2a:4d, interval: 60 by client 127.0.0.1:33622.
Apr 22 10:10:16 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 0, max age: 60, rssi: -49, result: present.
Apr 22 10:10:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -52, result: present.
Apr 22 10:10:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -52, result: present.
Apr 22 10:10:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 2, max age: 60, rssi: -75, result: present.
Apr 22 10:10:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 0, max age: 60, rssi: -48, result: present.
Apr 22 10:10:17 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:ad:bc:f7, interval: 60 by client 127.0.0.1:33626.
Apr 22 10:10:17 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:ad:bc:f7, interval: 60 by client 127.0.0.1:33627.
Apr 22 10:10:17 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:a1:14:31, interval: 60 by client 127.0.0.1:33624.
Apr 22 10:10:17 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:a1:2a:4d, interval: 60 by client 127.0.0.1:33630.
Apr 22 10:10:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -52, result: present.
Apr 22 10:10:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -52, result: present.
Apr 22 10:10:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 2, max age: 60, rssi: -75, result: present.
Apr 22 10:10:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 0, max age: 60, rssi: -48, result: present.
Apr 22 10:10:18 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 0, max age: 60, rssi: -75, result: present.
Apr 22 10:10:18 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:a1:14:31, interval: 60 by client 127.0.0.1:33632.
Apr 22 10:10:18 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 0, max age: 60, rssi: -75, result: present.
Apr 22 10:11:16 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 2, max age: 60, rssi: -47, result: present.
Apr 22 10:11:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -54, result: present.
Apr 22 10:11:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -54, result: present.
Apr 22 10:11:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -76, result: present.
Apr 22 10:11:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -48, result: present.
Apr 22 10:11:18 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -76, result: present.
Apr 22 10:12:16 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -48, result: present.
Apr 22 10:12:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -54, result: present.
Apr 22 10:12:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -54, result: present.
Apr 22 10:12:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -72, result: present.
Apr 22 10:12:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -48, result: present.
Apr 22 10:12:18 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 2, max age: 60, rssi: -72, result: present.
Apr 22 10:13:16 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -49, result: present.
Apr 22 10:13:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -53, result: present.
Apr 22 10:13:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -53, result: present.
Apr 22 10:13:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -75, result: present.
Apr 22 10:13:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -49, result: present.
Apr 22 10:13:18 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -75, result: present.
Apr 22 10:14:16 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -49, result: present.
Apr 22 10:14:16 fhem lepresenced[25123]: [tid:0] main::stats_task: Active clients: 7, known devices: 3 (min/max age: 0/1)
Apr 22 10:14:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -54, result: present.
Apr 22 10:14:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -54, result: present.
Apr 22 10:14:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -76, result: present.
Apr 22 10:14:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -49, result: present.
Apr 22 10:14:18 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -76, result: present.
Apr 22 10:15:16 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -48, result: present.
Apr 22 10:15:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -52, result: present.
Apr 22 10:15:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -52, result: present.
Apr 22 10:15:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -75, result: present.
Apr 22 10:15:17 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -49, result: present.
Apr 22 10:15:18 fhem lepresenced[25123]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -75, result: present.


Und hier die Ausgabe vom zweiten Pi

Apr 22 10:22:53 salidadelsol lepresenced[25739]: [tid:0] main: Version 0.8 started (device: hci0, listen addr: 0.0.0.0, listen port: 5333, daemonize: 0, legacy mode: 0, rssi threshold: 10, log level: 7).
Apr 22 10:22:53 salidadelsol lepresenced[25739]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Apr 22 10:22:53 salidadelsol lepresenced[25739]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Apr 22 10:22:53 salidadelsol lepresenced[25739]: [tid:0] main: Connection from 192.168.178.28:45542. Connected clients: 1.
Apr 22 10:22:54 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:a1:2a:4d, interval: 60. Adding client 192.168.178.28:45542 to clients list.
Apr 22 10:22:54 salidadelsol lepresenced[25739]: [tid:0] main: Connection from 192.168.178.28:45544. Connected clients: 2.
Apr 22 10:22:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, max age: 60, result: absence.
Apr 22 10:22:54 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:ad:bc:f7, interval: 60. Adding client 192.168.178.28:45544 to clients list.
Apr 22 10:22:54 salidadelsol lepresenced[25739]: [tid:0] main: Connection from 192.168.178.28:45546. Connected clients: 3.
Apr 22 10:22:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, max age: 60, result: absence.
Apr 22 10:22:54 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:ad:bc:f7, interval: 60. Adding client 192.168.178.28:45546 to clients list.
Apr 22 10:22:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, max age: 60, result: absence.
Apr 22 10:22:54 salidadelsol lepresenced[25739]: [tid:1] main::bluetooth_scan_thread: Received 'LE Scan ...'.
Apr 22 10:22:59 salidadelsol lepresenced[25739]: [tid:0] main: Connection from 192.168.178.28:45558. Connected clients: 4.
Apr 22 10:22:59 salidadelsol lepresenced[25739]: [tid:0] main: Connection from 192.168.178.28:45560. Connected clients: 5.
Apr 22 10:22:59 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:a1:2a:4d, interval: 60. Adding client 192.168.178.28:45558 to clients list.
Apr 22 10:22:59 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 3, max age: 60, rssi: -61, result: present.
Apr 22 10:22:59 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:a1:2a:4d, interval: 60 by client 192.168.178.28:45558.
Apr 22 10:22:59 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:a1:14:31, interval: 60. Adding client 192.168.178.28:45560 to clients list.
Apr 22 10:22:59 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 0, max age: 60, rssi: -61, result: present.
Apr 22 10:22:59 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 0, max age: 60, rssi: -67, result: present.
Apr 22 10:23:00 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:a1:14:31, interval: 60 by client 192.168.178.28:45560.
Apr 22 10:23:00 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -67, result: present.
Apr 22 10:23:01 salidadelsol lepresenced[25739]: [tid:0] main: Connection from 192.168.178.28:45562. Connected clients: 6.
Apr 22 10:23:01 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:a1:14:31, interval: 60. Adding client 192.168.178.28:45562 to clients list.
Apr 22 10:23:01 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 0, max age: 60, rssi: -67, result: present.
Apr 22 10:23:02 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:a1:14:31, interval: 60 by client 192.168.178.28:45562.
Apr 22 10:23:02 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -67, result: present.
Apr 22 10:23:34 salidadelsol lepresenced[25739]: [tid:0] main: Connection from 127.0.0.1:50120. Connected clients: 7.
Apr 22 10:23:35 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query for mac address b0:b4:48:9d:04:22, interval: 48000. Adding client 127.0.0.1:50120 to clients list.
Apr 22 10:23:35 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address b0:b4:48:9d:04:22, max age: 48000, result: absence.
Apr 22 10:23:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 0, max age: 60, rssi: -66, result: present.
Apr 22 10:23:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -65, result: present.
Apr 22 10:23:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -65, result: present.
Apr 22 10:23:54 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:a1:2a:4d, interval: 60 by client 192.168.178.28:45542.
Apr 22 10:23:54 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:ad:bc:f7, interval: 60 by client 192.168.178.28:45544.
Apr 22 10:23:54 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query update for mac address 7c:2f:80:ad:bc:f7, interval: 60 by client 192.168.178.28:45546.
Apr 22 10:23:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 0, max age: 60, rssi: -66, result: present.
Apr 22 10:23:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -65, result: present.
Apr 22 10:23:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -65, result: present.
Apr 22 10:23:59 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 0, max age: 60, rssi: -63, result: present.
Apr 22 10:24:00 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -69, result: present.
Apr 22 10:24:02 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -68, result: present.
Apr 22 10:24:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -63, result: present.
Apr 22 10:24:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 2, max age: 60, rssi: -65, result: present.
Apr 22 10:24:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 2, max age: 60, rssi: -65, result: present.
Apr 22 10:24:59 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -66, result: present.
Apr 22 10:25:00 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -69, result: present.
Apr 22 10:25:02 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -68, result: present.
Apr 22 10:25:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -65, result: present.
Apr 22 10:25:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -68, result: present.
Apr 22 10:25:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -68, result: present.
Apr 22 10:25:59 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -64, result: present.
Apr 22 10:26:00 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 2, max age: 60, rssi: -69, result: present.
Apr 22 10:26:02 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -69, result: present.
Apr 22 10:26:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 0, max age: 60, rssi: -65, result: present.
Apr 22 10:26:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -66, result: present.
Apr 22 10:26:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -66, result: present.
Apr 22 10:26:59 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -64, result: present.
Apr 22 10:27:00 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -67, result: present.
Apr 22 10:27:02 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -69, result: present.
Apr 22 10:27:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -67, result: present.
Apr 22 10:27:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -67, result: present.
Apr 22 10:27:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -67, result: present.
Apr 22 10:27:54 salidadelsol lepresenced[25739]: [tid:0] main::stats_task: Active clients: 7, known devices: 4 (min/max age: 0/8)
Apr 22 10:27:59 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -65, result: present.
Apr 22 10:28:00 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -69, result: present.
Apr 22 10:28:02 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 1, max age: 60, rssi: -70, result: present.
Apr 22 10:28:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -66, result: present.
Apr 22 10:28:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -66, result: present.
Apr 22 10:28:54 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:ad:bc:f7, age: 1, max age: 60, rssi: -66, result: present.
Apr 22 10:28:59 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:2a:4d, age: 1, max age: 60, rssi: -63, result: present.
Apr 22 10:29:00 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 0, max age: 60, rssi: -69, result: present.
Apr 22 10:29:02 salidadelsol lepresenced[25739]: [tid:0] main: Sending update for mac address 7c:2f:80:a1:14:31, age: 0, max age: 60, rssi: -69, result: present.


Aktuell sind alle Tags anwesend und es sieht gut aus. Auch das Reading "room" von collectored wird korrekt mit beiden Namen gefüllt.
Ich würde nachher noch mal einen Test machen, wo alle Tags wieder an ihrem normalen Platz liegen.
Beim 7C:2F:80:A1:2A:4D Batterie ca 35% würde ich ja noch vermuten, dass die Batterie ein Problem sein könnte. Allerdings ist die Verbindung zum zweit Pi geringer (Entfernung) als zum Hauptpi.
Vielleicht 3 Meter.

Kannst Du was aus dem Log sehen?

Warum im Log von gestern so viele Active clients bei der Zweitinstanz erschienen sind, kann ich mir nicht erklären. Vielleicht durch die alte Version von lepresenced!?

Dirk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 22 April 2017, 14:41:09
Guten Morgen!

Zitat von: Devender am 22 April 2017, 10:34:34
Du weißt doch, "Never touch a running system", aber ich hab jetzt auch mal das deb Paket installiert und den Daemon gestartet.
Dann haben wir ja jetzt ganz neue Freiheiten dadurch bekommen, dass es nicht mehr rennt :) In jedem Fall hilft uns die rssi, das Problem etwas besser zu verstehen. Da Du jetzt das Paket benutzt müsstest Du auch mal schauen, ob z. B. der automatische Start von lepresenced jetzt doppelt vorhanden ist. Das Paket kümmert sich nämlich darum.

Was man an dem Log des Haupt-PI sieht ist, dass er um 10:09:14Uhr startet, Verbindungen annimmt, aber erst um 10:09:29Uhr tatsächlich ein erfolgreicher Scan beginnt. Da er in der Zwischenzeit blind ist, erklärt das die absents. Da müsste lepresenced korrekterweise weder mit present noch mit absent antworten sondern mit "don't know" oder so. In jedem Fall sollte die Problematik aber nur beim Start auftreten - ausgenommen andere Dienste (Batterieskripte etc.) ziehen lepresenced das Bluetooth-Gerät wieder unter dem Hintern weg. Das kannst Du aber abmildern, wenn Du das Intervall genügend groß stellst. Ggf. reichen die 60 Sekunden schon. (Ich verwende 120s) => Beobachten.
Das Bild aus lepresenced-Sicht ist auf salidadelsol identisch (10:22:53 Uhr start, 10:22:54 Uhr Beginn des Scans).

Zitat von: Devender am 22 April 2017, 10:34:34
Warum im Log von gestern so viele Active clients bei der Zweitinstanz erschienen sind, kann ich mir nicht erklären. Vielleicht durch die alte Version von lepresenced!?
Mit sowohl der Hauptinstanz als auch salidadelsol sind immer noch 7 Clients verbunden. Ich kann nicht ausschließen, dass lepresenced nicht sauber aufräumt wenn ein Client unerwartet verschwindet aber das kann auch nur ein Teil der Erklärung sein. Auf meiner Produktivinstanz (Version 0.81) sind durchweg 3 Clients verbunden (für 3 MAC-Adressen), setze aber auch keinen collectord ein. Bei Dir kommt noch folgender Eintrag hinzu:

Apr 22 10:10:02 fhem lepresenced[25123]: [tid:0] main::handle_command: Received query for mac address b0:b4:48:9d:04:22, interval: 48000. Adding client 127.0.0.1:33736 to clients list.

Augenscheinlich kommt auf dem Haupt-Pi von lokal eine Anfrage nach einer von Dir nicht verwendeten MAC-Adresse und zwar mit einem Maximalalter von 48000 Sekunden, also knapp über 13 Stunden. Spannenderweise taucht ein entsprechender Zugriff auf salidadelsol (ebenfalls von lokal) auch auf:
Apr 22 10:23:35 salidadelsol lepresenced[25739]: [tid:0] main::handle_command: Received query for mac address b0:b4:48:9d:04:22, interval: 48000. Adding client 127.0.0.1:50120 to clients list.

Zusammenfassend sieht es bei dem Testsetup gut aus. Nach den Startschwierigkeiten läuft aus lepresenced-Sicht alles perfekt, was sich mit Deinen Beobachtungen deckt. Sollte sich das ändern, wenn Du die Tags jetzt wieder in die Autos verfrachtest, würde ich auf Funkprobleme (Reichweite, Interferenzen, Reflexionen usw.) tippen und ggf. die Pis und Tags näher zusammen bringen. Wenn Abbrüche zwischendurch auftreten schau mal nach, ob da das Batterieskript läuft. Zu gegebener Zeit könntest Du Dir noch ansehen, wie es zu den vielen Connections kommt.

Wenn alles läuft nicht vergessen, den Log Level runterzusetzen, um die SD-Karte zu schonen.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 22 April 2017, 20:28:24
Danke Patrick!

Ich hatte nach dem Schwenk auf das deb-Paket meine init.d vom Skript deaktiviert. Somit laeuft nur noch das neue lepresend, so wie es soll.
Ich habe zwei Tags auf 300 Sekunden eingestellt und einen auf 60 Sekunden.
Der Tag mit der fast leeren Batterie (37%) ist nach dem Raussetzen auch wieder offline gegangen. Hier werde ich mal die Batterie tauschen und prüfen ob es besser wird.

Ich schließe nicht aus, dass die Probleme auch durch collectored kommen.
Was mir beim Testen heute morgen aufgefallen ist:
Nach dem Installieren und Starten des Daemons auf beiden PIs hat der collectored ebenfalls seine Arbeit aufgenommen und mit dem zusätzlichen Reading "room" signalisiert, dass die Tags von beiden
Umgebungen erkannt worden sind. Das Reading wurde dann mit "Haus,Energiemessung" gefüllt.

Später auch nach dem deaktiveren des DEBUG sehe ich bei beiden nur noch "Haus" im Reading. Haus ist der Hauptpi, Energiemessung dann "salidadelsol".

2017-04-22 20:19:47 - started with PID 13107
2017-04-22 20:19:47 - reading configuration file
2017-04-22 20:19:47 - no config errors found
2017-04-22 20:19:47 - forked with PID 13108
2017-04-22 20:19:47 - created socket on 0.0.0.0 with port 5111
2017-04-22 20:19:48 - new connection from 192.168.178.128:54924
2017-04-22 20:19:48 - created thread 1 for processing device 7C:2F:80:A1:14:31 in room Haus for peer 192.168.178.128 (UUID: cfc50b2a40998e67e36355e0f982804c)
2017-04-22 20:19:48 - created thread 2 for processing device 7C:2F:80:A1:14:31 in room Energiemessung for peer 192.168.178.128 (UUID: cfc50b2a40998e67e36355e0f982804c)
2017-04-22 20:19:48 - new connection from 192.168.178.128:54926
2017-04-22 20:19:48 - created thread 3 for processing device 7C:2F:80:A1:2A:4D in room Haus for peer 192.168.178.128 (UUID: 0cdf4aaec37dc79e4427054e5c68e686)
2017-04-22 20:19:48 - created thread 4 for processing device 7C:2F:80:A1:2A:4D in room Energiemessung for peer 192.168.178.128 (UUID: 0cdf4aaec37dc79e4427054e5c68e686)
2017-04-22 20:20:44 - new connection from 127.0.0.1:51498
2017-04-22 20:20:44 - created thread 5 for processing device 7C:2F:80:A1:2A:4D in room Haus for peer 127.0.0.1 (UUID: ddfe62512d7ff6eba421e9d5dd33c130)
2017-04-22 20:20:44 - created thread 6 for processing device 7C:2F:80:A1:2A:4D in room Energiemessung for peer 127.0.0.1 (UUID: ddfe62512d7ff6eba421e9d5dd33c130)
2017-04-22 20:20:44 - new connection from 127.0.0.1:51500
2017-04-22 20:20:44 - new connection from 127.0.0.1:51502
2017-04-22 20:20:44 - created thread 7 for processing device 7C:2F:80:AD:BC:F7 in room Haus for peer 127.0.0.1 (UUID: 80151f62232747024c55b45ad1ebbe22)
2017-04-22 20:20:45 - created thread 8 for processing device 7C:2F:80:AD:BC:F7 in room Energiemessung for peer 127.0.0.1 (UUID: 80151f62232747024c55b45ad1ebbe22)
2017-04-22 20:20:45 - created thread 9 for processing device 7C:2F:80:A1:14:31 in room Haus for peer 127.0.0.1 (UUID: b0432be61900d298f796d19cf7feb741)
2017-04-22 20:20:45 - created thread 10 for processing device 7C:2F:80:A1:14:31 in room Energiemessung for peer 127.0.0.1 (UUID: b0432be61900d298f796d19cf7feb741)
2017-04-22 20:20:46 - new connection from 192.168.178.128:54946
2017-04-22 20:20:46 - created thread 11 for processing device 7C:2F:80:AD:BC:F7 in room Haus for peer 192.168.178.128 (UUID: af21f80797c830863b4482238e579717)
2017-04-22 20:20:46 - created thread 12 for processing device 7C:2F:80:AD:BC:F7 in room Energiemessung for peer 192.168.178.128 (UUID: af21f80797c830863b4482238e579717)


Das Log von collectored sieht aber eigentlich gut aus. Vielleicht habe ich doch noch einen Fehler beim Aufbau von collectored...
Vielleicht findet sich noch jemand der dazu was sagen kann.

Die unbekannte MAC Adresse könnte vielleicht die Pebble Time sein. Das könnte ich noch mal testen wenn ich diese in den BT Modus versetze und LEScan laufen lasse.
Sonst fällt mir kein Gerät ein was ich mit BT betreibe. Auch Nachbarn sind weit genug weg von meinem Grundstück.

Ich mache morgen noch mal ein paar Test mit dem collectored und gebe dir bescheid.

Danke und dir einen schönen Abend!

Dirk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 23 April 2017, 02:56:08
Hi!

Zitat von: Devender am 22 April 2017, 20:28:24
Die unbekannte MAC Adresse könnte vielleicht die Pebble Time sein. Das könnte ich noch mal testen wenn ich diese in den BT Modus versetze und LEScan laufen lasse.
Oh, da verstehst Du mich falsch. Irgendwer (collectord, FHEM etc.) /fragt/ nach b0:b4:48:9d:04:22.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 23 April 2017, 19:53:02
Zitat von: PatrickR am 23 April 2017, 02:56:08
Hi!
Oh, da verstehst Du mich falsch. Irgendwer (collectord, FHEM etc.) /fragt/ nach b0:b4:48:9d:04:22.

Patrick

Die MAC ist doch von der Pebble  8).  Hatte die mal in FHEM als Presence Gerät angelegt, weil ich dachte die wird auch erkannt.
Bleibt aber immer abwesend. Dort hatte ich auch die Zeit irgendwann auf 48000 hoch gesetzt.
Bisher läuft es noch. Wundert mich aber, das es so plötzlich nicht mehr richtig ging und mit .deb Paket scheinbar schon.


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 02 Juni 2017, 19:57:28
Ich habe seit Kurzem die epresenced V0.81 im Einsatz und bekomme nun auch RSSI Werte als Reading.

In welchem Bereich befinden sich bei euch die Werte? Meine sind in der Regel über -70.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 03 Juni 2017, 12:29:09
Kommt drauf an. Habe 2 Gtags in einer Schublade liegen. Im gleichen Schrank einmal einen USB-Dongle und einmal einen HM-10. Der Gtag, den ich über Dongle abfrage, hat -65, der über HM-10 hat -55 rssi.
Ich probiere mal zu tauschen.

Gesendet von meinem SM-T813 mit Tapatalk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 03 Juni 2017, 13:02:16
Einer meiner G-Tags liegt nun 30 cm neben dem USB Dongle und komme auf -55. An meiner Haustür in circa 6-7m Entfernung sind es schon -90. Vor der Haustür wird dieser gar nicht mehr empfangen. Ist es wichtig, dass der USB Dongle absolut frei steht?

Ab welchem Wert findet die Umschaltung "present" auf "absent" statt?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 03 Juni 2017, 14:23:05
Meines Wissens, wenn das Beacon für die Dauer der Timeout gar nicht empfangen wurde.

Gesendet von meinem ONEPLUS A3003 mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 04 Juni 2017, 14:48:26
Hi!

Zitat von: micky0867 am 03 Juni 2017, 14:23:05
Meines Wissens, wenn das Beacon für die Dauer der Timeout gar nicht empfangen wurde.

Fast :)
Angenommen, die Definition ist:

define presence_gtag presence lan-bluetooth aa:bb:cc:dd:ee:ff localhost:5333 120

Das Gerät ist genau dann present, wenn in den letzten 120 Sekunden mindestens zwei Beacons empfangen wurden, sonst absent.*

Patrick

* Die Änderung, dass zwei Beacons nötig sind, entstammt folgendem Thread: https://forum.fhem.de/index.php/topic,69759.msg612734.html#msg612734
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 04 Juni 2017, 15:44:32
Danke für deine Antwort, Patrick!

In welchen Abständen sendet so ein G-Tag denn in etwa? Meine Definition ist:

define presence_gtag presence lan-bluetooth aa:bb:cc:dd:ee:ff localhost:5333 10 10

Ist der Zeitrahmen, für die RSSI Werte um -80 zu eng gesteckt?

Was für einen Bereich könnt ihr in etwa mit einem USB Dongle abdecken? Mich wundert es etwas, dass ich bei mir kaum für eine 65qm Wohnung reicht.  ???
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mumpitzstuff am 04 Juni 2017, 16:45:01
Nach der Empfehlung eines anderen Users hab ich mir den hier gekauft, damit ist auch eine größere Wohnung kein Problem mehr.

http://www.hantz.com/ASP/NewProducts/landingpage.asp?AUTOIDE=BT-UD100
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 04 Juni 2017, 18:07:38
Zitat von: Spezialtrick am 04 Juni 2017, 15:44:32
Danke für deine Antwort, Patrick!

In welchen Abständen sendet so ein G-Tag denn in etwa?
Etwa alle 1-2 Sekunden.

Zitat von: Spezialtrick am 04 Juni 2017, 15:44:32
Meine Definition ist:

define presence_gtag presence lan-bluetooth aa:bb:cc:dd:ee:ff localhost:5333 10 10

Ist der Zeitrahmen, für die RSSI Werte um -80 zu eng gesteckt?
Würde ich ausprobieren. Du kannst ja mit einer Readingshistory mal die Statusänderungen mitschreiben. Ich habe den Wert auf 60s gestellt.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 04 Juni 2017, 20:06:21
Zitat von: mumpitzstuff am 04 Juni 2017, 16:45:01
Nach der Empfehlung eines anderen Users hab ich mir den hier gekauft, damit ist auch eine größere Wohnung kein Problem mehr.

http://www.hantz.com/ASP/NewProducts/landingpage.asp?AUTOIDE=BT-UD100
300 Meter mit der Standardantenne??
Hast du mal ausprobiert, was in der Realität mit LE möglich ist?
Die LE-Geräte senden ja genau wegen low energy mit geringer Leistung.

Micky

Gesendet von meinem SM-T813 mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mumpitzstuff am 04 Juni 2017, 23:27:02
Keine Ahnung was der genau kann. Ich habe jetzt jedenfalls in meiner Wohnung keine Probleme mehr, auch durch 1 Wand hindurch nicht mehr. 300m ist aber auf jeden Fall gesponnen und schafft man vielleicht mit class 1 zu class 1. Zur Not kann man aber noch eine andere Antenne dran packen und dann sind selbst im Haus 20m kein Problem denke ich.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Thorsten.N am 10 Juni 2017, 08:44:52
Hallo zusammen,

ich heiße Thorsten und mich hat das Thema Hausautomatisierung nun auch gepackt und bin seit ein paar Wochen damit beschäftigt.

An dieser Stelle wollte ich nur mal allen Danke sagen, die an der Entwicklung von solchen Modulen beteiligt sind und waren. Einfach nur super und auch dieses Modul habe ich fehlerfrei und auf Anhieb zum laufen gebracht anhand des Tutorials.

Gruß
Thorsten
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Thorsten.N am 11 Juni 2017, 11:32:16
Zitat von: stoxx am 07 Juni 2016, 12:27:54
Ja, ich habe pro GTag ein Skript erstellt.. Geht aber natürlich auch anders, wenn man das möchte..
Ich rufe über einen at-Befehl jedes Skript dann in einem bestimmten Intervall auf, z.B.

define BatQuery at +*03:00:00 {if (Value("GTag") eq "present") {system('sudo /opt/fhem/<<Skriptname>>.sh&')}}

Ja, das sollte man tatsächlich wissen..  ;)

Hallo, das ist genau das was ich benötigt habe. Funktioniert perfekt!! Danke!
Titel: Antw:Anwesenheitserkennung mit ESP8266 und BLE-Dongle
Beitrag von: micky0867 am 15 Juni 2017, 21:05:26
ACHTUNG!
Dieser Beitrag richtet sich ausschliesslich an Leute, die wissen, wie sie im Zweifelsfall die gemachten Änderungen wieder rückgängig machen können.
Er dient dazu, die Soft/Hardware auf Herz und Nieren zu prüfen.
Zu einem späteren Zeitpunkt wird es eine "stable" Version geben.


Hallo,

da ich im Haus an mehreren Stellen mein G-Tag erkennen, mir deshalb aber nicht überall extra einen Raspi hinstellen wollte, habe ich nach einer anderen Lösung gesucht und gefunden.
Es gibt beim Chinamann BLE-Dongles (BLE HM-10) für die serielle Schnittstelle, mit denen man iBeacons empfangen kann.
Den Raspi kann man dann durch einen ESP8266 mit ESP-Easy (https://www.letscontrolit.com/ (https://www.letscontrolit.com/)) ersetzen.
Der Aufbau sieht dann so aus wie im ersten Anhang.
Auf der linken Seite ist der FHEM-Server mit der FHEM-SW, einem collectord und n Instanzen eines von mir angepassten lepresenced.

Jede Instanz des lepresenced kommuniziert per Wifi mit der seriellen Schnittstelle (Serial Server) eines ESP8266.
Dazu muss jede Instanz einen eigenen Namen (kopieren oder sym. Link) benutzen, um ein eigenes PID-File zu haben, außerdem macht es die Unterscheidung beim Logging einfacher.
Außerdem muss jede Instanz einen eigenen Listen-Port benutzen, mit dem der collectord dann kommuniziert.
Der collectord ist nur notwendig, wenn man mehrere lepresenced-Instanzen hat.

Wie man auf dem zweiten Bild sehen kann, gibt es bei diesen Modulen auch Fakes.
Die "Originale" haben eine Firmware von http://www.jnhuamao.cn/ (http://www.jnhuamao.cn/) und meine angepasste Version von lepresenced funktioniert nur mit dieser Firmware (in der Version 545)!
Um die Version sowie die Funktionalität des BLE-Moduls zu testen sollte man es erstmal mit einem USB-RS232-TTL Wandler am PC anschliessen.
Das folgende geht bestimmt auch mit einem Windows-Rechner und einer Software von jnhuamao, aber ich habe nur Linux hier.

Die Arduino-Entwicklungsumgebung öffnen, die richtige Schnittstelle auswählen und den seriellen Monitor starten.
Im seriellen Monitor die richtige Baudrate (default 9600) einstellen und "Kein Zeilenende" auswählen.
Wenn man jetzt das Kommando AT eintippt und abschickt, sollte das Modul mit OK antworten.
Mit AT+VERS? kann man die Firmwareversion anzeigen.
Auf der Webseite von jnhuamao findet sich auch ein Datenblatt mit weiteren AT-Kommandos.
Ich habe damit z.B. auch die Baudrate auf 115200 eingestellt.

Nach Eingabe der folgenden AT-Kommandos scannt das Modul iBeacons:
AT+RESET
AT+ROLE1
AT+IMME1
AT+SHOW1
--------------
AT+DISI?
AT+DISC?

Die ersten 4 Kommandos initialisieren das Modul, AT+DISI? zeigt RSSI-Werte und AT+DISC? zeigt Namen von iBeacons an.

Ich habe auch neuere Versionen der Firmware gefunden, diese scheinen aber verbuggt zu sein, deshalb solltet ihr darauf achten, dass euer HM-10 die Version 545 hat.
Falls ihr ein Fake-Modul bekommen habt, könnt ihr aber auch mit einigem Aufwand die Firmware von jnhuamao darauf flashen.
Ich habe dazu die Infos aus diesem Link   (http://www.roboternetz.de/community/threads/68336-Bluetooth-BLE-4-0-CC41-a-zu-HM-10-umwandeln/page3?p=630524&viewfull=1#post630524)benutzt. Danach habe ich noch die Version 545 von der Webseite des Herstellers geladen und bemerke jetzt keinen Unterschied zwischen den unterschiedlichen Modulen.

Hier kurz nochmal die einzelnen Schritte:
Ich habe bei mir 3 symbolische Links auf den lepresenced gemacht und lpd_Ort genannt.
Die ESPs habe bei mir die IPs 192.168.178.15[1|2|3], der SerialServer auf dem ESP lauscht auf Port 3333.
Hier ein Auszug aus meiner Prozessliste:
rp:~ # ps -ef | grep lpd
root      6278     1  0 Jun12 ?        00:41:05 /usr/bin/perl /opt/fhem/script/lpd_haus --listenport 3456 --espaddr 192.168.178.151 --espport 3333 --loglevel LOG_DEBUG --daemon
root      6315     1  0 Jun12 ?        00:30:26 /usr/bin/perl /opt/fhem/script/lpd_garage --listenport 3457 --espaddr 192.168.178.152 --espport 3333 --loglevel LOG_DEBUG --daemon
root      6327     1  0 Jun12 ?        00:36:02 /usr/bin/perl /opt/fhem/script/lpd_garten --listenport 3458 --espaddr 192.168.178.153 --espport 3333 --loglevel LOG_DEBUG --daemon


Ich hänge neben dem lepresenced noch eine angepasste Version des collectord angehangen, da sie m.E. die Anzeige mehrerer Räume schöner darstellt.

Micky
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 16 Juni 2017, 19:18:18
Ich habe heute meinen erste G-Tag eingerichtet und bin noch bissi unzufrieden mit dem Empfang. Habe einen Bluetooth CSR 4.0 Dongle.

Der G-Tag ist auf FHEM manchmal nicht verfügbar, wenn ich aber dazu dann über putty den Befehle sudo hcitool lescan laufen lasse, sehe ich, dass er verfügbar ist. Dann ist er es auch wieder über FHEM. Kommt mir das nur so vor, oder wird durch den Befehl irgendwie der Empfang verändert? Kann ja eigentlich nicht sein, oder?

Edit:
Und ist das modul blockierend? Kommt mir vor, dass FHEM seit der Einrichtung hängt. Definiert ist es wie folgt:

Internals:
   ADDRESS    7C:2F:80:AA:62:BB
   CFGFN
   DEF        lan-bluetooth 7C:2F:80:AA:62:BB 127.0.0.1:5333 10
   DeviceName 127.0.0.1:5333
   FD         28
   MODE       lan-bluetooth
   NAME       AE.GTag.Etienne
   NOTIFYDEV  global
   NR         5987
   NTFY_ORDER 50-AE.GTag.Ede
   PARTIAL
   STATE      absent
   TIMEOUT_NORMAL 10
   TIMEOUT_PRESENT 10
   TYPE       PRESENCE
   Readings:
     2017-06-16 19:18:44   command_accepted yes
     2017-06-16 19:23:24   daemon          lepresenced V0.81
     2017-06-16 19:22:34   device_name     Gigaset G-tag
     2017-06-16 19:23:24   presence        absent
     2017-06-16 19:23:24   rssi            unreachable
     2017-06-16 19:23:24   state           absent
   Helper:
     CURRENT_STATE present
     CURRENT_TIMEOUT normal
Attributes:


Edit2:

Also FHEM wird eindeutig blockiert. Mein HMLAN dreht am rad und fällt ständig aus, da FHEM ihm nicht rechzeitig ein Signal sendet. Habe ich irgendetwas falsch gemacht, dass FHEM blockiert und wenn ja, wie kann ich es testen? Oder ist das normal (Was ich perönlich nicht glaube). Habe auch den Timeout mal auf 120 wieder gesetzt, aber FHEM wird trotzdem bei jeder Abfrage blockiert.


Edit3:
Habe mich weiterhin damit beschäftigt und eine Verständnisfrage. Ich habe auf Grund des blockieren den Pi mal neugestartet. Dann wollte ich (während FHEM mit der Abfrage des GTags läuft) den Befehle sudo hcitool lescan laufen lassen um zu sehen, wie der G-Tag gefunden wird. Als Antwort bekam ich: Set scan parameters failed: Input/output error. Dies hat mich verstutzt. Dazu kommt, dass FHEM aktuell scheinbar nicht blockiert.
Heißt dass nun, dass FHEM auf den Dongle zugreift und ich deswegen mit dem Befehle sudo hcitool lescan nicht drauf zugreifen kann? Und hat FHEM deswegen immer blockiert, weil ich es vorher konnte?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 16 Juni 2017, 22:57:52
Hi,

ist mir jetzt noch nicht aufgefallen das fhem bei der Abfrage des Gtags blockiert.
Testen koenntest du es auch mit einem at, welches sekuendlich ein Logeintrag schreibt. Sollte fhem blockieren duerftest du ja Aussetzer im Log haben.

Welchen Installationsweg aus dem Wiki hast du gewählt?

Den Fehler mit der lescan Abfrage kannst durch ein Neustart der Hci Schnittstelle beheben.

sudo hciconfig hci0 down
sudo hciconfig hci0 up


Laufen vielleicht mehrere BT Prozesse bei dir im Hintergrund?
Du kannst auch mal den Threshold des Tags fuer present/absent als Attribute auf 2 oder 3 setzen.

Alternativ kannst du den Loglevel von lepresened mal auf Debug stellen und ein paar Minuten mitloggen. Vielleicht lässt sich da was erkennen.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 16 Juni 2017, 23:36:13
Sry, der Beitrag ist bissi verwirrend inzwischen, weil ich einfach immer weiter geschrieben habe.

Also FHEM hat eindeutig blockiert, das habe ich getestet. Nach einem Restart tut es das nicht mehr. Was genau der Fehler war kann ich nicht sagen. Allerdings war es so, dass ich vorher bei der Abfrage sudo hcitool lescan eine Auflistung der Abfrage bekam. Das tue ich nun nicht mehr, sondern den Fehler Set scan parameters failed: Input/output error. Aktuell erkläre ich es mir damit, dass der Pi nicht damit klar kam, dass quasi die Console den Dongle abfragt und FHEM auch. Dies hat zur Folge, dass FHEM auf die Antwort warten musst und sich blockiert hat. Da ich nun nicht mehr mittels der Console abfragen kann, blockiert auch FHEM nicht mehr.
Titel: Antw:Anwesenheitserkennung mit ESP8266 und BLE-Dongle
Beitrag von: PatrickR am 17 Juni 2017, 14:51:45
Mahlzeit!

Zitat von: micky0867 am 15 Juni 2017, 21:05:26
Den Raspi kann man dann durch einen ESP8266 mit ESP-Easy (https://www.letscontrolit.com/ (https://www.letscontrolit.com/)) ersetzen.
Wow. Was für ein Projekt und jede Menge Arbeit. Finde ich vor allem deshalb gut, weil Du Dir die vergleichweise marginal ausgelasteten Raspis und sowohl deren Overhead als auch den Wartungsaufwand sparst.

Hast Du Dir mal den ESP32 angesehen? Der hat Bluetooth LE onboard und wird von der Arduino IDE unterstützt. Man könnte voraussichtlich sogar - mit entsprechendem Aufwand - den lepresenced komplett auf dem ESP abbilden.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 17 Juni 2017, 14:59:47
Hi!

Zitat von: Amenophis86 am 16 Juni 2017, 23:36:13
Aktuell erkläre ich es mir damit, dass der Pi nicht damit klar kam, dass quasi die Console den Dongle abfragt und FHEM auch. Dies hat zur Folge, dass FHEM auf die Antwort warten musst und sich blockiert hat. Da ich nun nicht mehr mittels der Console abfragen kann, blockiert auch FHEM nicht mehr.
Ja, da schlägt tatsächlich das Highlander-Prinzip zu: Es darf nur einen "Scan"-Prozess geben. Hinzu kommt, dass selbst wenn der andere Prozess beendet ist, ein Scan u. U. nicht funktioniert und das HCI-Gerät resettet werden muss (hciconfig hci0 reset). 10 Sekunden ist übrigens eine sehr kurze Scanzeit, vor allem wenn die Empfangsbedingungen nicht optimal sind. Bitte bedenke, dass innerhalb der eingestellten Zeit zwei(!) Beacons empfangen werden müssen, damit der Status present bleibt/wird.

Zum Thema blockieren: Starte mal Apptime, dann siehst Du genau die Ursache.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 17 Juni 2017, 15:44:30
Zitat von: PatrickR am 17 Juni 2017, 14:51:45
Mahlzeit!
Wow. Was für ein Projekt und jede Menge Arbeit. Finde ich vor allem deshalb gut, weil Du Dir die vergleichweise marginal ausgelasteten Raspis und sowohl deren Overhead als auch den Wartungsaufwand sparst.

Hast Du Dir mal den ESP32 angesehen? Der hat Bluetooth LE onboard und wird von der Arduino IDE unterstützt. Man könnte voraussichtlich sogar - mit entsprechendem Aufwand - den lepresenced komplett auf dem ESP abbilden.

Patrick
Danke für die Blumen.
Nein, den anderen ESP kannte ich nicht.
Muss ich mir mal anschauen.

Ich habe tatsächlich eine Erweiterung für ESPEasy und einen zugehörigen collectord geschrieben, die was ähnliches macht, wie lepresenced und den Status per MQTT weitergibt. Dann braucht man "nur" noch den angepassten collectord auf dem Raspi.
Schließlich muss man den Raspi entlasten [emoji6]

Aber das ist noch nicht ausgiebig getestet.
Wer Interesse hat, kann das gerne probieren.
Ich werde die Sourcen in den nächsten Tagen bei Github einstellen.

Micky

Gesendet von meinem ONEPLUS A3003 mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 18 Juni 2017, 00:57:58
Also mich würde es interessieren insbesondere mit dem ESP32, da ich einen weiteren Raum abdecken muss und mir ungern dort einen Raspberry aufstellen möchte.

Dann hätte ich noch ein paar Fragen zu deiner Anleitung micky0867:
1. Baudrate auf 115200 einstellen (wahrscheinlich kein Muss) --> Bei wem muss das eingestellt werden?
2. serielle Schnittstelle am ESP konfigurieren und Port einstellen --> Kannst du das genauer beschreiben?
3. Was ich mich auch frage, hast du jetzt auf dem ESP auch lepresenced installiert, oder wie kommt FHEM an die Daten dafür?



Ansonsten haben sich meine Probleme geklärt, es lag wohl wirklich am gleichzeitigen Scan und nutzen von lepresenced.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 18 Juni 2017, 16:54:12
Du bringst da wohl was durcheinander.
Der ESP32 ist erstmal außen vor. Da hat noch keiner was getestet oder eine Ahnung, ob es überhaupt geht.
Ich habe auch keinen Hinweis gefunden, dass ESPEasy bereits auf den ESP32 portiert wurde.
Daher bleibt erstmal der ESP8266 bzw. möglicherweise auch der ESP8285

Zu deinen Fragen:
Die Baudrate bezieht sich auf die serielle Verbindung zwischen ESP8266 und HM-10 Modul.
Diese muss bei beiden Geräten gleich eingestellt sein.
Da es m.W. keine einfache Möglichkeit gibt, die Baudrate des HM-10 mit Hilfe des ESP8266 einzustellen, sollte man dafür einen USB-TTL-Wandler benutzen.

Wenn du auf dem ESP die Software ESPEasy geflasht hast, must du dort den "Serial Server" konfigurieren. Dort werden serielle Schnittstelle und Port eingerichtet.
(https://www.letscontrolit.com/wiki/index.php/Ser2Net)

Der Serial  Server macht die serielle Schnittstelle "von aussen" (WLan) zugänglich.
lepresenced läuft auf dem FHEM-System, verbindet sich mit dieser seriellen Schittstelle und steuert das HM-10 Modul sozusagen fern

Das mit "einer Art lepresenced auf dem ESP" ist eine ganz andere Geschichte, die ich irgendwann mal im entsprechenden Unterforum vorstellen werde.

Micky
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 18 Juni 2017, 18:28:22
Zitat von: micky0867 am 18 Juni 2017, 16:54:12
Du bringst da wohl was durcheinander.
Der ESP32 ist erstmal außen vor. Da hat noch keiner was getestet oder eine Ahnung, ob es überhaupt geht.
Ich habe auch keinen Hinweis gefunden, dass ESPEasy bereits auf den ESP32 portiert wurde.
Daher bleibt erstmal der ESP8266 bzw. möglicherweise auch der ESP8285

Hatte schon verstanden, dass das noch keiner gemacht hat. Meinte damit nur, dass es mich auch interessieren würde, wie und ob es geht :)

ZitatDer Serial  Server macht die serielle Schnittstelle "von aussen" (WLan) zugänglich.
lepresenced läuft auf dem FHEM-System, verbindet sich mit dieser seriellen Schittstelle und steuert das HM-10 Modul sozusagen fern
Diesen Teil hatte ich noch nicht verstanden, wie lepresenced das macht. Hatte es bisher immer so verstanden, dass es nur auf bluetooth devices auf dem eigenen Gerät zugreifen kann. FHEM fragt dann dieses wiederrum mit dem zugehörigen define ab. Scheint aber wohl so zu sein, dass lepresenced nicht auf dem Device, wo das Bluetooth Gerät dran ist auch drauf sein muss.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: gloob am 27 Juni 2017, 15:49:29
Ich hinterlasse nur mal einen Kommentar um über News benachrichtigt zu werden. Danke.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 28 Juni 2017, 21:06:04
Zitat von: Amenophis86 am 18 Juni 2017, 18:28:22Hatte es bisher immer so verstanden, dass es nur auf bluetooth devices auf dem eigenen Gerät zugreifen kann.
So ist es auch. Der gepatchte lepresenced mit dem ESP-Konstrukt ist etwas ganz anderes.

Patrick



Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 06 Juli 2017, 20:09:01
Mahlzeit!

Zitat von: mumpitzstuff am 04 Juni 2017, 16:45:01
Nach der Empfehlung eines anderen Users hab ich mir den hier gekauft, damit ist auch eine größere Wohnung kein Problem mehr.

http://www.hantz.com/ASP/NewProducts/landingpage.asp?AUTOIDE=BT-UD100

Ich möchte hier erwähnen, dass der Anbieter mit GLS versendet, vollständig auf Versandmitteilungen und Trackinglinks verzichtet und bei retournierter Ware erst nach expliziter Nachfrage aktiv wird. Ich bin gespannt, ob ich den Stick noch bekomme.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Cobra am 29 Juli 2017, 12:34:35
Hallo zusammen,

ich habe einen weiteren Raspberry 3 mit Jessie auf dem ich auch preserved laufen lassen möchte um die Reichweite zu optimieren.
Auf dem 2. Raspberry der im Heizraum ist hat alles wunderbar funktioniert und mit dem Collectored werden mir in meiner FHEM-Instanz beide Räume angezeigt.

Beim jetzt neu eingerichteten Raspberry hat es zuerst auch funktioniert, allerdings nachdem ich weitere Pakete für Homebridge installiert habe funktioniert leider die Erkennung meiner beiden iPhones nicht mehr.

Habe dann nochmal ein Presenced-Device angelegt mit direkter IP des 3. Raspberrys aber auch dort wird mir das Gerät als absent angezeigt.

Hier das List von meinen "Test-Device"

Internals:
   ADDRESS    B8:53:AC:4E:E5:A7
   CFGFN
   DEF        lan-bluetooth B8:53:AC:4E:E5:A7 192.168.178.9:5111
   DeviceName 192.168.178.9:5111
   FD         11
   MODE       lan-bluetooth
   NAME       handytest
   NOTIFYDEV  global
   NR         41
   NTFY_ORDER 50-handytest
   PARTIAL
   STATE      absent
   TIMEOUT_NORMAL 30
   TIMEOUT_PRESENT 30
   TYPE       PRESENCE
   Readings:
     2017-07-29 12:25:35   command_accepted yes
     2017-07-29 12:31:06   presence        absent
     2017-07-29 12:31:06   state           absent
   Helper:
     CURRENT_TIMEOUT normal
Attributes:


Und hier dasList von meinem Handy (gleiche MA-Adresse) welches über 2 Raspberrys gefunden wird:
Internals:
   ADDRESS    B8:53:AC:4E:E5:A7
   CFGFN      ./FHEM/haus.cfg
   CHANGED
   DEF        lan-bluetooth B8:53:AC:4E:E5:A7 192.168.178.5:5222
   DeviceName 192.168.178.5:5222
   FD         29
   MODE       lan-bluetooth
   NAME       iPhoneTimo
   NOTIFYDEV  global
   NR         363
   NTFY_ORDER 50-iPhoneTimo
   PARTIAL
   STATE      present
   TIMEOUT_NORMAL 30
   TIMEOUT_PRESENT 30
   TYPE       PRESENCE
   READINGS:
     2017-07-29 12:14:00   command_accepted yes
     2017-07-29 12:32:42   device_name     Timo's iPhone 7
     2017-07-26 18:38:16   model           lan-bluetooth
     2017-07-29 12:32:42   presence        present
     2017-07-29 12:32:42   room            Buero,Keller
     2017-07-29 12:32:42   state           present
   helper:
     CURRENT_STATE present
     CURRENT_TIMEOUT normal
Attributes:
   absenceThreshold 15
   devStateIcon present:it_smartphone@green absent:it_smartphone@red
   event-on-change-reading state
   icon       it_smartphone
   room       1.0_Haus


Wo kann ich evtl. mit der Suche beginnen um rauszufinden warum es auf dem Raspberry im Wohnzimmer nicht funktioniert?

Gruß Cobra
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: RaspiLED am 29 Juli 2017, 13:43:50
Hi,
Du schreibst doch selbst, dass nach der Installation weiterer Pakete das Problem auftrat! Also Softwarestände angeben und evtl.  Abhängigkeiten klären. Ich glaube nicht an FHEM Probleme ;-)
Gruß Arnd


Raspi2 mit FHEM, CUL, Signalduino, MySensors, HomeBridge, Presence, Bravia, ...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Cobra am 29 Juli 2017, 14:15:51
Für die Homebridge habe ich folgende Pakete nachinstallierte:

Nodejs Version 4.8.4
libavahi-compat-libdnssd-dev
avahi-daemon
python
g++
libavahi-compat-libdnssd-dev

Das sind allerdings auch alles Pakete die auf meinem Hauptsystem laufen und dort gibt es das Problem nicht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: RaspiLED am 29 Juli 2017, 14:28:14
Hi,
Dann Vergleich mal die Versionsstände!
Gruß Arnd


Raspi2 mit FHEM, CUL, Signalduino, MySensors, HomeBridge, Presence, Bravia, ...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Cobra am 29 Juli 2017, 15:02:07
Sind exakt gleich, nur ein Punkt ist mir aufgefallen.
Auf dem Hauptsystem läuft preserced in der Version 1.3, auf dem neuen Pi in der Version 1.4



Nodejs Version 4.8.4   4.8.4-2nodesource1~jessie1
libavahi-compat-libdnssd-dev   0.6.31-5
avahi-daemon   0.6.31-5
python    2.7.9-1
g++    4:4.9.2-2
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: nitrosont am 30 Juli 2017, 12:12:35
Hallo zusammen,

ich habe ein Problem mit collector/lepresence und ich hoffe ihr wisst Rat.
Aufbau:
Das Problem ist nun, dass unter fhem nur sporadisch beide Rasperrys unter "rooms" auftauchen. Oft ist einzig der Raum des Rasperry 3b vorhanden. Nun weiß ich nicht, ob das Problem daran liegt, dass

Ich würde erwarten, dass beide Räume dauerhaft in fhem erscheinen. Grund für meine Annahme ist, dass ein
sudo hcitool lescan
den G-Tag auf beiden Raspberrys anzeigt.

Ich weiß auch nicht recht, wo ich mit der Suche beginnen soll. Meine Vermutung ist, dass der Desktop des Raspberrys 2b auch auf den BT Dongle zugreifen will und es daher zu Problemen kommt.

Es findet sich nämlich auch ein Java-Programm, dass mit BlueTooth zu tun hat: "bluej"
pi@RPi2b:~ $ dpkg -l |awk '/blue/ { print $2 }'
bluej
bluez
bluez-firmware
bluez-hcidump
libbluetooth3:armhf
pi-bluetooth
pulseaudio-module-bluetooth


Wenn der eine Raum aus fhem verschwindet, habe ich auch mal die Logs von collector und der lepresence-Instanz beobachtet, kann aber nicht Auffälliges sehen:

collector:
pi@RPi3b:~ $ cat /var/log/collectord.log
2017-07-30 10:27:58 - =================================================
2017-07-30 10:27:58 - started with PID 2066
2017-07-30 10:27:58 - reading configuration file
2017-07-30 10:27:58 - no config errors found
2017-07-30 10:27:58 - forked with PID 2067
2017-07-30 10:27:58 - created socket on 0.0.0.0 with port 5222
2017-07-30 10:28:59 - new connection from 127.0.0.1:44748
2017-07-30 10:28:59 - created thread 1 for processing device 01:01:01:01:01:01 in room RPi2b for peer 127.0.0.1 (UUID: nananananananananananananananana)
2017-07-30 10:28:59 - created thread 2 for processing device 01:01:01:01:01:01 in room RPi3b for peer 127.0.0.1 (UUID: nananananananananananananananana)


lepresence:
pi@RPi2b:~ $ grep lepresenced /var/log/syslog
Jul 30 10:30:17 RPi2b systemd[1]: Starting LSB: lepresenced - presenced for Bluetooth LE devices....
Jul 30 10:30:18 RPi2b lepresenced[2923]: Starting the process: lepresenced.
Jul 30 10:30:18 RPi2b systemd[1]: Started LSB: lepresenced - presenced for Bluetooth LE devices..
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 30 Juli 2017, 12:33:04
Mein Verständnis (und das muss nicht richtig sein) ist, dass rooms eine Liste der Räume ist, in denen das Tag aktuell empfangen wird...
Die Liste aller vorhandenen Räume (was du scheinbar erwartest) kenne ich doch sowieso.


Gesendet von meinem ONEPLUS A3003 mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Cobra am 30 Juli 2017, 13:45:41
Zitat von: Cobra am 29 Juli 2017, 15:02:07
Sind exakt gleich, nur ein Punkt ist mir aufgefallen.
Auf dem Hauptsystem läuft preserced in der Version 1.3, auf dem neuen Pi in der Version 1.4



Nodejs Version 4.8.4   4.8.4-2nodesource1~jessie1
libavahi-compat-libdnssd-dev   0.6.31-5
avahi-daemon   0.6.31-5
python    2.7.9-1
g++    4:4.9.2-2

Ich habe meine Installation nochmal komplett neu gemacht und dabei festgestellt dass alles ohne Probleme funktioniert bis zu dem Zeitpunkt an dem ich nodejs installiere.

Vielleicht fällt jemandem da etwas ein ob es hier irgendwelche Abhängigkeiten gibt dies es evtl. noch zu beachten gibt und auf wie ich die ggfs herstelle.

Die Installation von nodejs habe ich wie im Wiki beschrieben gemacht:

curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
sudo apt-get install -y nodejs


Edit: Hab den Fehler gefunden.
Lag nicht an irgendwelchen Paketen sondern am neu Booten des Raspberrys. Da ich ihn von USB-Stick boote gab es wohl ein Problem das FHEM zu schnell gestartet hat und daher sich der Bluetoothcontroller nicht richtig initialisieren konnte.
Falls jemand auch das Problem hat, hier ist die Lösung:
https://forum.fhem.de/index.php/topic,51093.0.html (https://forum.fhem.de/index.php/topic,51093.0.html)

Gruß Cobra
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: nitrosont am 30 Juli 2017, 14:24:52
Zitat von: micky0867 am 30 Juli 2017, 12:33:04
Mein Verständnis (und das muss nicht richtig sein) ist, dass rooms eine Liste der Räume ist, in denen das Tag aktuell empfangen wird...
Die Liste aller vorhandenen Räume (was du scheinbar erwartest) kenne ich doch sowieso.


Gesendet von meinem ONEPLUS A3003 mit Tapatalk
Das würde ich auch so sehen. Aber da ich zu Beginn den/das G-Tag auf beiden Raspberrys mit
sudo hcitool lescan
sehen kann, wundert es mich, das es nicht so bleibt.

Viel mehr noch: Der Raum des Raspberry 2b taucht in fhem nicht auf, aber das G-Tag taucht auf, wenn ich mich per SSH einlogge und per
sudo hcitool lescan
prüfe.

Ich habe meinen Beitrag weiter oben dementsprechend editiert/ergänzt.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: RaspiLED am 30 Juli 2017, 16:36:53
Hi,
Wenn Du manuell lescan und per FHEM presence aufrufst gewinnt genau eins! Das andere hat dann nur noch abwesend! Gibt es noch andere Software, die den Bluetooth Stack belegt?
Gruß Arnd


Raspi2 mit FHEM, CUL, Signalduino, MySensors, HomeBridge, Presence, Bravia, ...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: nitrosont am 30 Juli 2017, 17:06:12
Zitat von: RaspiLED am 30 Juli 2017, 16:36:53
Wenn Du manuell lescan und per FHEM presence aufrufst gewinnt genau eins! Das andere hat dann nur noch abwesend!
Ah, danke für den Hinweis! Das war mir nicht bewusst!
Zitat
Gibt es noch andere Software, die den Bluetooth Stack belegt?
Nicht, das ich wüsste. Habe nicht bewusst am laufen. Ausser vielleicht das BT-Tray-Icon auf dem Pixel-Desktop.
Aber generelle Frage: Wie überprüfe ich ob noch was läuft?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 05 August 2017, 02:39:18
Mahlzeit!

Update auf Version 0.82 zum Testen:
  -Neue Kommandozeilenoption "--debug": Startet lepresenced im Vordergrund und gibt ausführliche Debug-Informationen auf STDOUT aus.
  -Sanity Check: lepresenced prüft beim Starten die Verfügbarkeit von hciconfig, hcitool und hcidump.
  -Model: lepresenced übermittelt das Reading model nun als lan-lepresenced. Das erlaubt die Erkennung von lepresenced in der FHEM-Statistik (sofern aktiviert).

Über Rückmeldungen, ob alles so weit stabil läuft, freue ich mich. Würde dann die neue Version inkl. Paket einchecken.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 06 August 2017, 10:20:31
Moin Patrick,

Danke!
ich habe die neue Version mal auf einen der beiden Pis gespielt. Ich gehe davon aus, dass die Version 0.8 mit der neuen 0.82 (mit collectored) zusammenarbeiten können müsste?
Soll der LogLevel in der Zeit höher sein als "LOG_INFO"?

Ich lasse es mal eine Woche so laufen  8)

Grüße,
Dirk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 06 August 2017, 15:52:41
Mahlzeit!

Zitat von: Devender am 06 August 2017, 10:20:31
Danke!
ich habe die neue Version mal auf einen der beiden Pis gespielt. Ich gehe davon aus, dass die Version 0.8 mit der neuen 0.82 (mit collectored) zusammenarbeiten können müsste?
Prima! An der Kommunikation mit dem collectord habe ich nichts geändert. Es sollte also wie mit der Vorversion funktionieren.

Zitat von: Devender am 06 August 2017, 10:20:31
Soll der LogLevel in der Zeit höher sein als "LOG_INFO"?
Ich bin ja grundsätzlich ein Freund von LOG_INFO, aber bei dem Pi muss man ja auch auf die SD-Karte Rücksicht nehmen. Wenn keine Fehler auftreten, brauchst Du den Loglevel eigentlich nicht hochzustellen.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: FunkOdyssey am 08 August 2017, 17:45:05
Sorry, auch wenn das hier bereits mehrfach zur Sprache gekommen ist, muss ich dennoch mal nachfragen:

Ich habe Unmengen an folgenden Zeilen in meiner dmesg-Ausgabe:
hci0 advertising data length corrected

Ich habe die Zeilen auch bereits in der "/etc/rsyslog.d/01-blocklist.conf" aufgenommen, so dass in /var/log/syslog keine weitere Ausgaben enthalten sind.

Nun ist mir aber aufgefallen, dass die Fehler auch in der dmesg-Ausgabe auftauchen.
Ist das weiter schlimm?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 11 August 2017, 21:34:54
Zitat von: PatrickR am 06 August 2017, 15:52:41
Mahlzeit!
Prima! An der Kommunikation mit dem collectord habe ich nichts geändert. Es sollte also wie mit der Vorversion funktionieren.
Ich bin ja grundsätzlich ein Freund von LOG_INFO, aber bei dem Pi muss man ja auch auf die SD-Karte Rücksicht nehmen. Wenn keine Fehler auftreten, brauchst Du den Loglevel eigentlich nicht hochzustellen.

Patrick

Hallo Patrick,

nach einer Woche kann ich keine negativen Auswirkungen mit der neuen Version feststellen.  Auch in Verbindung mit dem Collectored bzw. der zweiten Instanze die noch mit der aktuellen Version läuft.

Grüsse,
Dirk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 12 August 2017, 00:01:17
Danke für die Rückmeldung!


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 13 August 2017, 14:20:08
Mahlzeit!

So, 0.82 ist eingecheckt und es gibt auch schon die ersten zwei Installationen unter https://fhem.de/stats/statistics.html :)

Würde mich freuen, wenn Ihr die neue Version installieren und sendStatistics auf dem Global-Device aktivieren würde.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 13 August 2017, 20:16:19
Na, eine bin bestimmt ich und die andere du  ;D

Edit:

Wiki habe ich auf die neue Version geändert und noch einen Punkt für Versionsänderungen eingefügt.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 13 August 2017, 20:42:45
Wie führt man am Besten ein Update durch? Habe im Wiki dazu nichts gefunden.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 13 August 2017, 21:22:07
HI,

du kannst die das deb - Paket erneut herunterladen und dann per
sudo dpkg -i lepresenced-0.82-1.deb
darüber installieren.

Die Ausgabe sollte dann folgendermaßen aussehen:


(Lese Datenbank ... 136735 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von lepresenced-0.82-1.deb ...
Entpacken von lepresenced (0.82-1) über (0.8-1) ...
lepresenced (0.82-1) wird eingerichtet ...
insserv: script fhem.bkp: service fhem.pl already provided!
insserv: script fhem_stop: service fhem.pl already provided!
[ ok ] Starting lepresenced (via systemctl): lepresenced.service.
Trigger für systemd (215-17+deb8u6) werden verarbeitet ...


Ich setze im Wiki noch einen passenden Hinweis dazu.
Grüße,
Dirk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 15 August 2017, 19:17:07
Habe ich gemacht, scheint auch zu funktionieren, vielen Dank. Allerdings wird in FHEM bei trotz statusrequest noch folgendes angezeigt:
daemon lepresenced V0.81 2017-08-15 19:14:01
Modell hingegen wird richtig mit model lan-bluetooth angezeigt.

Muss FHEM dafür neugestartet werden?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 15 August 2017, 19:36:47
Zitat von: Amenophis86 am 15 August 2017, 19:17:07

Muss FHEM dafür neugestartet werden?

Bei mir hat es erst geklappt nach einem Rpi reboot.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 15 August 2017, 20:06:11
Jop bei mir auch.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 17 August 2017, 13:56:28
Die neue Version scheint doch Probleme zu machen:

Aug 17 13:35:34 raspberrypi lepresenced[553]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
Aug 17 13:35:34 raspberrypi lepresenced[553]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Aug 17 13:35:34 raspberrypi lepresenced[553]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...


Diese Meldung habe ich ständig seit dem neustart. Jemand ne Ahnung woran das hängen kann? Kenne mich zu wenig aus um zu verstehen, welches Device gemeint ist. Habe den Demon neu gestartet und dann ging es.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 17 August 2017, 17:36:06
Also irgendetwas scheint zu stören, ich musste es deaktivieren. Neuster Fehler war:

Aug 17 17:31:15 raspberrypi lepresenced[1022]: Starting the process: lepresenced.
Aug 17 17:31:15 raspberrypi systemd[1]: Started LSB: lepresenced - presenced for Bluetooth LE devices..
Aug 17 17:31:15 raspberrypi lepresenced[1032]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Aug 17 17:31:15 raspberrypi lepresenced[1032]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...


Wie kann ich mehr Fehler finden bzw weitere Details? Scheinbar war es soweit, dass mein Pi ständig abgestürzt ist. Ich bin mir nicht sicher, dass es daran lag, aber seit ich es deaktiviert habe, habe ich keine Probleme aktuell.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 17 August 2017, 20:24:59
Hi,
Du kannst das lepresened Skript den LogLevel anpassen:
Zeile 122

   117 sub parse_options() {
    118   my $device                      = "hci0";
    119   my $daemonize                   = 0;
    120   my $listen_address              = "0.0.0.0";
    121   my $listen_port                 = "5333";
    122   my $syslog_level                = "LOG_INFO";
    123   my $debug                       = 0;
    124   my $legacy_mode                 = 0;
    125   my $rssi_threshold              = DEFAULT_RSSI_THRESHOLD;


Für kurze Zeit wäre dann LOG_DEBUG z.b sinnvoll:
Details dazu noch hier:
https://wiki.fhem.de/wiki/Anwesenheitserkennung#Probleml.C3.B6sungen

Ich hab mal bei mir geschaut. Im /var/log/syslog vom Rpi2 sind die Meldung auch enthalten, aber erst einmalig heute um 19:53.
Der Rpi, hat keine Meldungen. Daher ist es mit beim Test auch nicht aufgefallen.

Aug 17 19:53:32 salidadelsol lepresenced[715]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Disable scan failed: Input/output error'!
Aug 17 19:53:32 salidadelsol lepresenced[715]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Aug 17 19:53:33 salidadelsol lepresenced[715]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Aug 17 19:53:33 salidadelsol lepresenced[715]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...


Heute schaffe ich es zwar nicht mehr, aber ich kann auch morgen noch DEBUG Infos einstellen.
Meine Rpis haben aber keine Probleme und stürzen ab.... *hm

Bekommst du die Meldung auch, wenn du den lepresenced Prozess mal Neustartest?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 17 August 2017, 21:45:05
Also scheinbar blockiert das ganze bei mir teilweise FHEM für eine kurze Zeit, so bin ich erst drauf gekommen. Ich habe ständige disconnects von meinem HMLan erhalten, welche ich nicht zuordnen konnte. Nach langer suche bin ich auf lepresence gestoßen, dass ich dies veränder habe. Dann habe ich genauer geschaut und die Fehler gesehen. Dazu kommt, das bei einem neustart vom PI die GTags nicht gefunden werden, also auf absent stehen für längere Zeit. Irgendwann kam es dann dazu, dass mir der Pi 2x abgestürzt ist, warum kann ich nicht sagen. Leider wüsste ich auch nicht in welchem Log ich dazu schauen müsste.

Seit ich lepresence deaktiviert habe, habe ich keine disconnetcs beim HMLan, FHEM blockiert wieder nicht mehr und der PI läuft wieder normal. Werde morgen, oder am Wochenende das ganze mal auf meiner Testinstanz laufen lassen und beobachten, auf der Hauptinstanz kann ich es mir aktuell nicht leisten.

Edit:
Diese Meldungen: https://forum.fhem.de/index.php/topic,28753.msg673336.html#msg673336 waren vom neustart von lepresence
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 17 August 2017, 23:12:36
Hast Du noch andere Dienste/Skripte laufen, die auf das Bluetoothgerät zugreifen, z. B. Batterieskripte oder Module?

Poste mal bitte die Ausgabe von:

ps aux|grep lepresenced

Patrick

Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 18 August 2017, 17:15:03
Nein, habe keine anderen Bluetooth Dinge laufen.

Es scheint aber noch ein weiteres Problem bei meinem PI zu geben, da ich seit heute doch wieder disconnects des HMLan habe und immer noch nicht erkenne warum. Lepresence ist ausgeschaltet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 18 August 2017, 17:24:57
Zitat von: PatrickR am 17 August 2017, 23:12:36
ps aux|grep lepresenced

pi       14135  0.0  0.2   4272  1916 pts/1    S+   17:24   0:00 grep --color=auto lepresenced

Aus irgendwelchen Gründen wird mein kompletter Pi langsam und ich checke nicht wieso. Werde mich am Wochenende mal darum kümmern müssen wo das Problem ist. Aber scheint nicht direkt mit lepresence zu tun zu haben. Sry für die Verwirrung.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 18 August 2017, 18:30:45
Gut die Ausgabe bringt bei dir natürlich nichts, wenn der Job nicht aktiv ist  ;)
Normal sollte es dann so aussehen:


root       586  0.7  1.1  33376 10620 ?        Ssl  Aug13  49:10 /usr/bin/perl /usr/sbin/lepresenced --daemon --device hci0 --listenaddress 0.0.0.0 --listenport 5333 --loglevel LOG_WARNING
pi        4377  0.0  0.1   4300  1844 pts/0    S+   18:28   0:00 grep --color=auto lepresenced



Wenn dein Pi langsam wird, ggf mal mit dem Befehl top schauen oder vielleicht läuft die SD Karte voll bis zum Stillstand.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 18 August 2017, 18:34:41
Bei top habe geschaut, cpu ist es nicht und memory ist auch nicht voll. Vielleicht ist die SD Karte im Arsch. Versuche am Wochenende ne neue aufzusetzen und es zu beobachten. Ich hasse diesen HMLan und seine disconnects. Nur Ärger mit dem Ding :D
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 18 August 2017, 18:54:14
Ich habe ein kleines Problem mit meinem NUT.

Der kleine kam heute an und ist seeeeehr gesprächig.
Anbei ein Auszug aus dem Eventmonitor.

2017-08-18 18:43:41 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:41 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:41 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:42 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:42 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:42 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:42 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:43 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:43 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:43 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:43 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:44 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:44 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:44 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:44 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:45 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:45 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:45 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:45 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:46 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:46 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:46 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:46 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:47 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:47 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:47 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:47 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:48 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:48 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:48 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:48 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:49 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:49 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:49 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:49 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:50 PRESENCE NUT_Bodo CONNECTED
2017-08-18 18:43:50 PRESENCE NUT_Bodo CONNECTED


Ist list vom Device sieht so aus.


Internals:
   ADDRESS    c0:e0:66:05:9e:b3
   DEF        lan-bluetooth c0:e0:66:05:9e:b3 192.168.200.229:5333
   DeviceName 192.168.200.229:5333
   FD         38
   MODE       lan-bluetooth
   NAME       NUT_Bodo
   NOTIFYDEV  global
   NR         654
   NTFY_ORDER 50-Charge_Bodo
   PARTIAL
   STATE      active
   TIMEOUT_NORMAL 30
   TIMEOUT_PRESENT 30
   TYPE       PRESENCE
   Helper:
     DBLOG:
       state:
         myDbLog:
           TIME       1503074782.63426
           VALUE      present
   READINGS:
     2017-08-18 18:43:25   command_accepted yes
     2017-08-18 18:46:22   daemon          lepresenced V0.82
     2017-08-18 18:46:22   device_name     nut
     2017-08-18 18:46:22   model           lan-lepresenced
     2017-08-18 18:46:22   presence        present
     2017-08-18 18:46:22   rssi            -50
     2017-08-18 18:47:18   state           active
   helper:
     CURRENT_STATE present
     CURRENT_TIMEOUT normal
Attributes:
   event-on-change-reading .*
   room       080_Presence


Gibt es eine weitere Möglichkeit, dass ich nicht soviele Events und logeinträge im fhem.log habe ?
Ein Verbose 0 am Device hatte leider nichts gebracht.

Zum Setup, der lepresenced läuft auf einem pizero w und FHEM in ner VM.
Den collectord habe ich (noch) nicht im Einsatz.
Für Hilfe wäre ich dankbar !
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: rubbertail am 18 August 2017, 19:04:28
Im Moment wird ein event erzeugt, wenn sich irgendeins der Readings ändert - ich würde gezielt die Readings bei event-on-change-reading einsetzen, die wichtig sind. RSSI zB ists nicht
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 18 August 2017, 19:10:42
Das Interessante ist ja, dass sich die Timestamps im Device bei den Readings nicht ändern.
Erst nach 30 Sekunden so wie der default Wert bei lepresenced ist.



Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 18 August 2017, 19:14:53
Einfach alles ignorieren was ich geschrieben habe....

Ich hatte an anderes LE Device heute durch den NUT ersetzt und habe einfach die neue MAC eingetragen und den Namen angepasst.

Jetzt habe ich einfach das Device gelöscht und neu angelegt.... siehe da alle 30 Sekunden kommen die Events.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 19 August 2017, 13:35:31
Bezüglich der Abfrage von ps aux, hier das Ergebnis im laufenden Modus:

root      1293  3.3  1.1  33504 10928 ?        Ssl  13:33   0:00 /usr/bin/perl /usr/sbin/lepresenced --daemon --device hci0 --listenaddress 0.0.0.0 --listenport 5333 --loglevel LOG_WARNING
pi        1318  0.0  0.1   4272  1852 pts/0    S+   13:33   0:00 grep --color=auto lepresenced


übrigens scheint mein Problem zu sein, dass mein WLan (internes WLan des Pi) plötzlich total langsam ist und teilweise abbricht
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 19 August 2017, 16:03:59
Zitat von: Amenophis86 am 19 August 2017, 13:35:31
Bezüglich der Abfrage von ps aux, hier das Ergebnis im laufenden Modus:

root      1293  3.3  1.1  33504 10928 ?        Ssl  13:33   0:00 /usr/bin/perl /usr/sbin/lepresenced --daemon --device hci0 --listenaddress 0.0.0.0 --listenport 5333 --loglevel LOG_WARNING
pi        1318  0.0  0.1   4272  1852 pts/0    S+   13:33   0:00 grep --color=auto lepresenced


Das sieht gut aus mit der Ausgabe.

Bezüglich WLAN könntest du mal ins syslog oder /var/log/messages schauen
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 22 August 2017, 17:05:15
Mein WLAn Problem konnte ich vorerst durch einen Kanal wechsel lösen. Danach habe ich dann wieder lepresence akriviert, und doch wieder Probleme festgestellt. Dieses Mal wurden die Tags als absent angezeigt, obwohl sie present waren (direkt neben dem Pi9.

Also habe ich ein downgrade auf Version 0.81 durchgeführt und seit dem keinerlei Probleme mehr. Auch die Fehler beim starten von lepresenced sind wieder weg. Ich kann nicht sagen wo der Fehler liegt, aber die 0.81 läuft bei mir nun seit 2 Tagen ohne Probleme super durch.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 22 August 2017, 19:52:47
Mahlzeit!

Zitat von: Amenophis86 am 22 August 2017, 17:05:15
Also habe ich ein downgrade auf Version 0.81 durchgeführt und seit dem keinerlei Probleme mehr. Auch die Fehler beim starten von lepresenced sind wieder weg. Ich kann nicht sagen wo der Fehler liegt, aber die 0.81 läuft bei mir nun seit 2 Tagen ohne Probleme super durch.
Das ist mysteriös. Am Scanning selbst habe ich von 0.81 auf 0.82 nämlich nichts geändert sondern lediglich die Statistik und weitere Debugging-Möglichkeiten.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 22 August 2017, 20:32:11
Zitat von: PatrickR am 22 August 2017, 19:52:47
Mahlzeit!
Das ist mysteriös. Am Scanning selbst habe ich von 0.81 auf 0.82 nämlich nichts geändert sondern lediglich die Statistik und weitere Debugging-Möglichkeiten.

Patrick

Einzig was mir noch einfallen wuerde, ist der Sanity Check den du noch eingebaut hast.
Nehmen wir mal an, bei Amenophis86 laufen weitere BT Skripte die den Check bremsen oder blockieren. In der Vorversion gab es das ja nicht - jetzt wird geprüft.
Um wirklich eine Aussage zu treffen, gibt es aber auch zu wenige Rückmeldung zur neuen Version. :-[

Er könnte  den Check in der Version 0.82 doch mal auskommentieren und dann noch mal die Version testen?!




Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 22 August 2017, 21:09:59
Wie gesagt läuft bei mir sonst nix über Bluetooth lediglich lepresenced. Müsste mich nochmal mit meiner Testversion hinsetzen und schauen, ob es da auch Probleme gibt und ob diese durch auskommentieren geändert werden können. An der Hauptversion will ich erst Mal nix mehr ändern :D

Jetzt musste ich heute FHEM aus einem anderen Grund neu starten und habe mit der 0.81 auch die Fehler Ausgabe:
Aug 22 23:48:31 raspberrypi lepresenced[555]: [tid:1] main::bluetooth_scan_thread: Received unknown output: '...ce'!
Aug 22 23:48:31 raspberrypi lepresenced[555]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Aug 22 23:48:31 raspberrypi lepresenced[555]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Aug 22 23:48:32 raspberrypi lepresenced[555]: [tid:1] main::bluetooth_scan_thread: Received unknown output: '...ce'!
Aug 22 23:48:32 raspberrypi lepresenced[555]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Aug 22 23:48:32 raspberrypi lepresenced[555]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Aug 22 23:48:33 raspberrypi lepresenced[555]: [tid:1] main::bluetooth_scan_thread: Received unknown output: '...ce'!
Aug 22 23:48:33 raspberrypi lepresenced[555]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Aug 22 23:48:33 raspberrypi lepresenced[555]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...


Somit also doch kein Versionsfehler. Woran es allerdings genau liegt kann ich nicht sagen. Nach einem neustart des Service waren die Fehler weg. Startet der Service vielleicht bevor Bluetooth bereit ist?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 27 August 2017, 18:52:54
Mahlzeit!

Neue Version 0.83 zum Testen:
Im Wesentlichen nur weitere Debug-Möglichkeiten. U. a. wird nun mitgezählt, ob hcitool lescan ("legacy") und hcidump eine identische Zahl an Beacons empfangen.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 28 August 2017, 20:30:31
Salü!

Danke!
Wie gehabt, ich teste mal bis Ende der Woche  8)

Gruesse,
Dirk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 28 August 2017, 21:58:16
Schaue auch, dass ich die Tage mal dazu komme sie zu testen. Soll diese auch die Fehler beim Starten der Software verhindern, welche wir festgestellt hatten (siehe unten) oder hast du danach noch nicht geschaut?

Aug 22 23:48:31 raspberrypi lepresenced[555]: [tid:1] main::bluetooth_scan_thread: Received unknown output: '...ce'!
Aug 22 23:48:31 raspberrypi lepresenced[555]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Aug 22 23:48:31 raspberrypi lepresenced[555]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 01 September 2017, 20:52:49
Zitat von: PatrickR am 27 August 2017, 18:52:54
Mahlzeit!

Neue Version 0.83 zum Testen:
Im Wesentlichen nur weitere Debug-Möglichkeiten. U. a. wird nun mitgezählt, ob hcitool lescan ("legacy") und hcidump eine identische Zahl an Beacons empfangen.

Patrick


Läuft! Keine neuen oder komischen Log-Einträge und die Erkennung funktioniert zuverlässig.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 02 September 2017, 17:17:01
Hallo Leute, Hi PatrickR (long time no see)

nach fast genau 1 Jahr ohne Probleme mit den GTAGs und lepresenced bin ich nun wieder hier im Thread geladet.

Ich habe versucht alle Threads seit meinem letzten Besuch hier im Thread nachzulesen, aber mein Problem wir nicht komplett Thematisiert oder später gelöst.

Daher kurz ein Abriss was diesmal mein Problem ist...

Voraussetzungen:
- 2 GTags von Gigaset
- neue CR2032 eingebaut weil die alten langsam müde wurden.
- RasPi3 mit on Board Bluetooth (FHEM Server, hier wird das ERDGESCHOSS auf die Presence der GTAGs geprüft)
- RasPi1 mit Jessie Lite und darauf nur lepresenced version 0.8-1, dieser prüft nur die GTAGs wenn sie KELLER sind.

- RasPi1 mit stretch lite und darauf (heute installiert) lepresenced version 0.82-1 > Dieser ist eine zusätzliche Installation wegen meines Problems und liegt derzeit im KELLER neben dem anderen Pi1.
- auf der FHEM (RasPi3) wird per Cron das Batteriescript ausgeführt (0 1 * * * /opt/fhem/script/Holger_GtAG_Batterie.sh >/dev/null 2>&1 ; /opt/fhem/script/Mirjam_GtAG_Batterie.sh >/dev/null 2>&1)

Problembeschreibung:
Ich habe seit kurzem das Problem, dass auf meinem FHEM Pi 3 wo also auch das lepresenced läuft, auf einmal meine GTags nicht mehr zuverlässig erkannt werden. Bedeutet, mal sind die present, mal absent, obwohl diese ca. 1,5 m weit weg liegen.
Schaue ich mir in FHEM dazu den selben Status gemessen über den Pi 1 mit Jessie an, ist dieser aber present. Hier wird stabil erkannt was der eigentliche Status ist.

Ich habe daraufhin heute einen weiteren Pi aufgesetzt und dort einen BT Stick dran.

In FHEM habe ich die Definition des bestehenden Holger_GtAG der vorher über den RasPi3 lokal abgefragt wurde umgestellt und diese geht nun auf den neuen Pi1 (mit Stretch) mit der aktuellen Version des lepresenced.
Trotzdem ist es so, dass der Holger_GtAG in FHEM nun über den Pi1 mit Stretch als absent angezeigt wird, und der andere Pi1 mit Jessie ihn present zeigt.

Nur um das mal kurz noch zu erwähnen...
DAS HAT JETZT LANGE, LANGE OHNE PROBLEME FUNKTIONIERT. Es kann also kein grundsätzliches Problem sein, dass sich die lepresenced oder die BT anfragen an dem Stick irgendwie stören.

Auffälligkeit:
Wenn ich das Batteriescript manuell triggere, dann geht der Status des absent detektierten GTags auf present.
Danach dann ist er gleich wieder maybe absent und schließlich dann absent.

Ich frage alle 10 Sekunden, und 11 Sekunden den Status der GTAGs ab.
Ich habe den presenceThreshold auf 1 und den absenceThreshold auf 20. Diese Settings haben sich bei mir aufgrund einer Alarmanlagensteuerung bewährt.

SideNote:
Ich habe die GTags nie mit einer App im Smartphone gekoppelt gehabt.
Ich habe aber beim Troubleshooting für meinen Kumpel (der das gleiche Problem hat) vorher bei mir getestet und ggf. mal per hcitools eine Verbindung hergestellt, später aber wieder gelöscht. Aber selbst wenn es so wäre, dass da noch etwas irgendwo als gepaart hängt, wieso zeigt dann der zweite lepresenced weiterhin present während der main lepresenced absent zeigt?
Ich habe keine OS Updates eingespielt, und auch keine FHEM Updates eingespielt.

Hier mal ein LIST der Devices, damit man besser versteht was ich mit zwei Pi`s und lepresenced mache:
Holger_GtAG Gerät welches erst lokal auf dme RasPi3 geprüft hatte und jetzt auf dem ganz neuen RasPi1 mit Strech prüfen sollte

Holger_GtAG
============================
Internals:
   ADDRESS    7C:2F:XX:XX:YY:ZZ
   CHANGED
   DEF        lan-bluetooth 7C:2F:XX:XX:YY:ZZ ser2netwz.fritz.box:5333 11
   DeviceName ser2netwz.fritz.box:5333
   FD         87
   MODE       lan-bluetooth
   NAME       Holger_GtAG
   NOTIFYDEV  global
   NR         900
   NTFY_ORDER 50-Holger_GtAG
   PARTIAL
   STATE      absent
   TIMEOUT_NORMAL 11
   TIMEOUT_PRESENT 11
   TYPE       PRESENCE
   READINGS:
     2017-09-02 17:00:12   .absenceThresholdCounter 19
     2017-09-02 17:00:12   .presenceThresholdCounter 0
     2017-09-02 01:00:04   Batterie        100
     2017-09-02 16:20:36   command_accepted yes
     2017-09-02 17:00:12   daemon          lepresenced V0.82
     2017-09-02 16:25:22   device_name     Gigaset G-tag
     2017-09-02 17:00:12   model           lan-lepresenced
     2017-09-02 17:00:12   presence        absent
     2017-09-02 17:00:12   rssi            unreachable
     2017-09-02 17:00:12   state           absent
   helper:
     ABSENT_COUNT 19
     CURRENT_STATE present
     CURRENT_TIMEOUT normal
Attributes:
   absenceThreshold 20

   devStateIcon present:rc_GREEN absent:rc_RED maybe.*:rc_YELLOW
   event-on-change-reading presence,state
   fp_Grundriss_WZ 306,709,2,Holger
   group      Holger
   icon       bluetooth
   presenceThreshold 1
   room       2.3_Anwesenheit
   sortby     2
   verbose    0



Holger_GtAG_ser2netpi Gerät welches über den RasPi1 mit Jessie derzeit stabil den Status ermittelt.

Holger_GtAG_ser2netpi
=======================
Internals:
   ADDRESS    7C:2F:XX:XX:YY:ZZ
   CHANGED
   DEF        lan-bluetooth 7C:2F:XX:XX:YY:ZZ ser2netpi.fritz.box:5333 10
   DeviceName ser2netpi.fritz.box:5333
   FD         98
   MODE       lan-bluetooth
   NAME       Holger_GtAG_ser2netpi
   NOTIFYDEV  global
   NR         1336
   NTFY_ORDER 50-Holger_GtAG_ser2netpi
   PARTIAL
   STATE      present
   TIMEOUT_NORMAL 10
   TIMEOUT_PRESENT 10
   TYPE       PRESENCE
   READINGS:
     2017-09-02 17:02:31   .absenceThresholdCounter 0
     2017-09-02 17:02:31   .presenceThresholdCounter 0
     2017-08-29 20:07:28   command_accepted yes
     2017-09-02 17:02:31   daemon          lepresenced V0.8
     2017-09-02 17:02:31   device_name     Gigaset G-tag
     2017-09-01 22:42:09   model           lan-bluetooth
     2017-09-02 17:02:31   presence        present
     2017-09-02 17:02:31   rssi            -85
     2017-09-02 17:02:31   state           present
   helper:
     CURRENT_STATE present
     CURRENT_TIMEOUT normal
Attributes:
   absenceThreshold 20
   devStateIcon present:rc_GREEN absent:rc_RED maybe.*:rc_YELLOW
   event-on-change-reading presence,state
   group      Holger
   icon       bluetooth
   presenceThreshold 1
   room       2.3_Anwesenheit
   sortby     3


Fragen
- Weiss hier jemand Rat?
- Weiss jemand wie ich die GTAGs resetten kann?
- Wie oft laufen bei Euch die Batteriescripte?


Danke und Gruß

Holger
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 03 September 2017, 13:54:11
Mahlzeit!

Anbei ein aktuelles Paket zum Testen.

Unter der Haube habe ich einiges geändert, u. a. jetzt einen offiziellen systemd-Service angelegt. Außerdem sollte sich jetzt lepresenced beim Reboot nicht mehr mit dem bluetooth-Service verhaken und es gibt in /etc/default/lepresenced jetzt eine Möglichkeit (MISC_OPTIONS), beliebige Kommandozeilenoptionen zu setzen, z. B. --rssithreshold. Das verbinde ich mit der Hoffnung, dass künftig weder lepresenced selbst noch die Startskripte verbogen werden :)

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 03 September 2017, 14:10:29
Hallo Holger!

Zitat von: forum-merlin am 02 September 2017, 17:17:01
nach fast genau 1 Jahr ohne Probleme mit den GTAGs und lepresenced bin ich nun wieder hier im Thread geladet.
Da wäre es natürlich spannend, was Du genau getan hast zwischen Status "geht super" und Status "tut komische Dinge", z. B. Firmwareupdate, Paketupdate, lepresenced-Update etc. Aber ich lese heraus, dass Du den Zeitpunkt nicht genau eingrenzen kannst.

An Dein komplexes Setup kann ich mich nun wieder erinnern, das macht es aber für mich unübersichtlich. Ich verstehe Dein Problem so: Auf dem RPi3, wo auch die Batterieskripte laufen, wechselt der Present-Status, obwohl die Tags in Reichweite sind, auf den anderen Pis ist die Erkennung wie gewünscht.

Folgende Vorschläge:

Ich selbst verwende übrigens keine Batterieskripte/-module, weil erstens die Batterielaufzeit der G-Tags sehr hoch ist (1,5 Jahre) und sie sich zweitens immer wieder verhaken.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 03 September 2017, 15:55:11
Hi Partick,

ich weiss, dass das echt alles komisch klingt, und die Standardaussage immer ist, "Ich habe nichts gemacht, isch schwör' ", aber es ist wirklich so. Ich habe als es mir aufgefallen ist im Bett gelegen und vorher wochenlang nix an FHEM oder den Pi´s gedreht.

Ich habe inzwischen angefangen zu analysieren. Logfiles habe ich nur bedingt, ziehe ich aber wenn gewünscht nochmal ein diktiertes Scenario.

AKTUELLE Situation:
Von gestern auf heute habe ich das lepresenced welches auf dep Pi3 lief auf die aktuelle 0.82-1 gehoben.
Vorher war es nur das lepresenced Script in einer der ersten Versionen (v0.6). (Lief aber eben lange problemlos)

Diesmal habe ich das allerdings installiert, und so startet das lepresenced 0.82-1 als deamon und ich kann es per service lepresenced start/stop steuern.

Vielleicht wichtige BEOBACHTUNG:
Wenn das Batteriescript läuft, wird das gattool aufgerufen. Wenn das passiert, schmiert scheinbar irgendwas im I/O Bereich ab, und fängt sich nicht wieder.
Dann bleibt auch lepresenced quasi auf der Strecke und kann keinen Status mehr senden/empfangen.
Ich habe das jetzt inzwischen in CRON deaktiviert, läuft also jetzt nicht wieder. Lief aber nur 1x/Tag um 1:00 Uhr
Man kann es aber zumindest so nachstellen.
Ich habe auch mit dem Batteriescript lebattery getestet, da is es genau das gleiche, im code sehe ich aber auch dass das die selbe vorgehensweise ist, nur noch mit mehr drum rum zur identifizierung der Klarnamen der G-Tags.


Hier mal ein syslog von eben mit LOG_DEBUG vom RPi3 (Hauptserver mit Onboard BT)
Ich hoffe ich setze das Loglevel überhaupt richtig.
ich stoppe das Script und starte es dann so:

sudo /usr/bin/perl /usr/sbin/lepresenced --daemon --device hci0 --listenaddress 0.0.0.0 --listenport 5333 --loglevel LOG_DEBUG

mich wundert nämlich das debug: 0 im dem folgenden logfile.

Sep  3 15:12:09 fhempi3 lepresenced[5099]: [tid:0] main: Version 0.82 started (device: hci0, listen addr: 0.0.0.0, listen port: 5333, daemonize: 1, legacy mode: 0, rssi threshold: 10, log level: 7, debug: 0).
Sep  3 15:12:09 fhempi3 lepresenced[5099]: [tid:0] main::sanity_check: hciconfig found at '/bin/hciconfig'.
Sep  3 15:12:09 fhempi3 lepresenced[5099]: [tid:0] main::sanity_check: hcitool found at '/usr/bin/hcitool'.
Sep  3 15:12:09 fhempi3 lepresenced[5099]: [tid:0] main::sanity_check: hcidump found at '/usr/bin/hcidump'.
Sep  3 15:12:09 fhempi3 lepresenced[5106]: [tid:1] main::bluetooth_scan_thread: Received 'LE Scan ...'.
Sep  3 15:13:03 fhempi3 lepresenced[5106]: [tid:0] main: Connection from 127.0.0.1:41432. Connected clients: 1.
Sep  3 15:13:03 fhempi3 lepresenced[5106]: [tid:0] main::handle_command: Received query for mac address 7c:2f:CC:HO:LG:ER, interval: 12. Adding client 127.0.0.1:41432 to clients list.
Sep  3 15:13:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -73, result: present.
Sep  3 15:13:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -74, result: present.
Sep  3 15:13:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -74, result: present.
Sep  3 15:13:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 0/1, max age: 12, rssi: -75, result: present.
Sep  3 15:13:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 0/0, max age: 12, rssi: -73, result: present.
Sep  3 15:14:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 0/1, max age: 12, rssi: -74, result: present.
Sep  3 15:14:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -73, result: present.
Sep  3 15:14:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -73, result: present.
Sep  3 15:14:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/2, max age: 12, rssi: -74, result: present.
Sep  3 15:14:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -71, result: present.
Sep  3 15:15:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -74, result: present.
Sep  3 15:15:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -72, result: present.
Sep  3 15:15:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -74, result: present.
Sep  3 15:15:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -74, result: present.
Sep  3 15:15:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -74, result: present.
Sep  3 15:16:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -74, result: present.
Sep  3 15:16:08 fhempi3 systemd[1]: Starting Session c7 of user root.
Sep  3 15:16:08 fhempi3 systemd[1]: Started Session c7 of user root.
Sep  3 15:16:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -75, result: present.
Sep  3 15:16:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -74, result: present.
Sep  3 15:16:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 0/1, max age: 12, rssi: -76, result: present.
Sep  3 15:16:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 0/0, max age: 12, rssi: -75, result: present.
Sep  3 15:17:01 fhempi3 CRON[5580]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Sep  3 15:17:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 0/0, max age: 12, rssi: -75, result: present.
Sep  3 15:17:11 fhempi3 lepresenced[5106]: [tid:0] main::stats_task: Active clients: 1, known devices: 3 (min/max age: 0/80)
Sep  3 15:17:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 0/1, max age: 12, rssi: -78, result: present.
Sep  3 15:17:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/2, max age: 12, rssi: -78, result: present.
Sep  3 15:17:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:17:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:18:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:18:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:18:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:18:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:18:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:19:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:19:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:19:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:19:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:19:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:20:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:20:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:20:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:20:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:20:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:21:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:21:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:21:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:21:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:21:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:22:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:22:12 fhempi3 lepresenced[5106]: [tid:0] main::stats_task: Active clients: 1, known devices: 3 (min/max age: 286/381)
Sep  3 15:22:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:22:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:22:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:22:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:23:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:23:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:23:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:23:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:23:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:24:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:24:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:24:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:24:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:24:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:25:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:25:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:25:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:25:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:25:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:26:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:26:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:26:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:26:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:26:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:27:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:27:11 fhempi3 lepresenced[5106]: [tid:0] main::cleanup_task: Cleanup finished, deleted 0 devices in 0 seconds.
Sep  3 15:27:13 fhempi3 lepresenced[5106]: [tid:0] main::stats_task: Active clients: 1, known devices: 3 (min/max age: 587/682)
Sep  3 15:27:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:27:27 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:27:39 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:27:51 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:28:03 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.
Sep  3 15:28:15 fhempi3 lepresenced[5106]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 12, result: absence.


Danke und Gruß,

Holger
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 03 September 2017, 17:03:22
Hi Patrick.

So, habe nochmal ein komplettes Logging über alle drei lepresenced Instanzen gleichzzeitig gezogen und gemonitored.
Anbei die Logfiles und ein Screenshot der aufzeigen soll wie es sich darstellt.

Auf dem Pi3 (wo die Probleme so massiv sind) passiert irgendwas beim "bluetooth_scan_thread" dass ein I/O Error auftaucht.
Aber wenn man sich das syslog ansieht, dann passiert das auch schon beim Start des lepresenced.

Sep  3 15:02:55 fhempi3 lepresenced[4232]: [tid:0] main: Version 0.82 started (device: hci0, listen addr: 0.0.0.0, listen port: 5333, daemonize: 1, legacy mode: 0, rssi threshold: 10, log level: 6, debug: 0).
Sep  3 15:02:55 fhempi3 lepresenced[4232]: [tid:0] main::sanity_check: hciconfig found at '/bin/hciconfig'.
Sep  3 15:02:55 fhempi3 lepresenced[4232]: [tid:0] main::sanity_check: hcitool found at '/usr/bin/hcitool'.
Sep  3 15:02:55 fhempi3 lepresenced[4232]: [tid:0] main::sanity_check: hcidump found at '/usr/bin/hcidump'.
Sep  3 15:02:55 fhempi3 lepresenced[4241]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  3 15:02:56 fhempi3 lepresenced[4241]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  3 15:02:57 fhempi3 lepresenced[4241]: [tid:1] main::bluetooth_scan_thread: Received 'LE Scan ...'.
Sep  3 15:03:31 fhempi3 lepresenced[4241]: [tid:0] main: Connection from 127.0.0.1:40254. Connected clients: 1.
Sep  3 15:03:31 fhempi3 lepresenced[4241]: [tid:0] main::handle_command: Received query for mac address 7c:2f:CC:HO:LG:ER, interval: 12. Adding client 127.0.0.1:40254 to clients list.
Sep  3 15:07:56 fhempi3 lepresenced[4241]: [tid:0] main::stats_task: Active clients: 1, known devices: 2 (min/max age: 1/1)



Allerdings passiert das auch bei EINEM der beiden anderen lepresenced. (Stabilität OK, aber nicht perfekt; das ist die neueste Installation)
ser2netwz Pi

Sep  3 15:48:32 ser2netwz lepresenced[601]: [tid:0] main: Version 0.82 started (device: hci0, listen addr: 0.0.0.0, listen port: 5333, daemonize: 1, legacy mode: 0, rssi threshold: 10, log level: 7, debug: 0).
Sep  3 15:48:32 ser2netwz lepresenced[601]: [tid:0] main::sanity_check: hciconfig found at '/bin/hciconfig'.
Sep  3 15:48:33 ser2netwz lepresenced[601]: [tid:0] main::sanity_check: hcitool found at '/usr/bin/hcitool'.
Sep  3 15:48:33 ser2netwz lepresenced[601]: [tid:0] main::sanity_check: hcidump found at '/usr/bin/hcidump'.
Sep  3 15:48:33 ser2netwz kernel: [ 3190.573302] Bluetooth: hci0 advertising data length corrected
Sep  3 15:48:33 ser2netwz kernel: [ 3190.576290] Bluetooth: hci0 advertising data length corrected
Sep  3 15:48:33 ser2netwz lepresenced[608]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  3 15:48:33 ser2netwz lepresenced[608]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  3 15:48:35 ser2netwz lepresenced[608]: [tid:1] main::bluetooth_scan_thread: Received 'LE Scan ...'.
Sep  3 15:49:19 ser2netwz lepresenced[608]: [tid:0] main: Connection from fhempi3:51192. Connected clients: 1.
Sep  3 15:49:19 ser2netwz kernel: [ 3236.821417] Bluetooth: hci0 advertising data length corrected
Sep  3 15:49:19 ser2netwz lepresenced[608]: [tid:0] main::handle_command: Received query for mac address 7c:2f:CC:MI:RJ:AM, interval: 10. Adding client fhempi3:51192 to clients list.
Sep  3 15:49:19 ser2netwz lepresenced[608]: [tid:0] main: Connection from fhempi3:51200. Connected clients: 2.
Sep  3 15:49:19 ser2netwz lepresenced[608]: [tid:0] main: Sending update for mac address 7c:2f:CC:MI:RJ:AM, ages: 0/0, max age: 10, rssi: -73, result: present.
Sep  3 15:49:20 ser2netwz lepresenced[608]: [tid:0] main::handle_command: Received query for mac address 7c:2f:CC:HO:LG:ER, interval: 11. Adding client fhempi3:51200 to clients list.
Sep  3 15:49:20 ser2netwz lepresenced[608]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, max age: 11, result: absence.
Sep  3 15:49:29 ser2netwz lepresenced[608]: [tid:0] main: Sending update for mac address 7c:2f:CC:MI:RJ:AM, ages: 0/1, max age: 10, rssi: -76, result: present.




und hier beim alten (stabilsten) nicht.
ser2netpi

Sep  3 16:10:39 ser2netpi lepresenced[4400]: [tid:0] main: Version 0.8 started (device: hci0, listen addr: 0.0.0.0, listen port: 5333, daemonize: 1, legacy mode: 0, rssi threshold: 10, log level: 7).
Sep  3 16:10:40 ser2netpi lepresenced[4401]: [tid:1] main::bluetooth_scan_thread: Received 'LE Scan ...'.
Sep  3 16:11:02 ser2netpi lepresenced[4401]: [tid:0] main: Connection from fhempi3:41660. Connected clients: 1.
Sep  3 16:11:03 ser2netpi lepresenced[4401]: [tid:0] main: Connection from fhempi3:41670. Connected clients: 2.
Sep  3 16:11:03 ser2netpi lepresenced[4401]: [tid:0] main::handle_command: Received query for mac address 7c:2f:CC:MI:RJ:AM, interval: 10. Adding client fhempi3:41660 to clients list.
Sep  3 16:11:03 ser2netpi lepresenced[4401]: [tid:0] main: Sending update for mac address 7c:2f:CC:MI:RJ:AM, age: 0, max age: 10, rssi: -69, result: present.
Sep  3 16:11:03 ser2netpi lepresenced[4401]: [tid:0] main::handle_command: Received query for mac address 7c:2f:CC:HO:LG:ER, interval: 10. Adding client fhempi3:41670 to clients list.
Sep  3 16:11:03 ser2netpi lepresenced[4401]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, age: 0, max age: 10, rssi: -80, result: present.
Sep  3 16:11:13 ser2netpi lepresenced[4401]: [tid:0] main: Sending update for mac address 7c:2f:CC:MI:RJ:AM, age: 1, max age: 10, rssi: -71, result: present.


Hast Du oder jemand anderes eine Idee was das sein kann?

Danke Euch,

Holger
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 06 September 2017, 16:17:24
Hab eben mal Version 83-3 getestet es kommt beim Starten trotzdem:


Sep 06 16:13:45 raspberrypi systemd[1]: Started lepresenced.
Sep 06 16:13:45 raspberrypi lepresenced[16010]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', ...tting...
Sep 06 16:13:46 raspberrypi lepresenced[16010]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...


Scheint aber zu funktionieren.

Noch eine Frage zum Reading rooms mit collected:
Wie ist die Reihenfolge der gelisteten Räume? Ich frage, da ich an einer stelle beide Räume erhalte und gerne einen priorisieren möchte. Oder kann man irgendwie einstellen, dass ab einem bestimmten RSSI Wert dieser Room nicht mehr angezeigt werden soll, nur der stärkste Raum gezeigt wird?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 06 September 2017, 16:35:41
Gibt es irgendwo ein Schritt-für-Schritt-Howto wie man das Szenario mehrere PI's mit Bluetooth-Erkennung von Gtags (lepresenced / collectord) im Detail aufsetzt?

Und nein, alleine mit dem Wiki-Eintrag und der Commandref komme ich da nicht wirklich weit.

Falls es sowas nicht gibt, dann bitte ignorieren.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 06 September 2017, 17:19:01
- (le)presenced auf allen PI installieren
- collected auf dem HauptPI installieren
- die collected.conf entsprechend dem Wiki einrichten (Port 5111 bei presenced 5333 bei lepresenced)
- Auf jedem PI die GTags als Device anlegen. Den Port 5222 allerdings nehmen und bei IP immer auf den HauptPI verweisen

So mal auf die schnelle. Die restlichen Infos findest du im Wiki
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 06 September 2017, 20:55:35
Zitat von: Amenophis86 am 06 September 2017, 16:17:24
Hab eben mal Version 83-3 getestet es kommt beim Starten trotzdem:
Scheint aber zu funktionieren.

ok seit der neuen Version habe ich wieder Probleme mit meinem HMLan. Daher zurück auf 0.81 mal sehen, ob es etwas bringt.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 06 September 2017, 21:42:46
Zitat von: Amenophis86 am 06 September 2017, 20:55:35
ok seit der neuen Version habe ich wieder Probleme mit meinem HMLan. Daher zurück auf 0.81 mal sehen, ob es etwas bringt.

Hast du die 0.82 uebersprungen oder da auch Probleme ?

Wegen den rooms hatte ich in einem anderen Thema mal eine Vermutung geäußert.
Ich denke sortiert nach RSSI wird nicht. Es wird der zuerst angezeigt, der zuerst erkannt wird.
Du hast ja auch nur einen RSSI Wert im Reading. Der gehört dann zum ersten Raum.

Ich könnte mir aber vorstellen, dass man diese Infos aus dem collectord log zusammen bekommen kann.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 06 September 2017, 21:48:22
Zitat von: errazzor am 06 September 2017, 16:35:41
Gibt es irgendwo ein Schritt-für-Schritt-Howto wie man das Szenario mehrere PI's mit Bluetooth-Erkennung von Gtags (lepresenced / collectord) im Detail aufsetzt?

Und nein, alleine mit dem Wiki-Eintrag und der Commandref komme ich da nicht wirklich weit.

Falls es sowas nicht gibt, dann bitte ignorieren.

Was fehlt dir? Das Wiki ist eigentlich mittlerweile recht Umfangreich geschrieben und viele Szenarios sind erklärt.
Eben auch der Aufbau lepresenced nebst collectord.
Ich passe an und erweitere gerne noch Passagen, um das Verständnis zu erleichtern aber dazu muesstest du sagen was du nicht verstehst.

Es wird auch nie ein All-in-One Loesung/Paket geben da jede Installation verschieden ist.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 06 September 2017, 21:58:52
Zitat von: Devender am 06 September 2017, 21:42:46
Hast du die 0.82 uebersprungen oder da auch Probleme ?

Da ich die Probleme auch bei der 82 hatte, habe ich diese ausgelassen und nun die 83 getestet. Gleiches Problem und auch die Fehlermeldung zu Beginn. Siehe ein paar Posts weiter oben.

Zu Rooms, den Post hatte ich gelesen. Habe gehofft, dass es sich inzwischen geändert hat. Dürfte für collected ja eigentlich nicht schwer sein den Raum mit der besten RSSI als den anwesenden Raum auszugeben und nicht alle. Wobei ich noch nicht in den Code geschaut habe.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 07 September 2017, 00:41:13
Die Fehlermeldung zu Beginn ist kein Beinbruch. lepresenced resettet dann und i. d. Regel ist alles ok. Du siehst es nur nicht im Log weil die erfolgreichen Meldungen nur bei höheren Logleveln angezeigt werden.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 07 September 2017, 00:42:37
Zitat von: Amenophis86 am 06 September 2017, 20:55:35
ok seit der neuen Version habe ich wieder Probleme mit meinem HMLan. Daher zurück auf 0.81 mal sehen, ob es etwas bringt.
Ist PRESENCE überhaupt die Ursache? Was sagt denn apptime?


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 07 September 2017, 08:40:02
Kann ich noch nicht 100% sagen, aber außer, dass ich lepresenced ein Update ausgeführt habe, habe ich nichts geändert und seit Tagen keine Probleme gehabt. Die hatte ich immer erst nach einem Update von lepresenced.
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 07 September 2017, 11:35:58
Zitat von: Amenophis86 am 07 September 2017, 08:40:02
Kann ich noch nicht 100% sagen, aber außer, dass ich lepresenced ein Update ausgeführt habe, habe ich nichts geändert und seit Tagen keine Probleme gehabt. Die hatte ich immer erst nach einem Update von lepresenced.
Welche Probleme denn konkret? Disconnect der HMLANs? Dann solltest Du Dir das mal strukturiert ansehen, z. B. mit apptime.

In den letzten Versionen hat sich nämlich an der Schnittstelle zu FHEM nichts geändert.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 07 September 2017, 17:37:13
Hatte ich ja bereits einige Posts vorher geschrieben. Ich habe unregelmäßig disconnects gehabt. Diese sind aufgetreten, als ich 0.82 installiert habe, waren mit 0.81 wieder weg. Gleiches Spiel mit 0.83. Es wurde sonst nichts geändert und Apptime hat mir leider nichts entscheidendes ausgeworfen. Kann dir auch nicht sagen woran es liegen soll. Sry
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 07 September 2017, 22:12:53
Ich habe jetzt auch mal das .deb der 83-3 installiert und beobachte.
Ich befüchte aber, das diese Version bei mir auch ohne Probleme zu machen ihren Dienst verrichten wird  :-X.

Ich lasse diese jetzt auch mal eine Woche paralle(auf anderem Pi) zur 81er laufen und würde dann das Wiki auch auf diese Version heben.
Zusätzlich die paar Infos über die Logmeldung, die keine Fehler sind wie Patrick ja schon angemerkt hatte.

Falls nötig kann ich auch gerne noch mal den LOG_LEVEL erhöhen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 08 September 2017, 17:36:46
Hallo Zusammen,

redet Ihr von Version 0.8-1 oder 0.81-1 die hier am stabilsten zu sein scheint?

Ich habe auf einem der Pi`s die Version 0.8-1 und die scheint bei mir die stabilste zu sein.
Die anderen zwei Pi´s sind inzwischen auf 0.82-1

Ich glaube zu beobachten, dass die 0.82-1 bei einem service lepresenced start über init.d bei default Loglevel LOG_WARNING nicht stabil läuft.
Wenn ich den service allerdings stoppe, und dann manuell per sudo aufruf mit LOG_DEBUG starte läuft es stabiler, aber dennoch nicht so stabil wie die 0.8-1

Es scheint also, als wäre was an SYSLOG in Kombination mit LOG_DEBUG geändert worden.

Ich werde mal einen der Pi´s auf 0.81-1 umstellen.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 08 September 2017, 17:44:51
Ich spreche von der 0.81-1 welche bei mir bisher keine Probleme bereitet.
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 08 September 2017, 17:58:11
Ich bin ehrlich gesagt etwas beunruhigt darüber, dass hier über die gefühlte Zuverlässigkeit von Versionen abgestimmt wird. Gerade bei komplexen, nicht reproduzierbaren Fehlerbildern führt das schlimmstenfalls dazu, dass andere Nutzer ohne sachliche Grundlage zu Downgrades animiert werden und so ein unsupportbarer Versionszoo entsteht. Hinzu kommt, dass die letzten Updates einige Hilfsmittel für das Debugging implementiert haben, die man gerade dann gut gebrauchen könnte, wenn man den Fehlern zielgerichtet nachgehen möchte.

Gleichzeitig habe ich den Eindruck, dass Hinweise, die deutlich näher an der problematischen Stelle ansetzen, zurückgestellt oder ignoriert werden, konkret: Die (testweise) Abschaltung konkurrierender Zugriffe auf Bluetooth-Geräte wie Batterieskripte/-module.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 08 September 2017, 18:47:20
Patrick ich verstehe dich und ich würde dir gerne helfen beim finden meines Problems. Aber das debugging hat bei mir leider nicht geholfen. Ich habe keine anderen Bluetooth Dinge am laufen außer lepresenced, was ich auch getestet hatte. Apptime und Perform haben mir keinen Grund ausgeworfen, welcher mir geholfen hätte einen anderen Verantwortlichen zu finden. Daher kann ich dir lediglich sagen was das Problem ist. Ich kann dir lediglich sagen, dass ab Version 082-2 Probleme mit meinem HMLan aufgetreten sind. Sobald ich wieder auf 081-1 zurück bin war es wieder ok. Ich würde selbst gerne wissen was das Problem ist und bin auch gerne bereit dir bei der Suche zu helfen, aber ich wüsste nicht mehr wie. Können das Thema auch in ein neues Thema auslagern und probieren ein bisschen rum.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 08 September 2017, 19:26:03

Hi Patrick,


Zitat von: PatrickR am 08 September 2017, 17:58:11
Ich bin ehrlich gesagt etwas beunruhigt darüber, dass hier über die gefühlte Zuverlässigkeit von Versionen abgestimmt wird. Gerade bei komplexen, nicht reproduzierbaren Fehlerbildern führt das schlimmstenfalls dazu, dass andere Nutzer ohne sachliche Grundlage zu Downgrades animiert werden und so ein unsupportbarer Versionszoo entsteht. Hinzu kommt, dass die letzten Updates einige Hilfsmittel für das Debugging implementiert haben, die man gerade dann gut gebrauchen könnte, wenn man den Fehlern zielgerichtet nachgehen möchte.
Ich gebe Dir ja recht, was den ersten Abschnitt anbelagt. Es soll nicht darauf hinauslaufen dass jemand auf einen alten Stand geht nur weil hier "Gefühle" aufkommen.
Aber wenn jemand sowas sagt, dann gehe ich dem nach und mache mir selbst ein Bild davon.


Zitat von: PatrickR am 08 September 2017, 17:58:11
Gleichzeitig habe ich den Eindruck, dass Hinweise, die deutlich näher an der problematischen Stelle ansetzen, zurückgestellt oder ignoriert werden, konkret: Die (testweise) Abschaltung konkurrierender Zugriffe auf Bluetooth-Geräte wie Batterieskripte/-module.

Aber wenn dein zweiter Abschnitt an mich gerichtet ist, dann hast du vielleicht etwas in meinem Post überlesen.
Ich habe meine Batteriescripte abgeschaltet wie Du es auch vorgeschlagen hattest.
Ich habe sogar bestätigt, dass diese einen negativen Einfluss haben. Ich habe sogar manuell mit dem gatttool welches in allen verfügbaren Batteriescripten verwendet wird getestet und identifiziert dass es dann zu einem I/O Fehler kommt der das alles aus dem Lot bringt.


Weiter habe ich dann auch debug Logs gezogen und hier angehängt. Leider habe ich halt dazu keine weitere Info erhalten.
Deswegen habe ich eben weiter gesucht und probiere derzeit Dinge aus.

Ich gebe mir echt Mühe alle infos (auch proaktiv) zusammenzutragen die es braucht um meinen Fehler aufzudecken.
Ich habe ja auch noch zusätzlich ein Environment aufgebaut um die verschiedenen Versionen live nebeneinander zu stellen und live daten zu liefern.
Für die Version 0.83-1 und die Version 0.6 fehlen mir allerdings noch zwei weitere RasPi. Sonst hätte ich alle gleichzeitig aktiv.


Aktuell kann ich zumindest für mich sagen, dass die Version 0.81-1 nicht stabiler ist als irgendeine andere wenn ich bei mir in meiner Umgebung auf das lokale hci0 device meines RasPi3(fhempi3) gehe.
Ich denke inzwischen, dass es irgendwas lokales auf dem RasPi3 mit dem OnBoard Bluetooth Chip ist. Nur weiss ich nicht wie ich das rausfinden soll.

Derzeit versuche ich mit DEBIAN Debug Loglevel noch mehr Infos aus dem Pi zu kitzeln. cmd>demesg -n 8

Ich sehe nämlich nirgends nur einen Ansatz warum von jetzt auf gleich das lepresenced (egal in welcher version auf diesem Pi3) auf einmal den GTAG als absent sieht.


Patrick , kannst Du mir sagen was diese Meldungen und Fehler bedeuten??

Sep  8 19:04:53 fhempi3 lepresenced[10098]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 3/3, max age: 12, rssi: -81, result: present.
Sep  8 19:04:53 fhempi3 lepresenced[10098]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Disable scan failed: Input/output error'!
Sep  8 19:04:53 fhempi3 lepresenced[10098]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  8 19:04:54 fhempi3 lepresenced[10098]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  8 19:04:55 fhempi3 lepresenced[10098]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  8 19:04:56 fhempi3 lepresenced[10098]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  8 19:04:56 fhempi3 lepresenced[10098]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  8 19:04:57 fhempi3 lepresenced[10098]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  8 19:04:57 fhempi3 lepresenced[10098]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  8 19:04:58 fhempi3 lepresenced[10098]: [tid:0] main: Sending update for mac address 7c:2f:CC:MI:RJ:AM, ages: 8/9, max age: 12, rssi: -71, result: present.
Sep  8 19:04:58 fhempi3 lepresenced[10098]: [tid:1] main::bluetooth_scan_thread: Received 'LE Scan ...'.
Sep  8 19:05:05 fhempi3 lepresenced[10098]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 1/1, max age: 12, rssi: -77, result: present.
Sep  8 19:05:10 fhempi3 lepresenced[10098]: [tid:0] main: Sending update for mac address 7c:2f:CC:MI:RJ:AM, ages: 2/3, max age: 12, rssi: -72, result: present.



Mein nächster Schritt ist nun auf dem Pi3 mit dem OnBoard BT Chip die 0.83-1 zu testen

Ach ja, und falls das nicht eindeutig genug aus meinen Posts rauskam, die anderen Pi haben ja kein OnBoard hci0, und haben einen Bluetooth Stick angesteckt.
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 08 September 2017, 23:19:24
Mahlzeit!

Zitat von: forum-merlin am 08 September 2017, 19:26:03
Patrick , kannst Du mir sagen was diese Meldungen und Fehler bedeuten??

Sep  8 19:04:53 fhempi3 lepresenced[10098]: [tid:0] main: Sending update for mac address 7c:2f:CC:HO:LG:ER, ages: 3/3, max age: 12, rssi: -81, result: present.
Sep  8 19:04:53 fhempi3 lepresenced[10098]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Disable scan failed: Input/output error'!


Ich fürchte - bezogen auf die Fehler - nicht mehr als ich weiter oben schon geschrieben hatte. Die "Received unknown output"-Zeilen aus dem bluetooth-scan-thread sind Ausgaben von hcitool lescan und gerade disable scan failed habe ich noch nie gesehen. Das ist aus zwei Gründen bemerkenswert:
1. Eigentlich gibt es keinen Grund, den Scan zu beenden wenn lepresenced nicht beendet wird.
2. Warum schlägt das Beenden des Scans überhaupt fehl?

Ich selbst habe sowohl eine Debian-Jessie-VM mit einem Bluetooth-USB-Stick als auch einen RPi3 mit Raspbian Jessie und dem Onboard-Bluetooth und absolut keine Probleme.

Insofern stimme ich Dir zu, dass bei Dir irgendwas hardware- oder softwaremäßig verbogen ist.

Ich hatte tatsächlich mal merkwürdige Probleme, bei denen plötzlich keine Beacons mehr empfangen wurden. Da war tatsächlich der Bluetooth-Stick defekt.

Patrick

P. S.: Die Aussage mit den Batterieskripten war tatsächlich auf einen nicht klar umreißbaren Personenkreis bezogen. Aber bei Dir hatte ich die Gattool-Aussagen tatsächlich fälschlicherweise so interpretiert, dass die Skripte weiterlaufen.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 09 September 2017, 09:11:11
Hi Patrick,

dann hätten wir dieses Missverständnis ja geklärt :-)


habe jetzt 0.83-3 drauf und hier scheint ein reconnect oder sowas drinnen zu sein, der bei einem failure dann resettet und das funktiniert ganz gut.
Zumindest seit ein paar Minuten.

Trotzdem kommen Fehler auf.
Ich habe mal ein Set Logfiles angehängt.


Hier ein Auszug meiner Beobachtung:

Sep  9 08:36:39 fhempi3 lepresenced[23587]: [tid:0] main: Sending update for mac address 7c:2f:80:MI:RJ:AM, ages: 1/2, max age: 12, rssi: -70, result: present.
Sep  9 08:36:51 fhempi3 lepresenced[23587]: [tid:0] main: Sending update for mac address 7c:2f:80:HO:LG:ER, max age: 12, result: absence.
Sep  9 08:36:51 fhempi3 lepresenced[23587]: [tid:0] main: Sending update for mac address 7c:2f:80:MI:RJ:AM, max age: 12, result: absence.
Sep  9 08:36:56 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Disable scan failed: Input/output error'!
Sep  9 08:36:56 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:36:57 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  9 08:36:57 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:36:58 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'LE Scan ...'.
Sep  9 08:37:00 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:37:00 fhempi3 kernel: [55927.656364] Bluetooth: Failed to add device to auto conn whitelist: status 0x0c
Sep  9 08:37:00 fhempi3 kernel: [55927.754760] Bluetooth: Failed to add device to auto conn whitelist: status 0x0c
Sep  9 08:37:01 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  9 08:37:01 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:37:02 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  9 08:37:02 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:37:03 fhempi3 lepresenced[23587]: [tid:0] main: Sending update for mac address 7c:2f:80:HO:LG:ER, ages: 3/3, max age: 12, rssi: -80, result: present.
Sep  9 08:37:03 fhempi3 lepresenced[23587]: [tid:0] main: Sending update for mac address 7c:2f:80:MI:RJ:AM, ages: 3/4, max age: 12, rssi: -69, result: present.
Sep  9 08:37:03 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  9 08:37:04 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:37:05 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'LE Scan ...'.
Sep  9 08:37:15 fhempi3 lepresenced[23587]: [tid:0] main: Sending update for mac address 7c:2f:80:HO:LG:ER, ages: 1/1, max age: 12, rssi: -82, result: present.
Sep  9 08:37:15 fhempi3 lepresenced[23587]: [tid:0] main: Sending update for mac address 7c:2f:80:MI:RJ:AM, ages: 1/2, max age: 12, rssi: -72, result: present.



Ich weiss nicht ob das wichtig ist, aber in den anderen Logs findet sich zeitgleich sowas:
messages:

Sep  9 08:33:46 fhempi3 lepresenced[23488]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  9 08:33:46 fhempi3 lepresenced[23488]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:34:03 fhempi3 lepresenced[23488]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:34:03 fhempi3 lepresenced[23488]: [tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
Sep  9 08:34:30 fhempi3 lepresenced[23587]: [tid:0] main: Version 0.83 started (device: hci0, listen addr: 0.0.0.0, listen port: 5333, daemonize: 0, legacy mode: 0, rssi threshold: 10, log level: 7, debug: 0).
Sep  9 08:34:30 fhempi3 lepresenced[23587]: [tid:0] main::sanity_check: md5 digest of '/usr/sbin/lepresenced' is: dc0db6a06b26acce7739b847c3727fad.
Sep  9 08:34:30 fhempi3 lepresenced[23587]: [tid:0] main::sanity_check: hciconfig found at '/bin/hciconfig'.
Sep  9 08:34:30 fhempi3 lepresenced[23587]: [tid:0] main::sanity_check: hcitool found at '/usr/bin/hcitool'.
Sep  9 08:34:30 fhempi3 lepresenced[23587]: [tid:0] main::sanity_check: hcidump found at '/usr/bin/hcidump'.
Sep  9 08:34:30 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  9 08:34:30 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:34:31 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'LE Scan ...'.
Sep  9 08:35:03 fhempi3 lepresenced[23587]: [tid:0] main: Connection from 127.0.0.1:41814. Connected clients: 1.
Sep  9 08:35:03 fhempi3 lepresenced[23587]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:HO:LG:ER, interval: 12. Adding client 127.0.0.1:41814 to clients list.
Sep  9 08:35:03 fhempi3 lepresenced[23587]: [tid:0] main: Connection from 127.0.0.1:41816. Connected clients: 2.
Sep  9 08:35:03 fhempi3 lepresenced[23587]: [tid:0] main::handle_command: Received query for mac address 7c:2f:80:MI:RJ:AM, interval: 12. Adding client 127.0.0.1:41816 to clients list.
Sep  9 08:36:56 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received unknown output: 'Disable scan failed: Input/output error'!
Sep  9 08:36:56 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:36:57 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  9 08:36:57 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:36:58 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'LE Scan ...'.
Sep  9 08:37:00 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:37:01 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  9 08:37:01 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:37:02 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  9 08:37:02 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:37:03 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'Set scan parameters failed: Input/output error', resetting...
Sep  9 08:37:04 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
Sep  9 08:37:05 fhempi3 lepresenced[23587]: [tid:1] main::bluetooth_scan_thread: Received 'LE Scan ...'.


und im kern.log

Sep  9 04:13:56 fhempi3 kernel: [40143.404482] Bluetooth: Failed to add device to auto conn whitelist: status 0x0c
Sep  9 04:13:56 fhempi3 kernel: [40143.493804] Bluetooth: Failed to add device to auto conn whitelist: status 0x0c
Sep  9 08:37:00 fhempi3 kernel: [55927.656364] Bluetooth: Failed to add device to auto conn whitelist: status 0x0c
Sep  9 08:37:00 fhempi3 kernel: [55927.754760] Bluetooth: Failed to add device to auto conn whitelist: status 0x0c


ich habe auch das dmesg angehängt, aber ich denke da ist nichts brauchbares drinnen.



ZU FRÜH GEFREUT, aber trotzdem ned unbedingt schlecht.

Ich habe während des Beitragschreibens einen kurzen Ausfall von ein paar Minuten gehabt.
Die Logs habe ich mit "little_later_*" auch noch dazugepackt.

Das Problem ist, dass das bei mir extrem stabil laufen muss. Und selbst ein kurzer Ausfall von nur ein paar Minuten hat sch... Auswirkungen :-/
Hast Du da was eingebaut in 0.83-3 wegen dem reset ?
Gibt es da einen einstellbaren Wert der nach "count (n)" den reset durchführt?


Patrick, kannst Du bitte mal da drauf schauen?

Danke,

Beste Grüße

Holger

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 09 September 2017, 18:57:20
Hi!

Zitat von: forum-merlin am 09 September 2017, 09:11:11
Patrick, kannst Du bitte mal da drauf schauen?

Ja, das Problem ist leider immer wieder das Gleiche: Disable scan failed, hcitool exited und dann startet der lepresenced mit Gewalt den Scan neu und resettet.

Ich könnte ggf. eine Sekunde sparen, indem ich früher resette, nämlich bei der "disable scan failed"-Meldung, aber das wäre in Deinem later-log immer noch *nach* den Absent-Meldungen, d. h. zu spät.

Mit etwas Google-Fleißarbeit findet man das Problem auch an anderer Stelle, z. B. bei diversen Javascript-Heimautomatisierungs-Enthusiasten:

http://beantalk.punchthrough.com/t/error-installing-node-red-contrib-bean-on-rpi/1733/35

http://beantalk.punchthrough.com/t/bean-not-usable/3471/5

Auffällig ist, dass es sich jedes Mal um Raspberry Pis handelt. Vereinzelt hat man wohl damit Glück, andere Bluetooth-Sticks zu nehmen. Hast Du das mal probiert und sicher gestellt, dass sie statt dem internen Gerät genommen werden? Ob Probleme auftreten (auch welche, die sich in FHEM nicht zeigen), kannst Du rausfinden, indem Du im Syslog nach "hcitool exited" suchst.

Patrick

P. S.: Bitte erstmal keine neuen Logs posten, die bringen ja (leider) keinen neuen Erkenntnisse.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 09 September 2017, 19:01:46
Nachtrag: Die "Reset-Automatik" ist eigentlich seit Versionen - wenn nicht von Anfang an - unverändert.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: forum-merlin am 09 September 2017, 20:35:30
Danke fürs draufschauen.
Im vergangenen Jahr lief es mit der Version 0.6 mit in Board Bluetooth des pi3 ohne Probleme und von jetzt auf gleich ohne jeglichen Updates oder sonst was scheinen die bt on Board Finger Probleme zu machen. Die Pis die ich hier noch habe sind ohne on Board bt und mit Stick und Laufen ganz ok mit den neueren Versionen. Ich denke ich muss mich damit abfinden dass ich niemals herausfinde warum es zu dem Problem gekommen ist

Gesendet von meinem SM-G920F mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 13 September 2017, 17:52:10
Zitat von: Amenophis86 am 06 September 2017, 17:19:01
- (le)presenced auf allen PI installieren
- collected auf dem HauptPI installieren
- die collected.conf entsprechend dem Wiki einrichten (Port 5111 bei presenced 5333 bei lepresenced)
- Auf jedem PI die GTags als Device anlegen. Den Port 5222 allerdings nehmen und bei IP immer auf den HauptPI verweisen

So mal auf die schnelle. Die restlichen Infos findest du im Wiki

Kann mir nochmal bitte jemand helfen. Ich komme nicht weiter mit den vorliegenden Infos, das ist alles ziemlich verwirrend - sorry!

Ich habe jetzt folgendes:

RPI1 (FHEM+lepresenced+collectord):

lepresenced ist schon länger eingerichtet und die Gtags sind in FHEM konfiguriert.

RPI2 (nur lepresenced)

Hier hab ich nur lepresenced installiert.

Was muss ich auf RPI2 jetzt noch machen? Wie mache ich die Gtags bekannt bzw. muss ich das?

Wie muss auf RPI1 die collectord.conf aussehen?

Ich verstehs einfach nicht, vielleicht kann mir mal jemand die nötigen Schritte aufzeigen - aus dem Wiki und Commandref werd ich nicht schlau, tut mir leid.

Meine bisherige collectord.conf:


[Schlafzimmer]
address=192.168.178.36
port=5333
presence_timeout=60
absence_timeout=60

[Wohnzimmer]
address=192.168.178.27
port=5333
presence_timeout=60
absence_timeout=60


"Schlafzimmer" ist der Haupt-PI (RPI1) mit der FHEM Installation.

"Wohnzimmer" ist ein PI wo nur lepresenced läuft.

Was nun ?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 13 September 2017, 17:55:22
Poste mal deine collectord conf und ein list aller GTag Device
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 13 September 2017, 18:01:39
Die collectord.comf habe ich oben nachgereicht ^^

Ich habe zwei Gtags:


define GtAG1 PRESENCE lan-bluetooth 7C:2F:80:AD:C8:09 192.168.178.36:5333 120

define GtAG2 PRESENCE lan-bluetooth 7C:2F:80:AD:C2:E9 192.168.178.36:5333 120


So sind die beiden bisher in FHEM angelegt und werden auch erkannt.

Die ganzen Portangaben verwirren mich auch noch, da im Wiki und in der Commandref teilweise wiedersprüchliche Aussagen stehen ... 5333 / 5222 ... ?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 13 September 2017, 20:03:44
welcher Port wird ausgegeben, wenn du mit: sudo /usr/bin/perl /usr/sbin/collectord -vv -c /etc/collectord.conf startest. Such nach: created socket on 0.0.0.0 with port 5???

den dort aufgeführten Port gibst du in der FHEM Definition der Device an. Und denk dran auf allen Pi muss FHEM und leprsenced installiert sein und laufen und die GTags definiert sein.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 14 September 2017, 00:04:25
Ok, ich habs jetzt zumindest grundlegend laufen. Mir war auch nicht bewusst, das auf ALLEN RPIs FHEM laufen muss...ich dachte, lepresenced würde reichen um es an die FHEM-Hauptinstanz zu melden.

Ich hab jetzt aber noch folgendes Problem:

Die Gtags gehen IMMER nach exakt einer Minute wieder offline und bleiben es dann auch.
Wenn ich zwischendurch "hcitool lescan" anstosse, werden die Gtags beim nächsten Scan wieder von dem RPI gefunden, auf welchem ich "Hcitool lescan" angestossen habe...aber nach einer Minute gehen sie wieder absent und bleiben es...bis ich wieder hcitool lescan aufrufe... So geht es immer weiter...Es scheint, als ob das device einschläft?!

Was kann das sein?

Und Frage Nummer 2:

Wie verhält es sich eigentlich mit den Scanintervallen..addieren die sich?
Ich gebe ja einerseits in der collectord.conf ein Intervall an aber auch beim define des gtags...welche auswirkungen hat das?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 14 September 2017, 08:09:39
Bezüglich Punkt eins, du darfst neben lepresenced nicht noch zusätzlich scannen. Es. Gilt das Highländer Prinzip, nur einer hat Zugriff auf das Bluetooth Gerät, entweder lepresenced oder dein manueller Scan. Setzt mal den Tieren in FHEM höher und schau, ob sie dann länger online sind.

Punkt zwei weiß ich nicht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 14 September 2017, 09:50:43
Zitat von: Amenophis86 am 14 September 2017, 08:09:39
Bezüglich Punkt eins, du darfst neben lepresenced nicht noch zusätzlich scannen. Es. Gilt das Highländer Prinzip, nur einer hat Zugriff auf das Bluetooth Gerät, entweder lepresenced oder dein manueller Scan. Setzt mal den Tieren in FHEM höher und schau, ob sie dann länger online sind.

Punkt zwei weiß ich nicht.

"Setze mal den Tieren in FHEM höher"  <--- ?

Was bedeutet das bitte?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 14 September 2017, 13:42:51
Blöde Autokorrektur :D

Setz mal den Intervall Tier höher, meinte ich
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Devender am 20 September 2017, 21:30:32
Hallo zusammen,

der Wikieintrag zum Thema Anwesenheitserkennung wurde etwas umgebaut um mehr Strukur in das doch komplexe Thema zu bringen.

Unter dem Hauptbegriff befindet sich nun weiterhin eine allgemeine Erläuterung zum Thema sowie eine Verlinkung auf die Unterseiten bezüglich PRESENCE und GEOFENCY.

Hauptseite:
https://wiki.fhem.de/wiki/Anwesenheitserkennung

Unterseite-PRESENCE:
https://wiki.fhem.de/wiki/PRESENCE

Unterseite-GEOFENCY:
https://wiki.fhem.de/wiki/GEOFENCY

Auch hier noch mal die Info: Es wurden lediglich die Themen auf Unterseiten geschoben und im Bereich Presence-Modul korrigiert und noch weiter Informationen eingefügt.

Grüße,
Dirk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 22 September 2017, 20:34:58
Mahlzeit!

Habe mal Version 0.83 inkl. deb-Paket eingecheckt. Das Paket ist vor allem für Leute interessant, die beim Systemstart Probleme hatten.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 25 September 2017, 18:34:55
Hi zusammen,

ich habe derzeit einen NUT Mini im Einsatz. Allerdings habe ich dabei 2 kleine Probleme.
Wenn ich das Device nicht gekoppelt habe funktioniert die Erkennung soweit einwandfrei... leider zwingen die häufig gesendeten BLE Advertisements die Batterie (CR2016) schon nach ca 30-45 Tagen in die Knie.
Wenn ich den NUT nun kopple wird das senden der Advertisements gestoppt. Somit ist er eigentlich nicht wirklich brauchbar wenn ich bei einem Gerätepreis von 5-9€ pro Jahr ca. 12€ an Batterien ausgeben muss.....

Wie verhält es sich da mit den G-Tags ? Senden die weiter wenn Sie gekoppelt sind ? Oder wie lange halten die Batterien wenn nicht gekoppelt wird ? Die Cr2032 haben ja mehr als die doppelte Kapazität.
Allerdings wäre eine Laufzeit von 1 Jahr schon wünschenswert.

Andere Alternativen die eine lange Laufzeit aufweisen sind natürlich herzlich willkommen.

Danke !
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 25 September 2017, 19:33:11
Hi! Die G-Tags werden ruhiger wenn sie gekoppelt sind. Ob sie überhaupt noch senden, hatte mich nach dieser Erkenntnis zugegebenermaßen nicht mehr interessiert. Ungekoppelt, d. h. lepresenced-tauglich halten die Batterien ca. 1,5 Jahre.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DeeSPe am 25 September 2017, 20:13:13
Zitat von: DerBodo am 25 September 2017, 18:34:55Oder wie lange halten die Batterien wenn nicht gekoppelt wird ? Die Cr2032 haben ja mehr als die doppelte Kapazität.
Allerdings wäre eine Laufzeit von 1 Jahr schon wünschenswert.

Kann diesbezüglich von den G-Tags auch nur positiv berichten.
Mein erster (gekauft am 11.8.2016) ist jeden Tag im Einsatz und hat immer noch 37% Batterie.
Mal schauen wie lange das noch gut geht bis er nicht mehr erkannt wird.

Gruß
Dan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 25 September 2017, 21:36:12
Alles klar, vielen Dank euch beiden.

Ich hatte den NUT gekauft, da er ein gutes Stück kleiner ist als die G-Tags...
Hat jemand ähnlich gute Erfahrungen mit dem Nachfolger (keeper) gemacht ?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 02 Oktober 2017, 20:56:51
Ich verwende derzeit das PRESENCE-Modul auf einem Cubietruck mit einem externen Bluettooth Stick. Leider werden meine G-Tag nicht in der gesamten Wohnung empfangen, sodass ich gerne einen weiteren Presence-Daemon auf einem externen Gerät nutzen würde.

Welche ist die kostengünstigste und einfachste Lösung dafür? Mir schwebt derzeit ein Pi Zero W vor.  ???
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 02 Oktober 2017, 21:18:21
Pi Zero W habe ich auch nur dafür im Einsatz und kann ich empfehlen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 02 Oktober 2017, 21:19:16
Mit oder ohne zusätzlichem Bluetooth Stick?


Gesendet von iPad mit Tapatalk Pro
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 02 Oktober 2017, 21:31:04
ohne, einfach internes Bluetooth
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 03 Oktober 2017, 06:23:58


Zitat von: Spezialtrick am 02 Oktober 2017, 20:56:51
Welche ist die kostengünstigste und einfachste Lösung dafür?
Wenn du dir das zutraust:

https://forum.fhem.de/index.php?topic=28753.msg648687.msg#648687

Gesendet von meinem ONEPLUS A3003 mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 03 Oktober 2017, 13:03:36
Zitat von: micky0867 am 03 Oktober 2017, 06:23:58
Wenn du dir das zutraust:

https://forum.fhem.de/index.php?topic=28753.msg648687.msg#648687

Gesendet von meinem ONEPLUS A3003 mit Tapatalk

Traue es mir schon zu, allerdings erscheint mir der Pi Zero W einfacher und vielseitiger. :)

Trotzdem danke für den Tipp!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 06 Oktober 2017, 20:07:23
Zitat von: Amenophis86 am 02 Oktober 2017, 21:18:21
Pi Zero W habe ich auch nur dafür im Einsatz und kann ich empfehlen.

Habt ihr einen Tipp einen Tipp für mich wie ich vorgehen sollte?

Auf meinem Cubietruck läuft bereits lepresenced. Nun würde ich gerne über einen zusätzlichen Pi Zero W die Anwesenheit überwachen.

Also collectored und lepresenced auf dem Cubietruck und eine lepresenced Instanz auf dem Pi Zero W.

Muss ich lepresenced auf dem Cubietruck zunächst löschen? Muss auf dem Pi Zero W tatsächlich eine weitere Fhem Instanz laufen?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 06 Oktober 2017, 20:24:12
https://wiki.fhem.de/wiki/PRESENCE
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 06 Oktober 2017, 20:25:35
Zitat von: Amenophis86 am 06 Oktober 2017, 20:24:12
https://wiki.fhem.de/wiki/PRESENCE

Danke, leider beantwortet, das nicht alle meine Fragen.

Zitat von: Spezialtrick am 06 Oktober 2017, 20:07:23
Muss ich lepresenced auf dem Cubietruck zunächst löschen? Muss auf dem Pi Zero W tatsächlich eine weitere Fhem Instanz laufen?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 06 Oktober 2017, 20:27:34
Zitat von: Wiki
Aufbau[Bearbeiten]
RPi1 (Hautpinstanz)
FHEM Installation
presence/lepresenced Installation
collectord installation
Sämtliche Bluetooth-Geräte in FHEM definiert

RPi2 (Zweitsystem)
FHEM installation
presence/lepresenced Installation
Sämtliche Bluetooth-Geräte in FHEM definiert

Warum solltest du es also löschen? Und ob FHEM auf dem Pi laufen muss ist relativ eindeutig geschrieben, aber habe ich gerne für dich gesucht. Der Artikel ist ja auch recht lang ;)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 06 Oktober 2017, 20:47:19
Zitat von: Amenophis86 am 06 Oktober 2017, 20:27:34
Warum solltest du es also löschen? Und ob FHEM auf dem Pi laufen muss ist relativ eindeutig geschrieben, aber habe ich gerne für dich gesucht. Der Artikel ist ja auch recht lang ;)

Weil collectored als "Zentrales" Programm möglicherweise zuerst installiert werden muss? Kenne mich damit nicht aus, daher meine Frage.

Und in dem Artikel steht nicht, dass Fhem auf der zweiten Instanz laufen muss.  ;)

Trotzdem danke!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 06 Oktober 2017, 20:52:39
Naja, wir haben uns nicht die Mühe gemacht sämtliche Möglichkeiten bzw. Nicht-Möglichkeiten abzudecken, wie zu sagen was zuerst installiert sein muss. Wir dachten, wenn man der Reihenfolge des Artikels folgt, in dem übrigens auch erst lepresenced und dann collecotord installiert wird, dann klappt es schon ;)

Und ja, es steht nicht da, dass es installiert sein muss. Aber es steht auch nicht da, dass lepresenced oder collectored installiert sein muss. Aber ich denke eigentlich wenn da steht wie die Instanzen aufgebaut sein sollten, dann ist das eindeutig.

Ich freue mich jedoch, wenn es klappt und deine Fragen beantwortet sind :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 06 Oktober 2017, 20:55:14
Zitat von: Amenophis86 am 06 Oktober 2017, 20:52:39
Aber ich denke eigentlich wenn da steht wie die Instanzen aufgebaut sein sollten, dann ist das eindeutig.

Ich freue mich jedoch, wenn es klappt und deine Fragen beantwortet sind :)

"Sollen" ist nicht "Müssen".  :P

Ich versuche mich mal.  :)

EDIT: Funktioniert auf Anhieb! Danke!
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 24 Oktober 2017, 21:10:38
Hallo,

ich bekomme morgen ein Mi Flower Sensor... und ich frage mich nun, ob ich lepresenced und den Flowser Sensor Zeitgleich betreiben kann?
Meine Vermutung sagt mir, ich benötige zwei BT Sticks, stimmts? :)

Kann noch jemand was zur ESP BLE Anwesenheitserkennung sagen, die micky0867 umgesetzt hat. Läuft das ganze stabil und zuverlässig? https://forum.fhem.de/index.php/topic,28753.msg648687.html#msg648687

Dann würde ich das auch mal nachbauen, da meine USB Anschlüsse am RPi so langsam zu neige gehen. :D

EDIT: ich habe mir eine HM-10 BT Platine bestellt, es ist eine schwarze Platine von Keyes. Die gibt es beim Ali für 7€.


Viele Grüße
Mark
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Amenophis86 am 25 Oktober 2017, 06:31:38
Zitat von: mark79 am 24 Oktober 2017, 21:10:38
ich bekomme morgen ein Mi Flower Sensor... und ich frage mich nun, ob ich lepresenced und den Flowser Sensor Zeitgleich betreiben kann?
Meine Vermutung sagt mir, ich benötige zwei BT Sticks, stimmts? :)
Besser zweit Sticks, Highländer Prinzip macht Probleme
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 26 Oktober 2017, 21:12:34
Zitat von: mark79 am 24 Oktober 2017, 21:10:38
Hallo,

ich bekomme morgen ein Mi Flower Sensor... und ich frage mich nun, ob ich lepresenced und den Flowser Sensor Zeitgleich betreiben kann?
Meine Vermutung sagt mir, ich benötige zwei BT Sticks, stimmts? :)

Kann noch jemand was zur ESP BLE Anwesenheitserkennung sagen, die micky0867 umgesetzt hat. Läuft das ganze stabil und zuverlässig? https://forum.fhem.de/index.php/topic,28753.msg648687.html#msg648687

Dann würde ich das auch mal nachbauen, da meine USB Anschlüsse am RPi so langsam zu neige gehen. :D

EDIT: ich habe mir eine HM-10 BT Platine bestellt, es ist eine schwarze Platine von Keyes. Die gibt es beim Ali für 7€.


Viele Grüße
Mark

Hallo Mark,

läuft bei mir seit Juni.
Ich habe noch eine kleine Änderung am collectord gemacht, siehe Attachment

Micky

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 26 Oktober 2017, 23:15:43
Zitat von: micky0867 am 26 Oktober 2017, 21:12:34
Hallo Mark,

läuft bei mir seit Juni.
Ich habe noch eine kleine Änderung am collectord gemacht, siehe Attachment

Micky

Hallo Micky,

das hört sich ja gut an, seit Juni... toll, danke dir für dein Feedback.  :)
Ich werde das mal nachbasteln, so bald die Platine hier ist und berichten.

Den collectord brauche ich (noch) nicht, habe derzeit nur eine Anwesenheitskontrolle über TAGs am Schlüsselbund, die im Flur liegen, wo auch der BLE Scanner ist.
Vielleicht kommt ja mal was dazu, mittels MiBand... aber erst in weiter Ferne. :)

Aber sofern du noch was am lepresenced geupdaet haben solltest, würde ich das gerne haben wollen. :)


Viele Grüße
Mark
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: FunkOdyssey am 06 Dezember 2017, 19:51:48
Ich lasse lepresenced in einem Docker-Container laufen und habe leider keinen Log-Output in STDOUT. Nun habe ich gelesen, dass man über den Debug-Parameter alles ausgeben kann.

Kann man auch irgendwie die niedrigeren Log-Stufen auf STDOUT bekommen?
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 06 Dezember 2017, 22:53:30
--debug gibt alle regulären Log Level auf STDOUT aus und etwas mehr, konkret: Eine regelmäßige Übersicht der bekannten Geräte. Ist es das, was Du möchtest oder weniger?


Gesendet von iPhone mit Tapatalk Pro
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: FunkOdyssey am 06 Dezember 2017, 23:55:09
Das war das, was ich bereits wusste.
Wird jedoch die Log-Stufe LOG_INFO, LOG_DEBUG, LOG_WARNING, etc. dabei berücksichtigt?
Erhalte ich bei --debug und LOG_WARNING auch wirklich nur die Warnungen im STDOUT?
Ich erkenne irgendwie keinen Unterschied.

Wenn nun regelmäßig eine Übersicht der bekannten Geräte hinzukommt, dann ist das okay. Ich habe nur Angst, dass beim --debug mir die Docker-Console zugemüllt wird.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 07 Dezember 2017, 18:30:08
Wie gesagt, —loglevel hat keinen Einfluss auf STDOUT und um ehrlich zu sein war Deine Anwendung auch nicht der Anlass für den Parameter. Werde es mir aber mal ansehen, wenn ich etwas Zeit finde.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: FunkOdyssey am 07 Dezember 2017, 20:06:21
Alles gut. Ich bin froh, dass es diesen Parameter überhaupt gibt, so dass ich ein wenig Ouput sehe. Ich finde es schon sehr geil, dass lepresenced überhaupt in einem Docker-Container läuft. 😁
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 07 Dezember 2017, 20:42:01
Oooch. lepresenced ist doch relativ genügsam, jedenfalls verglichen mit den Java-Ungetümen, die man üblicherweise - zu Recht - in Container einsperrt :)


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: FunkOdyssey am 07 Dezember 2017, 20:46:20
Das stimmt. Homebridge und HA-Bridge belegen mehrere hundert Megabyte und erfüllen einen viel geringeren Zweck als lepresenced. Wenigstens bei mir.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 27 Dezember 2017, 21:21:48
Mahlzeit!

Zitat von: FunkOdyssey am 07 Dezember 2017, 20:46:20
Das stimmt. Homebridge und HA-Bridge belegen mehrere hundert Megabyte und erfüllen einen viel geringeren Zweck als lepresenced. Wenigstens bei mir.

Da ich auch gerade mit Docker experimentiere, habe ich lepresenced mal stdout-fähig gemacht. Konnte es nur kurz testen, daher bitte als Beta ansehen :)


usage:
lepresenced --bluetoothdevice <bluetooth device> --listenaddress <listen address> --listenport <listen port> --loglevel <log level> --logtarget <log target> --daemon
lepresenced -b <bluetooth device> -a <listen address> -p <listen port> -l <log level> -t <log target> -d
valid log levels:
LOG_CRIT, LOG_ERR, LOG_WARNING, LOG_NOTICE, LOG_INFO, LOG_DEBUG. Default: LOG_INFO
valid log targets:
syslog, stdout. Default: syslog
optional arguments:
--debug - print extensive debug output to stdout (mutually exclusive with --daemon).
--legacymode - legacy mode without rssi detection. Use if you do not have hcidump installed.
--rssithreshold - rssi deviation to trigger an update. Minimum value: 5, default: 10
examples:
lepresenced --bluetoothdevice hci0 --listenaddress 127.0.0.1 --listenport 5333 --daemon
lepresenced --loglevel LOG_DEBUG --daemon


Neu ist --logtarget, das Du auf stdout stellen kannst. --loglevel wird berücksichtigt.

Grüße
Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: FunkOdyssey am 27 Dezember 2017, 21:32:01
Sehr geil. Vielen Dank.
Ich probiere das die Tage aus.

Am Rande mein Dockerfile. Ein schmales Baseimage oder Alpine hatte nicht funktioniert, da mir die Bluetooth-Pakete fehlten bzw. nicht verfügbar waren.


FROM debian:stretch

ENV DEBIAN_FRONTEND noninteractive
ENV TERM xterm

RUN apt-get update && apt-get -y install \
    perl \
    libnet-server-perl \
    libusb-1.0-0-dev \
    bluetooth \
    bluez \
    blueman \
    tzdata \
    bluez-hcidump \
    wget && \
    apt-get clean && cd / && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

# Zeitzone einstellen
RUN echo "Europe/Berlin" > /etc/timezone && dpkg-reconfigure tzdata

WORKDIR "/opt"

RUN wget https://github.com/mhop/fhem-mirror/raw/master/fhem/contrib/PRESENCE/lepresenced && \
    chmod +x lepresenced && \
    chgrp -cR dialout lepresenced

EXPOSE 5333

COPY entrypoint.sh /entrypoint.sh
CMD bash /entrypoint.sh


Und ich muss den Container im Host-Modus laufen lassen, da die BT-Geräte sonst nicht weitergereicht wurden.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: FunkOdyssey am 29 Dezember 2017, 17:42:02
@Patrick: Test deiner Datei:

Ich starte das Skript wie folgt ...

/usr/bin/perl /opt/lepresenced --device "hci0" --listenaddress "0.0.0.0" --listenport 5333 --loglevel "LOG_WARNING" --logtarget stdout

... und erhalte folgende Fehlermeldungen:

[tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
[tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
[tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
[tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
[tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
[tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
[tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
[tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...
[tid:2] main::bluetooth_dump_thread: hcidump exited, retrying...
[tid:1] main::bluetooth_scan_thread: Received unknown output: 'Invalid device: No such device'!
[tid:1] main::bluetooth_scan_thread: hcitool exited, retrying...


Use of uninitialized value $beacons_hcidump in subtraction (-) at /opt/lepresenced line 357.
Use of uninitialized value $beacons_hcitool in subtraction (-) at /opt/lepresenced line 357.
Use of uninitialized value $args[4] in sprintf at /opt/lepresenced line 88.
Use of uninitialized value $args[5] in sprintf at /opt/lepresenced line 88.
Titel: Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 29 Dezember 2017, 23:14:50
Hi! Die Fehlermeldungen im 2. Block sehe ich mir an.

Warum hci0 nicht existiert müsstest Du aber rausfinden...

Patrick


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: FunkOdyssey am 30 Dezember 2017, 00:21:05
Boah, bin ich blöd. Sorry. Der Dongle steckte nicht im Testsystem.
Wie war das ,,Wald vor lauter Bäumen"? Quellcode gecheckt, aber Dongle nicht.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 30 Dezember 2017, 01:23:15
Mahlzeit!

Zitat von: FunkOdyssey am 30 Dezember 2017, 00:21:05
Boah, bin ich blöd. Sorry. Der Dongle steckte nicht im Testsystem.
Wie war das ,,Wald vor lauter Bäumen"? Quellcode gecheckt, aber Dongle nicht.
8)

Unabhängig davon war da noch ein Bug drin. 0.841 im Anhang zum Testen.

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Taasba am 31 Dezember 2017, 11:25:20
Hallo in die Runde der An- und Abwesenheitsfreunde,

ich möchte mal zur Abwechslung keine Frage sondern nur einen kurzen Erfahrungsbericht und ein Lob aussprechen:

- vor gut 1,5 Jahren habe ich mir 6 G-Tags gekauf und entsprechend diesem Thread in fhem eingebaut (lepresence derzeit läuft bei mir V 0.83) läuft seither ohne Probleme
- RasPi 3 internes BT im Keller - G-Tags liegen in der Küche, Abstand inkl. mit Kellerdecke ca. 4m
- Batterielebensdauer ca. 1 Jahr + 1-3 Monate
- Batteriecheck gem. Thread bei 16% = ca. 2,68V war Schluss ( habe ich bewusst ausporbiert, bis nichts mehr ging :-)) - Meine Empfehlung bei ca. 25% austauschen
- Batteriecheck läuft bei mir per Crontab in der Nacht - Manchmal werden zwar keine Werte übermittelt, stört mich aber nicht. I.d.R. wurden die Werte spätestens nach 3 Tagen wieder gefunden und übermittelt. (hängt evtl. auch mit der Batterieleistung zusammen !?)

define ZE.BatterieGTag readingsGroup .*:[Bb]atterie.*\
.*:[Bb]atterieLevel\
attr ZE.BatterieGTag notime 1
attr ZE.BatterieGTag alias Batteriestatus_GTAG
attr ZE.BatterieGTag room Zentral
attr ZE.BatterieGTag valueFormat {return "25" if( $VALUE < 25 );; return "50" if( $VALUE < 40 );; return "75" if( $VALUE < 85 );; return "100"}
attr ZE.BatterieGTag valueIcon {\
'Batterie01.25' => 'measure_battery_25@red','Batterie01.50' => 'measure_battery_50@orange','Batterie01.75' => 'measure_battery_75@green','Batterie01.100' => 'measure_battery_100@green',\
'Batterie02.25' => 'measure_battery_25@red','Batterie02.50' => 'measure_battery_50@orange','Batterie02.75' => 'measure_battery_75@green','Batterie02.100' => 'measure_battery_100@green',\
'Batterie03.25' => 'measure_battery_25@red','Batterie03.50' => 'measure_battery_50@orange','Batterie03.75' => 'measure_battery_75@green','Batterie03.100' => 'measure_battery_100@green',\
'Batterie04.25' => 'measure_battery_25@red','Batterie04.50' => 'measure_battery_50@orange','Batterie04.75' => 'measure_battery_75@green','Batterie04.100' => 'measure_battery_100@green',\
'Batterie05.25' => 'measure_battery_25@red','Batterie05.50' => 'measure_battery_50@orange','Batterie05.75' => 'measure_battery_75@green','Batterie05.100' => 'measure_battery_100@green',\
'Batterie09.25' => 'measure_battery_25@red','Batterie09.50' => 'measure_battery_50@orange','Batterie09.75' => 'measure_battery_75@green','Batterie09.100' => 'measure_battery_100@green',\
}


Abfrage läuft mittel DOIF.

Folgende Funktionen werden mit Abwesenheit gesteuert:
- Heizung
- Thermostate
- Briefkasten (Post ist da :-))
- Alarmanlage
- Begrüßung der Kinder mit von den Kindern eigens erstelltem MP3

DANKE an die Entwickler und Fragesteller und einen guten automatisierten Start ins neue Jahr.

LG Taasba
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 06 Januar 2018, 20:34:31
Zitat von: micky0867 am 18 Juni 2017, 16:54:12
Der ESP32 ist erstmal außen vor. Da hat noch keiner was getestet oder eine Ahnung, ob es überhaupt geht.
Ich habe auch keinen Hinweis gefunden, dass ESPEasy bereits auf den ESP32 portiert wurde.

Da mich das Thema nicht losgelassen hat, habe ich mich in den letzten Wochen verstärkt mit dem ESP32s (WROOM-32) auseinander gesetzt.
ESPEasy könnte irgendwann mal gehen, aber im Moment gibt es nur eine Beta-Version.

Deshalb habe ich in eine andere Richtung gearbeitet.
Nach einigen Versuchen mit Scannen und auch Batteriestatus lesen habe ich mich zunächst für eine Version entschieden, die das Verhalten von lepresenced simuliert.
Damit kann ein ESP32s in's Wlan gehangen werden und dann per FHEM  direkt oder über den collectord benutzt werden, also genau so, als hätte man es mit einem lepresenced Prozess zu tun.

Die Sourcen sind hier:
https://github.com/micky0867/BLEScanner

Micky

Die HW habe ich übrigens von hier:
https://www.ebay.de/itm/272589218228
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 06 Januar 2018, 21:58:23
Hui nett.

Andreas Spiess hatte auf seinem Youtubechannel auch über den ESP32 BLE gescannt und dort fesgestellt, dass WLAN und BLE nicht gleichzeitig funktionieren.
Das ist aber für die "stehende" Verbindung mit dem Presence-Protokoll m. E. nötig. Wie hast Du das gelöst?

Patrick


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 07 Januar 2018, 10:42:15
Hi,

der ESP32 ist ein Dualcore und die beiden Hauptfunktionen laufen in unterschiedlichen Threads auf unterschiedlichen Cores.

Es scheint manchmal zu Disconnects im Wlan zu kommen, da bin ich mir aber nicht sicher, ob es im Zusammenhang mit BLE steht.
Das werde ich weiter beobachten/untersuchen.

Micky
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 07 Januar 2018, 23:06:59
Die Erklärung war IIRC die doppelte Nutzung des Senders/der Antenne, habe das aber zugegebenermaßen nicht mehr parat.

Das Thema Disconnects wäre spannend, vor allem, wie sich das ggf. in FHEM äußert wenn man keinen collectord zwischenschaltet.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 04 April 2018, 14:21:06
Zitat von: micky0867 am 06 Januar 2018, 20:34:31
Da mich das Thema nicht losgelassen hat, habe ich mich in den letzten Wochen verstärkt mit dem ESP32s (WROOM-32) auseinander gesetzt.
Die Sourcen sind hier:
https://github.com/micky0867/BLEScanner (https://github.com/micky0867/BLEScanner)

Hallo Micky,

ich habe schon deine erste Version mit dem BLE (HM-10) Modul an einem ESP8266 im Betrieb und das läuft seit Monaten stabil.  :)

Habe dann gestern mal versucht das mit einem ESP32 umzusetzen, aber ich krieg das nicht kompiliert.

Den ersten Fehler, konnte ich noch selber lösen, indem ich einfach die drei + Zeichen vor dem const char gelöscht habe.

BLEScanner:14: error: expected unqualified-id before '+' token

+const char* ssid     = "ENTER_YOUR_WIFI_SSID_HERE";

^

BLEScanner:15: error: expected unqualified-id before '+' token

+const char* password = "ENTER_YOUR_WIFI_PASSWORD_HERE";

^

BLEScanner:16: error: expected unqualified-id before '+' token

+const char* hostname = "ENTER_THE_HOSTNAME_HERE";

^

F:\arduino-1.8.5\portable\sketchbook\BLEScanner\BLEScanner.ino: In function 'void WiFiEvent(system_event_id_t)':

BLEScanner:125: error: 'hostname' was not declared in this scope

       WiFi.setHostname(hostname);

                        ^

F:\arduino-1.8.5\portable\sketchbook\BLEScanner\BLEScanner.ino: In function 'void wifiTask(void*)':

BLEScanner:284: error: 'ssid' was not declared in this scope

   WiFi.begin(ssid, password);

              ^

BLEScanner:284: error: 'password' was not declared in this scope

   WiFi.begin(ssid, password);

                    ^

Mehrere Bibliotheken wurden für "WiFi.h" gefunden
Benutzt: F:\arduino-1.8.5\hardware\espressif\esp32\libraries\WiFi
Nicht benutzt: F:\arduino-1.8.5\libraries\WiFi
exit status 1
expected unqualified-id before '+' token


Nur das nächstes Problem, wo ich nicht weiter komme ist das hier:

Archiving built core (caching) in: C:\Users\Mark\AppData\Local\Temp\arduino_cache_379695\core\core_espressif_esp32_lolin32_FlashFreq_80,UploadSpeed_921600_5fa88f8eb788af0a0b44beefc136829a.a
Der Sketch verwendet 1408562 Bytes (107%) des Programmspeicherplatzes. Das Maximum sind 1310720 Bytes.

Globale Variablen verwenden 93284 Bytes (31%) des dynamischen Speichers, 201628 Bytes für lokale Variablen verbleiben. Das Maximum sind 294912 Bytes.
Der Sketch ist zu groß; unter http://www.arduino.cc/en/Guide/Troubleshooting#size finden sich Hinweise, um die Größe zu verringern.
Fehler beim Kompilieren für das Board WEMOS LOLIN32.


Ich habe eine frische Arduino IDE 1.8.5 (portable) aufgesetzt und mit der neusten ESP32 Libary.
Weißt du Rat und benutzt du evtl. was anderes? PlatformIO?


Viele Grüße
Mark
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 05 April 2018, 20:08:10
Zitat von: mark79 am 04 April 2018, 14:21:06
Ich habe eine frische Arduino IDE 1.8.5 (portable) aufgesetzt und mit der neusten ESP32 Libary.
Weißt du Rat und benutzt du evtl. was anderes? PlatformIO?

Hi Mark,

sorry, die Pluszeichen hatten sich eingeschlichen, als ich hektisch meine privaten Wifi Zugangsdaten auf Github entfernt hatte, die ich zuvor versehentlich im Code stehen gelassen hatte ;-)

Ich habe als Board ein Node32s eingestellt, damit passt es.

Allerdings muss ich sagen, dass  ich die Disconnects im Wlan nicht in den Griff bekommen habe.
Wenn Du da was findest bzw. eine Idee hast, wäre das echt super.

Gruß
Micky
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 06 April 2018, 20:34:42
Zitat von: micky0867 am 05 April 2018, 20:08:10
sorry, die Pluszeichen hatten sich eingeschlichen, als ich hektisch meine privaten Wifi Zugangsdaten auf Github entfernt hatte, die ich zuvor versehentlich im Code stehen gelassen hatte ;-)

Ich habe als Board ein Node32s eingestellt, damit passt es.

Allerdings muss ich sagen, dass  ich die Disconnects im Wlan nicht in den Griff bekommen habe.
Wenn Du da was findest bzw. eine Idee hast, wäre das echt super.
Da wäre ich auch hektisch gewesen :D

Ich bekomme es leider nicht kompiliert, daher wird das mit suchen schlecht. Aber das liegt an meiner Arduino IDE.

Der Sketch "BLE Human Presence Detector" von Andreas Spiess lässt sich auch nicht kompilieren. Weil er rummeckert, der Sketch wäre zu groß:
https://github.com/SensorsIot/Bluetooth-BLE-on-Arduino-IDE/tree/master/BLE_Proximity_Sensor

Ich hatte die IDE gestern Abend noch mal neu installiert, nach der Anleitung hier: https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/windows.md
Aber Problem besteht weiterhin, habe auch mehrere Boards getestet.

Ich werde mich die nächsten Tage, da noch mal ran machen...

btw. die Videos von ihm kennst du? https://www.youtube.com/channel/UCu7_D0o48KbfhpEohoP7YSQ/search?query=ble
Der hat so was ähnliches gebastelt über mqtt.

Grüße
Mark
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 08 April 2018, 12:56:42
Ich habe auch die Anleitung benutzt, allerdings für Linux.
Für die Entwicklung habe ich aber PlatformIO benutzt, weil ich die IDE eleganter finde.
Den Sketch habe ich dann aber auch mit der Arduino IDE geöffnet und kompiliert.

Den BLE_Proximity_Sensor Sketch kann ich auch mit meiner Arduino IDE kompilieren, der Output sieht so aus:
Archiving built core (caching) in: /tmp/arduino_cache_311739/core/core_espressif_esp32_node32s_FlashFreq_80,UploadSpeed_921600_468c93602846210a69ed0642e5176d28.a
Sketch uses 1201102 bytes (91%) of program storage space. Maximum is 1310720 bytes.
Global variables use 72420 bytes (24%) of dynamic memory, leaving 222492 bytes for local variables. Maximum is 294912 bytes.


Micky
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 13 April 2018, 12:36:16
Hallo Micky,

hast du irgendwas an der BLE Libary verändert, z.B. was nicht benötigt wird, auskommentiert?
Es scheinen sehr viele das Problem in Zusammenhang mit der BLE Libary zu haben, das der Sketch zu groß ist: https://github.com/nkolban/esp32-snippets/issues/441

Da weiß ich aber nicht, was man da deaktivieren kann.. wenn du was verändert hast, wäre es nett wenn du deine BLE Libary Online stellen könntest. Oder hast du eine ältere Libary am laufen?

Ich habe es erstmal etwas unschön gelöst (die Partitionsgrößen vergrößert), damit konnte ich deinen Sketch kompilieren: https://github.com/nkolban/esp32-snippets/issues/441#issuecomment-375795379
Zuvor habe ich es noch auf einem Macbook versucht, Arduino zu installieren und zu kompilieren, aber das ging auch schief.

Der Sketch verwendet 1408510 Bytes (85%) des Programmspeicherplatzes. Das Maximum sind 1638400 Bytes.
Globale Variablen verwenden 93284 Bytes (31%) des dynamischen Speichers, 201628 Bytes für lokale Variablen verbleiben. Das Maximum sind 294912 Bytes.
...
Configuring flash size...
Auto-detected Flash size: 4MB
Compressed 8192 bytes to 47...

Writing at 0x0000e000... (100 %)
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.0 seconds (effective 7281.9 kbit/s)...
Hash of data verified.
Compressed 14128 bytes to 9196...

Writing at 0x00001000... (100 %)
Wrote 14128 bytes (9196 compressed) at 0x00001000 in 0.1 seconds (effective 957.8 kbit/s)...
Hash of data verified.
Compressed 1409664 bytes to 768325...

Writing at 0x00010000... (2 %)
...
Writing at 0x000c8000... (100 %)
Wrote 1409664 bytes (768325 compressed) at 0x00010000 in 12.0 seconds (effective 940.5 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 122...

Writing at 0x00008000... (100 %)
Wrote 3072 bytes (122 compressed) at 0x00008000 in 0.0 seconds (effective 2457.6 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting...


Scanning...
Free heap: 55820
Scanning...
Task bleTask state: 2 free stack: 1160
Task wifiTask state: 2 free stack: 1096
Uptime: 670471
Tags found (MAC, Timestamp, Name, RSSIs):
  fc:f1:36:b9:xx:xx; 661315; ; >-84,-85,-84,-81,-84,<
  18:7a:93:50:xx:xx; 664806; AMISL_C409; >-59,-63,-53,-61,-63,<
  f2:a6:7a:5e:xx:xx; 665098; ; >-73,-72,-74,-73,-73,<

Reconnects: 1
Scanning...


Werde das am WE mal produktiv testen... :)


Viele Grüße
Mark
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 13 April 2018, 14:17:19
Ich habe noch mal weiter rum getestet... :)

Ich hatte auch einige WiFi disconnects, bzw. ich habe das ganze erstmal ohne fhem und collectored getestet.
Sondern nur mit einem Ping auf dem ESP32 und die Pingverluste betrugen schon etwa 5-6% innerhalb ein paar Minuten.

Dazu gibt es ein issue bei der BLE Libary von nkolban: https://github.com/nkolban/esp32-snippets/issues/169#issuecomment-341978070

Und es wird empfohlen das hier umzusetzen: https://github.com/nkolban/esp32-snippets/blob/master/cpp_utils/ArduinoBLE.md

Damit läuft das sehr sehr viel besser, sogar mit einer Scantime von 30 Sekunden:

scanTime = 30; //In seconds
Ping-Statistik für 192.168.1.137:
    Pakete: Gesendet = 302, Empfangen = 299, Verloren = 3
    (0% Verlust),
Ca. Zeitangaben in Millisek.:
    Minimum = 0ms, Maximum = 1542ms, Mittelwert = 315ms


scanTime = 8; //In seconds
Ping-Statistik für 192.168.1.137:
    Pakete: Gesendet = 410, Empfangen = 409, Verloren = 1
    (0% Verlust),
Ca. Zeitangaben in Millisek.:
    Minimum = 0ms, Maximum = 1501ms, Mittelwert = 232ms

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 14 April 2018, 00:20:45
Ich habe auch mal ein Update des gesamten esp32 Verzeichnisses in der Arduino IDE gemacht.
Jetzt komme ich auf 119%   :-X

In PlatformIO habe ich auch ein Upgrade gemacht.
Dort passt der Sketch....vermutlich wird da die ältere Version der ESP32 Umgebung benutzt.

Viel Hoffnung habe ich da gerade wenig  :'(

Micky


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 14 April 2018, 01:29:13
Das erklärt das wohl, ich hatte das 3x probiert und du hattest wohl noch eine ältere BLE lib... :)
Das hilft erstmal dagegen, um den Sketch zu kompilieren: https://github.com/nkolban/esp32-snippets/issues/441#issuecomment-375795379

Und mit dem vorgehen von hier: https://github.com/nkolban/esp32-snippets/blob/master/cpp_utils/ArduinoBLE.md
läuft dein Sketch bisher sehr gut mit collectord.

Ich habe die neue kompilierte BLE lib online gestellt:
https://www.dropbox.com/s/ng2gmvgbyjee117/ESP32_BLE.ZIP?dl=0e
Dazu aber auch die alte BLE lib entfernen, wie im zweiten Link beschrieben...

Den Speicher könnte man evtl. noch verkleinern, wenn man bei der BLE lib Funktionen raus nimmt, die für den Sketch nicht benötigt werden. Das hatten die im Git empfohlen.

Aber da habe ich nicht wirklich Ahnung von... und ich habe gerade noch eine andere dicke Baustelle: https://forum.fhem.de/index.php/topic,81387.msg794051.html#msg794051
Bin bald soweit, das ich die HM MOD RPI Platine auf ein ESP drauf Pflanze  >:(
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 14 April 2018, 21:58:46
Zitat von: mark79 am 14 April 2018, 01:29:13
Und mit dem vorgehen von hier: https://github.com/nkolban/esp32-snippets/blob/master/cpp_utils/ArduinoBLE.md
läuft dein Sketch bisher sehr gut mit collectord.

Ich lese aus dem Link
ZitatUpdate: As of 2017-11, the BLE support has been included with the Arduino ESP32 base package.
Das ist seit November im Standard...

Wenn man die BLE Lib anpasst, verpasst man ggf. Neuerung bzw. muss die eigenen Anpassungen immer wieder nachpflegen.
Das ist mal was für lange Winterabende  ::)

Micky
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 14 April 2018, 22:34:50
Hallo Micky,

ich kann nur von meinen Erfahrungen sprechen, mit der aktuellen GIT Version der ESP32 Libary hatte ich ziemlich viele (ping) Paketverluste.
Als ich die aktuelle BLE lib selber kompiliert habe und in meine Arduino IDE rein kopiert habe, hörte das auf.

Ich konnte jetzt noch nicht viel testen, wegen den Umzug auf Rock64 Board. :D Werde das noch mal nachreichen. :)

Was meinst du genau mit disconnects? Bricht das WiFi zusammen und der ESP verbindet sich neu mit dem AP?
Wie oft kommt das vor?

Ich habe im Seriellen LOG ab und zu das hier stehen "Reconnects: 1"..
Aber wenn ich in meiner Fritte, im WiFi Ereigniss Log nachschaue, dann sehe ich dort keine WiFi ab/anmeldung vom ESP32.


Viele Grüße
Mark
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 18 April 2018, 16:01:05
Hallo Micky,

mal ein kurzer Status Bericht zu dem ESP32 BLE Scanner Sketch von dir. Das ding rennt bei mir seit Sonntag im Wohnzimmer, ohne ein einzigen WiFi reconnect.

Heißt im Ereignis Log der Fritte unter WLAN habe ich nur einen Eintrag, wo ich den ESP an den Strom angeschlossen habe:
15.04.18 13:35:29 WLAN-Gerät angemeldet (2,4 GHz), 72 Mbit/s, BLEesp32, IP 192.168.2.62, MAC xx:xx:xx:xx:xx:xx.
Seit dem läuft er rund um die Uhr durch und arbeitet brav mit collectored zusammen.


Viele Grüße
Mark
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 19 April 2018, 20:05:24
Zitat von: mark79 am 18 April 2018, 16:01:05
Hallo Micky,

mal ein kurzer Status Bericht zu dem ESP32 BLE Scanner Sketch von dir. Das ding rennt bei mir seit Sonntag im Wohnzimmer, ohne ein einzigen WiFi reconnect.

Heißt im Ereignis Log der Fritte unter WLAN habe ich nur einen Eintrag, wo ich den ESP an den Strom angeschlossen habe:
15.04.18 13:35:29 WLAN-Gerät angemeldet (2,4 GHz), 72 Mbit/s, BLEesp32, IP 192.168.2.62, MAC xx:xx:xx:xx:xx:xx.
Seit dem läuft er rund um die Uhr durch und arbeitet brav mit collectored zusammen.


Viele Grüße
Mark
Hört sich ja gut an!
Das muss ich mal testen!

Thx!
Micky


Gesendet von meinem ONEPLUS A3003 mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: reibuehl am 22 April 2018, 10:21:16
@mark79 : Wo kann man den den von Dir angepassten Code finden und was muss an der Arduino IDE bzw den Libraries geändert werden um das von Dir beschriebene stabile Verhalten zu bekommen?

Ich würde das gerne mal auf meinem ESP32 WROOM NodeMCU ausprobieren.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 22 April 2018, 20:09:04
Zitat von: reibuehl am 22 April 2018, 10:21:16
@mark79 : Wo kann man den den von Dir angepassten Code finden und was muss an der Arduino IDE bzw den Libraries geändert werden um das von Dir beschriebene stabile Verhalten zu bekommen?

Ich würde das gerne mal auf meinem ESP32 WROOM NodeMCU ausprobieren.
Das habe ich alles auf Seite 72 verlinkt, also einfach mal alles von oben nach unten durchlesen und ggfs. den Links folgen. ;-)
Aber hier: https://forum.fhem.de/index.php/topic,28753.msg793801.html#msg793801
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: reibuehl am 22 April 2018, 21:44:59
Das habe ich gelesen, sogar mehrmals, ich werde aber nicht schlau draus.

Ich habe mir den Source aus micky0867's github geholt und dann versucht mit der von Dir auf Dropbox bereitgestellten BLE Library zu kompilieren.

Bekomme aber sowohl mit Deiner Version der Library als auch mit dem Original von Nick Kolban die gleichen Fehler:

Arduino: 1.8.5 (Windows 10), Board: "Node32s, 80MHz, 921600"

C:\Users\reibuehl\Documents\Arduino\libraries\ESP32_BLE\src\BLEClient.cpp: In member function 'bool BLEClient::connect(BLEAddress)':

C:\Users\reibuehl\Documents\Arduino\libraries\ESP32_BLE\src\BLEClient.cpp:115:2: error: too many arguments to function 'esp_err_t esp_ble_gattc_open(esp_gatt_if_t, uint8_t*, bool)'

  );

  ^

In file included from C:\Users\reibuehl\Documents\Arduino\libraries\ESP32_BLE\src\BLEClient.cpp:13:0:

C:\Users\reibuehl\Documents\Arduino\hardware\espressif\esp32/tools/sdk/include/bluedroid/esp_gattc_api.h:293:11: note: declared here

esp_err_t esp_ble_gattc_open(esp_gatt_if_t gattc_if, esp_bd_addr_t remote_bda, bool is_direct);

           ^

Multiple libraries were found for "WiFi.h"
Used: C:\Users\reibuehl\Documents\Arduino\hardware\espressif\esp32\libraries\WiFi
Not used: C:\Program Files (x86)\Arduino\libraries\WiFi
Multiple libraries were found for "BLEDevice.h"
Used: C:\Users\reibuehl\Documents\Arduino\libraries\ESP32_BLE
Not used: C:\Users\reibuehl\Documents\Arduino\hardware\espressif\esp32\libraries\BLE
Not used: C:\Users\reibuehl\Documents\Arduino\hardware\espressif\esp32\libraries\BLE
Not used: C:\Users\reibuehl\Documents\Arduino\hardware\espressif\esp32\libraries\BLE
Not used: C:\Users\reibuehl\Documents\Arduino\hardware\espressif\esp32\libraries\BLE
exit status 1
Error compiling for board Node32s.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
 
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 22 April 2018, 23:03:21
Installier die Arduino IDE mal neu, nach dieser Anleitung hier: https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/windows.md
Ansonsten kann ich morgen mal meine Arduino IDE Online stellen.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: reibuehl am 23 April 2018, 11:20:13
Ich hab die Arduino IDE nach dem angegebenen Link neu installiert, dann Deine BLE Library installiert und die Partitionen in /expressif/esp32/tools/partitions/default.csv wie unter https://github.com/nkolban/esp32-snippets/issues/441#issuecomment-375795379 abgeändert:

# Name,   Type, SubType, Offset,  Size, Flags
nvs,      data, nvs,     0x9000,  0x5000,
otadata,  data, ota,     0xe000,  0x2000,
app0,     app,  ota_0,   0x10000, 0x190000,
app1,     app,  ota_1,   0x1A0000,0x190000,
eeprom,   data, 0x99,    0x330000,0x1000,
spiffs,   data, spiffs,  0x331000,0x0CF000,


Ich bekomme aber trotzdem eine Fehlermeldung, dass der Sketch zu groß sei:

Arduino: 1.8.5 (Windows 10), Board: "NodeMCU-32S, 80MHz, 921600"

Build options changed, rebuilding all
Archiving built core (caching) in: C:\Users\reibuehl\AppData\Local\Temp\arduino_cache_308594\core\core_espressif_esp32_nodemcu-32s_FlashFreq_80,UploadSpeed_921600_ac76579aebd9c1bc06d622c8f785bf8a.a

Sketch uses 1573742 bytes (120%) of program storage space. Maximum is 1310720 bytes.
Global variables use 70380 bytes (23%) of dynamic memory, leaving 224532 bytes for local variables. Maximum is 294912 bytes.
Sketch too big; see http://www.arduino.cc/en/Guide/Troubleshooting#size for tips on reducing it.
Error compiling for board NodeMCU-32S.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.


Hast Du andere Partitionsgrößen verwendet?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 23 April 2018, 11:39:37
Du musst zusätzlich das hier ändern:

I then tried also altering
esp32.upload.maximum_size=1638400
in /expressif/esp32/boards.txt


Aber auch drauf achten, das Du das richtige Board anpasst. Es gibt verschiedene ESP32 Boards... Damit ist das Board gemeint, welches man in der Arduino IDE unter Werkzeuge ausgewählt hat.
In meinem Fall habe ich das "ESP32 Dev Module" Board genommen und angepasst:

esp32.name=ESP32 Dev Module

esp32.upload.tool=esptool
esp32.upload.maximum_size=1638400
esp32.upload.maximum_data_size=294912
esp32.upload.wait_for_upload_port=true


Dann sollte das bei dir funktionieren... :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: reibuehl am 23 April 2018, 13:06:59
Danke @mark79, mit der Anpassung in der boards.txt hat es geklappt. Ich sehe jetzt im Serial Monitor, dass sich der ESP32 ins WLAN einbucht und scannt. Allerdings zeigt er zumindest im Serial Monitor keine gefundenen Geräte an, obwohl ein Samsung S4mini, ein S5mini und ein S8 mit angeschaltetem Bluetooth im selben Raum sind.

Muss ich da zuerst über FHEM / PRESENCED angeben, nach welchen MACs gesucht werden soll oder sollte ich da im Serial Monitor trotzdem schon was sehen?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 23 April 2018, 13:30:41
Gerne. :) Du solltest auf der Console die BLE Geräte sehen.
Warum bei dir nichts angezeigt wird, liegt wohl daran, das du keine BLE Geräte hast.

Mit dem Handy wird das denke ich nicht so einfach funktionieren, weil die wohl nur Bluetooth raus senden und kein Bluetooth Low Enegery.
Aber ich glaube dafür gibt es APPs fürs Handy, wo man ein BLE TAG oder ein Beacon oder wie das heißt simulieren kann. Suche mal im Playstore nach: ble beacon
Ansonsten hole dir einfach ein Bluetooth TAG oder ein Xiaomi Mi Band, letzeres trägt man immer bei sich.

Dann kann man es so in Fhem einbinden:
define Mark PRESENCE lan-bluetooth die_ble_mac_adresse_vom_gerät 127.0.0.1:5222 5 60
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 26 Mai 2018, 07:59:37
Update:

Ich habe den BLEScanner mit den "normalen" Libraries (https://github.com/espressif/arduino-esp32) kompiliert, ohne den BLE-Teil zu patchen.
Das läuft jetzt seit über 2 Wochen stabil ohne Verbindungsabbrüche.

Es braucht allerdings auch mit der aktuellen Library noch den Tipp von mark79 (https://github.com/nkolban/esp32-snippets/issues/441#issuecomment-375795379).

Micky
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 26 Mai 2018, 14:57:02
Micky, welche ESP32 Boards verwendest du ?
Finde die Möglichkeit als alternative zum Pizero W recht interessant, da diese bei mir derzeit auch "nur" für presence genutzt werden.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 27 Mai 2018, 10:26:59
Zitat von: DerBodo am 26 Mai 2018, 14:57:02
Micky, welche ESP32 Boards verwendest du ?
Finde die Möglichkeit als alternative zum Pizero W recht interessant, da diese bei mir derzeit auch "nur" für presence genutzt werden.
Das Board habe ich von hier
https://m.ebay.de/itm/ESP32-ESP32S-CP2102-Entwicklung-2-4GHz-Dual-Mode-WiFi-Bluetooth-Module/272589218228?_mwBanner=1&_rdt=1


Gesendet von meinem ONEPLUS A3003 mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: RaspiLED am 27 Mai 2018, 12:30:45
Hi,
wenn eh aus CN geht auch das hier:
http://s.aliexpress.com/B73AbqeE
Gruß Arnd


Gesendet von iPhone mit Tapatalk
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 05 Juni 2018, 16:17:41
Zitat von: micky0867 am 26 Mai 2018, 07:59:37
Update:

Ich habe den BLEScanner mit den "normalen" Libraries (https://github.com/espressif/arduino-esp32) kompiliert, ohne den BLE-Teil zu patchen.
Das läuft jetzt seit über 2 Wochen stabil ohne Verbindungsabbrüche.

Es braucht allerdings auch mit der aktuellen Library noch den Tipp von mark79 (https://github.com/nkolban/esp32-snippets/issues/441#issuecomment-375795379).

Micky

Hallo Micky,

ich habe das vorgestern auch noch mal neu aufgesetzt, sprich die IDE neu installiert, mit dem aktuellen esp32 GIT...
Beim letzten mal lief der BLE Scanner nur immer eine Woche lang und ist dann abgesemmelt.

Nun habe ich den ESP32 an meinem alten RPi angeschlossen und logge via serielle Console mit.


Hast du zufällig noch eine neuere collectord? Bei mir ist das Ding in der letzter Zeit des öfteren eingefroren.
Im Log, als letzten Eintrag stand nur das hier:
2018-05-28 21:39:39 - created thread 12 for processing device ff:ff:40:01:xx:xx in room Schlafzimmer for peer 127.0.0.1 (UUID: 2ba10e3ae33e7ba7d50b6d1c04exxxxx)

collectord Version:
$Id: collectord 11212 2016-04-09 16:17:29Z markusbloch


Viele Grüße
Mark
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 07 Juni 2018, 07:51:57
Hi Mark,

der collectord ist bei mir identisch.
Auf welchem System läuft der denn bei dir?

Micky

Gesendet von meinem ONEPLUS A3003 mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 07 Juni 2018, 10:12:46
Moin Micky,

seit ein paar Monaten läuft das ganze auf ein Rock64 4GB Board, mit Debian Stretch (arm64).
Perl5 (armhf) revision 5 version 24 subversion 1.

Es könnte auch sein, das der ESP32 daran schuld war. Wenn der Offline geht, das dadurch irgendwann der collectored Dienst einfriert.
Ich weiß nicht genau, wann ich den ESP32 aus der collectord.conf ausgetragen habe. Als Zeitstempel steht:
-rw-r--r-- 1 root root      615 Jun  4 14:52 collectord.conf

Aber ob ich den schon vorher ausgetragen habe, kann ich jetzt nicht mehr genau sagen.  :-\

Ich werde das noch mal weiter beobachten...


Viele Grüße
Mark
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 07 Juni 2018, 21:21:41
Jetzt muss ich leider doch noch mal ein paar recht idiotische Fragen stellen, allerdings sehe ich gerade den Wald vor lauter Bäumen nicht.

Sketch ist kompiliert und hochgeladen. Im Serial Monitor sehe ich auch die entsprechenden BLE Devices.
Soweit alles gut.

Wie binde ich den ESP nun an den Collectord welcher auf dem FHEM Server läuft ?
Bei den PiZeros läuft ja einfach der lepresenced via PERL und macht den entsprechenden Port für die Verbindung auf.


Aktuell öffnet der ESP noch seinen Default AP obwohl er im WLAN eingebucht ist. Wie kann ich diesen abschalten (sollte ja eigentlich der AP Mode sein).



EDIT: Ok... das mit der Einbindung habe ich inzwischen geschafft, der Port ist einfach ein ganz anderer (Port 3333 für diejenigen die es auch nicht gleich finden).

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 27 Juli 2018, 11:38:25
Wie kann man lepresenced eigentlich auf die aktuellste Version updaten?  ???
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 27 Juli 2018, 11:52:11
Die Pakete findest du hier: https://svn.fhem.de/trac/export/HEAD/trunk/fhem/contrib/PRESENCE/deb/
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 27 Juli 2018, 14:13:16
Zitat von: mark79 am 27 Juli 2018, 11:52:11
Die Pakete findest du hier: https://svn.fhem.de/trac/export/HEAD/trunk/fhem/contrib/PRESENCE/deb/

D.h. man installiert das aktuelle Paket einfach über das alte?


Gesendet von iPhone mit Tapatalk Pro
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 27 Juli 2018, 19:05:48
Zitat von: Spezialtrick am 27 Juli 2018, 14:13:16
D.h. man installiert das aktuelle Paket einfach über das alte?
Jup! Dafür ist das Paketsystem ja da.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Spezialtrick am 27 Juli 2018, 19:17:42
Zitat von: PatrickR am 27 Juli 2018, 19:05:48
Jup! Dafür ist das Paketsystem ja da.


Von unterwegs gesendet.

Dankeschön!  :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 27 Juli 2018, 20:44:16
Hallo zusammen,

ich habe jetzt noch ein bisschen mit dem lepresenced auf einem ESP32 herumgespielt.
Allerdings habe ich da noch ein paar Probleme bei denen ich nicht weiterkomme.

Die BLE Geräte toggeln immer mal wieder und werden fälschlicherweise als "Absent" markiert.
Weder die Position des ESPs noch des BLE Gerätes verändern sich.
In der gleichen Zeit wird das Gerät von einem PI Zero W immer erkannt.

Im ESP steht TagTimeout auf 300 und Scantime auf 5.

Testweise habe ich die Scantime auch mal auf 2 und mal auf 10 bzw 30 Sekunden gesetzt.
Der Collectord pollt alle 30 Sekunden

Anbei ein log des Serial Monitors


Uptime: 553636
Tags found (MAC, Timestamp, Name, RSSIs):
  0a:2a:c8:49:66:16; 322109; ; >-55,-50,-50,-50,-63,<
  7f:8c:e1:f7:62:eb; 462138; ; >-62,-55,-60,-59,-58,<
  21:67:29:e7:4b:d7; 335026; ; >-33,-37,-33,-34,-33,<
  c3:b6:20:e4:a2:ef; 506979; Alta HR; >-74,-74,-73,-72,-81,<
  7c:2f:80:d1:88:ad; 551707; Gigaset G-tag; >-84,-69,-71,-81,-72,<
  18:24:d2:75:e6:90; 548398; ; >-55,-63,-62,-62,-50,<
  27:db:62:d2:23:16; 547398; ; >-33,-37,-37,-48,-46,<

Reconnects: 1
Sending >absence;rssi=unreachable;daemon=BLEScanner V0.1< to 192.168.200.10:43288
Scanning...
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-75;daemon=BLEScanner V0.1< to 192.168.200.10:43286
Scanning...
Sending >absence;rssi=unreachable;daemon=BLEScanner V0.1< to 192.168.200.10:43288
Scanning...
Scanning...
Sending >absence;rssi=unreachable;daemon=BLEScanner V0.1< to 192.168.200.10:43286
Request >7c:2f:80:d1:88:ad|20< from 192.168.200.10:43286
Sending >absence;rssi=unreachable;daemon=BLEScanner V0.1< to 192.168.200.10:43286
Scanning...
Sending >absence;rssi=unreachable;daemon=BLEScanner V0.1< to 192.168.200.10:43288
Scanning...
Scanning...
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-72;daemon=BLEScanner V0.1< to 192.168.200.10:43286
Request >7c:2f:80:d1:88:ad|20< from 192.168.200.10:43286
Sending >present;device_name=Gigaset G-tag;rssi=-72;daemon=BLEScanner V0.1< to 192.168.200.10:43286
Free heap: 27196
Scanning...
Task bleTask state: 2 free stack: 1164
Task wifiTask state: 2 free stack: 824
Task clientTask_192.168.200.10:43288 state: 2 free stack: 228
Task clientTask_192.168.200.10:43286 state: 2 free stack: 308
Uptime: 614071
Tags found (MAC, Timestamp, Name, RSSIs):
  0a:2a:c8:49:66:16; 322109; ; >-55,-50,-50,-50,-63,<
  7f:8c:e1:f7:62:eb; 462138; ; >-62,-55,-60,-59,-58,<
  21:67:29:e7:4b:d7; 335026; ; >-33,-37,-33,-34,-33,<
  c3:b6:20:e4:a2:ef; 506979; Alta HR; >-74,-74,-73,-72,-81,<
  7c:2f:80:d1:88:ad; 602953; Gigaset G-tag; >-69,-71,-81,-72,-70,<
  18:24:d2:75:e6:90; 611339; ; >-62,-62,-55,-55,-56,<
  27:db:62:d2:23:16; 611568; ; >-48,-46,-34,-33,-37,<


Hat jemand noch eine Idee was ich hier ausprobieren könnte ?

Vielen Dank !
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 27 Juli 2018, 22:34:06
Ich habe bei mir diesbezüglich keine Probleme festgestellt.

Meine Config:

tagtimeout = 300
scanTime = 8
presence_timeout=90
absence_timeout=90


Auf Github habe ich seit 4 Wochen einen Branch, um einen automatischen Neustart des BLE-Threads im Fehlerfall zu erzwingen.
"Leider" läuft aber seit dem alles stabil, so daß ich noch nicht testen konnte, ob es richtig funktioniert...  ::)

Die Scantime gibt an, wie lange der BLE-Thread "abtaucht", um nach BLE-Geräten zu scannen.
Ist die Zeit zu kurz, "sieht" er nicht alle Geräte.
Ist die Zeit zu lang, springt irgendwann der Watchdog an.

Kannst du bitte mal prüfen, ob zwischen zwei "Uptime: xxx" Zeilen ca. 60 Sekunden vergehen?
Ich fürchte, dass das Timing nicht korrekt ist.

Micky




Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 29 Juli 2018, 10:34:15
Hallo Micky,

die  Uptimes kommen ziemlich genau alle 60 Sekunden, dort ist der G-Tag auch immer zu sehen. Allerdings wird er dennoch über mehrere Abfrageintervalle als absent gemeldet bevor er dann wieder zu present wechselt.
Anbei mal ein Auszug aus den Uptime Messages:


Uptime: 128550
Uptime: 188964
Uptime: 249378
Uptime: 309792
Uptime: 370207


Ich hatte nun mal deine scanTime getestet, allerdings habe ich im FHEM für die Timeouts jeweils 30 Sekunden belassen.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 29 Juli 2018, 13:40:43
Die Tags bleiben immer für min. 300 Sekunden in der Liste, bevor sie von dort gelöscht werden.
Die Liste dient ja auch zum Sammeln der RSSI-Werte und das System kann von mehreren collectord Instanzen angesprochen werden.
Da darf ein einzelner collectord nicht entscheiden, wann ein Tag aus der Liste fliegt.

An den collectord wird alle n Sekunden gemeldet, ob sich der Tag in den letzten n Sekunden gemeldet hat.
Bei Dir ist n = 20 Sekunden!

Request >7c:2f:80:d1:88:ad|20< from 192.168.200.10:43286


Wobei mir allerdings noch nicht klar ist, ob das der Tag ist, den du meinst....weil ich zwei Anfragen sehe:
192.168.200.10:43288
192.168.200.10:43286


Vielleicht kannst du das nochmal entwirren.
Welche Tags (MACs) sind von dir?
Welcher Client (IP-Adresse:Port) fragt welches Tag mit welchem Timeout ab?


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 30 Juli 2018, 07:56:00
Es werden von FHEM über den dort laufenden Collectord 2 Tags abgefragt.

Einmal das ALTA HR mit der MAC  c3:b6:20:e4:a2:ef sowie der G-Tag mit der MAC 7c:2f:80:d1:88:ad.

Ich werde heute Abend zum test mal das ALTA HR Disablen dann sind nur noch die Anfragen des collectord für  das G-Tag drin.
Dann können die Anfragen auch einfacher zugeordnet werden.

Ich werde dann noch mal einen neuen Logauszug mit den entsprechenden Lists der Timeouts etc. aus FHEM posten.

Vielen Dank schon mal für deine Hilfe !!




Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 31 Juli 2018, 19:07:54
Anbei ein List des überwachten Devices:


Internals:
   ADDRESS    7c:2f:80:d1:88:ad
   DEF        lan-bluetooth 7c:2f:80:d1:88:ad 127.0.0.1:5222 30
   DeviceName 127.0.0.1:5222
   FD         18
   INTERVAL_NORMAL 30
   INTERVAL_PRESENT 30
   MODE       lan-bluetooth
   NAME       BT_Bodo
   NOTIFYDEV  global
   NR         661
   NTFY_ORDER 50-BT_Bodo
   PARTIAL   
   STATE      present
   TYPE       PRESENCE
   Helper:
     DBLOG:
       state:
         myDbLog:
           TIME       1533048291.26324
           VALUE      present
   READINGS:
     2018-07-29 10:50:49   command_accepted yes
     2018-07-31 18:46:18   daemon          lepresenced V0.82
     2018-07-31 18:46:18   device_name     Gigaset G-tag
     2018-07-31 18:46:18   model           lan-lepresenced
     2018-07-31 18:46:18   presence        present
     2018-07-31 18:46:18   rooms           DG
     2018-07-31 18:46:18   rssi            -69
     2018-07-31 18:46:18   state           present
   helper:
     CURRENT_STATE present
     CURRENT_TIMEOUT normal
Attributes:
   event-on-change-reading .*
   room       080_Presence
   struct_Bodo Bodo
   userattr   relative relative_map struct_Bodo struct_Bodo_map structexclude


In der aktuellen Ansicht ist zu sehen, dass unter "rooms" ESP fehlt - DG ist in diesem Fall der RPI mit laufendem lepresenced.

Anbei der Logauszug aus der Seriellen Konsole

SYSTEM_EVENT_STA_GOT_IP
Free heap: Scanning...
41052

WiFi connected.
IP address:
192.168.200.240
Task bleTask state: 2 free stack: 1164
Task wifiTask state: 2 free stack: 824
Uptime: 7601
Tags found (MAC, Timestamp, Name, RSSIs):

Reconnects: 1
New connection from 192.168.200.10:49386
Request >7c:2f:80:d1:88:ad|20< from 192.168.200.10:49386
Sending >absence;rssi=unreachable;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Request >7c:2f:80:d1:88:ad|20< from 192.168.200.10:49386
Sending >absence;rssi=unreachable;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-68;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Request >7c:2f:80:d1:88:ad|20< from 192.168.200.10:49386
Sending >present;device_name=Gigaset G-tag;rssi=-68;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-68;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Free heap: 32496
Task bleTask state: 2 free stack: 1164
Task wifiTask state: 2 free stack: 824
Task clientTask_192.168.200.10:49386 state: 2 free stack: 272
Uptime: 68002
Tags found (MAC, Timestamp, Name, RSSIs):
  32:e2:95:e2:b5:c4; 62554; ; >-34,-34,-34,-34,-48,<
  08:f7:53:ff:21:00; 62553; ; >-48,-47,-48,-48,-63,<
  c3:b6:20:e4:a2:ef; 39003; Alta HR; >-69,-73,-78,<
  7c:2f:80:d1:88:ad; 44533; Gigaset G-tag; >-67,-69,-68,<
  5f:ab:f3:21:3a:6d; 62746; ; >-59,-60,-59,<

Reconnects: 1
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-69;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Sending >absence;rssi=unreachable;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Request >7c:2f:80:d1:88:ad|20< from 192.168.200.10:49386
Sending >absence;rssi=unreachable;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-72;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Request >7c:2f:80:d1:88:ad|20< from 192.168.200.10:49386
Sending >present;device_name=Gigaset G-tag;rssi=-72;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Free heap: 31948
Task bleTask state: 2 free stack: 1164
Task wifiTask state: 2 free stack: 824
Task clientTask_192.168.200.10:49386 state: 2 free stack: 272
Uptime: 128419
Tags found (MAC, Timestamp, Name, RSSIs):
  32:e2:95:e2:b5:c4; 125837; ; >-48,-48,-33,-39,-32,<
  08:f7:53:ff:21:00; 125836; ; >-47,-48,-63,-49,-49,<
  c3:b6:20:e4:a2:ef; 118983; Alta HR; >-78,-81,-74,-80,-82,<
  7c:2f:80:d1:88:ad; 123948; Gigaset G-tag; >-70,-71,-73,-82,-69,<
  5f:ab:f3:21:3a:6d; 93348; ; >-60,-59,-60,-60,-58,<

Reconnects: 1
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-73;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-74;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-72;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Free heap: 31160
Task bleTask state: 2 free stack: 1164
Task wifiTask state: 2 free stack: 824
Task clientTask_192.168.200.10:49386 state: 2 free stack: 272
Uptime: 188838
Tags found (MAC, Timestamp, Name, RSSIs):
  32:e2:95:e2:b5:c4; 180444; ; >-39,-39,-38,-34,-32,<
  08:f7:53:ff:21:00; 180445; ; >-54,-55,-54,-48,-48,<
  c3:b6:20:e4:a2:ef; 186058; Alta HR; >-82,-74,-71,-70,-83,<
  7c:2f:80:d1:88:ad; 181223; Gigaset G-tag; >-72,-81,-71,-70,-88,<
  5f:ab:f3:21:3a:6d; 93348; ; >-60,-59,-60,-60,-58,<

Reconnects: 1
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-76;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-76;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-77;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Free heap: 31916
Task bleTask state: 2 free stack: 1164
Task wifiTask state: 2 free stack: 824
Task clientTask_192.168.200.10:49386 state: 2 free stack: 272
Uptime: 249257
Tags found (MAC, Timestamp, Name, RSSIs):
  32:e2:95:e2:b5:c4; 244424; ; >-31,-34,-32,-39,-50,<
  08:f7:53:ff:21:00; 244425; ; >-48,-49,-49,-55,-64,<
  c3:b6:20:e4:a2:ef; 227341; Alta HR; >-83,-78,-81,-71,-72,<
  7c:2f:80:d1:88:ad; 248554; Gigaset G-tag; >-71,-81,-81,-78,-85,<
  5f:ab:f3:21:3a:6d; 93348; ; >-60,-59,-60,-60,-58,<

Reconnects: 1
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-78;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-75;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-74;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Free heap: 31948
Task bleTask state: 2 free stack: 1164
Task wifiTask state: 2 free stack: 824
Task clientTask_192.168.200.10:49386 state: 2 free stack: 272
Uptime: 309676
Tags found (MAC, Timestamp, Name, RSSIs):
  32:e2:95:e2:b5:c4; 307896; ; >-39,-32,-32,-32,-32,<
  08:f7:53:ff:21:00; 307896; ; >-54,-48,-48,-48,-48,<
  c3:b6:20:e4:a2:ef; 304739; Alta HR; >-75,-77,-68,-68,-77,<
  7c:2f:80:d1:88:ad; 298821; Gigaset G-tag; >-69,-74,-71,-71,-71,<
  5f:ab:f3:21:3a:6d; 93348; ; >-60,-59,-60,-60,-58,<

Reconnects: 1
Sending >present;device_name=Gigaset G-tag;rssi=-71;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-73;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Scanning...
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-73;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...
Free heap: 31848
Task bleTask state: 2 free stack: 1164
Task wifiTask state: 2 free stack: 824
Task clientTask_192.168.200.10:49386 state: 2 free stack: 272
Uptime: 370095
Tags found (MAC, Timestamp, Name, RSSIs):
  32:e2:95:e2:b5:c4; 362592; ; >-34,-34,-31,-31,-34,<
  08:f7:53:ff:21:00; 362593; ; >-48,-48,-48,-48,-48,<
  c3:b6:20:e4:a2:ef; 362793; Alta HR; >-70,-70,-69,-71,-73,<
  7c:2f:80:d1:88:ad; 366160; Gigaset G-tag; >-70,-84,-71,-75,-73,<
  5f:ab:f3:21:3a:6d; 366120; ; >-59,-60,-60,-58,-61,<

Reconnects: 1
Scanning...
Sending >present;device_name=Gigaset G-tag;rssi=-74;daemon=BLEScanner V0.1< to 192.168.200.10:49386
Scanning...


Natürlich läuft es jetzt die beobachteten 5 Minuten absolut einwandfrei.....
Micky scannst du ein oder mehrere BLE Devices ?

Nachdem ich das ALTA_HR wieder enabled habe im Presence kommt es hin und wieder zu Absence Meldungen im Log.
Allerdings habe ich den Timeout des ALTA_HR mal testweise von 30 auf 35 Sekunden gesetzt. Damit das polling des collectord etwas entzerrt ist. Gefühlt hat dies ein bisschen Besserung gebracht.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 31 Juli 2018, 21:16:47
Hi,

ich habe 2 GTags.

Erstmal fällt mir auf, dass du zwar in der FHEM-Definition 30 Sekunden (was ich persönlich als etwas kurz) angegeben hast, aber effektiv 20 Sekunden (durch collectord) übergeben werden.
7c:2f:80:d1:88:ad|20
Ich habe an der Stelle 90 Sekunden eingestellt.
Bei mir ist es unerheblich, das das System erst nach 90 Sekunden feststellt, dass ich weg bin, da ich zusätzlich noch mein Handy über die Fritze überwache und da spielt die Lease-Time eine Rolle, die noch größer ist.
Du solltest deine collectord.conf anpassen und auf mindestens 30 Sekunden stellen.

Im folgenden Abschnitt von deinem Log sieht man, dass die aktuelle Uptime 68002 ms ist und dein G-tag zuletzt um 44533 ms gesehen wurde.
Das sind 23,5 Sekunden. Da ist es ganz knapp geworden.

Uptime: 68002
Tags found (MAC, Timestamp, Name, RSSIs):
  32:e2:95:e2:b5:c4; 62554; ; >-34,-34,-34,-34,-48,<
  08:f7:53:ff:21:00; 62553; ; >-48,-47,-48,-48,-63,<
  c3:b6:20:e4:a2:ef; 39003; Alta HR; >-69,-73,-78,<
  7c:2f:80:d1:88:ad; 44533; Gigaset G-tag; >-67,-69,-68,<
  5f:ab:f3:21:3a:6d; 62746; ; >-59,-60,-59,<




Bei mir bleiben die alten Readings (siehe Garage) einfach stehen, wieso sieht man bei dir ESP nicht?


Internals:
   ADDRESS    7C:2F:80:C4:5A:D9
   DEF        lan-bluetooth 7C:2F:80:C4:5A:D9 127.0.0.1:5222 60 60
   DeviceName 127.0.0.1:5222
   FD         40
   INTERVAL_NORMAL 60
   INTERVAL_PRESENT 60
   MODE       lan-bluetooth
   NAME       gtag.Micky
   NOTIFYDEV  global
   NR         205
   NTFY_ORDER 50-gtag.Micky
   PARTIAL   
   STATE      active
   TYPE       PRESENCE
   Helper:
     DBLOG:
       batterylevel:
         logdb:
           TIME       1532999163.72118
           VALUE      21
       command_accepted:
         logdb:
           TIME       1533063315.53964
           VALUE      yes
       daemon:
         logdb:
           TIME       1533063290.96146
           VALUE      BLEScanner V0.1
       device_name:
         logdb:
           TIME       1533063290.96146
           VALUE      Gigaset G-tag
       presence:
         logdb:
           TIME       1533063290.96146
           VALUE      present
       room:
         logdb:
           TIME       1533063290.96146
           VALUE      WZ
       rooms:
         logdb:
           TIME       1533063290.96146
           VALUE      Haus,WZ
       rssi:
         logdb:
           TIME       1533063290.96146
           VALUE      -80
       rssi_Garten:
         logdb:
           TIME       1533057416.36769
           VALUE      -64
       rssi_Haus:
         logdb:
           TIME       1533063290.96146
           VALUE      -81
       rssi_WZ:
         logdb:
           TIME       1533063290.96146
           VALUE      -80
       state:
         logdb:
           TIME       1533063290.96146
           VALUE      present
   READINGS:
     2018-07-31 03:06:03   batterylevel    21
     2018-07-31 20:55:15   command_accepted yes
     2018-07-31 20:54:50   daemon          BLEScanner V0.1
     2018-07-31 20:54:50   device_name     Gigaset G-tag
     2018-07-31 20:55:15   model           lan-bluetooth
     2018-07-31 20:54:50   presence        present
     2018-07-31 20:54:50   room            WZ
     2018-07-31 20:54:50   rooms           Haus,WZ
     2018-07-31 20:54:50   rssi            -80
     2017-11-12 20:52:52   rssi_Garage     -80
     2018-07-31 19:16:56   rssi_Garten     -64
     2018-07-31 20:54:50   rssi_Haus       -81
     2018-07-31 20:54:50   rssi_WZ         -80
     2018-07-31 20:55:15   state           active
   helper:
     CURRENT_STATE present
     CURRENT_TIMEOUT normal
Attributes:
   absenceThreshold 2
   devStateIcon present:user@green absent:user@grey
   icon       user@blue
   room       Residents

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Pitcher90 am 03 August 2018, 12:34:11
Mein ESP32 ist nun auch angekommen. :)
Welche Firmware verwendet ihr denn? Habe jetzt auf den letzten paar Seiten nichts gefunden.

LG,
Stefan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 03 August 2018, 14:52:46
Zitat von: Pitcher90 am 03 August 2018, 12:34:11
Mein ESP32 ist nun auch angekommen. :)
Welche Firmware verwendet ihr denn? Habe jetzt auf den letzten paar Seiten nichts gefunden.

LG,
Stefan

https://github.com/micky0867/BLEScanner
Denk dran das du die Arduino IDE dafür noch anpassen musst, sonst passt der Sketch nicht auf dem ESP32.

Viele Grüße
Mark
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Pitcher90 am 03 August 2018, 16:09:31
Vielen Dank! Das probiere ich mal aus.

Edit: Super! Hat alles funktioniert. Vielen Danke für deine Mühen :)
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 11 August 2018, 23:55:28
Es ärgert mich immer wieder, dass das Melden eines wieder-aufgetauchten Tags so lange dauert (die Alarmanlage springt immer wieder an).
Deshalb habe ich die Software umgebaut, so dass die Meldung innerhalb von ca. 2 Sekunden nach Auftauchen des Tags auch an FHEM geht.
Außerdem ist jetzt der Watchdog aktiviert, wodurch ein Reboot erfolgt, falls sich der bleTask aufhängen sollte (ein einfacher Restart des bleTask scheint nicht zu funktionieren).

https://github.com/micky0867/BLEScanner/tree/fastdetection

Micky
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: DerBodo am 13 August 2018, 21:04:20
Sehr cool... gleich mal ausprobiert.

Nach 15 Minuten (musste erstmal die Serial Baudrate suchen - da diese anders ist als beim anderen BLE Scanner Sketch) noch kein "falscher" Status zurückgemeldet.

Ich werde das ganze weiter beobachten.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Pitcher90 am 14 August 2018, 18:07:24
Gibt es zur Zeit einen Trick die Ausfälle zu minimieren?
Bei mir läuft der ESP32 ein paar Stunden ohne Probleme und ist dann irgendwann unerreichbar.
Hab auch schon Micky's neusten Sketch drauf.

LG,
Stefan
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 14 August 2018, 19:11:42
Lass' ihn doch mal mit dem seriellen Monitor laufen, vllt. zeigt sich da was.

Micky

Gesendet von meinem ONEPLUS A3003 mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Pitcher90 am 15 August 2018, 00:11:57
Ich habe es mal durchlaufen lassen.


Free heap: 23020
Task bleTask state: 2 free stack: 1044
Task wifiTask state: 2 free stack: 976
Task clientTask_192.168.1.200:46624 state: 2 free stack: 200
Tags for faster detection:
  >cf:1a:18:58:f3:64
Uptime: 2822
Tags found (MAC, Timestamp, Name, RSSIs):
  88:0f:10:88:06:26; 1493; ; >-82,-83,-82,-77,-84,<
  cf:1a:18:58:f3:64; 1496; ; >-82,-90,-85,-82,-81,<
  41:18:54:4a:a7:c2; 1441; ; >-68,-69,-75,-78,-80,<
  75:4b:74:d5:f2:44; 1493; ; >-74,-61,-62,-63,-72,<
  78:28:60:12:76:b7; 1493; ; >-95,-84,-85,-83,-89,<
  43:12:ba:1f:ff:fc; 1497; ; >-83,-91,-83,-88,-83,<
  46:36:ce:c2:97:6c; 1328; ; >-79,<
  4e:7a:20:19:02:cb; 1500; ; >-86,-90,-82,-78,-87,<
  67:c5:f4:ad:1a:30; 1445; ; >-70,<
  47:6f:9b:46:00:ce; 1497; ; >-82,-72,-73,-73,-73,<
Reconnects: 0
Uptime: 2822
Task watchdog got triggered. The following tasks did not reset the watchdog in time:
- bleTask (CPU 0)
Tasks currently running:
CPU 0: wifi
CPU 1: IDLE
Aborting.
abort() was called at PC 0x4014cff4 on core 0

Backtrace: 0x40094f20:0x3ffc05b0 0x40095123:0x3ffc05d0 0x4014cff4:0x3ffc05f0 0x40081741:0x3ffc0610 0x4008a933:0x00000000

Rebooting...
⸮⸮C 
H⸮JRH ⸮!⸮!⸮


Er rebootet auch erfolgreich, aber kommuniziert nicht mehr mit FHEM weil der gesuchte Tag aus dem Speicher gelöscht ist. Erst wenn man manuell ein statusRequest anstößt, kommuniziert er wieder.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 15 August 2018, 09:13:12
Hi,

eine Uptime von 2822 Sekunden ist nicht gerade berauschend.
Wobei das letzte Tag um 1500 Sekunden erkannt wurde...also hing der ESP wohl seit dem.
Bei mir dauert es normalerweise mehrere Wochen, bis sich was aufhängt.
Die spannende Frage ist, woher das Problem rührt. Ist es ein bestimmtes Tag, bei dem das passiert?
Du hast auffällig viele Tags in deiner Umgebung, vllt. macht es auch die Anzahl?
Ich werde mal eine Version bauen, wo jedes erkannte Tag sofort geloggt wird, damit man vllt. erkennt, ob es daher kommt.

Du hast Recht, FHEM müsste den ESP erstmal triggern, bevor die Erkennung wieder funktioniert.
Also wäre es doch besser, wenn man den bleTask abschiessen und neu starten könnte.

Micky


Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Pitcher90 am 15 August 2018, 12:24:48
Sorry, die 1500 Sekunden kommen daher, dass ich nachträglich noch die Tagliste hinzugefügt hatte. Hatte erst nur den Absturz und dachte mir dann die Liste wäre vielleicht auch interessant.  :-X
Also ich frage momentan eigentlich nur mein Mi-Band2 ab.
Die anderen Adressen die Erkannt werden, sind wohl die 2 Raspberry Pis und noch ein Mi Band1. zum Rest kann ich nichts sagen.

Eine andere Möglichkeit das Kommunikationsproblem zu lösen, wäre wenn man den Tag und den FHEM Server schon im Sketch speichert. Ist natürlich keine besonders schöne Lösung.

LG

Edit: Mir ist jetzt noch ein Problem aufgefallen. Scheinbar gibt bei der Fastdetection Funktion einen Fehler.

Uptime: 5402
Scanning ...
Sending >absence;rssi=unreachable;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: periodic report
Scanning ...
Scanning ...
Scanning ...
Scanning ...
Scanning ...
Sending >present;device_name=;rssi=-82;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-82;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-82;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-82;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Free heap: 23520
Task bleTask state: 2 free stack: 1044
Task wifiTask state: 2 free stack: 976
Task clientTask_192.168.1.200:34804 state: 2 free stack: 200
Tags for faster detection:
  >cf:1a:18:58:f3:64
Uptime: 5462
Tags found (MAC, Timestamp, Name, RSSIs):
  88:0f:10:88:06:26; 5458; ; >-78,-74,-75,-79,-73,<
  cf:1a:18:58:f3:64; 5458; ; >-82,<
  61:df:00:3a:2a:05; 5457; ; >-88,-79,-89,-80,-87,<
  43:e8:dd:52:a4:cb; 5449; ; >-88,-85,-92,-86,-85,<
  48:89:e9:1b:7a:e2; 5457; ; >-84,-84,-73,-68,-85,<
  72:08:75:24:f3:e9; 5457; GoogleWohnzimmer; >-70,-70,-81,-70,-73,<
  53:8b:27:14:ba:d1; 5457; ; >-84,-87,-87,-88,-88,<

Reconnects: 0
Uptime: 5462
Sending >present;device_name=;rssi=-82;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-82;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Scanning ...
Sending >present;device_name=;rssi=-82;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-82;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-82;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Scanning ...
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Sending >present;device_name=;rssi=-83;daemon=BLEScanner V0.2< to 192.168.1.200:34804 for tag cf:1a:18:58:f3:64, Reason: fastdetection
Scanning ...

Und das geht jetzt immer so weiter. Er sendet alle 1-2 Sekunden.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 09 September 2018, 21:38:20
Hallo,

ich hatte mal wieder ein wenig Zeit, an der SW zu arbeiten.

Ein selbst gebauter Watchdog sollte jetzt den BLE-Task restarten, bevor das gesamte Modul durch den offiziellen Watchdog rebootet werden kann.
Da mein System höchstens alle 6 Wochen in einen solchen Zustand kommt, wäre ich an euren Erfahrungen interessiert.

Die neue Version ist im Branch watchdog:
https://github.com/micky0867/BLEScanner/tree/watchdog

Micky

@Pitcher90:
Bei mir wird der BLE-Tag von FHEM gepollt, sobald Fastdetection zuschlägt.
Dadurch wird der Timer bzw. das Fastdetection wieder zurückgesetzt.
K.A., warum sich das bei dir anders verhält.
Hast du das direkt oder über collectord angebunden?

Du könntest testweise den Code so ändern:
den Teil

      } else if(cmac.length() > 0 && fastdetection[cmac] == 1) {
        printTags(client, cmac, timeout, "fastdetection");
        lastreport = uptimesec;
        delay(1000);
}

um die Zeile "fastdetection[cmac] = 0;" erweitern
      } else if(cmac.length() > 0 && fastdetection[cmac] == 1) {
        printTags(client, cmac, timeout, "fastdetection");
        lastreport = uptimesec;
        delay(1000);
        fastdetection[cmac] = 0;
}

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 13 September 2018, 08:58:51
Hi zusammen,

einer meiner G-Tags ist nun ziemlich genau nach 2 Jahren defekt. Er sendet einfach nichts mehr bzw. wird von hcitool lescan nicht mehr gefunden.
Der andere G-Tag hingegen schon. Die Batterie habe ich natürlich gewechselt.

Hat jemand eine ähnliche Erfahrung mit der Haltbarkeit gemacht oder habe ich einfach Pech gehabt?

Als Nachfolger gibt es wohl die "Keeper"...sind diese Empfehlenswert oder gibt es mittlerweile etwas ganz anderes (besseres) ? Am liebsten wäre mir ja etwas mit BT5 aber da gibt es wohl noch nichts.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 13 September 2018, 09:56:15
Das passiert m. W. auch, wenn das Tag mit einem Handy o. ä. gepaired ist.
Suche das Tag doch mal mit einem Handy über die BT-Suche.

Micky


Gesendet von meinem ONEPLUS A3003 mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 13 September 2018, 10:06:49
Zitat von: micky0867 am 13 September 2018, 09:56:15
Das passiert m. W. auch, wenn das Tag mit einem Handy o. ä. gepaired ist.
Suche das Tag doch mal mit einem Handy über die BT-Suche.

Ich weiss, aber der GTag ist nicht gepaired. Er war wie gesagt seit 2 Jahren in Betrieb ohne Änderung.
Per Smartphone mit BT-LE Scanner oder auch per hcitool lescan wird er auch nicht mehr gefunden.

Mit einem Multimeter kann ich lediglich messen, dass auf der Platine Spannung anliegt an verschiedenen Punkten, aber mehr auch nicht. Er sendet einfach nicht mehr.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 14 September 2018, 18:43:41
Ok anscheinend bin ich der einzige bisher mit einem defekten G-Tag. Die Garantie war genau 1 Monat abgelaufen, Siemens gibt darauf auch keine Kulanz (habe freundlich per Mail angefragt).

Habe jetzt ein neuen Gigaset Keeper hier liegen und ich wollte kurz beschreiben, wie man diesen aktivieren muss (unterscheidet sich nämlich zu den alten G-tags):

Der Keeper MUSS einmalig mit der "Keeper-App" gekoppelt werden. Andernfalls geht er nach 2 Minuten immer wieder in Standby bzw. aus und sendet nichts mehr. Wenn er in der Keeper-App gefunden und gekoppelt wurde, MUSS man ihn wieder entfernen - ansonsten wird er von FHEM bzw. lepresenced auch nicht mehr dauerhaft gefunden.

Also nochmal in Kurzform:

- App auf Smartphone installieren ("Keeper App")
- Registrieren (leider zwingend erforderlich, Spam-Emailadresse verwenden)
- Button am Keeper 5 Sekunden gedrückt halten (LED blinkt rot) und den Keeper mit der App koppeln / einrichten
- LED am Keeper hört auf zu blinken
- Kurz testen ob der Keeper funktioniert (Handysuchfunktion / Keepersuchfunktion ausführen)
- Keeper aus der App wieder löschen (wichtig)
- Jetzt sendet der Keeper dauerhaft und wird von lepresenced bzw. auch von jedem beliebigem BT-LE Scanner gefunden

Mal sehen, ob dieser nun länger als 2 Jahre durchhält.

Übrigens funktioniert das Batterieskript auch mit dem Keeper (es dauerte allerdings 3 Checks bis es ging, keine Ahnung warum. Bei den ersten beiden Versuchen wurde kein Batteriewert zurückgegeben).

Was noch intressant wäre ob es irgendeine Möglichkeit gibt, den Piepser im Keeper durch FHEM auszulösen.... :-) ... mag sich da mal jemand dransetzen?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 14 September 2018, 19:46:40
...du bist bis jetzt der einzige, der solch ein Device zum Testen besitzt....

Btw: wenn du das Gtag bei Am... gekauft hast, könnte die Kulanz besser sein.

Gesendet von meinem ONEPLUS A3003 mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 14 September 2018, 20:15:58
Zitat von: micky0867 am 14 September 2018, 19:46:40
...du bist bis jetzt der einzige, der solch ein Device zum Testen besitzt....

Btw: wenn du das Gtag bei Am... gekauft hast, könnte die Kulanz besser sein.

Gesendet von meinem ONEPLUS A3003 mit Tapatalk

Hm das glaube ich nicht, habe hier schon mehrere Posts von Leuten gelesen, welche den Keeper haben.
Aber vielleicht alles keine Programmierer, das mag sein.

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 14 September 2018, 21:40:25
Mit den GTags bin ich bis her sehr zufrieden, die sind auch gut verarbeitet. Habe die günstig bei Ebay erworben für 7€ das Stück.
Wovon ich abrate sind die billig China BT Tags. Davon hatte ich 3-4 verschiedene und beim Hauptteil war die Batterie ruck zu leer, innerhalb 1-2 Monate. Einer der länger hielt, ging später kaputt, er hat nichts mehr gesendet.

Desweiteren würde ich mir auch kein TAG mehr holen mit Taster. Wenn der Schlüsselbund in der Tasche ist, löst dieser schon mal aus und bei diesen China Tags hieß das dann shutdown.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: errazzor am 14 September 2018, 22:53:03
Zitat von: mark79 am 14 September 2018, 21:40:25
Desweiteren würde ich mir auch kein TAG mehr holen mit Taster. Wenn der Schlüsselbund in der Tasche ist, löst dieser schon mal aus und bei diesen China Tags hieß das dann shutdown.

Glücklicherweise ist das beim Keeper nicht so - nachdem der Keeper aktiviert ist, dient der Taster lediglich dazu die Ortungsfunktion fürs Handy auszulösen (was im Falle der Verwendung mit FHEM keine Rolle spielt).

Intressant ist halt wie gesagt der eingebaute Piepser. Vielleicht schreibt ja jemand irgendwann ein kleines Modul um diesen auslösen zu können. So hätte man gleichzeitig die Funktion des Schlüsselfinders.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: mark79 am 14 September 2018, 23:26:49
Zitat von: errazzor am 14 September 2018, 22:53:03
Glücklicherweise ist das beim Keeper nicht so - nachdem der Keeper aktiviert ist, dient der Taster lediglich dazu die Ortungsfunktion fürs Handy auszulösen (was im Falle der Verwendung mit FHEM keine Rolle spielt).

Intressant ist halt wie gesagt der eingebaute Piepser. Vielleicht schreibt ja jemand irgendwann ein kleines Modul um diesen auslösen zu können. So hätte man gleichzeitig die Funktion des Schlüsselfinders.

Danke das ist gut zu wissen, ich habe mir die neuen deswegen nicht gekauft, weil ich dachte, die gehen dann aus...

Du könntest mal schauen ob man das piepsen auch durch gatttool auslösen kann.
Was ähnliches habe ich bei meiner Oclean BT Zahnbürste herausgefunden, wie man den Batterie Status auslesen kann: https://forum.fhem.de/index.php/topic,82572.msg822193.html#msg822193

Und dann ein Script erstellt um den Akkustand auszulesen: https://forum.fhem.de/index.php/topic,89890.msg833484.html#msg833484

Hier gibt es noch mehr Infos dazu: https://www.jaredwolff.com/blog/get-started-with-bluetooth-low-energy/
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: Tedious am 09 März 2019, 12:59:37
Hi,

hat jemand einen heißen Tip für mich. Software kompiliert und auf einen ESP Wroom 32 geflasht.. Collectord Konfig ist wie folgt:

[Brix]
address=127.0.0.1
port=5333
presence_timeout=90
absence_timeout=90

[Flur]
address=192.168.168.55
port=3333
presence_timeout=90
absence_timeout=90


Leider meldet der Raum "Flur" nichts, obwohl die Tags direkt daneben liegen. In der Konsole findet er sie. Muss also an meiner Konfig liegen - was mache ich falsch. Die Defininitionen der Tags sind alle gleich bis auf den Namen

lan-bluetooth 7C:2F:80:AD:C2:B3 127.0.0.1:5222 10 90

Collectord meldet

2019-03-09 12:20:35 - (Main Thread) - processing state message for device in room Flur (UUID: e3a3943dbabad8b3505cfe8e0bc62b0b) - value: socket_closed
2019-03-09 12:20:35 - (Main Thread) - processing state message for device in room Flur (UUID: 63c495477b0259b5d7e397671bf977b1) - value: socket_closed
2019-03-09 12:20:35 - (Thread 4) - Flur : could not create socket to 192.168.168.55 - Connection timed out -
2019-03-09 12:20:35 - (Thread 2) - Flur : could not create socket to 192.168.168.55 - Connection timed out -
2019-03-09 12:20:35 - (Thread 4) - Flur socket to 192.168.168.55:5333 for device 7C:2F:80:AB:FE:1D closed. Trying to reconnect...
2019-03-09 12:20:35 - (Thread 2) - Flur socket to 192.168.168.55:5333 for device 7C:2F:80:AD:C2:B3 closed. Trying to reconnect...



jemand einen Tip für mich? Ports habe ich zunächst 5333 benutzt, aber irgendwo gelesen dass 3333 der korrekte wäre. Denke das ist im Code auch so konfiguriert:

WiFiServer server(3333, 16);  // Port, Maxclients
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: micky0867 am 04 April 2019, 05:00:56

Connection timed out

kannst du das Geràt überhaupt anpingen?

Gesendet von meinem SM-T813 mit Tapatalk

Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: neyzen am 22 April 2020, 09:21:51
Hallo,

hab gerade dieses Angebot entdeckt.
Nutzt jemand diese Tile Mate?

https://www.telekom.de/unterwegs/zubehoer-und-mehr/tile/tile-mateplus-bluetooth-tracker?filtersQuery=kategorie%3Daktionsangebote
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 22 April 2020, 19:16:04
Zitat von: neyzen am 22 April 2020, 09:21:51
Hallo,

hab gerade dieses Angebot entdeckt.
Nutzt jemand diese Tile Mate?

https://www.telekom.de/unterwegs/zubehoer-und-mehr/tile/tile-mateplus-bluetooth-tracker?filtersQuery=kategorie%3Daktionsangebote
Mit einem Tile Pro hatte ich kein Glück.


Von unterwegs gesendet.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: nobody0472 am 15 Mai 2020, 11:27:00
Hi all,

spannendes Projekt, mein Kompliment an alle Contributor.

Ich bin gerade dabei den ESP WROOM Code von Mickey dahingehend zu modifizieren, dass auch BT Classic Devices gefunden werden dafür keine BLEs.
Dazu habe ich den Code von Arduino nach espressif "zurück geholt" den Bluetooth-Stack von Bluekitchen integriert und bekomme nun BT Classic Devices.

Ich mache aber KEIN DIscovery sondern baue kurz eine GAP (HCI) Verbindung auf und schließe sie sofort wieder. Im "Gut-Fall" geht das in 1-2 Sek., falls Device abwesend kommt ein Timeout nach 15 Sek. (somit minimal Scan-Time).

Soweit bin ich. Integration mit Code von Mickey für PRESENCE steht bevor.

Sollte diesbezüglich Interesse bestehen, kann ich das gern in den nächsten 1-2 Wochen veröffentlichen.

Gruß,
Olaf
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: stefanpf am 31 Mai 2020, 22:58:57
Zitat von: neyzen am 22 April 2020, 09:21:51
Hallo,

hab gerade dieses Angebot entdeckt.
Nutzt jemand diese Tile Mate?

https://www.telekom.de/unterwegs/zubehoer-und-mehr/tile/tile-mateplus-bluetooth-tracker?filtersQuery=kategorie%3Daktionsangebote
Hatte mir zwei bestellt... laufen wie verrückt.
Im Auslieferzustand senden die nur alle paar Minuten.
Sobald man sie mit der App aktiviert (irreversibel) senden sie gar nicht meht, solange das Handy in der Nähe ist.
Sobald man die tile App deinstalliert funktionieren sie perfekt mit dem esp32.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: denis.robel am 13 Februar 2021, 17:30:41
Hallo,

ich wollte heute einen zusätzlichen ESP32 einrichten aber das Sketch kompiliert nicht mehr.
Kann es sein, dass irgendwelche Bibliotheken sich geändert haben, so dass der Code nicht mehr passt?
Wenn ja, welche Lib Versionen soll ich verwenden?
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: denis.robel am 13 Februar 2021, 18:52:02
Hat sich erledigt, ich hab mich zu dusselig angestellt...
Jetzt gehts.
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: sky64 am 22 Dezember 2021, 19:53:01
Hallo

Gibts die Software noch irgendwo oder eine entsprechende Alternative?
Der Github-Link funktioniert nicht mehr :(

Gruß Ron
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: PatrickR am 22 Dezember 2021, 20:08:09
Hi!

Zitat von: sky64 am 22 Dezember 2021, 19:53:01
Gibts die Software noch irgendwo oder eine entsprechende Alternative?
Der Github-Link funktioniert nicht mehr :(

Klar. Die gibt's nach wie vor an der offiziellen Stelle:
https://svn.fhem.de/trac/browser/trunk/fhem/contrib/PRESENCE

Immer an die Quelle gehen :)

Patrick
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: SouzA am 22 Dezember 2021, 20:35:46
Zitat von: PatrickR am 22 Dezember 2021, 20:08:09
Hi!

Klar. Die gibt's nach wie vor an der offiziellen Stelle:
https://svn.fhem.de/trac/browser/trunk/fhem/contrib/PRESENCE

Immer an die Quelle gehen :)

Patrick
Oder per fhempy. Funktioniert auch sehr gut und einfach...

https://github.com/dominikkarall/fhempy
(https://github.com/dominikkarall/fhempy)

Bis denn
SouzA
Titel: Antw:Anwesenheitserkennung Bluetooth PebbleBee
Beitrag von: sky64 am 02 Januar 2022, 16:33:36
Zitat von: nobody0472 am 15 Mai 2020, 11:27:00
Hi all,

Ich bin gerade dabei den ESP WROOM Code von Mickey dahingehend zu modifizieren, dass auch BT Classic Devices gefunden werden dafür keine BLEs.
Dazu habe ich den Code von Arduino nach espressif "zurück geholt" den Bluetooth-Stack von Bluekitchen integriert und bekomme nun BT Classic Devices.

Ich mache aber KEIN DIscovery sondern baue kurz eine GAP (HCI) Verbindung auf und schließe sie sofort wieder. Im "Gut-Fall" geht das in 1-2 Sek., falls Device abwesend kommt ein Timeout nach 15 Sek. (somit minimal Scan-Time).

Soweit bin ich. Integration mit Code von Mickey für PRESENCE steht bevor.

Sollte diesbezüglich Interesse bestehen, kann ich das gern in den nächsten 1-2 Wochen veröffentlichen.

Gruß,
Olaf

Gibt es hierzu Neuigkeiten?  Mit BLE habe ich zum laufen gebracht, aber BL mit dem ESP32 hätte ich auch gern.