【已解决】对接第三方网关数据上报失败

Zigbee 子设备开发


yezhipeng
Posts: 42

Dear All,

环境:EFR32MG21A020_TuyaOS-3.6.1

开发的设备端,可以正常加入第三方网关,也可以接收网关下发的数据,但无法上报数据。这边打印log发现调用tal_zg_send_data接口发送数据时不会进入回调函数?请问这是什么原因?有没有方案解决。
使用bind,config report是可以上报数据,但tal_zg_send_data接口还是无法使用,只能由SDK根据config report设定的参数上报。还有就是report table是需要开发者自己维护?

BRS
Ye.Zhi-Peng

zeso
Posts: 132

Re: 对接第三方网关数据上报失败

您好:
Q1:使用bind,config report是可以上报数据,但tal_zg_send_data接口还是无法使用.
A1:麻烦贴一下tal_zg_send_data使用的代码;

Q2:还有就是report table是需要开发者自己维护?
A2:不需要

我的栈溢不出。

yezhipeng
Posts: 42

Re: 对接第三方网关数据上报失败

Dear All,

Q1:使用bind,config report是可以上报数据,但tal_zg_send_data接口还是无法使用.
A1:麻烦贴一下tal_zg_send_data使用的代码;

这边调用的是贵司app_color_report_ty_temperature_value接口直接发送,通过抓包没有发送出数据,串口有打印如下log
Report temperature qos:1 VALUE 1000


Q2:还有就是report table是需要开发者自己维护?
A2:不需要


这边不调用tkl_zg_reporting_init接口,网关下发config report会返回失败,result是0x81。调用了tkl_zg_reporting_init可以config report成功,但重新上电后report不会上报,需要重新下发config report。

我的栈溢不出

BRS
Ye.Zhi-Peng

zeso
Posts: 132

Re: 对接第三方网关数据上报失败

1.现有开发框架,标准3.0网关不支持调用tal_zg_send_data主动上报数据,只能使用config report方式;
2.必须要调用reporting init接口,否则无法使用config report功能;

我的栈溢不出。

yezhipeng
Posts: 42

Re: 对接第三方网关数据上报失败

1.现有开发框架,标准3.0网关不支持调用tal_zg_send_data主动上报数据,只能使用config report方式;

有方案通过修改第三方网关从而让设备能通过tal_zg_send_data发送?


2.必须要调用reporting init接口,否则无法使用config report功能;
下发的config report,SDK会自动存储flash吗?还是需要开发者自己存储,然后通过tkl_zg_add_reporting_entry接口恢复?
这边重新上电后,report就失效了。

zeso
Posts: 132

Re: 对接第三方网关数据上报失败

1.ZCL global 命令通过config report方式,specific命令不受限制;
2.会自动保存的,测试过 设备重新上电report机制保持。另外,除非特殊情况不建议应用层调用tkl接口。

我的栈溢不出。

yezhipeng
Posts: 42

Re: 对接第三方网关数据上报失败

Dear All,

Code: Select all

    我在tuya_init_second函数调用如下接口:
    tal_zg_reporting_init(g_report_table, 10);
    tal_zg_load_default_reporting_table();
   重新上电report不会被恢复,重新config report才行,并且重新上电下发read report,result返回0x8B。

BRS
Ye.Zhi-Peng

zeso
Posts: 132

Re: 对接第三方网关数据上报失败

不需要调用tal_zg_load_default_reporting_table。

我的栈溢不出。

yezhipeng
Posts: 42

Re: 对接第三方网关数据上报失败

Dear All,

只调用tal_zg_reporting_init(g_report_table, 10)也测试过不行,这边有一个疑问,g_report_table的初始数据哪里来,这边初始化提供的全是0.

BRS

zeso
Posts: 132

Re: 对接第三方网关数据上报失败

可以理解为:tal_zg_reporting_init配置的是默认的本地report表,config report远程配置report表。这两种方式配置的表项sdk内部会自动保存NV,无需应用层干预保存加载操作。

我的栈溢不出。

Post Reply