There are numerous posts regarding this topic, but none of them are specific to my question.
I need to talk to 36 inverters. I'm using node-red-contrib-modbus 5.25.0, serial RTU.
In order to perform a good flow and queue messages, I'm using Modbus-Flex-Getter node.
Besides, after checking that the inverter is off-line, is there a way to change the pooling rate dynamic?
For exempla: I check speed every 500ms. But since I get the first off-line message from the inverter, I can way 5s to test it again.
Initially i create a global Context mbConfig variable that holds the modbus configuration of how the reply of each modbus request will be translated by the buffer parser node.
In sequences function i create the array configuration for each modbus request (used by Modbus-Flex-Sequencer )
Handle errors with the error function which basically fills context with null values for any offline devices
setGlobal function updates mbValues global Context with valid values
I dont think there is an easy way of doing this as the delay settings are in the Modbus client config node
and cannot be independently set for each request.