FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: karpate am 02 Oktober 2017, 16:29:15

Titel: Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: karpate am 02 Oktober 2017, 16:29:15
Hallo,
ich stehe in einer Sackgasse. Ich habe 3 G-Tags die ich nicht an meinem Pi3 ans Laufen bekomme. Nach mehreren Howtos vermute ich, das sich inziwschen zuviele Module gegenseitig stören.

pi@raspberrypi:~ $ dpkg -l |awk '/blue/ { print $2 }'
blueman
bluetooth
bluez
bluez-firmware
bluez-hcidump
libbluetooth3:armhf
pi-bluetooth
pulseaudio-module-bluetooth


Welche sind die notwendigen Module um den Betrieb zu gewährleisten?
Wäre schön wenn mir jemand unter die Arme hilft, um Bluetooth am Pi richtig einszustellen um die G-Tags ans Laufen zu bekommen.

Verzweifelte Grüße und Dank
ingo
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: Gasmast3r am 02 Oktober 2017, 19:25:23
Hy das was du derzeit hast ist nur die Schnittstelle zwischen linux und der Bluetooth Hardware.
Im Wiki ist das eigendlich super erklärt.
Installation von (le)presenced
https://wiki.fhem.de/wiki/PRESENCE
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: kroman am 02 Oktober 2017, 19:34:11
Hi,

tu dir selber einen Gefallen und besorg dir einen USB-Dongle.
Ich habe mich mit dem RPi3 internem BT viel geärgert und viel Zeit vertan.
Ich hab viel probiert (auch mit den packages wie du schreibst), aber nichts hat geholfen.
Irgendwo hab ich dann gelesen, dass man lieber die Finger vom internen BT lassen soll.
Dongle angesteckt - funktioniert.

Gruß,
kroman
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: ujaudio am 18 Februar 2018, 10:10:04
Ich habe Bluetooth am Pi3 am Laufen. Meine 3 G-Tags werden erkannt:
~ $ sudo hcitool lescan
LE Scan ...
38:01:95:9C:72:74 (unknown)
7C:2F:80:DD:32:E8 Gigaset keeper
7C:2F:80:DD:32:E8 (unknown)
7C:2F:80:DD:2A:EC Gigaset keeper
7C:2F:80:DD:2A:EC (unknown)
7C:2F:80:DD:2A:C7 Gigaset keeper
7C:2F:80:DD:2A:C7 (unknown)

Diese Definition habe ich in FHEM:
Internals:
   ADDRESS    7C:2F:80:DD:2A:EC
   CFGFN     
   DEF        local-bluetooth 7C:2F:80:DD:2A:EC
   INTERVAL_NORMAL 30
   INTERVAL_PRESENT 30
   MODE       local-bluetooth
   NAME       Giga1
   NOTIFYDEV  global
   NR         47
   NTFY_ORDER 50-Giga1
   STATE      absent
   TYPE       PRESENCE
   READINGS:
     2018-02-18 09:51:42   model           local-bluetooth
     2018-02-18 10:01:13   presence        absent
     2018-02-18 10:01:13   state           absent
   helper:

Der Status ist immer(!) absent, zur gleichen Zeit werden die G-Tags aber vom hcitool angezeigt. Mein Mobiltelefon wird immer korrekt erkannt:
Internals:
   ADDRESS    48:3C:0C:C8:1F:D9
   DEF        local-bluetooth 48:3C:0C:C8:1F:D9
   INTERVAL_NORMAL 30
   INTERVAL_PRESENT 30
   MODE       local-bluetooth
   NAME       JuergenTelefon
   NOTIFYDEV  global
   NR         22
   NTFY_ORDER 50-JuergenTelefon
   STATE      present
   TYPE       PRESENCE
   READINGS:
     2018-02-18 10:05:11   device_name     Bubinova
     2018-02-17 19:47:54   model           local-bluetooth
     2018-02-18 10:05:11   presence        present
     2018-02-18 10:05:11   state           present
   helper:
     CURRENT_STATE present
     RUNNING_PID:
       abortFn    PRESENCE_ProcessAbortedScan
       arg        JuergenTelefon|48:3C:0C:C8:1F:D9|0|
       bc_pid     108
       finishFn   PRESENCE_ProcessLocalScan
       fn         PRESENCE_DoLocalBluetoothScan
       pid        1920
       telnet     telnetForBlockingFn_1518893280_127.0.0.1_58328
       timeout    60
       abortArg:

