WIoTa 协议版本更新历史

同步V3.4正式版本

新功能
AP:
1.新增tcxo校准流程
2.新增GPS工厂测试流程

IoTE:

  1. 基带异常时,新增状态上报
  2. 更新adc校准参数,adc_mida改成无符号short
  3. 速率设置接口uc_wiota_set_data_rate,新增是否设置成功的返回值
  4. 模组id获取接口uc_wiota_get_module_id,新增是否模组id有效的返回值
  5. 新增温度读取回调设置
  6. 新增PA控制回调设置
  7. uart485驱动更新,示例更新
  8. 删除dtu send api/at
  9. puya 4Mb、16Mb flash支持
  10. 修复网关模式demo

优化项
AP:
1.grant连续高速模式优化更新,需配置iote v3.4一起更新使用
2.AP8288适配新同步助手
3.基带更新

IoTE:

  1. grant连续高速模式优化更新,需配置ap v3.4一起更新使用
  2. 量产模式新增单音发送功能
  3. 接口参数检测优化
    4 . 增加paging rx时基带gating,降低功耗
  4. task使用动态方式创建,修复delete task临界问题
  5. 新版芯片数字LDO配置

修复项
AP:无

IoTE:

  1. 修复连接态时的临界问题,连接态最后一帧有发送时切换成接入包
  2. 修复使用默认配置时的paging tx异常
  3. 修复广播接收第一包接收到结尾包的异常处理
  4. 修复强制回到IDLE态的切换异常

同步v3.5正式版本

新功能

AP:

  1. 新增下行射频模式设置,默认启用新模式,即有数据发送才开射频;
    2.增加设置OTA发送最后一个下行子帧空闲的接口(下行最后一个子帧不发数据),光伏项目定制需求,其他不用关心;

终端:

  1. 更新快速连接功能;
  2. 新增用户静态数据demo;
  3. 校准及校准结果上报,uc_wiota_start_scan_dcxo,UC_RECV_DCXO_RESULT,uc_adjust_info_t
  4. 新增快速扫频模式,uc_scan_mode_e
  5. 设置进入paging前的dcdc,uc_wiota_set_vol_in_pg
  6. license check开关,uc_wiota_set_is_check_license,需配合硬件使用
  7. flash类型判断api,uc_wiota_flash_id_is_puya
  8. 扫频结果是否排序api,uc_wiota_set_scan_sorted
  9. 加解密api,uc_wiota_rf_crypto
  10. 数字LDO配置,硬件需0a7g以上才有效,uc_wiota_set_new_ldo
  11. 新增编译选项,-fdata-sections
  12. 更新任意內存配置接口
  13. 网关模式新增paging tx控制消息处理

优化项

AP:

  1. 优化上行rssi获取,该值仅作参考

  2. 打开了系统任务队列,优化当在连接态只剩余一帧时发送下行直接返回失败的问题

  3. 设置开关bl0.5的AT指令名称更改AT+WIOTABLZF

  4. GPS库更新,优化授时精度

  5. 基带更新,优化上行rssi、兼容射频模式设置和下行提前100微妙
    6.agc档位默认改为13
    7.限制连接态终端最大个数为144个,保证在极限配置下,GPS和wiota协议栈都有足够的内存正常运行
    终端:

  6. 静态数据初始化栈空间优化。

修复项

AP:
1.修复windows版本库编译时为添加宏_WANT_USE_LONG_TIME_T,导致time_t类型长度在不同平台上不一样问题,最终导致GPS授时计算错误问题,该问题会导致前面所有的windows版本固件GPS授时无法使用,请按需及时更新;
2.修复打开SPI_COM_SUPPORT宏后RAM_SIZE错误问题,该问题对使用SPI通信的网关影响比较严重,但对使用AT的用户没有影响。
终端:

  1. gpio od mode修复;
  2. pwm驱动修复;
  3. sync paging与at撞上异常修复;
  4. 邻区检测功能,暂未开放;
  5. flash api地址限制更新;
  6. 修复内部数据队列接口。

兼容性说明(软、硬件)

AP:设置bl0.5AT指令名字修改,其他向下兼容。
终端:向下兼容

** 异步终端 V4.3正式版本**
A-v4.3

外部更新:
1. rt-thread更新,libraries更新,如本地无特殊修改,建议直接替换这两个文件夹!
2. application目录结构更新
3. uboot.bin更新,ctrl port和log port配置更新
4. RT_TASK_RESOURCE_TOOL需打开,否则可能结构体不对应
5. 更新flash spi接口,修复cache miss等问题
6. 二次开发如需float浮点运算,需打开宏ARCH_RISCV_FPU_S,并且link中stack大小增加为0x300
7. 更新hw_loop的寄存器保存
8. 编译增加-fdata-sections -fno-toplevel-reorder
9. qc func,快速连接功能更新
10. 去除throught统计功能
11. 修复adc水线设置bug

