I have built numerous residential systems, in a zero-feed grid-connected configuration. While interacting with the residents, I am finding it particularly difficult in talking them into using the VRM or the app on their phones in order to optimise their energy usage. That would boost self-sufficiency greatly.
I thought I would help them by setting up a Victron - Shelly integration through Node-RED, by adjusting the colour of a Shelly RGBW LED bulb that would be placed in the living room or the home office: For example, RED would be SoC<20%, warmWHITE would be between 20% and 70%, GREEN would be between 71% and 95%, and when fully charged (above 95%) I would set the bulb to some vivid BLUE or pulsing mode. That way, when the residents would see the bulb turn GREEN or BLUE, they would fire up numerous power-hungry devices.
All systems are connected to the Victron ecosystem and I have also installed the node RED additions for Victron as well as Shelly through the Venus OS large firmware on the Cerbos.
Here’s my flow so far:
The functions contain direct commands to the RGBW bulb, this example is per the 3rd CASE above:
msg.payload =
{
red : 0,
green : 255,
blue : 0,
white : 0,
temp : 3500,
gain : 100,
effect : 0,
transition : 0,
on : true
}
return msg;
However, I find it difficult to better adjust the behaviour when on CASE #2. While on that state, I would like to additionally adjust the colour of the bulb, according to wether the battery is CHARGING or DISCHARGING. Which is the proper way to add the extra node “inside” the flow? One way this could be done (I think) is by adding a second switch after the main one, that would read the charge current of the battery, however, I don’t know how to pick the correct “msg.payload” for the task. Which is the way to select a specific “msg.payload”, when there are more than one funnelling into a node?
Alternatively, I could structure all these extra cases inside the switch node, but I don’t see a way to include an “AND” logic in there…