I am currently developing a monitoring and control system for the environmental conditions of habitats in enclosed spaces, such as a terrarium or a greenhouse.
Each habitat has a temperature, humidity and atmospheric pressure sensor and an undetermined number of ON / OFF actuators.
How would you show those actuators on a Node-Red Dashboard? When the number of actuators can vary depending on the user, add new actuators or eliminate those already linked to the habitat.
Thank you for your fast answer. I knew those project, but they have a determinate actuator number, as far as I could see.
As a possible solution to having an undetermined number of actuators, two alternatives occur to me. The first option is to include the controls associated with each of the actuators in an ui-list node, or use a uibuilder node on which to render those controls .
The node-red-dashboard is meant for simple visualisations in an easy to build form. So it is limited is some respects - and auto scaling numbers of widgets is one of those. You may need to use something like the node-red-contrib-uibuilder project where you can bring your own framework and have much greater flexibility as to how toadd controls - but you do have to code them yourself.
if you don`t have to show the actuators all once you may consider to group them and select your group (in your case habitat) to set / show the actuators.
The type and number of ui-widgets is fixed per group! But as you see in the light device example not suitable widgets like color for dimmers are disabled if the fixture type does not support it.
Al is based on a couple of reusable subflows. The dropdown / name / add and delete widgets are always the same. No database is needed.
The light fixture flow could look like this. If this could be a solution for you I can share the flow (it is working fine but there may be still some bugs and it the documentations is not done. The first three "lines" handle the group controls dropdown, add and delete. Below are the individual widgets for the group all connected to one subflow storing the data and forwarding it to the hardware flow(s).
Wow this is an old post. If you are interested I have my complete home automation system on github. Still a work in process and even the overall concept is changing. Feel free to grab useful things.