FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: t1me2die am 18 September 2018, 22:03:41

Titel: PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: t1me2die am 18 September 2018, 22:03:41
Moin liebes Forum,

ich habe einen iBeacon (Minew D15).
Wollte anhand dieses iBeacon versuchen die Anwesenheit zu ermitteln.

Dazu habe ich diesen wie folgt definiert:

Internals:
   ADDRESS    AC:23:3F:26:4A:83
   CFGFN     
   DEF        local-bluetooth AC:23:3F:26:4A:83 10 60
   INTERVAL_NORMAL 10
   INTERVAL_PRESENT 60
   MODE       local-bluetooth
   NAME       iBeacon_Mathze
   NOTIFYDEV  global
   NR         874
   NTFY_ORDER 50-iBeacon_Mathze
   STATE      absent
   TYPE       PRESENCE
   READINGS:
     2018-09-18 20:48:30   model           local-bluetooth
     2018-09-18 21:59:16   presence        absent
     2018-09-18 21:59:16   state           absent
   helper:
     ABSENT_COUNT 9
     RUNNING_PID:
       abortFn    PRESENCE_ProcessAbortedScan
       arg        iBeacon_Mathze|AC:23:3F:26:4A:83|0|
       bc_pid     883
       finishFn   PRESENCE_ProcessLocalScan
       fn         PRESENCE_DoLocalBluetoothScan
       pid        8263
       telnet     telnetForBlockingFn_1537296112_127.0.0.1_51448
       timeout    60
       abortArg:
Attributes:
   DbLogExclude .*
   absenceThreshold 10
   room       GPS


Leider bleibt dieser durchgehend auf absent.

Also habe ich mich per SSH auf meine VM geschaltet und das Bluetooth Tool mal gestartet.
Hier taucht der iBeacon im Sekundenrhytmus auf.


root@debian-jessie-final:~# sudo hcitool lescan
LE Scan ...
AC:23:3F:26:4A:83 (unknown)
AC:23:3F:26:4A:83 (unknown)
....


Ich hätte nun erwartet, dass das Device auf "present" springen würde, ist leider nicht so.

Was mache ich falsch?
Oder kann das gar nicht funktionieren?

Gruß
Mathze
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: binford6000 am 19 September 2018, 08:09:19
Zitatroot@debian-jessie-final:~# sudo hcitool lescan
LE Scan ...
AC:23:3F:26:4A:83 (unknown)
AC:23:3F:26:4A:83 (unknown)
....

Moin Mathze,
du brauchst lepresenced. Schau mal im Wiki: https://wiki.fhem.de/wiki/PRESENCE

defmod iBeacon_Mathze PRESENCE lan-bluetooth AC:23:3F:26:4A:83 w.x.y.z:5333 15 40

VG Sebastian

Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: t1me2die am 19 September 2018, 09:00:31
Danke Sebastian. Hat funktioniert.

Wunderbar!

Gruß
Mathze
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: t1me2die am 19 September 2018, 09:59:20
Nun habe ich aber das Problem, dass auf einmal alle Bluetooth Geräte auf "timeout" stehen.

Kurz nach einem Neustart funktioniert es augenscheinlich für 30-45Sekunden.

Ich musste für lepresenced noch folgende Sachen installieren:

wget https://svn.fhem.de/trac/export/HEAD/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.83-3.deb
sudo dpkg -i lepresenced-0.83-3.deb
sudo apt-get -f install


Ein
service lepresenced status
sagt auch, dass der Service active (running) ist.

Ein
sudo hcitool lescan
geht ca. 10Sekunden gut, danach erscheint:
Disable scan failed: Input/output error

Nach einem

hciconfig hci0 down
hciconfig hci0 up
service bluetooth restart


Funktioniert ein:

sudo hcitool lescan

wieder.

Nach einem

shutdown restart

Startete FHEM neu und zu Beginn wurden aus den "timeout" kurz ein "present".
Nach ca. 45Sekunden wurde dann aber aus dem "present" wieder ein "timeout"

Und via SSH kam wieder der Fehler von oben

sudo hcitool lescan
Set scan parameters failed: Input/output error


Gruß
Mathze
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: binford6000 am 19 September 2018, 10:40:52
Disable scan failed: Input/output error
Normal, weil lepresenced läuft.
Mit

sudo hciconfig hci0 down
sudo hciconfig hci0 up

und gestopptem lepresenced gehts wieder:

pi@ioserver:~ $ sudo hcitool lescan
Set scan parameters failed: Input/output error
pi@ioserver:~ $ sudo hcitool dev
Devices:
        hci0    B8:27:EB:D1:70:35
pi@ioserver:~ $ sudo hciconfig hci0 down
pi@ioserver:~ $ sudo hciconfig hci0 up
pi@ioserver:~ $ sudo hcitool lescan
LE Scan ...
C4:7C:8D:65:B4:CE (unknown)
C4:7C:8D:65:B4:CE Flower care
C4:7C:8D:65:B4:A1 (unknown)
C4:7C:8D:65:B4:A1 Flower care
^Cpi@ioserver:~ $ ^C
pi@ioserver:~ $

