Skip to content

固件 OTA 地址

固件信息存储在阿里云 OSS(公共读),小程序通过 firmware/{pid}/upgrade_par.json 检查升级,网关通过 firmware/{pid}/ 下载固件二进制文件。

OTA 升级流程

小程序                          OSS                          网关                        子设备
  |                              |                             |                            |
  |--- GET firmware/{pid}/upgrade_par.json --->|               |                            |
  |<-- fw_url, fw_ver, ... -------|             |                            |
  |                              |                             |                            |
  |--- systemPublish(mstype=15) via MQTT ----->|-------------→|                            |
  |                              |              |--- 下载 fw_url (HTTP) ----→|             |
  |                              |              |<-- 固件二进制 --------------|             |
  |                              |              |--- BLE 刷写子设备 -----------------------→|
  |<-- register code=2001 (进度) via MQTT ------|-------------|                            |
  |                              |              |                             |            |
  |                              |              |                             --- 刷写完成 |
  |<-- register code=2001 (status=5 升级成功) ---|-------------|                            |

网关升级(特殊)

网关插座(type=200)的升级方式与子设备不同:

  1. 小程序从 OSS 获取 upgrade_par.json(含 file_idfw_ver,无 fw_url
  2. 小程序调用 POST /hotel/device/set_upgrade(携带 file_id)通知后端创建升级任务
  3. 小程序通过 systemPublish(mstype=9) 通知网关执行升级
  4. 网关重启后调用 ota_check API,后端返回固件下载地址:(upgradeGatewayUrl || baseUrl) + device_ota_file_tb.url
  5. 网关通过 HTTP 下载固件并刷写,完成后上报 ota_report

网关的 upgrade_par.json 中没有 fw_url,而是 file_id(后端通过该 ID 定位固件文件)。

子设备升级

子设备(开关、窗帘等)的升级通过 systemPublish(mstype=15) 下发指令,固件 fw_url 直接由网关从 OSS 下载(HTTP 公共读)。

固件地址表

OSS 基础路径:http://chint-beancomm-content.oss-cn-shanghai.aliyuncs.com

固件元数据:/firmware/{pid}/upgrade_par.json(JSON,公共读)

固件二进制:/firmware/{pid}/{fw_name}(bin 文件,公共读)

网关 / 网关插座

pidtype型号固件版本file_id强制升级说明
200200T7-216001.2.3253旧版网关,<1.0.0 需先通过线下 APP 升级
202200T7-216001.2.4268网关插座(当前在用),<1.2.0 需先通过线下 APP 升级
203200T7-216001.2.4267网关插座(当前在用),<1.0.0 需先通过线下 APP 升级

网关无 fw_url,固件由后端通过 file_id 定位。网关升级时,后端 ota_check 接口返回的下载地址为 (upgradeGatewayUrl \|\| baseUrl) + device_ota_file_tb.url,网关通过 HTTP 下载固件并刷写。

开关类(YiZSW)

开关类设备共用 YiZSW 固件,按按键数量区分 pid。8xx 为新一代(BCB22 芯片),84x 为同代 ADC 版本。

一位开关(type=12, subType=1)

pid型号固件版本固件文件强制升级说明
821T7-701001.1.5BCB22_YiZSW_V115_ADC_OTA_00.bin旧版
841T7-701001.1.9BCB22_YiZSW_V119_ADC_OTA_00.bin当前在用

二位开关(type=12, subType=2)

pid型号固件版本固件文件强制升级说明
822T7-702001.1.4BCB22_YiZSW_V114_OTA_00.bin旧版
842T7-702001.1.9BCB22_YiZSW_V119_ADC_OTA_00.bin当前在用

三位开关(type=12, subType=3)

pid型号固件版本固件文件强制升级说明
823T7-703001.1.8BCB22_YiZSW_V118_ADC_OTA_00.bin旧版
843T7-703001.1.9BCB22_YiZSW_V119_ADC_OTA_00.bin当前在用

四位开关(type=1, subType=4)

pid型号固件版本固件文件强制升级说明
824T7-704001.1.4BCB22_YiZSW_V114_OTA_00.bin旧版
844T7-704001.1.9BCB22_YiZSW_V119_ADC_OTA_00.bin当前在用

开关类设备有 <1.1.0 版本限制:低于 1.1.0 的版本需先通过线下 APP 升级。

窗帘类

一位窗帘开关(type=43, subType=1)

pid型号固件版本固件文件强制升级说明
827T7-721001.1.4BCB22_YiZCT_V114_OTA_00.bin旧版
847T7-721001.1.8BCB22_YiZCT_V118_ADC_OTA_00.bin当前在用

二位窗帘开关(type=43, subType=2)

pid型号固件版本固件文件强制升级说明
828T7-722001.1.4BCB22_YiZCT_V114_OTA_00.bin旧版
848T7-722001.1.8BCB22_YiZCT_V118_ADC_OTA_00.bin当前在用

窗帘电机(type=5, subType=0)

pid型号固件版本固件文件强制升级说明
830T7-Q500202.0.1BCB22_YiCTW_V201_251208.bin当前在用

其他设备

调光调色开关(type=42, subType=1)

pid固件版本固件文件强制升级说明
8261.1.0BCB22_YiZDM_V110_ADC_OTA_00.bin当前在用

筒射灯(type=4, subType=0)

pid固件版本固件文件强制升级说明
8291.1.1BCB22_YiZLT_V111_OTA_00.bin当前在用

四位开关(旧版 BCB02 芯片)

pid固件版本固件文件强制升级说明
70270052.2.9BCB02(TL)_BduSW_V2.2.9_STD_Pri_Proxy_12.bin旧版 BCB02 芯片

旧版固件路径在 /assets/firmware/7027005/V229/ 下,与新版 /firmware/{pid}/ 不同。

upgrade_par.json 字段说明

字段类型说明
fw_urlstring固件二进制下载地址(子设备有,网关无)
fw_namestring固件文件名
fw_verstring固件版本号
fw_notestring更新说明
dev_namestring[]设备名称标识(如 YiZSWYiZCTYiCTW
forceboolean是否强制升级(非必须)
force1boolean是否强制升级(开关/窗帘类使用)
file_idnumber固件文件 ID(仅网关,后端通过此 ID 定位固件)
<{version}string低于该版本的提示信息(如 <1.1.0

固件命名规则

前缀芯片设备类型
BCB22_YiZSWBCB22开关(一位/二位/三位/四位)
BCB22_YiZCTBCB22窗帘开关(一位/二位)
BCB22_YiCTWBCB22窗帘电机
BCB22_YiZDMBCB22调光调色开关
BCB22_YiZLTBCB22筒射灯
BCB02(TL)_BduSWBCB02旧版四位开关

BCB22 为新一代芯片,BCB02 为旧一代芯片。同一设备类型可能有两个 pid 对应新旧两代硬件。

pid 与设备类型映射

pid 到 type/subType 的映射定义在 ztUtil SDK 的 protocol.js 中(pidToType 函数)。

pidtypesubType设备
200200-网关(旧版)
202 / 203200-网关插座(当前在用)
821 / 841121一位开关
822 / 842122二位开关
823 / 843123三位开关
824 / 84414四位开关
825 / 845410调光开关
826 / 846421调光调色开关
827 / 847431一位窗帘开关
828 / 848432二位窗帘开关
82940筒射灯
83050窗帘电机

8xx 与 84x 系列对应同一设备类型的不同硬件批次(84x 为 ADC 版本,当前在用)。