Windows 10 上的 Python 蓝牙

詹尼克

我发现了多个类似的问题,但所有这些问题似乎都已过时或没有有效答案,所以我再次在这里提问。

我想通过蓝牙从运行 Windows 10 的笔记本电脑连接到另一台设备(在我的情况下是 RaspberryPi)。

我知道通过 socket 模块提供本地支持,但是这对我来说是一个错误。搜索完之后,我找到了一个答案,声称 python 蓝牙套接字不适用于 Windows(?)。

所以我继续搜索,发现 PyBluez 作为一个很好的蓝牙库被推荐了很多。再一次,这OSError对我来说是一次又一次,我听说 PyBluez 不支持 Windows 10。

我找到了一个名为的模块,pybluez-win10但基本上没有关于如何使其工作的文档。这里为 Windows 安装预编译版本也不起作用,我想这是因为最新版本是针对 Python 3.5 的,而我使用的是 3.7。

如果您有任何尝试的建议,或者您知道推荐的其他库,请告诉我。谢谢!

英国巴兹

Windows 10 的蓝牙 RFCOMM 支持即将在 Python 3.9 中提供

https://bugs.python.org/issue36590

我在 Windows 10 PC 上安装了 Python 3.9.0a6,并且能够从 Bluedot 应用程序连接到它。https://play.google.com/store/apps/details?id=com.stuffaboutcode.bluedot&hl=en_GB

我在 PC 上的简单测试代码是:

import socket

adapter_addr = 'e4:a4:71:63:e1:69'
port = 3  # Normal port for rfcomm?
buf_size = 1024

s = socket.socket(socket.AF_BLUETOOTH, socket.SOCK_STREAM, socket.BTPROTO_RFCOMM)
s.bind((adapter_addr, port))
s.listen(1)
try:
    print('Listening for connection...')
    client, address = s.accept()
    print(f'Connected to {address}')

    while True:
        data = client.recv(buf_size)
        if data:
            print(data)
except Exception as e:
    print(f'Something went wrong: {e}')
    client.close()
    s.close()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章