Ob es wirklich in diesem Fall Sinn macht, einen Bluetooth-Stick an USB zu hängen? Aufgrund des Beitrags https://wiki.fhem.de/wiki/PRESENCE#BT-Tags_aktivieren (https://wiki.fhem.de/wiki/PRESENCE#BT-Tags_aktivieren) gehe ich davon aus, dass man "lepresenced" eigentlich nicht benötigt (siehe Abschnitt "Überwachung durch den FHEM Server direkt").

Über einen Tipp, der mir ggf. weiterhilft, würde ich mich freuen.
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: OdfFhem am 18 Februar 2018, 10:49:39
Hallo,

ich meine gelesen zu haben, dass der Modus "local-bluetooth" bei reinen LE-Devices nicht funktioniert.

Ich setze selbst mehrere Gigaset-Tags mit dem Pi3-Bluetooth-Modul ein und nutze lepresenced.


Für eine alternative Umsetzung hilft Dir vielleicht folgender Link ein wenig weiter: https://forum.fhem.de/index.php?topic=83720.0


Viele Grüße
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: ujaudio am 18 Februar 2018, 11:18:41
Danke, das schaue ich mir gleich mal an. Ich habe inzwischen lepresenced eingebaut - und nun sind alle 3 Gtags "present" obwohl nur 1 in der Nähe ist. Die beiden anderen liegen in Alufolie gewickelt 2 Stockwerke  (Betondecken) höher. Irgendwie klappt's noch nicht so ganz...

Nachtrag 1: auch "sudo hctool lescan" liefert alle 3 Gtags, ist die Reichweite trotz Alufolie so groß??!?

Nachtrag 2: jetzt sind sie alle in FHEM absent - aber mit "sudo hctool lescan" noch gelistet. Irgendwie mysteriös...