协议接口更新:
1. 子帧模式下子帧数据上报at,UC_RECV_SUBF_DATA,需设AT+WIOTASUBFREP=1
2. rssi上报优化,更加精准和迅速
3. 双模(普通广播/单播和子帧接收)同时接收,自动识别接收,uc_wiota_set_two_mode_recv
4. 万能内存修改接口,uc_wiota_mem_addr_value
5. 数字LDO配置,uc_wiota_set_new_ldo
6. 自动agc及agc init配置,调试接口

协议内部更新:
1. 修复单播发送超时以及crc mask的bug
2. 工厂测试模式不使用子网mask
3. search list更新
4. 优化静态数据初始化时的堆栈使用
5. 优化读取ramp list的检测

注意:
1. 放到linux环境运行时,可能需要修改Kconfig的文件结尾符号,在主目录使用如下命令转换:
$ find . -name Kconfig -type f -print0 | xargs -0 dos2unix
2. 二次开发使用浮点运算时,需打开宏ARCH_RISCV_FPU_S,并且link中stack大小增加为0x300,
需要移动stack位置到traceram之前,同时对应修改dataram大小(board.h中RAM_SIZE也需要修改)
遗留问题:
1. 超低功耗唤醒扩展ID模式,设置两个唤醒ID,存在误唤醒问题,下一版已修正
2. V4.2版本唤醒V4.3版本,出现LDO配置异常,概率很小

同步终端 V3.5.2正式版本

外部更新:
1. 加解密接口修改(uc_wiota_rf_crypto),新增mode,0为原sm7;1:sim4; 2: sm3
2. 修复adc读取接口中,增加校准。(文件:libraries/HAL_Drivers/drv_adc.c)
3. boot strap中,删除无效的qspi初始化。(文件:libraries/UC8288_HAL_Driver/src/uc_boot_strap.c)
4. 由于固件大小增加,修改uboot升级使用的bin size和ota size(从v3.5升级到v3.5.2,OTA差分包不要勾选uboot!)(文件:applications/wiota_app.c)

协议更新:
1. 修复超低功耗扩展ID情况下的误唤醒问题。
2. 增加sm4、sm3加密功能。

遗留问题:
1. 帧结构1:2的sync_paging的symbol-128-burst0一次进入休眠失败的概率超过10%
2. 超低功耗漏检率最高6%,比之前测的高些,之前低于5%
3. symbol 128 mcs4,symbol 256 mcs6,上行成功率较低。

同步AP V3.6.1正式版本

v3.6.1_ap8088修改如下:
1. 提供单独的简化版AT初版固件,只能配合简化版AT的IOTE使用
2. 更新 at_base_cmd.c 和 at_server.c 文件
3.子帧模式优化修改
4.修复连续发送paging tx导致的误唤醒问题
5.原有跳频功能移除,新增使用跳频表的跳频功能
6.增加基带异常状态上报回调注册
7.修复AP某次启动,终端同步snr异常,无法进行业务,必须重启AP才能恢复的问题
8.修复自定义授时周期无效问题

同步终端 V3.6.1正式版本

S-v3.6.1
由于ota升级包限制,本次更新分成2部分,ota升级需要先升级V3.6,再升级V3.6.1(仅提供linux的两个at版本)

外部更新:
1. 提供单独的简化版AT固件
2. 更新 at_base_cmd.c 和 at_server.c 文件
协议更新:
1. 基带更新,修改agc配置,捕获周期等配置功能
2. 修复一些内部小bug

sync V3.6 (改版本无单独tag)
S-v3.6

外部更新:
1. 优化flash锁操作:
(1) 开机默认全锁flash(uc_wiota_static_data_init函数中),
(2) 增加加锁解锁接口(uc_wiota_lock_flash_all,uc_wiota_unlock_flash_all,uc_wiota_read_flash_sr)
(3) OTA升级操作接口最后会解锁(uc_wiota_ota_jump_program,set_uboot_mode),如自行开发升级,需解锁后才能升级
(4) 擦写flash接口中没有加解锁操作,需要在擦写前后自行调用解锁和加锁接口!(uc_wiota_flash_write,uc_wiota_flash_erase_4K),
可参考ota_flash_write接口流程!
2. adc水线bug修复,adc_watermark_set
3. adc校准优化,区分芯片类型,uc_adc_adj_t结构体增加参数a3,avdd_cap
4. spi flash cache miss问题优化,涉及文件(uc_sectdefs.h,uc_spi_flash.c,uc_spi_flash.h,uc_spi.c)
5. 网关模式代码更新(uc_wiota_gateway_api.c)
6. 数据暂存及开机脉冲功能优化(at_wiota_gpio_report.c)
7. 增加厂商名字配置接口(uc_wiota_set_manufacture_name)
8. 功率配置接口增加返回值,用于判断是否设置成功(uc_wiota_set_cur_power)
9. paging tx发送增加返回值,用于判断是否发送成功(uc_wiota_paging_tx_start)
10. 适配pura 2MB芯片,增加可用flash尾部地址接口(uc_wiota_get_open_flash_end_addr)
11. 删除一些不再使用的接口,例如uc_wiota_send_data_by_fn,uc_wiota_set_ramp_type,uc_wiota_algo_rand,uc_wiota_set_subframe_test等等。

