Hallo zusammen,
ich habe zur Presence Erfassung NUTs (Bluetooth-Dongle) laufen, dich ich mit lepresenced über lan-bluetooth eingebunden habe. Sieht dann zb so aus:
define pNut PRESENCE lan-bluetooth 01:01:01:01:01:01 127.0.0.1:5333 60
Das funktioniert super.
Ich habe bis dato über local-bluetooth mein Smartphone eingebunden. Das funktioniert seither (seit der Installation von lepresenced) nicht mehr, endet immer im timeout.
define pPhone PRESENCE local-bluetooth 01:01:01:01:01:01 60
Wenn ich local-bluetooth rausschmeiße, und das Phone über lan-bluetooth einbinde, stehts auf absent.
Ist es überhaupt möglich, beides parallel laufen zu lassen ?
Das Phone selber finde ich mit
hcitool scan
aber nicht mit
lescan
Hardware ist ein Raspberry 3. Ich verwende das interne Bluetooth Interface.
Beides gleichzeitig zusammen geht anscheinend nicht, soweit ich das jetzt in anderen Beiträgen gesehen habe.
Was aber geht ist hciconfig scan manuell aufzurufen.
Somit kann ich das in Presence als function{} einbauen.
defmod pPhone function {hciscan("90:06:28:8A:61:18")}
Funktion hciscan in 99_myUtils.pm
sub hciscan($) {
return `/opt/fhem/bin/hciscan $_[0]`;
}
Bash Script unter /opt/fhem/bin/hciscan
MAC="$1"
if [ "$MAC" == "" ]; then echo MAC Adresse als Parameter 1; echo -1; exit;fi
hci="/usr/bin/hcitool"
res="`$hci scan|grep -o "$MAC"`"
if [ "$res" == "" ]; then echo 0; else echo 1;fi
exit
In der Form blockiert das komplett FHEM für die Zeit des Scans. Kann man alles noch besser lösen.
Ist es richtig, das ich local-bluetooth nicht verwenden kann, weil ldpresenced schon das hci Device besetzt ? Manuelle Scans funktionieren zwar, aber torpedieren dann den ldpresenced Dienst? ..
Damit das vernüftig läuft, bräuchte ich einen 2. Bluetoothadapter.
Sehe ich das so alles richtig ?