Nachtrag 3: Ich habe nun das neueste Paket installiert und bekomme
pi@raspberrypi:~ $ sudo dpkg -i lepresenced-0.9-1.debdpkg: Warnung: Version 0.83-3 des Paketes lepresenced wird durch ältere Version 0.9-1 ersetzt
(Lese Datenbank ... 53937 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von lepresenced-0.9-1.deb ...
Entpacken von lepresenced (0.9-1) über (0.83-3) ...
lepresenced (0.9-1) wird eingerichtet ...
pi@raspberrypi:~ $

Laut https://svn.fhem.de/trac/export/HEAD/trunk/fhem/contrib/PRESENCE/deb/ (https://svn.fhem.de/trac/export/HEAD/trunk/fhem/contrib/PRESENCE/deb/) sollte aber die 0.9 neuer sein, da vom 01.02.2018

Welche Version von presenced muss ich eigentlich installieren, um damit mein Mobiltelefon (kein Bluetooth LE) zu erfassen?
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: OdfFhem am 18 Februar 2018, 11:50:11
Hallo,

wenn lepresenced richtig läuft, liefert "sudo hcitool lescan" bei mir folgende Ausgabe:

Set scan parameters failed: Input/output error


Dies liegt daran, dass lepresenced indirekt auf hcitool basiert.
lepresenced arbeitet zwar vorrangig mit hcidump; dieses Tool liefert aber nur Daten, solange hcitool parallel läuft.

Die "Sendestärke" der Tags ist auch bei mir recht gross.
Komplett in Alufolie "eingesperrt", sind sie aber nicht mehr empfangbar - auch wenn sie direkt neben dem Pi3 liegen.

Viele Grüße
Titel: Antw:Pi3 & Bluetooth für Anwesenheitserkennung mittels G-Tags
Beitrag von: ujaudio am 18 Februar 2018, 11:57:43
Ich bin mir inzwischen einigermaßen sicher, dass bei mir lepresence nicht ordentlich läuft. So gib es z.B. bei mir nicht die im Wiki erwähnte Meldung, es gibt auch kein Verzeichnis /opt/fhem/script - Aktuell weiß ich nicht mehr so recht, was ich als nächstes tun soll, zumal die Anwesenheit meines Mobiltelefons (auch mit Bluetooth), was vorher einwandfrei funktioniert hatte, nun gar nicht mehr tut.
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: OdfFhem am 18 Februar 2018, 12:14:52
Hallo,

ich verwende ausschließlich lepresenced 0.83; presenced habe ich nicht im Einsatz.

Ich vermute fast, dass presenced und lepresenced nicht auf demselben Bluetooth-Gerät laufen können.


"sudo systemctl status lepresenced.service" liefert bei mir folgende Ausgabe

● lepresenced.service - lepresenced
   Loaded: loaded (/lib/systemd/system/lepresenced.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2018-02-18 08:39:11 CET; 3h 29min ago
  Process: 22865 ExecStartPre=/bin/sleep 10 (code=exited, status=0/SUCCESS)
Main PID: 22868 (lepresenced)
   CGroup: /system.slice/lepresenced.service
           ├─22868 /usr/bin/perl /usr/sbin/lepresenced --device hci0 --listenaddress 0.0.0.0 --listenport 5333 --loglevel LOG_WARNING
           ├─22880 hcitool -i hci0 lescan --duplicates
           └─22882 hcidump -i hci0

Feb 18 08:39:01 raspberrypi systemd[1]: Starting lepresenced...
Feb 18 08:39:11 raspberrypi systemd[1]: Started lepresenced.
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: ujaudio am 18 Februar 2018, 12:21:50
Und bei mir
● lepresenced.service - lepresenced
   Loaded: loaded (/lib/systemd/system/lepresenced.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2018-02-18 12:13:59 CET; 18min ago
  Process: 414 ExecStartPre=/bin/sleep 10 (code=exited, status=0/SUCCESS)
Main PID: 647 (lepresenced)
   CGroup: /system.slice/lepresenced.service
           ├─647 /usr/bin/perl /usr/sbin/lepresenced --device hci0 --listenaddress 0.0.0.0 --listenport 5333 --loglevel LOG_WARNING
           ├─659 hcitool -i hci0 lescan --duplicates
           └─661 hcidump -i hci0

Feb 18 12:13:49 raspberrypi systemd[1]: Starting lepresenced...
Feb 18 12:13:59 raspberrypi systemd[1]: Started lepresenced.


sieht doch gar nicht so schlecht aus.

Kann es an der IP-Adresse liegen? Im Wiki steht 127.0.0.1 hier nun 0.0.0.0 - den Port habe ich richtig (5333).
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: OdfFhem am 18 Februar 2018, 12:31:22
0.0.0.0 bedeutet wohl soviel wie "lokal"; ist damit eigentlich identisch zu 127.0.0.1.

Schon mal den Link besucht ?

Viele Grüße

P.S.: bin jetzt erst mal offline ...
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: ujaudio am 18 Februar 2018, 15:11:04
Unglaublich! die 3 Gtags sind 11m vom Raspberry entfernt, in 2 Alufolie dick eingewickelt und dazwischen sind 2 armierte Betondecken und weil diagonal durchs Haus auch noch 2 massive Wände. Und trotzdem liefert das Logfile
2018.02.18 15:03:09 5: PRESENCE (gtag3) - received data: present;device_name=Gigaset keeper;rssi=-83;model=lan-lepresenced;daemon=lepresenced V0.9
2018.02.18 15:03:12 5: PRESENCE (gtag1) - received data: present;device_name=Gigaset keeper;rssi=-85;model=lan-lepresenced;daemon=lepresenced V0.9
2018.02.18 15:03:14 5: PRESENCE (gtag2) - received data: present;device_name=Gigaset keeper;rssi=-84;model=lan-lepresenced;daemon=lepresenced V0.9
2018.02.18 15:05:09 5: PRESENCE (gtag3) - received data: present;device_name=Gigaset keeper;rssi=-93;model=lan-lepresenced;daemon=lepresenced V0.9
2018.02.18 15:05:12 5: PRESENCE (gtag1) - received data: present;device_name=Gigaset keeper;rssi=-92;model=lan-lepresenced;daemon=lepresenced V0.9
2018.02.18 15:05:14 5: PRESENCE (gtag2) - received data: present;device_name=Gigaset keeper;rssi=-92;model=lan-lepresenced;daemon=lepresenced V0.9
.

Ich glaube ich gebe die Idee auf, mittels Bluetooth meine Anwesenheit zu erkennen.
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: CoolTux am 18 Februar 2018, 15:23:35
Naja spätestens an der Bundesgrenze wirst. Bestimmt absent gemeldet  ;D
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: OdfFhem am 18 Februar 2018, 16:02:52
Aufgegeben?
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: ujaudio am 18 Februar 2018, 16:08:22
Auf alle Fälle ergibt das integrierte Bluetooth zusammen mit den Gtags eine leistungsfähige Verbindung. Als Erkennung "bin ich zu Hause oder schon weiter weg" ist es geeignet. Als Erkennung für einen bestimmten Raum  eher nicht, obschon das Wiki mich das hat glauben lassen - warum sonst hat man "collectord" erfunden??!? Aber vielleicht hilft die passende Verpackung in eine passende Metallfolie die Reichweite soweit zu reduzieren, dass es für meine Anwendung passt? Vielleicht kann ich auch den "Raumraspberry" mit Metallfolie zu schirmen - es gibt Raum für Experimente...
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: ujaudio am 18 Februar 2018, 16:09:11
Zitat von: OdfFhem am 18 Februar 2018, 16:02:52
Aufgegeben?

Nein, es funktioniert - mit unglaublicher Reichweite.
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: OdfFhem am 18 Februar 2018, 16:35:51
Im Wiki steht

Zitat
... collectord wiederum ist ein Programm, welches mehrere Pis verbindet und auf allen den aktuellen Status von presenced/lepresenced abfragt ...
... Sofern alle Räume einen Empfangspegel (RSSI) ermitteln können, wird bei mehreren anwesenden Räumen der Raum mit dem besten Empfangspegel selektiert ...

Nach dieser Aussage sollte doch eine Raumerkennung möglich sein - auch bei starken Sendern.
Die Frage ist wahrscheinlich eher, wo man am besten den Raum-Pi positioniert, um eine belastbare Grundlage für eine korrekte Erkennung zu bekommen.

Viele Grüße
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: ujaudio am 18 Februar 2018, 18:12:33
Auf alle Fälle ist momentan folgende Aussage möglich:
Mit den Empfangspegeln habe ich schon spekuliert, erste Tests in meinem Haus zeigen aber, dass das vermutlich nicht für eine zuverlässige Raumerkennung taugt. Dazu sind die Räume zu nah beisammen und auch übereinander. Vermutlich ist es eine Frage der Anzahl der Antennen (=Raspberries) und ggf. einer teilweisen Schirmung in bestimmte Richtungen. Vermutlich arbeiten schon Ingenieure an einem Indoor-Navigationssystem auf so einer Basis??!?
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: ujaudio am 21 Februar 2018, 19:47:35
Zitat von: kroman am 02 Oktober 2017, 19:34:11
Hi,

tu dir selber einen Gefallen und besorg dir einen USB-Dongle.
....
Dongle angesteckt - funktioniert.

Gruß,
kroman

Frage: muss man auf etwas achten oder geht jeder 4.0 Dongle?
Hintergrund der Frage: ich möchte den Batteriestatus wissen und habe das Wiki / Forum so verstanden, dass man 2 Bluetooth haben soll, damit sich die beiden Abfragen nicht in die Quere kommen.
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: kroman am 22 Februar 2018, 18:56:34
Ich habe diesen hier und der läuft seit längerem stabil mit raspbian (stretch) und meinen G-tags.

https://www.amazon.de/gp/product/B00C68IQ3C/

Aber das werden wahrscheinlich auch andere tun.

Mittlerweile hab ich übrigens hier schon des öfteren gelesen, dass das raspi interne BT tadellos funktioniert.
Insofern muss ich meine eigene Aussage in Frage stellen, vielleicht hab nur ich etwas falsch gemacht.
Aber du benutzt eh das internet BT wie ich hier so lese.

Wozu du 2xBT brauchst ist mir allerdings jetzt nicht klar.
In welchem Wiki soll das stehen?
Ich frage den Batteriestatus der G-tags über das gleiche BT ab.
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: ujaudio am 23 Februar 2018, 20:38:53
Zitat von: kroman am 22 Februar 2018, 18:56:34
...
Wozu du 2xBT brauchst ist mir allerdings jetzt nicht klar.
In welchem Wiki soll das stehen?
Ich frage den Batteriestatus der G-tags über das gleiche BT ab.

Ich habe das so interpretiert: sowohl lepresence als auch die Abfrage des Batteriestatus nutzt hcitool als Basis - und das kann sich ins Gehege kommen. Aber wenn das bei dir funktioniert, werde ich es auch probieren. Dennoch danke für den Link, da ich meinen raspbi 2 auch noch aufrüsten muss. Die Reichweite ist zwar enorm, aber die Garage erfasse ich nicht mehr.
Titel: Antw:Pi3 & Bluetooh für Anwesenheitserkennung mittels G-Tags
Beitrag von: ujaudio am 19 Januar 2019, 15:30:22
Nachtrag: ich habe gerade alles(!) nochmals komplett neu aufgesetzt: Raspi 3 mit integriertem BT, stretch-lite, lepresenced-Installation Schritt für Schritt gemäß Wiki --> alles funktioniert, ich bekomme sinnvolle rssi-Werte und auch den Batteriezustand.

Großer Dank an diejenigen, die die Software und die Doku realisieren!!!

Einen lieben Gruß
Jürgen