Problemas conocidos del WB-UPS v.3
ERRMODBUS007: Pérdida de eventos cuando dos dispositivos transmiten simultáneamente en un mismo bus
Dispositivos afectados
WB-UPS v.3 con firmware anterior a 1.3.2.
Descripción
Cuando dos dispositivos de un mismo bus tienen eventos pendientes simultáneamente, uno puede transmitir un paquete de eventos incompleto.
Causa y detalles
En Fast Modbus, el maestro solicita eventos. Todos los dispositivos con eventos pendientes participan en el arbitraje; el ganador responde y los demás esperan a la siguiente solicitud.
Un evento generado espera a ser transmitido. Una vez que el dispositivo coloca su trama en el bus, el evento se marca como enviado. El siguiente acuse de recibo del maestro para ese dispositivo elimina los eventos enviados de su cola. Este es el mecanismo normal de confirmación.
El defecto marcaba los eventos como enviados demasiado pronto, al recibir la solicitud de eventos, antes de terminar el arbitraje. Si el dispositivo ganaba el arbitraje, el funcionamiento era normal. Si perdía, no se transmitía ningún paquete, pero sus eventos ya estaban marcados como enviados. Una confirmación posterior para ese dispositivo también confirmaba esos eventos no enviados y los eliminaba de la cola antes de que llegaran al maestro.
El valor de la interfaz web no se actualiza y no se publica ningún mensaje MQTT, aunque los registros del dispositivo siguen siendo correctos. Se pierde la notificación del cambio.
Por ejemplo, si las entradas de dos módulos de relé del mismo bus se cierran simultáneamente, un módulo puede actualizarse correctamente en la interfaz web mientras el otro pierde algunos eventos y sigue apareciendo en su estado anterior a pesar de haber conmutado físicamente.
Solución provisional
Desactive temporalmente el funcionamiento basado en eventos para los registros afectados estableciendo sporadic en false en la plantilla del dispositivo. Los registros se consultarán entonces con el intervalo configurado.
Resolución
Corregido en el firmware 1.3.2.
ERRMODBUS008: Comportamiento inesperado con tramas de solicitud largas
Dispositivos afectados
WB-UPS v.3 con firmware anterior a 1.4.1.
Descripción
Recibir una trama de más de 265 bytes, la longitud máxima de una trama Fast Modbus, puede bloquear y reiniciar el dispositivo; en algunos casos también pueden perderse los ajustes.
Causa y detalles
El algoritmo de recepción no procesaba las solicitudes no válidas de tamaño excesivo, lo que provocaba un desbordamiento del búfer y la corrupción de la memoria adyacente. El dispositivo se bloquea y el watchdog lo reinicia. Las tramas muy grandes, de más de aproximadamente 500 bytes, también pueden dañar los ajustes y provocar un reinicio con los parámetros de comunicación predeterminados: 9600 8N2, dirección 1.
Solución provisional
- No envíe solicitudes que superen los límites de Modbus RTU o Fast Modbus (265 bytes para Fast Modbus).
- No conecte el dispositivo a un bus que transporte tráfico no Modbus o mensajes de más de 265 bytes.
Resolución
Corregido en el firmware 1.4.1.
ERRMODBUS009: Comportamiento inesperado al leer cerca de la dirección 0xFFFF en modo de lectura continua
Dispositivos afectados
WB-UPS v.3 con firmware anterior a 1.4.1.
Descripción
Con el modo de lectura continua habilitado, un rango de lectura que alcance o cruce la dirección 0xFFFF puede bloquear y reiniciar el dispositivo.
Causa y detalles
El algoritmo de lectura continua no gestionaba el desbordamiento del contador de direcciones de registro de 16 bits. Leer 0xFFFF hacía que el contador volviera al inicio y provocaba un bucle infinito, seguido de un reinicio por watchdog.
Solución provisional
Con el modo de lectura continua activado, no lea un rango que incluya 0xFFFF. Los dispositivos Wiren Board no tienen ningún registro implementado en esa dirección.
Resolución
Corregido en el firmware 1.4.1.
ERRMODBUS010: Validación incorrecta de solicitudes y gestión incorrecta de solicitudes no válidas
Dispositivos afectados
WB-UPS v.3 con firmware anterior a 1.4.1.
Descripción
El dispositivo puede aceptar o gestionar incorrectamente solicitudes sintácticamente no válidas, devolver un código de excepción incorrecto o imponer un límite incorrecto al número de registros.
Causa y detalles
El algoritmo de validación trata incorrectamente estos casos:
1) Las solicitudes para leer cero registros se ejecutan con éxito y devuelven una respuesta sin datos que contiene únicamente cabecera y CRC. Modbus exige la excepción 0x03 (ILLEGAL_DATA_VALUE).
2) Se aplica un único límite de 125 registros a todas las funciones de lectura/escritura; superarlo devuelve 0x02 (ILLEGAL_DATA_ADDRESS). Sin embargo, Modbus especifica límites de 2000 bits para las lecturas de bits, 125 registros para las lecturas de registros de entrada/mantenimiento, 1968 bobinas para las escrituras de múltiples bobinas y 123 registros de mantenimiento para las escrituras de múltiples registros. Superar el límite aplicable debería devolver 0x03 (ILLEGAL_DATA_VALUE).
3) Byte Count no se valida en escrituras múltiples (0x0F y 0x10). Una discrepancia entre Byte Count y el número de registros debería devolver 0x03 (ILLEGAL_DATA_VALUE).
4) Las escrituras de una única bobina no validan el valor y utilizan el bit más significativo del valor de la solicitud. Modbus solo permite 0x0000 y 0xFF00; todos los demás valores deberían devolver 0x03 (ILLEGAL_DATA_VALUE).
5) Las solicitudes con estructura no válida pero CRC válido, como las de longitud excesiva, se procesan normalmente. En cambio, estas solicitudes malformadas deberían ignorarse.
6) Se procesan tramas estructuralmente válidas, pero de tamaño excesivo, de 257–265 bytes. Las tramas Modbus estándar de más de 256 bytes no son válidas y deberían ignorarse.
Solución provisional
Envíe únicamente solicitudes estructuralmente correctas que cumplan la especificación Modbus.
Resolución
Corregido en el firmware 1.4.1.
ERRMODBUS011: Tratamiento incorrecto de solicitudes no válidas de configuración de eventos Fast Modbus
Dispositivos afectados
WB-UPS v.3 con firmware anterior a 1.4.1.
Descripción
Una orden de configuración de eventos (EVENT_CTRL, cmd=0x46, sub_cmd=0x18) con campos de longitud no válidos puede configurar incorrectamente las notificaciones de eventos y generar una respuesta de longitud impredecible.
Causa y detalles
El manejador de configuración de eventos Fast Modbus no validaba los campos de tamaño y longitud interna del bloque de datos. Las longitudes no válidas pueden hacer que procese datos fuera de la trama recibida, lo que provoca:
1) Ajustes incorrectos de notificación de eventos, incluidos cambios espontáneos en las prioridades o máscaras de eventos.
2) Una respuesta de configuración de eventos de longitud impredecible.
Solución provisional
Envíe únicamente comandos Fast Modbus válidos que cumplan su especificación.
Resolución
Corregido en el firmware 1.4.1.
ERRWBUPS30001: Modo de control de tensión de salida incorrecto

