使用 BleakScanner 或 bleak.discover 发现附近的蓝牙设备时,只会发现 Raspberry Pi 的过时主机名。我重置了 Pi 并更新了主机名。蓝牙扫描仪应用程序也会获取更新后的主机名,因此问题似乎出在 macOS 方面。我还删除了 bluetooth.plist 文件并重新启动,但没有成功。不知何故,旧主机名仍然以某种方式缓存,而新主机名无法识别。有没有办法进一步重置Mac的蓝牙?
惨淡0.21.1 macOS 文图拉 13.6
到目前为止没有什么帮助:
在 Mac 上运行的 BleakScanner 脚本
import asyncio
from bleak import BleakScanner
async def discover_devices():
scanner = BleakScanner()
devices = await scanner.discover()
for device in devices:
if device.name:
print(f"Found device: {device.name}")
if __name__ == "__main__":
loop = asyncio.get_event_loop()
loop.run_until_complete(discover_devices())
我遇到了同样的问题并找到了您发布的问题。
我已经寻找解决方案好几天了。
终于找到解决办法了。
简而言之,在macos和BLE外设之间配对设备后,设备名称是正确的。
也请参阅这篇文章。 https://github.com/hbldh/bleak/discussions/1429
希望对你有帮助。
谢谢你。