I have a Modbus temp controller that I have set up to poll every 1 second and send the data to our MQTT broker. I would like to use this same Modbus node to send data to InfluxDB every 30 seconds. To do this, I set up the following:
It works, but my graph in Grafana does not appear correct. When I set up a dedicated Modbus node to poll every 30 seconds and send to Influx, I saw the temperature cycling up & down about every 2 minutes (left side of graph shown below). With the delay node (which I implemented about 11:37), the temperature is cycling up & down about every 60 minutes (right side of graph shown below). This must be due to the Modbus messages being stacked up and then having them released in some order that I am not aware of?
you have set the node to send one message every 30 secs so that is what it is doing - releasing one message every 30 seconds... meanwhile 29 other messages have arrived... there is a checkbox to let you select if you add hem to the queue (the default) - or drop all extra messages... which maybe what you want... - but if so why poll every second ? (apart form for the graph maybe ?
Ticking the checkbox definitely did the trick. Embarrassed that I missed that.
I am polling every 1 second only for our MQTT subscribers to have the most current info. Sometimes having data which is ~30 to 60 seconds old is not good enough.