I am using Node-RED to monitor a process, but I am in a point that it is not usable because the dashboard has a very slow response.
Hay checked the flow by debugging (I put debug nodes together with the dashboard nodes) and the flow works properly, with any apreciable delay. But the dashboards has a extremely long delay (about 20 seconds or more) if it doesn't lose connection during some seconds.
What can be the reason of such a long delay and instability of the dashboard?
Node-RED is running in a PC, and all the communications are wired:
- A Serial node for reading a weighting scale, which sends some 10 frames per second (each frame has 14 bytes).
- A serial node for reading another instrument, which sends a frame when requested. I am requesting 4 frames per second.
- A ModbusTCP node for reading 2 registers from an Arduino that is connected point to point with an ethernet cable. I set a poll rate of 2 registers per second, but it would be desirable more registers.
There is not a lot of computation with the gathered data. I Just extract the variables from the ascii frames received from both serial nodes, change units, and some basic arithmetic operations, and insert the desired variables into object properties. The only thing are SQL requests for inserting the output values into a DB through an SQLite node.
As I mentioned before, the debug nodes show that there isn't any appreciable delay, but something is collapsing the dashboard.
The dashboard has the following elements:
- 6 text elements showing numeric values.
- 2 analog gauges
- One switch to activate/deactivate the DB insert requests.
- Two time charts showing the evolution of 3 values (two of them are shown in the same chart)
The switch also shows the long delay, since it doesn`t respond when clicked (it responds quite a long time later, if it does).
Do you have any idea?
Some one commented in other threads that charts slows down the dashboard. Is it so? Should I avoid using the charts?
Would the response time and stability of the dashboard be improved if I reduce the rate that the chart shows the values?
I would maintain the flow-rate because I need to register values with a good time-resolution for post-processing, but the realtime display would be more coarse...
Thanks in advance and best regards,