0

我正在尝试通过 HDP 从我的计算机(Ubuntu 12.04.1 LTS. & bluez 4.98-2ubuntu7)上使用 Nonin Onyx II Model 9560。

当我在计算机上运行我的应用程序时,我看到血氧计找到了我的应用程序,用它创建了一个通道并启动了关联程序。我看到血氧计向关联发送查询,我的应用程序发送响应,确认关联,但血氧计再次重复第一个查询,然后断开连接。

看起来它没有听到我的应用程序或不理解它。

从血氧计接收到的关联查询:

E2 00 00 32 80 00 00 00 00 01 00 2A 50 79 00 26 80 00 00 00 80 00 80 00 00 00 00 00 00 00 00 80 00 00 00 08 00 1C 05 01 00 00 9B 0B 01 91 00 01 01 00 00 00 00 00

我的应用程序的响应:

E3 00 00 2C 00 00 50 79 00 26 80 00 00 00 80 00 80 00 00 00 00 00 00 00 00 80 00 00 00 08 00 1C 05 01 00 00 9B 0B 00 00 00 0 0 0 0 0 00 00 0 0 0 0

我在互联网上找到了几个例子,证实这些消息是正确的。

但还有什么可能是问题的原因呢?

问候, 安德烈

4

2 回答 2

0

您应该发送另一个文本来请求数据。请参阅:管理器向代理查询其 MDS 对象属性。IEEE 标准 11073-10404-2008

于 2013-06-17T17:33:54.547 回答
0

如果血氧计再次发送 E2 消息(AARQ - 关联请求),它没有收到,或者不喜欢 E3 消息(AARE - 关联响应)。

通常,管理器在关联后立即请求 MDS 对象,但在这种情况下不必这样做。这是标准配置,无需设置扫描仪对象,一旦关联建立,血氧计将发送测量事件。

我发现的一件事是您的 E3 消息发回了血氧仪的系统 ID,而它应该发送经理的系统 ID。我怀疑血氧仪实际上会检查经理 ID 是否与自己不同,但无论如何重复代理的 ID 是错误的。

我想我在您的回复中发现了错误:

E3 00 00 2C 00 00 50 79 00 26 80 00 00 00 80 00 80 00 00 00 00 00 00 00 00 80 00 00 00 08 00 1C 05 01 00 00 9B 0B 00 00 00 0 0 0 0 0 00 00 0 0 0 0

粗体部分应为 80 00 00 00(sys-type-manager)。00800000 值是 sys-type-agent,因此血氧计认为您是另一个传感器 :)

https://github.com/signove/hdpy/blob/master/src/hdp/dummy_ieee10404.py中的 assoc_resp_msg是经过充分测试的血氧计 E3 响应示例。

于 2014-02-03T16:08:17.223 回答