低功耗蓝牙简单代码,发现错误()

Bluetooth Low energy simple code, error on discover()

我正在尝试 运行 下一个代码 python3 ble.py:

import asyncio
from bleak import discover

async def run():
    devices = await discover()
    for d in devices:
        print(d)

loop = asyncio.get_event_loop()
loop.run_until_complete(run())

查看有多少可用设备,但出现此错误:

Traceback (most recent call last):
  File "ble.py", line 10, in <module>
    loop.run_until_complete(run())
  File "/usr/lib/python3.7/asyncio/base_events.py", line 584, in run_until_complete
    return future.result()
  File "ble.py", line 5, in run
    devices = await discover()
  File "/home/pi/.local/lib/python3.7/site-packages/bleak/backends/bluezdbus/discovery.py", line 173, in discover
    ).asFuture(loop)
txdbus.error.RemoteError: org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 2 matched rules; type="method_call", sender=":1.21" (uid=1000 pid=1170 comm="python3 ble.py ") interface="org.freedesktop.DBus.ObjectManager" member="GetManagedObjects" error name="(unset)" requested_reply="0" destination="org.bluez" (uid=0 pid=442 comm="/usr/lib/bluetooth/bluetoothd ")

我不明白错误的意思,我是不是漏了什么?

对于有同样问题的人,将用户添加到蓝牙组解决了问题。