在 macOS 下只发现蓝牙设备的旧主机名而不是更新的主机名

问题描述 投票:0回答:1

使用 BleakScanner 或 bleak.discover 发现附近的蓝牙设备时,只会发现 Raspberry Pi 的过时主机名。我重置了 Pi 并更新了主机名。蓝牙扫描仪应用程序也会获取更新后的主机名,因此问题似乎出在 macOS 方面。我还删除了 bluetooth.plist 文件并重新启动,但没有成功。不知何故,旧主机名仍然以某种方式缓存,而新主机名无法识别。有没有办法进一步重置Mac的蓝牙?

惨淡0.21.1 macOS 文图拉 13.6

到目前为止没有什么帮助:

  • 重启 Pi
  • 删除蓝牙.plist
  • 重新启动Mac
  • 更新黯淡
  • 更新Python
  • 重置 Pi 并更新主机名
  • 激活 Pi 上的蓝牙发现

在 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())
python macos bluetooth bluetooth-lowenergy core-bluetooth
1个回答
0
投票

我遇到了同样的问题并找到了您发布的问题。
我已经寻找解决方案好几天了。

终于找到解决办法了。
简而言之,在macos和BLE外设之间配对设备后,设备名称是正确的。

也请参阅这篇文章。 https://github.com/hbldh/bleak/discussions/1429

希望对你有帮助。
谢谢你。

© www.soinside.com 2019 - 2024. All rights reserved.