前言
XZG是一个zigbee网关固件,配合zigbee2mqtt可以将zigbee智能家居设备接入到homeassistant。
固件最新latest为”20240914″,pre-release为”20241001″
zigbee网关(芯片上标注ESP32-WROOM-32E,硬件版本ESP32-D0WD-V3,设备型号GW_Z_LUW02_V4)使用XZG固件,当升级到20241001版本(标注don’t suppoert esp32-S0WD)后访问web出现”file not found”提示(无法正常使用)。
本文解决该问题
方案
github上作者提供两个解决方案可选:
1. 使用flash web,usb连接pc重刷固件
2. 使用post请求携带固件作为参数向/update发送请求
实际操作
方案一:
始终在prepare installing阶段报错停止,提示大致为”可以尝试重置设备”(点击flash web上面的重置设备按钮无反应)或”保持按住boot按钮点击install”。
尝试过按机盒后面的针孔按钮、主板的rste(应该为重启)、boote、rstz、bslz都没有明显效果。
方案二:
作者特意说明,需要上传的固件为”fs.bin”才能上传成功(提示”Upload OK. Try to flash…”)而非”ota”、”full”(提示”Error”)。
实际操作中,不管上传fs.bin还是full.bin都会提示Error,只有上传ota.bin才能出现ok提示。
ps: 有网友实际操作得出:需要多请求几次才能有一次成功,认为是”a race condition with the bootloop”
而且该网友使用的是20240914.ota.bin(post请求)而非作者说的20241001.fs.bin
上传成功后发现:机器会自动重启,即时机器黄灯闪烁(之前为常量),闪烁一段时间后变为常量。
如果在闪烁期间通过wifi连接访问web,可以正常进入xzg管理页面。但常量时访问则提示”file not found”。
在闪烁期间想通过web的tools页面刷固件会提示”等待设备”一直没有任何进展,直至黄灯常量。
所以我需要先刷20240914.ota.bin令机器进入黄灯闪烁期间重连wifi,马上再刷入20240914.full.bin,这才”固定固件”,完成。
参考
ESP32 update wont install on Zigstar UZG-01 · xyzroe/XZG · Discussion #141 · GitHub