Bluetooth-Probleme mit dem Raspberry Pi 3

Der “Bluetooth tracker” in Home Assistant ist eine spannende Funktion. Sie erlaubt es, festzustellen, ob Personen an einem bestimmten Ort sind (z.B. zu Hause). Dafür kann z.B. das Mobiltelefon genutzt werden.  Der Raspberry Pi 3 kommt mit einem integrierten Bluetooth chip. Das heisst, um die Tracking-Funktion auf Bluetooth-Basis zu nutzen, ist keine zusätzliche Hardware erforderlich. Ziemlich cool! Allerdings hatte ich ziemlich grosse Problem, diese Funktion zum Laufen zu bringen.Bluetooth war auf dem Raspberry Pi  aktiviert, dennoch hat Home Assistant keine Bluetooth-Geräte gefunden. Wo liegt das Problem?

Fangen wir mal an, auf der Kommandozeile nach Bluetooth-Geräten zu suchen:

[email protected]:~# hcitool scan
Scanning ...

Nichts! Dabei sind diverse Bluetooth-Geräte aktiv. Versuchen wir es als nächstes mit “blutoothctl”:

[email protected]:~# sudo bluetoothctl
[NEW] Controller B8:27:EB:76:70:7C raspberrypi [default]
[bluetooth]# devices
[bluetooth]# scan on
Discovery started
[CHG] Controller B8:27:EB:76:70:7C Discovering: yes
[NEW] Device 04:69:F8:xx:xx:xx 04-69-F8-xx-xx-xx
[NEW] Device 88:C6:26:xx:xx:xx 88-C6-26-xx-xx-xx
[bluetooth]# quit
[DEL] Controller B8:27:EB:76:70:7C raspberrypi [default]

Da sind die ganzen Geräte. Wieso findet hcitool die nicht? Gibt es evtl. Probleme mit einem Serverprozess?

[email protected]:~# systemctl status bluetooth
● bluetooth.service - Bluetooth service
   Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled)
   Active: active (running) since Mon 2016-06-13 15:53:36 UTC; 1h 54min ago
     Docs: man:bluetoothd(8)
 Main PID: 729 (bluetoothd)
   Status: "Running"
   CGroup: /system.slice/bluetooth.service
           └─729 /usr/lib/bluetooth/bluetoothd

Jun 13 15:53:36 raspberrypi systemd[1]: Starting Bluetooth service...
Jun 13 15:53:36 raspberrypi bluetoothd[729]: Bluetooth daemon 5.23
Jun 13 15:53:36 raspberrypi systemd[1]: Started Bluetooth service.
Jun 13 15:53:36 raspberrypi bluetoothd[729]: Starting SDP server
Jun 13 15:53:36 raspberrypi bluetoothd[729]: Bluetooth management interface 1.10 initialized
Jun 13 15:53:36 raspberrypi bluetoothd[729]: Sap driver initialization failed.
Jun 13 15:53:36 raspberrypi bluetoothd[729]: sap-server: Operation not permitted (1)

Das sieht etwas seltsam aus. Der Serverprozess läuft zwar, aber es gibt dort eine seltsame Fehlermeldung. Wenn man nun nach dieser sucht, findet man sehr viel Text dazu auf  raspberypi.org. Um das in den Griff zu bekommen, muss man wohl das SAP-Plugin abschalten.

Dazu bearbeitet man die Datei /etc/systemd/system/bluetooth.target.wants/bluetooth.service und fügt die Option “–noplugin=sap” an der “ExecStart”-Zeile an:

[Unit]
Description=Bluetooth service
Documentation=man:bluetoothd(8)

[Service]
Type=dbus
BusName=org.bluez
ExecStart=/usr/lib/bluetooth/bluetoothd --noplugin=sap
NotifyAccess=main
#WatchdogSec=10
#Restart=on-failure
CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE
LimitNPROC=1

[Install]
WantedBy=bluetooth.target
Alias=dbus-org.bluez.service

Wie sieht es jetzt aus?

[email protected]:~# systemctl status bluetooth
● bluetooth.service - Bluetooth service
   Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled)
   Active: active (running) since Mon 2016-06-13 17:56:35 UTC; 9s ago
     Docs: man:bluetoothd(8)
 Main PID: 19106 (bluetoothd)
   Status: "Running"
   CGroup: /system.slice/bluetooth.service
           └─19106 /usr/lib/bluetooth/bluetoothd --noplugin=sap

Jun 13 17:56:35 raspberrypi bluetoothd[19106]: Bluetooth daemon 5.23
Jun 13 17:56:35 raspberrypi bluetoothd[19106]: Starting SDP server
Jun 13 17:56:35 raspberrypi bluetoothd[19106]: Excluding (cli) sap
Jun 13 17:56:35 raspberrypi bluetoothd[19106]: Bluetooth management interface 1.10 initialized
Jun 13 17:56:35 raspberrypi systemd[1]: Started Bluetooth service.

Die Fehlermeldung ist weg. Allerdings zeigt

hcitool scan

weiterhin keine Bluetooth-Gerät an.

Wird fortgesetzt…

2 thoughts on “Bluetooth-Probleme mit dem Raspberry Pi 3”

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.