Principle system questions

I have a project with the following parameters

about 20 Arduinos which have a series of switches, sensors, pin pads; Control LEDs (communication via UDP / OSC)

Some Windows / PC applications to send and receive individual messages. (UDP / TCPIP / websocket)

And there are several applications that send voice messages to be displayed and listened to on a dashboard. At the same time, the dashboard should be able to send text messages to individual devices.

the whole thing should be in several groups (currently 4) are taken and it should be for multiple GUI tablets that can access any of the groups at any time. when the user opens a group it should see directly the states in the group.

I would have to be able to develop my own components for specific requirements for the GUI.

all components are connected via Cat, except for the Dashboard Tablets. It will take a lot of communication to turn on or off more than a few lights a day. Is node RED designed for larger loads? Which components do I need to implement the project?

None of that seems all that excessive as long as you don't go mad with comms to/from the Arduino's.

I would say that you probably want an MQTT broker in that mix though to help orchestrate much of the comms. In particular separating out the "concerns" which lets you build much simpler flows by breaking input and output flows separately for example.

If you need a fully custom GUI for users, I would probably skip trying to force dashboard to do what you want and use uibuilder - assuming you have some small skills in web apps. Thankfully, it doesn't take much to build a custom web GUI using uibuilder to do the heavy lifting of websocket comms and serving up any front-end libraries/frameworks you want to use. I've found that the combination of VueJS and bootstrap-vue make it really easy to get even a reasonably complex GUI going with minimal code.

Other than that, everything else is standard Node-RED. There are core nodes for serial comms, UDP, TCP and websockets.

Sounds like a fun project.

Agreed. It is easy to imagine that a long list of tasks is putting a huge burden on a single-board computer. Usually not. In my experience, trouble tends to come from a single task that has to deal with a larger file or more complex calculation than I anticipated. Of course, bad code can always burn up as many cycles as you want :slightly_smiling_face:

thanxs, I did a small test with one arduino and a simple GUI with uibuilder. that's really great.

How can I handle mp3 or recorded wave files. normally I would upload it to a apache or a nodejs based webserver. can I handle this seperated from the RED stuff or is there a way to do this inside RED?


With uibuilder you can do it either way. I've no experience myself on that but one of the advantages of working with web apps is that you can distribute them.

However, I do know that Node-RED can handle them and people do so hopefully someone will chip in - though you might get more responses with a new thread.

If you do end up with an example that you can share, it would be great to see it on the flows site or even the uibuilder WIKI so that others can benefit as well.