gpt4 book ai didi

linux - 如何在 Linux 中保持与蓝牙 LE 体重计的连接

转载 作者:太空狗 更新时间:2023-10-29 11:18:19 25 4
gpt4 key购买 nike

我刚买了一台低功耗蓝牙/智能浴室秤(型号 Sanitas SBF 70)。我可以使用以下命令从中读取数据:

gatttool --device=(btaddr) -I
连接

然后当我站在上面时,我会收到多条这样的通知消息:“通知句柄 = 0x002e 值:e7 58 01 05 e9”其中最后两个字节是以 50g 为增量的质量。

我想将其集成到一些使用 TCP 或 UDP 套接字服务的应用程序中,该套接字服务将这些消息广播给任何监听客户端。

但经过一些研究后,我不知道什么是始终保持连接的最佳方式(连接在几分钟后超时)。或者在使用秤时能够重新建立连接(每当有人踩到秤时,我注意到来自“hcitool lescan”的大量事件)。

我不关心使用什么语言/库。如果我可以将其推送到 TCP/UDP 套接字,那么其他应用程序使用该信息将变得微不足道。

最佳答案

答案很简单:你不需要。您的体重秤很可能是电池供电的。因此,蓝牙通信只会在您测量体重后短时间内启用。您的应用程序只需要一遍又一遍地尝试连接到秤(捕获任何“无法连接超时”),直到您踩到它为止。当连接时,在 BLE 再次关闭之前从中获取数据。在伪代码中:

while true:
while not_connected:
try to connect
receive notifications
disconnect

由 python 模块包装的 gatttool pygatt非常适合解决这个挑战。
在我的例子中,秤数据(前面的 30 个重量)在启用 3 种不同特征的指示后传输。

关于linux - 如何在 Linux 中保持与蓝牙 LE 体重计的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32981662/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com