文档

下行配置与固件版本的对比

设计设备固件是通过一系列参数设置在设备操作中设计灵活性的一种平衡行为。配置参数背后的强大思想是,只需向设备下推几个字节,性能就会发生根本变化。例如,为了符合定义“磁铁应用= 0”的应用程序逻辑,当施加磁铁时通常读取“1”的磁传感器可以重新配置一个参数设置,使其在施加磁铁时读取“0”。

有几个控件和选项可以设计到参数设置中。然而,这通常以设备代码的复杂性为代价,需要承认这种类型的行为修改,诱导额外的ACK流量,以及测试和覆盖率分析的时间和成本。

另一个极端是设计一个没有可配置参数的设备。当需要更改设备的操作方式时,将通过空中发送固件更新(OTA)。LoRa联盟®已经批准了一种机制来提供无线固件更新(FUOTA)1.更新固件的能力是根据需要进行更改的能力:当在设备的现场操作中发现问题时。然而,这是以频繁向设备发送固件传输所需的功率消耗增加为代价的。

与大多数其他建议一样,实现平衡是处理配置参数和固件更新的关键。许多应用程序都是快速迭代开发的,规格和客户输入会迅速改变设备性能的要求。在早期,FUOTA可能是一种更好的方法,因为它允许在应用程序发现过程中快速发展特性。随着应用程序的成熟,对设备操作拥有更灵活的控制(可能让一些设备闲置,而让其他设备更频繁地报告)将导致更面向配置/参数的方法。但是,我们建议从设备中轮询参数作为CRC/MD5值。然后,该值可以代替整个参数发送,以便使用2到4字节的值快速、可靠地验证和验证当前设置。


Baidu
map