Mein gtag fehlt natürlich weil im Büro  ;)
VG Sebastian

Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: t1me2die am 19 September 2018, 10:49:34
Moin Sebastian,

das habe ich noch nicht ganz verstanden.

Wenn "lepresenced" läuft, dann kann "presenced" nicht laufen, korrekt?
Also beide zeitgleich können nicht laufen.

Da ich zuhause aber mit local-bluetooth meine Handy's abfrage, habe ich dann nun ja ein Problem?
Entweder ich nutze "lepresenced" für meine iBeacons oder ich nutze "presenced" für meine Smartphones.

Habe ich das so richtig verstanden?

Gruß
Mathze
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: binford6000 am 19 September 2018, 10:58:15
ZitatMoin Sebastian,

das habe ich noch nicht ganz verstanden.

Wenn "lepresenced" läuft, dann kann "presenced" nicht laufen, korrekt?
Also beide zeitgleich können nicht laufen.

Da ich zuhause aber mit local-bluetooth meine Handy's abfrage, habe ich dann nun ja ein Problem?
Entweder ich nutze "lepresenced" für meine iBeacons oder ich nutze "presenced" für meine Smartphones.

Habe ich das so richtig verstanden?

Gruß
Mathze

Ich denke ja, da beide auf das gleiche BT-Device zugreifen.
Du könntest einen zweiten BT-Dongle verwenden und lepresenced auf hci1 umstellen.
sub parse_options() {
  my $device                      = "hci1";
  my $daemonize                   = 0;
  my $listen_address              = "0.0.0.0";
  my $listen_port                 = "5333";
  my $log_target                  = "syslog";
  my $log_level                   = "LOG_INFO";
  my $debug                       = 0;
  my $legacy_mode                 = 0;
  my $rssi_threshold              = DEFAULT_RSSI_THRESHOLD;
 

VG Sebastian
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: binford6000 am 19 September 2018, 11:03:01
ZitatDa ich zuhause aber mit local-bluetooth meine Handy's abfrage, habe ich dann nun ja ein Problem?
Ich hab meine iOS-Geräte auch als PRESENCE Geräte am Start, allerdings via
function {checkFritzMACpresent("FritzBox","C4:61:8B:7E:34:94")} 60 60
Eine Kombination aus Fritzbox device und MyUtils Funktion.
VG Sebastian
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: t1me2die am 19 September 2018, 11:41:17
Zitat von: binford6000 am 19 September 2018, 10:58:15
Ich denke ja, da beide auf das gleiche BT-Device zugreifen.
Du könntest einen zweiten BT-Dongle verwenden und lepresenced auf hci1 umstellen.
sub parse_options() {
  my $device                      = "hci1";
  my $daemonize                   = 0;
  my $listen_address              = "0.0.0.0";
  my $listen_port                 = "5333";
  my $log_target                  = "syslog";
  my $log_level                   = "LOG_INFO";
  my $debug                       = 0;
  my $legacy_mode                 = 0;
  my $rssi_threshold              = DEFAULT_RSSI_THRESHOLD;
 

VG Sebastian

Moin Sebastian, nun habe ich es wohl "etwas" verstanden.

per
sudo hcitool dev
Sehe ich den USB Bluetooth Dongle:
hci0 00:1A:7D:DA:71:13

Ich habe zuhause noch einen zweiten Bluetooth USB Dongle, wenn ich diesen anschließe, sollte dort wahrscheinlich noch ein weiteres Device mit "hci1" hinzukommen.

Mir stellt sich noch die Frage, wie ich "hci0" und "hci1" dann erkläre, dass der eine sich um "presenced" und der andere um "lepresenced" kümmern soll?!

Augenscheinlich bewirkt man dies mit:

attr iBeacon_Mathze bluetoothHciDevice hci1


Muss ich bei meinen anderen Bluetooth Geräten, die via "presenced" erfasst werden dann hci0 setzen oder reicht es, wenn ich lediglich die Beacon's mit dem richtigen HCI-Gerät "verknüpfe"?

attr PRESENCE_rr_Mathze bluetoothHciDevice hci0


Deine sub parse_options()  setzt die jeweiligen Attribute, jedoch ist mir nicht klar, wie und wann du diese Routine ausrufst?

Sodass ich in FHEM nachher "local-bluetooth" und "lan-bluetooth" nutzen kann?

Gruß
Mathze
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: mark79 am 19 September 2018, 12:12:28
Zitat von: t1me2die am 19 September 2018, 11:41:17
Mir stellt sich noch die Frage, wie ich "hci0" und "hci1" dann erkläre, dass der eine sich um "presenced" und der andere um "lepresenced" kümmern soll?!

Wenn du das lepresenced als Debian Paket installiert hast, kannst du das in der /etc/default/lepresenced einstellen:
#Bluetooth device to use for scanning.
BLUETOOTH_DEVICE="hci0"


Danach ein systemctl restart lepresenced oder ein reboot und lepresenced sollte dann das andere hci Interface verwenden.
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: binford6000 am 19 September 2018, 12:44:42
ZitatIch habe zuhause noch einen zweiten Bluetooth USB Dongle, wenn ich diesen anschließe, sollte dort wahrscheinlich noch ein weiteres Device mit "hci1" hinzukommen.
Korrekt.
Dann kanst Du einen für lepresenced nutzen und den anderen für local-bluetooth.
ZitatDeine sub parse_options()  setzt die jeweiligen Attribute, jedoch ist mir nicht klar, wie und wann du diese Routine ausrufst?
Sorry, das war ein Auszug aus lepresenced selbst.
Wie mark79 schreibt, bitte in /etc/default/lepresenced ändern und lepresenced neu starten.
VG Sebastian
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: t1me2die am 19 September 2018, 20:19:21
Ich kriege es leider noch immer nicht hin und bin mal wieder am verzweifeln.

Was ich bisher getan habe:
Zweiten USB Bluetooth Stick angeschloßen:


root@debian-jessie-final:~# sudo hcitool dev
Devices:
        hci1    00:1A:7D:DA:71:14
        hci0    00:1A:7D:DA:71:13
root@debian-jessie-final:~#


Unter /etc/default/lepresenced habe ich die Anpassung vorgenommen:

#
# Default settings for /etc/init.d/lepresenced
#

#Bluetooth device to use for scanning.
BLUETOOTH_DEVICE="hci1"

#Address to listen for incoming connections. For local connections use 127.0.0.1.
#LISTEN_ADDRESS="127.0.0.1"

#Port to listen for incoming connections.
#LISTEN_PORT="5333"

#Syslog level. LOG_EMERG disables logging.
#SYSLOG_LEVEL="LOG_WARNING"

#Additional command line options
#MISC_OPTIONS=""


Danach habe ich folgendes gemacht:

root@debian-jessie-final:~# systemctl restart lepresenced
root@debian-jessie-final:~# sudo hciconfig hci0 down
root@debian-jessie-final:~# sudo hciconfig hci1 down
root@debian-jessie-final:~# sudo hciconfig hci1 up
root@debian-jessie-final:~# sudo hciconfig hci0 up


Nun habe ich geschaut, ob die beiden Dienste laufen:

root@debian-jessie-final:~# service lepresenced status
● lepresenced.service - lepresenced
   Loaded: loaded (/lib/systemd/system/lepresenced.service; enabled; vendor pres
   Active: active (running) since Wed 2018-09-19 20:13:58 CEST; 1min 36s ago
  Process: 18224 ExecStartPre=/bin/sleep 10 (code=exited, status=0/SUCCESS)
Main PID: 18373 (lepresenced)
    Tasks: 5 (limit: 4915)
   CGroup: /system.slice/lepresenced.service
           ├─18373 /usr/bin/perl /usr/sbin/lepresenced --device hci1 --listenadd
           ├─18390 hcitool -i hci1 lescan --duplicates
           └─18392 hcidump -i hci1

Sep 19 20:13:48 debian-jessie-final systemd[1]: Starting lepresenced...
Sep 19 20:13:58 debian-jessie-final systemd[1]: Started lepresenced.
lines 1-13/13 (END)^C
root@debian-jessie-final:~# service presenced status
● presenced.service - presence daemon to check device presence via bluetooth for
   Loaded: loaded (/lib/systemd/system/presenced.service; enabled; vendor preset
   Active: active (running) since Wed 2018-09-19 20:57:28 CEST; 41min left
     Docs: http://commandref.fhem.de/#PRESENCE
           https://wiki.fhem.de/wiki/PRESENCE#.C3.9Cberwachung_durch_verteilte_A
Main PID: 453 (presenced)
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/presenced.service
           └─453 /usr/bin/perl /usr/bin/presenced -v -n -p 5111

Sep 19 20:57:28 debian-jessie-final systemd[1]: Started presence daemon to check
Sep 19 20:57:31 debian-jessie-final presenced[453]: [21B blob data]
Sep 19 20:57:31 debian-jessie-final presenced[453]: [31B blob data]



lepresenced läuft auch auf hci1, wie gewünscht.

Auf meinem iBeacon habe ich folgendes Attribut gesetzt:

attr iBeacon_Mathze bluetoothHciDevice hci1


Ein List vom iBeacon zeigt, dass er nun auch absent ist:

Internals:
   ADDRESS    AC:23:3F:26:4A:83
   CHANGED   
   DEF        lan-bluetooth AC:23:3F:26:4A:83 127.0.0.1:5333 10 60
   DeviceName 127.0.0.1:5333
   FD         27
   INTERVAL_NORMAL 10
   INTERVAL_PRESENT 60
   MODE       lan-bluetooth
   NAME       iBeacon_Mathze
   NOTIFYDEV  global
   NR         780
   NTFY_ORDER 50-iBeacon_Mathze
   PARTIAL   
   STATE      absent
   TYPE       PRESENCE
   READINGS:
     2018-09-19 20:11:19   command_accepted yes
     2018-09-19 20:17:14   daemon          lepresenced V0.83
     2018-09-19 20:05:22   device_name     (unknown)
     2018-09-19 20:17:14   model           lan-lepresenced
     2018-09-19 20:17:14   presence        absent
     2018-09-19 20:17:14   rssi            unreachable
     2018-09-19 20:17:14   state           absent
   helper:
     ABSENT_COUNT 9
     CURRENT_TIMEOUT normal
Attributes:
   DbLogExclude .*
   absenceThreshold 10
   bluetoothHciDevice hci1
   event-on-change-reading presence,state
   room       GPS


Wobei dieser unter lescan auftaucht:

root@debian-jessie-final:~# sudo hcitool lescan
LE Scan ...
AC:23:3F:26:4A:83 (unknown)


Meine Bluetooth Devices stehen weiterhin auf "timeout"...

Gruß
Mathze
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: binford6000 am 19 September 2018, 22:16:13
Hmmm..
Mein gtag hat kein bluetoothHciDevice Attribut...


Historie löschen
Internals:
   ADDRESS    7C:2F:80:XX:XX:XX
   DEF        lan-bluetooth 7C:2F:80:98:AC:0F 10.3.3.236:5333 15 40
   DeviceName 10.3.3.236:5333
   FD         11
   INTERVAL_NORMAL 15
   INTERVAL_PRESENT 40
   MODE       lan-bluetooth
   NAME       Sebastian.gtag2.PRE
   NOTIFYDEV  global
   NR         288
   NTFY_ORDER 50-Sebastian.gtag2.PRE
   PARTIAL   
   STATE      absent
   TYPE       PRESENCE
   READINGS:
     2018-09-18 01:31:19   battery         22
     2018-09-19 11:13:16   command_accepted yes
     2018-09-19 22:14:13   daemon          lepresenced V0.9
     2018-09-19 06:30:51   device_name     Gigaset G-tag
     2018-09-19 22:14:13   model           lan-lepresenced
     2018-09-19 22:14:13   presence        absent
     2018-09-19 22:14:13   rssi            unreachable
     2018-09-19 22:14:13   state           absent
   helper:
     ABSENT_COUNT 3
     CURRENT_TIMEOUT normal
     DISABLED   0
Attributes:
   absenceThreshold 4
   alias      Sebastian's gtag lepresenced
   devStateIcon present:ios-on-blue absent:ios-off /disabled|disconnected/:ios-NACK
   disable    0
   event-on-update-reading presence,state
   group      Anwesenheit
   icon       gtag1
   room       30_Devices
   st_type_presence SebastianstructMain
   userReadings battery
   userattr   st_type_presence st_type_presence_map structexclude


Lösch das mal und installiere die neuste (0.9) Version von lepresenced.
VG Sebastian
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: mark79 am 19 September 2018, 23:51:41
Ich würde auch sagen das hci1 dort nicht hingehört, bei mir sieht es so aus:

defmod BT_Mark_MiBand PRESENCE lan-bluetooth F2:A6:7A:5E:xx:xx 127.0.0.1:5222 5 60


Ich habe allerdings noch Collectored am laufen, daher der andere Port.
Collectored verwendet man, wenn man mehrere Räume überwächen will und in jeden Raum ein lepresenced läuft.
Alternativ geht auch ein ESP32, anstatt ein Raspberry etc. mit dem Stetch von Micky.
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: binford6000 am 20 September 2018, 08:15:22
Moin,
weil vorhin in einem anderen Thread gelesen:
Die Tags sind nicht noch mit irgendeiner App verbunden? Das kann dann auch nicht funktionieren  ;)
VG Sebastian
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: t1me2die am 20 September 2018, 11:27:47
Gut, starten wir den nächsten Versuch.

Zuerst einmal habe ich folgendes gemacht:

wget https://svn.fhem.de/trac/export/HEAD/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.9-1.deb

sudo dpkg -i lepresenced-0.9-1.deb

sudo apt-get -f install


Daraus resultierte:

root@FHEM:~# wget https://svn.fhem.de/trac/export/HEAD/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.9-1.deb
--2018-09-20 11:09:36--  https://svn.fhem.de/trac/export/HEAD/trunk/fhem/contrib/PRESENCE/deb/lepresenced-0.9-1.deb
Auflösen des Hostnamens »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|:443 ... verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet ... 200 Ok
Länge: nicht spezifiziert [application/vnd.debian.binary-package]
Wird in »»lepresenced-0.9-1.deb«« gespeichert.

lepresenced-0.9-1.d     [ <=>                ]   7,18K  --.-KB/s    in 0s

2018-09-20 11:09:36 (14,6 MB/s) - »lepresenced-0.9-1.deb« gespeichert [7348]

root@FHEM:~# sudo dpkg -i lepresenced-0.9-1.deb
dpkg: Warnung: Version 0.83-3 des Paketes lepresenced wird durch ältere Version 0.9-1 ersetzt
(Lese Datenbank ... 95285 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 ...
root@FHEM:~# sudo apt-get -f install
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 1 nicht aktualisiert.
root@FHEM:~#


Soweit so gut.
Nun habe ich folgende Datei angepasst unter: /etc/default/lepresenced

#
# Default settings for /etc/init.d/lepresenced
#

#Bluetooth device to use for scanning.
BLUETOOTH_DEVICE="hci1"

#Address to listen for incoming connections. For local connections use 127.0.0.1.
#LISTEN_ADDRESS="0.0.0.0"

#Port to listen for incoming connections.
#LISTEN_PORT="5333"

#Syslog level. LOG_EMERG disables logging.
#SYSLOG_LEVEL="LOG_WARNING"

#Additional command line options
#MISC_OPTIONS=""


Dies ist auch korrekt auskommentiert?
Muss ich noch etwas auskommentieren oder reicht dies schon aus?

Sollte ich jetzt noch einmal meine Maschine neustarten?

Nach einem Neustart würde ich dann folgendes eintragen:

define iBeacon_Mathze PRESENCE lan-bluetooth AC:23:3F:26:4A:83 127.0.0.1:5333 10 60


Und ihr sagt, dass ich das folgende Attribut nicht setzen soll:

attr iBeacon_Mathze bluetoothHciDevice hci1

Beschreibung:
bluetoothHciDevice
(Only in Mode "local-bluetooth" applicable)
Set a specific bluetooth HCI device to use for scanning. If you have multiple bluetooth modules connected, you can select a specific one to use for scanning (e.g. hci0, hci1, ...).


So schaut dann mein iBeacon aus:

Internals:
   ADDRESS    AC:23:3F:26:4A:83
   CFGFN     
   DEF        lan-bluetooth AC:23:3F:26:4A:83 127.0.0.1:5333 10 60
   DeviceName 127.0.0.1:5333
   FD         11
   INTERVAL_NORMAL 10
   INTERVAL_PRESENT 60
   MODE       lan-bluetooth
   NAME       iBeacon_Mathze
   NOTIFYDEV  global
   NR         31
   NTFY_ORDER 50-iBeacon_Mathze
   PARTIAL   
   STATE      absent
   TYPE       PRESENCE
   READINGS:
     2018-09-20 11:20:57   daemon          lepresenced V0.9
     2018-09-20 11:20:57   model           lan-lepresenced
     2018-09-20 11:20:57   presence        absent
     2018-09-20 11:20:57   rssi            unreachable
     2018-09-20 11:20:57   state           absent
   helper:
     CURRENT_TIMEOUT normal
Attributes:


Wie kann ich prüfen, ob local-bluetooth tatsächlich auf das "HCI0" Device zugreift?
Ich möchte zuerst feststellen, dass meine beiden Bluetooth Stick's jeweils auf:

HCO0 = local-bluetooth (für meine Smartphones) &
HCI1 = lan-bluetooth (iBeacons)

läuft.

Ich nutze die App "BeaconSet+", dort kann ich den iBeacon sehen, aber "verbunden" ist dieser nicht mit der App.
Also ich habe den iBeacon nicht aktiv verbunden.
Alternativ könnte ich die App löschen und danach noch einmal schauen?!

Ein

service presenced status
service lepresenced status

ergibt, dass beide Dienste wohl laufen.
Wobei beim PRESENCED Dienst für mich nicht ersichtlich ist, dass dieser Dienst mit dem HCI0-Gerät läuft?!


root@FHEM:~# service lepresenced status
● lepresenced.service - lepresenced
   Loaded: loaded (/lib/systemd/system/lepresenced.service; enabled; vendor pres
   Active: active (running) since Thu 2018-09-20 11:29:53 CEST; 3min 34s ago
Main PID: 4071 (lepresenced)
   CGroup: /system.slice/lepresenced.service
           └─4071 /usr/bin/perl /usr/sbin/lepresenced --device hci1 --listenaddr

Sep 20 11:33:25 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: hci
Sep 20 11:33:25 FHEM lepresenced[4071]: [tid:2] main::bluetooth_dump_thread: hci
Sep 20 11:33:26 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: Rec
Sep 20 11:33:26 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: hci
Sep 20 11:33:26 FHEM lepresenced[4071]: [tid:2] main::bluetooth_dump_thread: hci
Sep 20 11:33:27 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: Rec
Sep 20 11:33:27 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: hci
Sep 20 11:33:27 FHEM lepresenced[4071]: [tid:2] main::bluetooth_dump_thread: hci
Sep 20 11:33:28 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: Rec
Sep 20 11:33:28 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: hci
lines 1-17/17 (END)
● lepresenced.service - lepresenced
   Loaded: loaded (/lib/systemd/system/lepresenced.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2018-09-20 11:29:53 CEST; 3min 34s ago
Main PID: 4071 (lepresenced)
   CGroup: /system.slice/lepresenced.service
           └─4071 /usr/bin/perl /usr/sbin/lepresenced --device hci1 --listenaddress 0.0.0.0 -

Sep 20 11:33:25 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: hcitool exited,
Sep 20 11:33:25 FHEM lepresenced[4071]: [tid:2] main::bluetooth_dump_thread: hcidump exited,
Sep 20 11:33:26 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: Received unknown
Sep 20 11:33:26 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: hcitool exited,
Sep 20 11:33:26 FHEM lepresenced[4071]: [tid:2] main::bluetooth_dump_thread: hcidump exited,
Sep 20 11:33:27 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: Received unknown
Sep 20 11:33:27 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: hcitool exited,
Sep 20 11:33:27 FHEM lepresenced[4071]: [tid:2] main::bluetooth_dump_thread: hcidump exited,
Sep 20 11:33:28 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: Received unknown
Sep 20 11:33:28 FHEM lepresenced[4071]: [tid:1] main::bluetooth_scan_thread: hcitool exited,


Gruß
Mathze

PS.: Danke für Eure Geduld  :)
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: binford6000 am 20 September 2018, 13:15:43
ZitatDies ist auch korrekt auskommentiert?
Muss ich noch etwas auskommentieren oder reicht dies schon aus?
Sieht bei mir auch so aus.
ZitatNach einem Neustart würde ich dann folgendes eintragen:
define iBeacon_Mathze PRESENCE lan-bluetooth AC:23:3F:26:4A:83 127.0.0.1:5333 10 60
Korrekt
ZitatSollte ich jetzt noch einmal meine Maschine neustarten?
Dienst lepresenced neu starten sollte genügen. Schadet aber auch nix.
ZitatUnd ihr sagt, dass ich das folgende Attribut nicht setzen soll:
Nein nicht setzen, wird ja in /etc/default/lepresenced konfiguriert.
Geht auch nicht da es nur im local-bluetooth Modus zur Verfgung steht ;)
ZitatWie kann ich prüfen, ob local-bluetooth tatsächlich auf das "HCI0" Device zugreift?
Prüfen weiß ich jetzt nicht, aber konfigurieren musst du es in dem du beim local-bluetooth device das Attribut bluetoothHciDevice auf hci0 setzt.
ZitatSo schaut dann mein iBeacon aus:
Sieht alles doch soweit OK aus. Ist das iBeacon denn auch wirklich absent? Von time-out ist ja nichts zu sehen...
VG Sebastian


Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: binford6000 am 20 September 2018, 13:24:41
Hier mal ein Beispiel für ein local-bluetooth Device:
Internals:
   ADDRESS    00:06:08:05:0D:00
   CFGFN     
   DEF        local-bluetooth 00:06:08:05:0D:00 60 60
   INTERVAL_NORMAL 60
   INTERVAL_PRESENT 60
   MODE       local-bluetooth
   NAME       localBTtest
   NOTIFYDEV  global
   NR         27461
   NTFY_ORDER 50-localBTtest
   STATE      absent
   TYPE       PRESENCE
   READINGS:
     2018-09-20 13:10:52   model           local-bluetooth
     2018-09-20 13:17:35   presence        absent
     2018-09-20 13:17:35   state           absent
   helper:
Attributes:
   bluetoothHciDevice hci0


Und zum Vergleich ein gtag als lan-bluetooth mit lepresenced:

Internals:
   ADDRESS    7C:2F:80:xx:xx:xx
   DEF        lan-bluetooth 7C:2F:80:xx:xx:xx 10.3.3.236:5333 15 40
   DeviceName 10.3.3.236:5333
   FD         17
   INTERVAL_NORMAL 15
   INTERVAL_PRESENT 40
   MODE       lan-bluetooth
   NAME       Sebastian.gtag2.PRE
   NOTIFYDEV  global
   NR         288
   NTFY_ORDER 50-Sebastian.gtag2.PRE
   PARTIAL   
   STATE      absent
   TYPE       PRESENCE
   READINGS:
     2018-09-18 01:31:19   battery         22
     2018-09-20 08:51:48   command_accepted yes
     2018-09-20 13:19:33   daemon          lepresenced V0.9
     2018-09-19 22:54:28   device_name     Gigaset G-tag
     2018-09-20 13:19:33   model           lan-lepresenced
     2018-09-20 13:19:33   presence        absent
     2018-09-20 13:19:33   rssi            unreachable
     2018-09-20 13:19:33   state           absent
   helper:
     ABSENT_COUNT 3
     CURRENT_STATE present
     CURRENT_TIMEOUT normal
     DISABLED   0
Attributes:
   absenceThreshold 4
   alias      Sebastian's gtag lepresenced
   devStateIcon present:ios-on-blue absent:ios-off /disabled|disconnected/:ios-NACK
   disable    0
   event-on-update-reading presence,state
   group      Anwesenheit
   icon       gtag1
   room       30_Devices
   st_type_presence SebastianstructMain
   userReadings battery
   userattr   st_type_presence st_type_presence_map structexclude


VG Sebastian
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: t1me2die am 20 September 2018, 13:38:10
Moin Sebastian,

du hast jetzt aber das Attribut:
bluetoothHciDevice hci0
gesetzt?

Bewusst? Unbewusst oder Automatisch?

Und welche IP Adresse muss ich angeben?
Ich hatte bisher immer 127.0.0.1, welches doch die lokale Adresse ist.

Gruß
Mathze
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: binford6000 am 20 September 2018, 13:42:00
ZitatBewusst? Unbewusst oder Automatisch?
Bewusst und manuell am local-bluetooth device.
Laut Doku:
bluetoothHciDevice
(Nur im Modus "local-bluetooth" anwendbar)
Sofern man mehrere Bluetooth-Empfänger verfügbar hat, kann man mit diesem Attribut ein bestimmten Empfänger auswählen,
welcher zur Erkennung verwendet werden soll (bspw. hci0, hci1, ...). Es muss dabei ein vorhandener HCI-Gerätename
angegeben werden wie z.B. hci0.

ZitatUnd welche IP Adresse muss ich angeben?
Ich hatte bisher immer 127.0.0.1, welches doch die lokale Adresse ist.
Die IP wo lepresenced drauf läuft. Wenn es dein FHEM Server ist geht auch 127.0.0.1 oder seine IP Adresse.
Ist bei mir auf einem separaten IOServer und nicht auf dem FHEM Server  ;)
VG Sebastian
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: t1me2die am 20 September 2018, 15:05:31
Okay,

also nochmal zusammengefasst:

Ich habe zwei USB BT Dongles:
HCI0
HCI1

HCI1 stelle ich in der Datei "/etc/default/lepresenced" ein.
Damit wird HCI1 exklusiv für "lepresenced" reserviert.

In FHEM gebe ich meinen Geräten die "local-bluetooth" verwenden das Attribute

attr Device bluetoothHciDevice hci0

mit.

Soweit verstanden.

Beide USB BT Dongle müssen gemountet sein, sobald die beiden Startscripte laufen:


/lib/systemd/system/lepresenced.service
/lib/systemd/system/presenced.service


ist das richtig?

Ich habe bei mir nämlich den speziellen Fall, dass ich nach dem StartUp der VM zuerst die USB-Geräte durch-reichen (mounte) muss.
Hier läuft bei mir ein Shell-Script, welches dies automatisch macht.

Ich muss halt nur dafür sorgen, dass beide Services erst dann starten, wenn beide BT Dongles gemountet sind und danach FHEM gestartet wird.

Gruß
Mathze
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: binford6000 am 20 September 2018, 15:27:44
ZitatIch muss halt nur dafür sorgen, dass beide Services erst dann starten, wenn beide BT Dongles gemountet sind und danach FHEM gestartet wird.
Du könntest FHEM (Module) dafür "missbrauchen":
notify auf global:INITIALIZED und dann entweder per
{system("sudo /etc/init.d/lepresenced restart")}
oder mit dem Modul serviced arbeiten.

VG Sebastian
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: t1me2die am 20 September 2018, 17:56:17
Ich glaube ich muss es aufgeben, ich bekomme es einfach nicht hin.

Zwei USB BT Dongles werden per lsusb erkannt.
PRESENCED läuft.
LEPRESENCED läuft auf hci1


root@FHEM:~# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 001 Device 003: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 001 Device 002: ID 0627:0001 Adomax Technology Co., Ltd
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
root@FHEM:~# service lepresenced status
● lepresenced.service - lepresenced
   Loaded: loaded (/lib/systemd/system/lepresenced.service; enabled; vendor pres
   Active: active (running) since Thu 2018-09-20 17:46:03 CEST; 6min ago
  Process: 1009 ExecStartPre=/bin/sleep 90 (code=exited, status=0/SUCCESS)
Main PID: 1018 (lepresenced)
    Tasks: 5 (limit: 4915)
   CGroup: /system.slice/lepresenced.service
           ├─1018 /usr/bin/perl /usr/sbin/lepresenced --device hci1 --listenaddr
           ├─1028 hcitool -i hci1 lescan --duplicates
           └─1030 hcidump -i hci1

Sep 20 17:44:33 FHEM systemd[1]: Starting lepresenced...
Sep 20 17:46:03 FHEM systemd[1]: Started lepresenced.

root@FHEM:~# service presenced status
● presenced.service - presence daemon to check device presence via bluetooth for
   Loaded: loaded (/lib/systemd/system/presenced.service; enabled; vendor preset
   Active: active (running) since Thu 2018-09-20 17:52:16 CEST; 13s ago
     Docs: http://commandref.fhem.de/#PRESENCE
           https://wiki.fhem.de/wiki/PRESENCE#.C3.9Cberwachung_durch_verteilte_A
  Process: 1663 ExecStartPre=/bin/sleep 80 (code=exited, status=0/SUCCESS)
Main PID: 1904 (presenced)
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/presenced.service
           └─1904 /usr/bin/perl /usr/bin/presenced -v -n -p 5111

Sep 20 17:50:56 FHEM systemd[1]: Starting presence daemon to check device presen
Sep 20 17:52:16 FHEM systemd[1]: Started presence daemon to check device presenc
Sep 20 17:52:16 FHEM presenced[1904]: [22B blob data]
Sep 20 17:52:16 FHEM presenced[1904]: [31B blob data]


Mein iBeacon ist present, augenscheinlich funktioniert "lepresenced".


Internals:
   ADDRESS    AC:23:3F:26:4A:83
   DEF        lan-bluetooth AC:23:3F:26:4A:83 127.0.0.1:5333 10 60
   DeviceName 127.0.0.1:5333
   FD         5
   INTERVAL_NORMAL 10
   INTERVAL_PRESENT 60
   MODE       lan-bluetooth
   NAME       iBeacon_Mathze
   NOTIFYDEV  global
   NR         23
   NTFY_ORDER 50-iBeacon_Mathze
   PARTIAL   
   STATE      present
   TYPE       PRESENCE
   READINGS:
     2018-09-20 17:49:01   command_accepted yes
     2018-09-20 17:51:01   daemon          lepresenced V0.9
     2018-09-20 17:51:01   device_name     (unknown)
     2018-09-20 17:51:01   model           lan-lepresenced
     2018-09-20 17:51:01   presence        present
     2018-09-20 17:51:01   rssi            -58
     2018-09-20 17:51:01   state           present
   helper:
     CURRENT_STATE present
     CURRENT_TIMEOUT present
     PRESENT_COUNT 0
Attributes:
   room       Anwesenheit


Jedoch ist mein local-bluetooth auf timeout:


Internals:
   ADDRESS    B8:53:AC:31:65:0C
   DEF        local-bluetooth B8:53:AC:31:65:0C 10 60
   INTERVAL_NORMAL 10
   INTERVAL_PRESENT 60
   MODE       local-bluetooth
   NAME       PRESENCE_rr_Mathze
   NOTIFYDEV  global
   NR         28
   NTFY_ORDER 50-PRESENCE_rr_Mathze
   STATE      timeout
   TYPE       PRESENCE
   READINGS:
     2018-09-20 17:45:07   device_name     iPhone
     2018-09-20 17:49:00   model           local-bluetooth
     2018-09-20 17:45:07   presence        present
     2018-09-20 17:51:10   state           timeout
   helper:
     ABSENT_COUNT 0
     PRESENT_COUNT 0
     RETRY_COUNT 2
Attributes:
   bluetoothHciDevice hci0
   room       Anwesenheit


Augenscheinlich kann ich die beiden Services (PRESENCED & LEPRESENCED) mit 2 USB BT Dongle nicht parallel laufen lassen oder ich mache etwas verkehrt.
Habe mir fix eine zweite VM mit FHEM aufgesetzt und dort kurzerhand LEPRESENCED installiert.
iBeacon kurz hinzugefügt und läuft.
Evtl. muss ich dann mit FHEM2FHEM arbeiten, sodass ich meine Smartphones mit local-bluetooth und die iBeacons trotzdem zusammenfassen kann.
Außer jemand kann mir evtl. doch zeigen, wie ich beide Services auf einer Maschine mit zwei USB Bluetooth Dongles zum laufen bekomme.

Gruß
Mathze
Titel: Antw:PRESENCE Modul in Verbindung mit Minew D15 iBeacon klappt nicht
Beitrag von: binford6000 am 20 September 2018, 20:40:19
ZitatAugenscheinlich kann ich die beiden Services (PRESENCED & LEPRESENCED) mit 2 USB BT Dongle nicht parallel laufen lassen oder ich mache etwas verkehrt.
Ich hab Testweise mal mein iPhone als local-bluetooth angelegt. OHNE presenced...
Allerdings läuft lepresenced ja bei mir auf einem anderen Raspi. Aber das könntest du noch mal testen.
Also presenced Dienst stoppen und schauen ob dein Handy dann auftaucht.
VG Sebastian