Estou enfrentando dificuldades na execução de projetos com o ESP32 e o CLP utilizando a plataforma WEGnology. Ambos os dispositivos estão apresentando problemas de conexão. Apesar de estarem recebendo dados constantemente, acabam desconectando devido a um erro de Keepalive Timeout.
Gostaria de obter suporte para resolver esse problema. Vale ressaltar que a aplicação está sendo executada dentro de uma organização.
O keepalive timeout é um mecanismo existente no MQTT para a detectar quando “o dispositivo” está offline.
Caso o dispositivo não realize nenhum envio MQTT durante este intervalo, ele deve ao menos enviar um sinal (PINGREQ), informando que está ativo.
Ou seja, a desconexão por keepalive diz respeito ao dispositivo ou à infraestrutura, pois podem ser problemas de rede que impedem este sinal, ou o dispositivo não está configurado para o envio do sinal no tempo necessário.
Este tópico já explica detalhadamente sobre keepalive timeout inclusive com informações de ajustes no ESP32 / ESP8266:
Já para o seu PLC, é preciso que saiba onde ajustar este valor.
Recomendamos ajustar em 60 segundos ou abaixo, pela regra, se ultrapassar 1,5 vezes este tempo (90s) a plataforma irá desconectar o dispositivo.