MQTT message overload on reconnect with Weintek HMI

Hello,
I’m using a Weintek HMI to publish data via MQTT. I’m using this device because it offers more flexibility in its programming.

It has a buffer storage that retains messages in case of an internet disconnection.
The problem I’m facing is that I have no control over the time interval between messages when the device reconnects to the broker. Upon reconnection, it sends 30 MQTT messages in less than a minute, which results in a 1-hour disconnection from the broker.

The issue is that during this 1-hour disconnection, another 30 messages are stored, creating an infinite loop that never returns to normal operation.

Is there any way to force the broker to maintain the connection with the device, or is there another solution to this problem?

Let’s start at our MQTT broker message limits and try to find a solution from there.

You do not have any control over the time interval between messages, but …

  • Do you have any control over the topic the messages are published on? Perhaps you could round-robin some custom topics and record the state from the custom topic in an application workflow.
  • Can you batch the payloads together in a single message?

Hi @Dylan_Schuster
I’m able to create custom topics, which is an interesting solution for me. However, grouping the payloads isn’t really possible, mainly because I use the payloads directly in a workflow.

If there were some solution on Losant’s side, that would be better — at least for now — because any change I make on the device will cause the buffer to be erased. I’d like to explore all possibilities before making the decision to clear the buffer.

Sorry, but we cannot change the MQTT rate limits in our public cloud installation on a per-user basis if that is what you are requesting.

Another option would be to publish from the HMI to a bridge MQTT broker - a device that lives on the same network - and then have the bridge publish those messages up to Losant. The bridge would give you more control over the publish rate.

Got it, Dylan
Thanks for the explanation.
I’ll test the solution you suggested.
Thanks again!