Текст формировал мой ИИ агент после исправления, прошу не судить строго)
После обновления wb-mqtt-homeui до версии 2.208.1 перестали отображаться доступные обновления прошивок для устройств, подключённых через Modbus TCP-шлюзы (например, за wb-mqtt-serial). Backend (wb-mqtt-serial) обновления видит и может применить, но веб-интерфейс показывает “Нет доступных обновлений”.
Причина — баг в JS-файле /var/www/device-manager.47ea3f6e1b541c154c5b.js. В двух местах (функции getDeviceInfo и runUpdate) поле protocol: "modbus-tcp" отправляется на уровне device, а не внутри параметра port. Из-за этого RPC к fw-update/GetFirmwareInfo возвращает request timed out.
Исходная строка (два одинаковых места):
{ ...(device.port ? { protocol: device.port.type } : { protocol: device.protocol }), port: device.port && { ...device.port, protocol: device.port.type } }
Исправление:
{ protocol: device.protocol, port: device.port && { ...device.port, protocol: device.port.type } }
После этого исправления обновления сразу отображаются. При следующем apt upgrade патч затрётся, поэтому хорошо бы починить в релизе.
Okружение: WB7, wb-mqtt-homeui 2.208.1, wb-mqtt-serial 2.248.1-wb100, ядро 6.8.0-wb158.