在“线程:Z 堆栈”中讨论的其它部件,
大家好,
我正在尝试将我的 ZStack 1.2项目迁移到 ZStack 3.0.2。
我有最常见和最简单的方案。
-电池供电 SED
-每15秒轮询一次以获取属性更新
它 不支持绑定,不支持 EZ,不支持 TL ...仅支持简单的方案-自动加入现有网络-不再需要。
作为我迁移的基础,我从示例中获取了通用应用程序。
在 ZStack 1.2中,默认情况下,设备引导时,它尝试加入或重新加入网络。 这似乎不会在 ZStack 3.0.2中自动发生。
我在这里的判词中发现, 在 init 方法中可能需要调用 bdb_StartCommissing(0)。
问题 nr.1:这是真的吗? 在初始化过程中,我是否应该调用 bdb_StartCommissing(0)? 它是否会照顾“首次”加入并重新加入?
问题 n.2:我对该0的配置很小,因为我对 bdb_StartCommission()的参数很小。 通常,文档中有许多示例,例如通过了“BDB_TUSING _MODE_NWK_Steering | BDB_TUSING _MODE_Finding_Binding”。 但只要我不打算支持约束,对我来说就没有太多意义了。
问题 n.3:在 genericApp 中提供的默认 BDB 相关代码是否会处理父项丢失(更改父项/重新加入)的情况,或者我是否需要在该处实施任何其他操作?
问题 n.3:在 ZStack 3.0.2中同时使用 zcl_SendReportCmd 是否仍然正常? 我注意到 有 bdb_RepChangedAttrValue。 它是否具有相同的目的? 例如,如果我想将定期报告发送给父级,而不需要任何其他报告配置。
问题 nr.4:当设备更改其网络状态时,我是否必须更改轮询速率? 例如,如果它成为孤儿? 我的轮询率在配置中设置为10秒,我使用轮询来写入自定义属性。 但是,在父母失去或参加投票的情况下,是否有必要使投票更加激烈? 或者是自动完成还是我不应该关心?
非常感谢!