Dispositivos afectados
Todos los WB-UPS v.3 anteriores al lote v3.3D/1.
Descripción
Un error en las pruebas de producción dejó habilitado el control manual de la tensión de salida en lugar de restaurar el modo automático predeterminado. Por ello, las unidades afectadas proporcionan 11.5 V independientemente de la tensión en Vin.
Solución provisional
- Establezca el modo adecuado mediante la plantilla del dispositivo en la interfaz web del controlador;
- O bien escriba manualmente 0 en el registro 16 (0x0010, Output-voltage control mode).
Resolución
Corregido en el lote v3.3D/1.
ERRWBUPS30002: El valor de consigna de la tensión de salida queda bloqueado después de una caída y recuperación de la tensión de entrada
Dispositivos afectados
WB-UPS v.3 con firmware anterior a 1.4.1 en modo automático de tensión de salida.
Descripción
En modo automático, si la tensión de entrada cae por debajo de aproximadamente 9.8 V y luego se recupera hasta aproximadamente 12.0–12.4 V, las consignas solicitada y real de tensión de salida (registros 11 y 13) permanecen fijas en los valores anteriores a la caída, en lugar de seguir la entrada.
La consigna bloqueada puede ser demasiado baja o demasiado alta:
- Si está por debajo de la tensión del bus compartido, el módulo no suministra corriente a la carga ni aporta potencia en funcionamiento en paralelo. Este es el síntoma más evidente;
- Si es demasiado alto, la tensión de salida permanece por encima del nivel requerido para la entrada actual.
Este estado persiste indefinidamente.
El fallo solo se produce cuando la tensión de entrada cae por debajo de aproximadamente 9.8 V y después se recupera hasta aproximadamente 12.0–12.4 V. Una alimentación de entrada estable, ya esté presente o ausente, no lo provoca. Es independiente del modo paralelo y de la presencia de una carga.
Causa y detalles
El modo automático calcula la tensión de entrada menos 0.7 V con una histéresis de ±0.2 V. Por debajo de 9.8 V, la referencia de histéresis se restablecía al valor predeterminado de 11.5 V y perdía la sincronización con la consigna aplicada. Si la entrada recuperada permanecía aproximadamente entre 12.0 y 12.4 V, Vin menos 0.7 V quedaba dentro de esa ventana de histéresis, por lo que no se recalculaba y la consigna permanecía bloqueada.
Solución provisional
- Ajuste la tensión de entrada fuera de este intervalo: por encima de aproximadamente 12.4 V o por debajo de aproximadamente 12.0 V, teniendo en cuenta las caídas en cables y conectores. La consigna se recalculará entonces.
- Como alternativa, seleccione el modo manual de tensión de salida y establezca el valor requerido.
Resolución
Corregido en 1.4.1.
Una caída de la tensión de entrada ya no modifica el valor de consigna ni restablece la referencia a su valor predeterminado. El primer recálculo después de la recuperación de la entrada se aplica incondicionalmente y reinicializa la referencia a partir de la tensión de entrada real.