协议更新:
1. 工厂测试流程更新
2. 开机检查user id和device id,如果是默认ID,则使用module id进行更新
3. 新的跳频策略更新
4. 扩展模式的paging tx信号连续发送的间隔控制逻辑更新
5. agc默认值修改为13,并且增加配置接口
6. 写静态数据时的解锁加锁操作更新
7. 不同symbol使用不同的捕获zc阈值

遗留问题:
1. 帧结构1:2的sync_paging的symbol-128-burst0一次进入休眠失败的概率超过10%
2. 超低功耗漏检率最高6%,比之前测的高些,之前低于5%
3. symbol 128 mcs4,symbol 256 mcs6,上行成功率较低。

** 异步终端 V4.4正式版本 **
async v4.4
A-v4.4

外部更新:
1. 优化flash锁操作:
(1) 开机默认全锁flash(uc_wiota_static_data_init函数中),
(2) 增加加锁解锁接口(uc_wiota_lock_flash_all,uc_wiota_unlock_flash_all,uc_wiota_read_flash_sr)
(3) OTA升级操作接口最后会解锁(uc_wiota_ota_jump_program,set_uboot_mode),如自行开发升级,需解锁后才能升级
(4) 擦写flash接口中没有加解锁操作,需要在擦写前后自行调用解锁和加锁接口!(uc_wiota_flash_write,uc_wiota_flash_erase_4K)
2. adc校准优化,区分芯片类型,uc_adc_adj_t结构体增加参数a3,avdd_cap
3. spi flash cache miss问题优化,涉及文件(uc_sectdefs.h,uc_spi_flash.c,uc_spi_flash.h,uc_spi.c)
4. 修复超低功耗唤醒扩展ID模式,设置两个唤醒ID时存在的误唤醒问题
5. 修复扫频at接口中的字符转换问题
6. 提供简化版AT固件(编译时打开宏_SIMPLIFIED_AT_):\bin\uc8288_wiota_async_v4.4_dev_linux_at_simplified.bin

协议接口更新:
1. 增加pa lna控制回调注册(UC_CALLBACK_RF_CONTROL)
2. 适配pura 2MB芯片,增加可用flash尾部地址接口(uc_wiota_get_open_flash_end_addr)
3. 多向帧模式(uc_wiota_set_muti_way_mode),暂试用

协议内部更新:
1. 工厂测试增加paging测试,增加子帧数配置,增加扫频测试
2. 默认关闭trace功能
3. 开机检查user id和device id,如果是默认ID,则使用module id进行更新
4. 扩展模式的paging tx信号连续发送的间隔控制逻辑更新
5. 优化rssi计算
6. agc默认值修改为13,并且增加配置接口
7. 初始化时默认不保存静态数据

遗留问题:
1. 个别不常用配置通信成功率较低(例如:200K-no-gap-crc/非crc-no-ack模式下,1024-mcs0-7接收成功率为65%-88%) //正常单播、广播不影响,仅影响单播不回复ack模式,需要单独开启。

UCM200系列模组固件升级注意事项_Flash默认锁

影响范围:

硬件:UCM200系列模组

软件:同步 V3.6.1 以下(如 V3.5.1)、异步 V4.4 以下的旧版本固件/工程。

注意事项: 经原厂量产测试或客户自行升级固件同步 V3.6.1、异步 V4.4 及以上的模组,默认已锁 Flash。如果客户继续使用旧版本工程(如V3.5.1)进行生产或调试,无法适配已锁 Flash 的模组,导致擦写 Flash 失败,影响模组正常工作。

QA:

Q1.已烧录 同步 V3.6.1 异步 V4.4 及以上的固件版本,怎么回退。

A:异步V4.4支持 Flash解锁指令(参考AT文档),先解锁,再烧录旧版本固件。同步则需要先烧录异步V4.4,解锁后再烧录旧版本固件。

Q2.模组默认已锁 Flash后续怎么使用。

A:。若涉及对Flash存储器的擦除与编程操作,必须严格遵循“先解锁、后加锁”的交互流程。外部MCU在对模组执行Flash擦写指令时,同样需要新增对应的解锁与加锁逻辑,以确保操作的成功执行与存储安全。示例及说明参考API文档。

Q1.模组默认已锁 Flash是否影响OTA升级。

A:OTA升级前模组自动解锁,再进入UBOOT模式,不影响升级过程。

为避免同类消息重复地址发布,后续更新历史见固件工程目录。

终端侧代码GitHub - ucchip/wiota_dev_customer · GitHub
基站侧代码GitHub - ucchip/wiota_ap_customer · GitHub
异步节点代码GitHub - ucchip/wiota_async_customer: WIoTa async code · GitHub

备用地址:
终端侧代码wiota_dev_customer: WIoTa IoTE
基站侧代码https://gitee.com/wiota/wiota_ap_customer
异步节点代码wiota_async_customer: WIoTa async code

以Gitee-异步为例: