在血糖仪BLE装置(Cordova)的特性2A52上进行写入后的意外断开

时间:2018-07-20 10:57:34

标签: cordova bluetooth-lowenergy

我正在尝试使用Cordova读取BLE血糖仪设备的存储数据。为此,在连接到设备后,我注册了有关特性2A18的通知(葡萄糖测量),然后注册了2A52(记录访问控制点);然后我在特性2A52上写一个包含0x0101的字节,以启动设备并使其发送数据。该设备无法开始发送,但已与我的手机断开连接,并返回错误消息“ Peripheral Disconnected”。我试图增加注册和写入功能的延迟,以发送不同的字节(例如,每个字节包含0x01的两个字节),但是发生的是相同的事情。我正在使用ble-central插件,但是我也尝试了蓝牙插件,但没有结果。设备(TaiDoc 4279)是否可能不希望收到这些编号,但是构造函数决定以与标准不同的方式实现此特定设备?这是代码的一部分:

function sequence () {
ble.startNotification(address, "1808", "2A18", startNotificationSuccess, startNotificationFailure);
window.setTimeout(sequence2, 5000);

}

function sequence2 () {
ble.startNotification(address, "1808", "2A52", startNotificationSuccess, startNotificationFailure);
window.setTimeout(sequence3, 5000);

}

function sequence3 () {
var byte = new Uint8Array(1)
byte[0] = 0x0101;
ble.write(address, "1808", "2A52", byte.buffer, writeSuccess, writeFailure);

}

writeSuccess回调不会触发,但是几秒钟后writeFailure会触发。 startNotificationSuccess和startNotificationFailure都不会触发,因为第一个在客户端接收数据时触发,第二个在注册过程中发生错误时触发,因此我可以假设注册成功结束。

0 个答案:

没有答案