bluetooth.service 正在运行,但 bluetoothctl 显示“org.bluez.Error.NotReady”

tur*_*urf 33 arch-linux broadcom bluetooth bluez raspberry-pi

我的 raspberry pi 3 B 型运行 Arch,有蓝牙问题。首先:

  • 蓝牙以前工作得很好
  • AUR 的 pi-bluetooth 是最新的
  • bluez 和 bluez-utils 是最新的
  • 系统也是最新的(刚刚运行 pacman -Syu)

尽管如此,当我尝试使用蓝牙接口时,它不起作用。

bluetoothctl(作为 root),当我运行“扫描”时,告诉我

Failed to start discovery: org.bluez.Error.NotReady
Run Code Online (Sandbox Code Playgroud)

wminput 找不到蓝牙接口:

No Bluetooth interface found
unable to connect
Run Code Online (Sandbox Code Playgroud)

“systemctl status bluetooth”有以下输出:

? bluetooth.service - Bluetooth service
   Loaded: loaded (/usr/lib/systemd/system/bluetooth.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2019-03-23 21:32:47 CET; 9min ago
     Docs: man:bluetoothd(8)
 Main PID: 2005 (bluetoothd)
   Status: "Running"
    Tasks: 1 (limit: 1404)
   CGroup: /system.slice/bluetooth.service
           ??2005 /usr/lib/bluetooth/bluetoothd

Mar 23 21:32:47 media.lan systemd[1]: Starting Bluetooth service...
Mar 23 21:32:47 media.lan bluetoothd[2005]: Bluetooth daemon 5.50
Mar 23 21:32:47 media.lan systemd[1]: Started Bluetooth service.
Mar 23 21:32:47 media.lan bluetoothd[2005]: Starting SDP server
Mar 23 21:32:47 media.lan bluetoothd[2005]: Bluetooth management interface 1.14 initialized
Run Code Online (Sandbox Code Playgroud)

我在这里不知所措,一切似乎都很好,但没有任何效果。这里发生了什么?

小智 39

我遇到了同样的问题。结果发现@turf 的答案对我不起作用。

我检查后rfkill

$ rfkill list
0: hci0: Bluetooth
        Soft blocked: yes
        Hard blocked: no
1: phy0: Wireless LAN
        Soft blocked: no
        Hard blocked: no
Run Code Online (Sandbox Code Playgroud)

我运行了命令:

rfkill unblock all
Run Code Online (Sandbox Code Playgroud)

蓝牙又开始工作了。


tur*_*urf 38

好吧,哇,原来我所要做的就是跑

bluetoothctl power on
Run Code Online (Sandbox Code Playgroud)


小智 5

就我而言,解决方案是:

bluetoothctl power on
Run Code Online (Sandbox Code Playgroud)

其次是

rfkill unblock all
Run Code Online (Sandbox Code Playgroud)

hci0 被软阻止。