Page 2 of 2

Re: 【求助】【tuyaOS】蓝牙批量上报问题

Posted: 2023年 Nov 16日 14:48
by sandia

你看看我之前说的,我已经把500改成5了,但是还是上报不成功的


Re: 【求助】【tuyaOS】蓝牙批量上报问题

Posted: 2023年 Nov 16日 14:51
by sandia

原来的一个data的长度是600,我新建了另一个结构体的data[5],用于批量上报,但是还是上报不成功,你看看是哪里出了问题?

结构体.png

Re: 【求助】【tuyaOS】蓝牙批量上报问题

Posted: 2023年 Nov 16日 15:01
by sandia

还是说我批量上报的结构体数组各DP之间需要什么分隔符?


Re: 【求助】【tuyaOS】蓝牙批量上报问题

Posted: 2023年 Nov 16日 15:09
by 逻辑的院子

我上面提到的总长度指的是:实际有效数据的总长度,而不是数组的总长度,数组的总长度只要比实际有效数据长就行。

举个例子吧,例如我要传输以下两个DP:

dp_id = 1
dp_type = 2(DT_VALUE)
dp_data_len = 4(DT_VALUE_LEN)
dp_data_value = 100
dp_id = 2
dp_type = 2(DT_VALUE)
dp_data_len = 4(DT_VALUE_LEN)
dp_data_value = 101

那么我只需要定义一个数组buffer(因为两个DP的总长度刚好16字节,所以buffer的长度不小于16字节即可),然后将以上数据填充到buffer中,数据格式为:
01 02 00 04 00 00 00 64 02 02 00 04 00 00 00 65

然后调用:

Code: Select all

tuya_ble_dp_data_send(g_sn++, DP_SEND_TYPE_ACTIVE, DP_SEND_FOR_CLOUD_PANEL, DP_SEND_WITHOUT_RESPONSE, buffer, 16);

即可


Re: 【已解决】【tuyaOS】蓝牙批量上报问题

Posted: 2023年 Nov 16日 16:08
by sandia

解决了,感谢支持