Bug with node-red-contrib-cron-plus?

Hey all,

I am using Cron-Plus on Node-Red within Home Assistant and I’m running into an issue which I believe might be a bug. First up, versions:

Raspberry Pi: 4b/8GB
Home Assistant OS: 7.6
Home Assistant Core: 2022.4.5
Node-RED (Home Assistant ‘Add-On’): 11.1.2 (shows in Home Assistant) / 2.2.2 (shows within Node-RED)
node-red-contrib-cron-plus: 1.5.6

tl;dr - Cron-Plus only triggers the ‘Call Service’ nodes on their respective solar event outputs once through one cycle of all solar events configured, and will never trigger them again until I “refresh” by forcing a ‘Deploy’.

NOTE: Some of the data in here was captured on a different day while writing up this post.

Quick explanation of what I am doing/attempting to do, I use a Cron-Plus node with each of the solar events (even ones I don’t use) configured individually as separate static schedules as seen below (my screen resolution is low so only two are visible but you get the idea). I have them all fanned out into separate outputs where I connect various Home Assistant ‘Call Service’ nodes to execute things at certain times.

The trouble I am having is that it seems that Cron-Plus will hit the ‘Call Service’ nodes on each of the outputs as expected when going through the various solar events but once and only once. After going through all of the solar events once, the ‘Call Service’ nodes are never triggered again the next day when expected.

Here is an example of when all of the solar events have already been triggered once and today, were not triggered again. I highlighted the wire for a particular solar event (Sunset Start) where you can see it has already passed but the ‘Call Service’ node still shows yesterday’s date and time and wasn’t triggered. Prior to this the Cron-Plus node had the correct next date and time shown underneath as expected for the Sunset Start event.

If I do anything so that I can push the ‘Deploy’ button for Node-RED, even making zero changes by moving a node’s position, then moving it back and pressing ‘Deploy’, Cron-Plus will work again once through all solar events, triggering the ‘Call Service’ nodes as expected and then stop working again as before.

Here is everything fresh after pushing ‘Deploy’ having not yet reached their respective solar event time, note that ‘Call Service’ nodes weirdly don’t normally say “No Connection” for their status if the corresponding ‘Inject’ node on the input to the Cron-Plus node is not there, instead after a Deploy the status of the ‘Call Service’ nodes without the inject nodes just keeps the date and time of when they were last triggered:

As you can see I have a web of stuff around the Cron-Plus node to try and test/gather some debug information. I have a separate inject node on the input configured so that I can manually trigger each individual solar event schedule output, these also do not work and do not trigger the relevant ‘Call Service’ as expected after I would consider Cron-Plus to be “dead” however, oddly again the message debug I put in place on the output of Cron-Plus does see something:

{"triggerTimestamp":1652515824884,"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"eveningGoldenHourStart in 16 hours 34 minutes 30 seconds","nextDate":"2022-05-15T00:44:55.586Z","nextDateTZ":"May 14, 2022, 19:44:55 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:10:24.889Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'eveningGoldenHourStart'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"eveningGoldenHourStart","time":"2022-05-15T00:44:55.586Z","timeOffset":"2022-05-15T00:44:55.586Z"}],"solarEvent":"nightEnd"},"config":{"topic":"Evening Golden Hour Starts","name":"Evening Golden Hour Starts","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"eveningGoldenHourStart","location":"32.769474 -96.855274","offset":"0"}}

You’ll also notice that I have a debug wired to every single solar event static schedule output. What’s weird is that the debug node sees the message output from the Cron-Plus node at the time expected for that solar event, even after I would consider ‘Cron-Plus’ to be dead however, the respective ‘Call Service’ node on the output is never triggered, here are two of those solar event outputs from the debug node when I would consider Cron-Plus to be dead and I still see the output from Cron-Plus, but the corresponding ‘Call Service’ node doesn’t trigger:

{"triggerTimestamp":1652404546097,"status":{"type":"static","modified":false,"isRunning":true,"count":2,"limit":0,"nextDescription":"sunsetStart in 1 day 38 seconds","nextDate":"2022-05-14T01:16:24.706Z","nextDateTZ":"May 13, 2022, 20:16:24 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-13T01:15:46.109Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'sunsetStart'","solarState":{"state":"Day","direction":"fall","day":true,"night":false,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":true,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":true},"solarTimes":[{"event":"sunsetStart","time":"2022-05-14T01:16:24.706Z","timeOffset":"2022-05-14T01:16:24.706Z"}],"solarEvent":"sunsetStart"},"config":{"topic":"Sunset Start","name":"Sunset Start","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"sunsetStart","location":"32.769474 -96.855274","offset":"0"}}
{"triggerTimestamp":1652404704155,"status":{"type":"static","modified":false,"isRunning":true,"count":2,"limit":0,"nextDescription":"sunset in 1 day 38 seconds","nextDate":"2022-05-14T01:19:03.081Z","nextDateTZ":"May 13, 2022, 20:19:03 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-13T01:18:24.165Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'sunset'","solarState":{"state":"Civil Twilight","direction":"fall","day":false,"night":false,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":true,"goldenHour":true,"twilight":true,"morningTwilight":false,"eveningTwilight":true,"dawn":false,"dusk":true,"morningGoldenHour":false,"eveningGoldenHour":true},"solarTimes":[{"event":"sunset","time":"2022-05-14T01:19:03.081Z","timeOffset":"2022-05-14T01:19:03.081Z"}],"solarEvent":"sunset"},"config":{"topic":"Sunset","name":"Sunset","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"sunset","location":"32.769474 -96.855274","offset":"0"}}

In addition, I have three injects with commands to ‘List Active’, ‘List Inactive’, and ‘Start All’ respectively. Once all solar events have passed, pressing the ‘List Inactive’ injection and checking the command output shows that there are no inactive schedules, pressing ‘List Active’ shows that they are all active, if I press ‘Start All’ as a different attempt to see if I could get it to start working again as expect (V.S. “refreshing” via a ‘Deploy’) doesn’t work. Here are the command outputs from the debug node connected to the command output of Cron-Plus when pressing these after I would consider Cron-Plus to be dead:

List Active -

{"command":{"command":"list-active"},"result":[{"config":{"topic":"Night End - Astronomical Dawn","name":"Night End - Astronomical Dawn","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"nightEnd","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"nightEnd in 1 hour 54 minutes 43 seconds","nextDate":"2022-05-14T09:56:07.434Z","nextDateTZ":"May 14, 2022, 04:56:07 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.750Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'nightEnd'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"nightEnd","time":"2022-05-14T09:56:07.434Z","timeOffset":"2022-05-14T09:56:07.434Z"}]}},{"config":{"topic":"Nautical Dawn","name":"Nautical Dawn","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"nauticalDawn","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"nauticalDawn in 2 hours 29 minutes 24 seconds","nextDate":"2022-05-14T10:30:48.438Z","nextDateTZ":"May 14, 2022, 05:30:48 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.754Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'nauticalDawn'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"nauticalDawn","time":"2022-05-14T10:30:48.438Z","timeOffset":"2022-05-14T10:30:48.438Z"}]}},{"config":{"topic":"Civil Dawn - Golden Hour","name":"Civil Dawn - Golden Hour","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"civilDawn","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"civilDawn in 3 hours 2 minutes 7 seconds","nextDate":"2022-05-14T11:03:31.129Z","nextDateTZ":"May 14, 2022, 06:03:31 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.757Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'civilDawn'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"civilDawn","time":"2022-05-14T11:03:31.129Z","timeOffset":"2022-05-14T11:03:31.129Z"}]}},{"config":{"topic":"Sunrise","name":"Sunrise","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"sunrise","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"sunrise in 3 hours 29 minutes 12 seconds","nextDate":"2022-05-14T11:30:36.576Z","nextDateTZ":"May 14, 2022, 06:30:36 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.760Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'sunrise'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"sunrise","time":"2022-05-14T11:30:36.576Z","timeOffset":"2022-05-14T11:30:36.576Z"}]}},{"config":{"topic":"Sunrise End","name":"Sunrise End","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"sunriseEnd","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"sunriseEnd in 3 hours 31 minutes 57 seconds","nextDate":"2022-05-14T11:33:21.563Z","nextDateTZ":"May 14, 2022, 06:33:21 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.763Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'sunriseEnd'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"sunriseEnd","time":"2022-05-14T11:33:21.563Z","timeOffset":"2022-05-14T11:33:21.563Z"}]}},{"config":{"topic":"Morning Golden Hour Ends","name":"Morning Golden Hour Ends","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"morningGoldenHourEnd","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"morningGoldenHourEnd in 4 hours 3 minutes 57 seconds","nextDate":"2022-05-14T12:05:21.143Z","nextDateTZ":"May 14, 2022, 07:05:21 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.768Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'morningGoldenHourEnd'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"morningGoldenHourEnd","time":"2022-05-14T12:05:21.143Z","timeOffset":"2022-05-14T12:05:21.143Z"}]}},{"config":{"topic":"Solar Noon","name":"Solar Noon","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"solarNoon","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"solarNoon in 10 hours 23 minutes 44 seconds","nextDate":"2022-05-14T18:25:08.364Z","nextDateTZ":"May 14, 2022, 13:25:08 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.771Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'solarNoon'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"solarNoon","time":"2022-05-14T18:25:08.364Z","timeOffset":"2022-05-14T18:25:08.364Z"}]}},{"config":{"topic":"Evening Golden Hour Starts","name":"Evening Golden Hour Starts","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"eveningGoldenHourStart","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"eveningGoldenHourStart in 16 hours 43 minutes 31 seconds","nextDate":"2022-05-15T00:44:55.586Z","nextDateTZ":"May 14, 2022, 19:44:55 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.774Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'eveningGoldenHourStart'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"eveningGoldenHourStart","time":"2022-05-15T00:44:55.586Z","timeOffset":"2022-05-15T00:44:55.586Z"}]}},{"config":{"topic":"Sunset Start","name":"Sunset Start","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"sunsetStart","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"sunsetStart in 17 hours 15 minutes 31 seconds","nextDate":"2022-05-15T01:16:55.166Z","nextDateTZ":"May 14, 2022, 20:16:55 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.777Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'sunsetStart'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"sunsetStart","time":"2022-05-15T01:16:55.166Z","timeOffset":"2022-05-15T01:16:55.166Z"}]}},{"config":{"topic":"Sunset","name":"Sunset","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"sunset","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"sunset in 17 hours 18 minutes 16 seconds","nextDate":"2022-05-15T01:19:40.152Z","nextDateTZ":"May 14, 2022, 20:19:40 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.780Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'sunset'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"sunset","time":"2022-05-15T01:19:40.152Z","timeOffset":"2022-05-15T01:19:40.152Z"}]}},{"config":{"topic":"Civil Dusk - Golden Hour Ends","name":"Civil Dusk - Golden Hour Ends","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"civilDusk","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"civilDusk in 17 hours 45 minutes 21 seconds","nextDate":"2022-05-15T01:46:45.599Z","nextDateTZ":"May 14, 2022, 20:46:45 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.783Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'civilDusk'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"civilDusk","time":"2022-05-15T01:46:45.599Z","timeOffset":"2022-05-15T01:46:45.599Z"}]}},{"config":{"topic":"Nautical Dusk","name":"Nautical Dusk","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"nauticalDusk","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"nauticalDusk in 18 hours 18 minutes 4 seconds","nextDate":"2022-05-15T02:19:28.291Z","nextDateTZ":"May 14, 2022, 21:19:28 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.786Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'nauticalDusk'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"nauticalDusk","time":"2022-05-15T02:19:28.291Z","timeOffset":"2022-05-15T02:19:28.291Z"}]}},{"config":{"topic":"Astronomical Dusk - Night Starts","name":"Astronomical Dusk - Night Starts","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"nightStart","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":1,"limit":0,"nextDescription":"nightStart in 18 hours 52 minutes 45 seconds","nextDate":"2022-05-15T02:54:09.295Z","nextDateTZ":"May 14, 2022, 21:54:09 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.789Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'nightStart'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"nightStart","time":"2022-05-15T02:54:09.295Z","timeOffset":"2022-05-15T02:54:09.295Z"}]}},{"config":{"topic":"Solar Midnight","name":"Solar Midnight","payloadType":"default","payload":"","limit":null,"expressionType":"solar","solarType":"selected","solarEvents":"nadir","location":"32.769474 -96.855274","offset":"0","isDynamic":false,"modified":true},"status":{"type":"static","modified":false,"isRunning":true,"count":2,"limit":0,"nextDescription":"nadir in 22 hours 23 minutes 44 seconds","nextDate":"2022-05-15T06:25:08.364Z","nextDateTZ":"May 15, 2022, 01:25:08 CDT","timeZone":"America/North_Dakota/Center","serverTime":"2022-05-14T08:01:23.792Z","serverTimeZone":"America/Chicago","description":"Solar Events: 'nadir'","solarState":{"state":"Night","direction":"rise","day":false,"night":true,"astrologicalTwilight":false,"nauticalTwilight":false,"civilTwilight":false,"goldenHour":false,"twilight":false,"morningTwilight":false,"eveningTwilight":false,"dawn":false,"dusk":false,"morningGoldenHour":false,"eveningGoldenHour":false},"solarTimes":[{"event":"nadir","time":"2022-05-15T06:25:08.364Z","timeOffset":"2022-05-15T06:25:08.364Z"}]}}]}

List Inactive -

{"command":{"command":"list-inactive"},"result":[]}

Start All -
No command/debug output

Here is the configuration of EVERYTHING in the flow including all inject and debug nodes:

[{"id":"d32e4f05.9f1ee8","type":"tab","label":"Mode Selector","disabled":false,"info":""},{"id":"478d402.36f9ec","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Morning Mode","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"input_select","service":"select_option","areaId":[],"deviceId":[],"entityId":["input_select.home_mode"],"data":"{\"option\": \"Morning\"}","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":720,"y":160,"wires":[[]]},{"id":"121a7957.96032f","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Evening Mode","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"input_select","service":"select_option","areaId":[],"deviceId":[],"entityId":["input_select.home_mode"],"data":"{\"option\": \"Evening\"}","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":720,"y":280,"wires":[[]]},{"id":"df55fe85.4e955","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Night Mode","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"input_select","service":"select_option","areaId":[],"deviceId":[],"entityId":["input_select.home_mode"],"data":"{\"option\": \"Night\"}","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":710,"y":580,"wires":[[]]},{"id":"4dc735f9.6fd5c4","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Living Room Evening Lights ON","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"light","service":"turn_on","areaId":[],"deviceId":[],"entityId":["light.livingroom_evening_lights"],"data":"{ \"brightness_pct\": \"100\" }","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":770,"y":220,"wires":[[]]},{"id":"b0b99d2a.2f1c3","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Loft Evening Lights ON","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"light","service":"turn_on","areaId":[],"deviceId":[],"entityId":["light.ikea_of_sweden_tradfri_bulb_gu10_ws_400lm_c539b7fe_level_light_color_on_off"],"data":"{ \"brightness_pct\": \"100\" }","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":750,"y":460,"wires":[[]]},{"id":"92d2cde8.f09f58","type":"cronplus","z":"d32e4f05.9f1ee8","name":"Solar Events","outputField":"payload","timeZone":"America/North_Dakota/Center","persistDynamic":false,"commandResponseMsgOutput":"fanOut","outputs":16,"options":[{"name":"Night End - Astronomical Dawn","topic":"Night End - Astronomical Dawn","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"nightEnd"},{"name":"Nautical Dawn","topic":"Nautical Dawn","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"nauticalDawn"},{"name":"Civil Dawn - Golden Hour","topic":"Civil Dawn - Golden Hour","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"civilDawn"},{"name":"Sunrise","topic":"Sunrise","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"sunrise"},{"name":"Sunrise End","topic":"Sunrise End","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"sunriseEnd"},{"name":"Morning Golden Hour Ends","topic":"Morning Golden Hour Ends","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"morningGoldenHourEnd"},{"name":"Solar Noon","topic":"Solar Noon","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"solarNoon"},{"name":"Evening Golden Hour Starts","topic":"Evening Golden Hour Starts","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"eveningGoldenHourStart"},{"name":"Sunset Start","topic":"Sunset Start","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"sunsetStart"},{"name":"Sunset","topic":"Sunset","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"sunset"},{"name":"Civil Dusk - Golden Hour Ends","topic":"Civil Dusk - Golden Hour Ends","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"civilDusk"},{"name":"Nautical Dusk","topic":"Nautical Dusk","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"nauticalDusk"},{"name":"Astronomical Dusk - Night Starts","topic":"Astronomical Dusk - Night Starts","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"nightStart"},{"name":"Solar Midnight","topic":"Solar Midnight","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"nadir"}],"x":350,"y":340,"wires":[["a4c29122.0894"],["a4c29122.0894"],["a4c29122.0894"],["a4c29122.0894"],["cde10d42.b2163","a4c29122.0894"],["478d402.36f9ec","a4c29122.0894"],["a4c29122.0894"],["121a7957.96032f","a4c29122.0894","4dc735f9.6fd5c4"],["a4c29122.0894","9acb0ff3.20ed1"],["b0b99d2a.2f1c3","a4c29122.0894","b22b3e19f024fd96"],["a4c29122.0894"],["a4c29122.0894"],["a4c29122.0894"],["a4c29122.0894"],[],["8f732c326377ea90"]]},{"id":"9acb0ff3.20ed1","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Outside Lights ON 100pct","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"light","service":"turn_on","areaId":[],"deviceId":[],"entityId":["light.outside_lights"],"data":"{ \"brightness_pct\": \"100\" }","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":750,"y":340,"wires":[[]]},{"id":"cde10d42.b2163","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Outside Lights OFF","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"light","service":"turn_off","areaId":[],"deviceId":[],"entityId":["light.outside_lights"],"data":"","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":730,"y":100,"wires":[[]]},{"id":"a4c29122.0894","type":"debug","z":"d32e4f05.9f1ee8","name":"","active":true,"tosidebar":true,"console":true,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":720,"y":520,"wires":[]},{"id":"e250ccdf.cb3ee","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Night End - Astronomical Dawn\"}","payloadType":"json","x":90,"y":100,"wires":[["92d2cde8.f09f58"]]},{"id":"e115d6ff.c08b8","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Nautical Dawn\"}","payloadType":"json","x":90,"y":140,"wires":[["92d2cde8.f09f58"]]},{"id":"14aff3f1.bb57a4","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Civil Dawn - Golden Hour\"}","payloadType":"json","x":90,"y":180,"wires":[["92d2cde8.f09f58"]]},{"id":"b27a4855.20ff78","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Sunrise\"}","payloadType":"json","x":90,"y":220,"wires":[["92d2cde8.f09f58"]]},{"id":"ab1d261e.aabcf","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Sunrise End\"}","payloadType":"json","x":90,"y":260,"wires":[["92d2cde8.f09f58"]]},{"id":"8759787d.898c28","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Morning Golden Hour Ends\"}","payloadType":"json","x":90,"y":300,"wires":[["92d2cde8.f09f58"]]},{"id":"36088014.c43a","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Solar Noon\"}","payloadType":"json","x":90,"y":340,"wires":[["92d2cde8.f09f58"]]},{"id":"aaf8aec9.b43be8","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Evening Golden Hour Starts\"}","payloadType":"json","x":90,"y":380,"wires":[["92d2cde8.f09f58"]]},{"id":"94f69f40.385218","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Sunset Start\"}","payloadType":"json","x":90,"y":420,"wires":[["92d2cde8.f09f58"]]},{"id":"45fe7135.5ca14","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Sunset\"}","payloadType":"json","x":90,"y":460,"wires":[["92d2cde8.f09f58"]]},{"id":"10d8c005.4c8bf","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Civil Dusk - Golden Hour Ends\"}","payloadType":"json","x":90,"y":500,"wires":[["92d2cde8.f09f58"]]},{"id":"2c4572b8.a7d69e","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Nautical Dusk\"}","payloadType":"json","x":90,"y":540,"wires":[["92d2cde8.f09f58"]]},{"id":"371949cd.2814f6","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Astronomical Dusk - Night Starts\"}","payloadType":"json","x":90,"y":580,"wires":[["92d2cde8.f09f58"]]},{"id":"ed420b78.bd107","type":"inject","z":"d32e4f05.9f1ee8","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"trigger\",\"name\":\"Solar Midnight\"}","payloadType":"json","x":90,"y":620,"wires":[["92d2cde8.f09f58"]]},{"id":"d7ef9238566306b6","type":"inject","z":"d32e4f05.9f1ee8","name":"9:30PM Daily Night Mode","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"30 21 * * *","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":420,"y":580,"wires":[["df55fe85.4e955"]]},{"id":"b22b3e19f024fd96","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Office Blind Close","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"cover","service":"close_cover","areaId":[],"deviceId":[],"entityId":["cover.window_blind_controller_current_value"],"data":"","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":730,"y":400,"wires":[[]]},{"id":"a7f3647eda98f149","type":"inject","z":"d32e4f05.9f1ee8","name":"List Active","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"list-active\"}","payloadType":"json","x":250,"y":680,"wires":[["92d2cde8.f09f58"]]},{"id":"8f732c326377ea90","type":"debug","z":"d32e4f05.9f1ee8","name":"","active":true,"tosidebar":true,"console":true,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":580,"y":680,"wires":[]},{"id":"4bc012b0593561b0","type":"inject","z":"d32e4f05.9f1ee8","name":"List Inactive","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"list-inactive\"}","payloadType":"json","x":250,"y":720,"wires":[["92d2cde8.f09f58"]]},{"id":"93085979a2cea0cd","type":"inject","z":"d32e4f05.9f1ee8","name":"Start All","props":[{"p":"payload"}],"repeat":"","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"{\"command\":\"start-all\"}","payloadType":"json","x":240,"y":760,"wires":[["92d2cde8.f09f58"]]},{"id":"b4b1f855.d1db78","type":"server","name":"Home Assistant","version":2,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":30}]

Here is the configuration of the flow without all the inject and debug node junk, only what I want to be there:

[{"id":"d32e4f05.9f1ee8","type":"tab","label":"Mode Selector","disabled":false,"info":""},{"id":"478d402.36f9ec","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Morning Mode","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"input_select","service":"select_option","areaId":[],"deviceId":[],"entityId":["input_select.home_mode"],"data":"{\"option\": \"Morning\"}","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":720,"y":160,"wires":[[]]},{"id":"121a7957.96032f","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Evening Mode","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"input_select","service":"select_option","areaId":[],"deviceId":[],"entityId":["input_select.home_mode"],"data":"{\"option\": \"Evening\"}","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":720,"y":280,"wires":[[]]},{"id":"df55fe85.4e955","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Night Mode","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"input_select","service":"select_option","areaId":[],"deviceId":[],"entityId":["input_select.home_mode"],"data":"{\"option\": \"Night\"}","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":710,"y":580,"wires":[[]]},{"id":"4dc735f9.6fd5c4","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Living Room Evening Lights ON","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"light","service":"turn_on","areaId":[],"deviceId":[],"entityId":["light.livingroom_evening_lights"],"data":"{ \"brightness_pct\": \"100\" }","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":770,"y":220,"wires":[[]]},{"id":"b0b99d2a.2f1c3","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Loft Evening Lights ON","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"light","service":"turn_on","areaId":[],"deviceId":[],"entityId":["light.ikea_of_sweden_tradfri_bulb_gu10_ws_400lm_c539b7fe_level_light_color_on_off"],"data":"{ \"brightness_pct\": \"100\" }","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":750,"y":460,"wires":[[]]},{"id":"92d2cde8.f09f58","type":"cronplus","z":"d32e4f05.9f1ee8","name":"Solar Events","outputField":"payload","timeZone":"America/North_Dakota/Center","persistDynamic":false,"commandResponseMsgOutput":"fanOut","outputs":16,"options":[{"name":"Night End - Astronomical Dawn","topic":"Night End - Astronomical Dawn","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"nightEnd"},{"name":"Nautical Dawn","topic":"Nautical Dawn","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"nauticalDawn"},{"name":"Civil Dawn - Golden Hour","topic":"Civil Dawn - Golden Hour","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"civilDawn"},{"name":"Sunrise","topic":"Sunrise","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"sunrise"},{"name":"Sunrise End","topic":"Sunrise End","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"sunriseEnd"},{"name":"Morning Golden Hour Ends","topic":"Morning Golden Hour Ends","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"morningGoldenHourEnd"},{"name":"Solar Noon","topic":"Solar Noon","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"solarNoon"},{"name":"Evening Golden Hour Starts","topic":"Evening Golden Hour Starts","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"eveningGoldenHourStart"},{"name":"Sunset Start","topic":"Sunset Start","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"sunsetStart"},{"name":"Sunset","topic":"Sunset","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"sunset"},{"name":"Civil Dusk - Golden Hour Ends","topic":"Civil Dusk - Golden Hour Ends","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"civilDusk"},{"name":"Nautical Dusk","topic":"Nautical Dusk","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"nauticalDusk"},{"name":"Astronomical Dusk - Night Starts","topic":"Astronomical Dusk - Night Starts","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"nightStart"},{"name":"Solar Midnight","topic":"Solar Midnight","payloadType":"default","payload":"","expressionType":"solar","expression":"0 * * * * * *","location":"32.769474 -96.855274","offset":"0","solarType":"selected","solarEvents":"nadir"}],"x":350,"y":340,"wires":[[],[],[],[],["cde10d42.b2163"],["478d402.36f9ec"],[],["121a7957.96032f","4dc735f9.6fd5c4"],["9acb0ff3.20ed1"],["b0b99d2a.2f1c3","b22b3e19f024fd96"],[],[],[],[],[],[]]},{"id":"9acb0ff3.20ed1","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Outside Lights ON 100pct","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"light","service":"turn_on","areaId":[],"deviceId":[],"entityId":["light.outside_lights"],"data":"{ \"brightness_pct\": \"100\" }","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":750,"y":340,"wires":[[]]},{"id":"cde10d42.b2163","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Outside Lights OFF","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"light","service":"turn_off","areaId":[],"deviceId":[],"entityId":["light.outside_lights"],"data":"","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":730,"y":100,"wires":[[]]},{"id":"d7ef9238566306b6","type":"inject","z":"d32e4f05.9f1ee8","name":"9:30PM Daily Night Mode","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"30 21 * * *","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":420,"y":580,"wires":[["df55fe85.4e955"]]},{"id":"b22b3e19f024fd96","type":"api-call-service","z":"d32e4f05.9f1ee8","name":"Office Blind Close","server":"b4b1f855.d1db78","version":5,"debugenabled":false,"domain":"cover","service":"close_cover","areaId":[],"deviceId":[],"entityId":["cover.window_blind_controller_current_value"],"data":"","dataType":"json","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":730,"y":400,"wires":[[]]},{"id":"b4b1f855.d1db78","type":"server","name":"Home Assistant","version":2,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":30}]

So I am at a loss here, I have tried various settings within the Cron-Plus node, e.g. I originally thought it might have been caused by an offset I was using on one of the solar event schedules that would essentially push it past the next expected solar event, so I removed that offset, no different. I tried checking the ‘Persist Dynamic Schedules’ option even though I know these are considered static schedules, no difference. I tried specifically setting the ‘Timezone’ instead of leaving blank for “none/system”, made no difference either.

Is it a problem with the Cron-Plus node or the Call Service nodes? Since the output debug node shows the output from Cron-Plus but the Call Service node doesn’t trigger? But I have other Call Service nodes that will work continuously as expected without needing to be “refreshed” such as the ‘Night Mode’ Call Service node connected to the “9:30PM Daily Night Mode” injection. Then again, the manual inject nodes on the input side of Cron-Plus also can’t trigger the Call Service nodes, through Cron-Plus, on the corresponding output, after Cron-Plus itself is no longer able to as well. Why do these specific Call Service nodes attached to Cron-Plus stop responding?

Your help is sincerely appreciated as having to manually “refresh” Cron-Plus each night kinda defeats the purpose. Please let me know what you need, what you want me to do, anything to get this resolved.

I don’t know what to tell you about cron plus. The sun2 component for HA has many additional sensor than the original sun component. The sensors trigger everyday without any need to reset them.

1 Like

I think your solar events are full timestamps which means that they have date included also and therefore is triggered only on that date its set.

Use the Sun2 component Mikefila refers to.
It has all the events you could possible need and it updates everyday, so the sensors will trigger the flows again.

1 Like

I am fairly much a rank amateur with Node-red, but I do use CronPlus (for scheduled and dynamic events) and find it is bursting with features and works absolutely for me, and according to the instructions.
I don’t use ‘CallService’, however what I have learnt about Node-Red is that it sends a message from one node to the next. This is mostly ‘msg.payload’ but what that actually is varies from node type to node type. The message is often much more than just a ‘kick’ to the next node to do its thing.
CronPlus - I know - fires off a message payload which is an object full of interesting facts about the event it has just triggered. At sunset (or whatever) this will be buckets of data about sunset.
Call service, according to the ‘info’ pannel, requires an input message payload with loads of details about what it wants in order to work. I quote “If the incoming message has a payload.data that is an object or parsable into an object these properties will be merged with any config values set.”
In other words, if CronPlus sends out something that CallService thinks is interesting, CallService will try and read it. Even if it is not exactly what you wanted to say.
I do know that CronPlus a) sends messages when it ‘fires’ at an event, and b) also sends messages when ‘kicked’ by sending in a message eg status -all. I use that a lot.

I would like to suggest (but I may be completely wrong here) that what you need is a change node between CronPlus and CallService, that responds to an incoming message (as an ‘event’ in time, nothing more) and adjusts the msg.payload to be in the format (removes the payload and replaces it with information) required by CallService.

Also, you probably don’t need to have a speparate event for sunset, dusk, dawn, golden hour… I have ONE scheduled event which has TWO solar events, and no fanning. Both events pop out of the one output (at different times obviously) and I can tell which is which by looking at the message details, using a switch node as required to process either accordingly.

I like CronPlus. No bugs, loads of features, works for me every time!

1 Like

Thanks @Mikefila and @WallyR, I will check it out. Always good to have options!

@Biscuit good write up! That’s for the most part how I use nodes in Node-RED, I don’t really care too much about the msg.payload, I just use them as triggers for other nodes to do something.

There are times when I do specifically look at the msg.payload or another output, indeed I actually use a Switch node to make decisions based on the input it receives and I considered doing that with Cron Plus without fanning out to different outputs. The reason I didn’t and fanned out the outputs instead was two fold:

  1. The Switch is an extra redundant node and I like to keep things as simple as possible, since I can just directly connect the Call Service nodes to the outputs from Cron Plus anyway.

  2. I have slightly more flexibility fanning the outputs, such as being able to use individual offsets for the various solar events. Not that there aren’t ways of doing this after a Switch node but that might require even more nodes and again, I like to keep things as simple as possible in Node-RED.

If the Call Service nodes are the problem, why do they respond the first time around at all and not consequent rounds after that? I have loads of other Call Service nodes that respond repeatedly, it’s only the ones attached to the Cron Plus node.

Let’s be clear, Cron Plus is amazing, it is an incredibly powerful node and has an extreme amount of flexibility.

They will output to the debug why. You can use a catch node to log the error. In catch select the call service node that fails.

[{"id":"65f66b6c4bedb4fc","type":"file","z":"f80b6c338afd5483","name":"","filename":"/config/www/call_service_errors.txt","appendNewline":true,"createDir":true,"overwriteFile":"false","encoding":"utf8","x":1360,"y":720,"wires":[[]]},{"id":"b41dfbe566fb762e","type":"catch","z":"f80b6c338afd5483","name":"","scope":[],"uncaught":false,"x":810,"y":720,"wires":[["49cdca02f07abf2a","b637c39475a19e47"]]},{"id":"49cdca02f07abf2a","type":"debug","z":"f80b6c338afd5483","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1010,"y":660,"wires":[]},{"id":"b637c39475a19e47","type":"change","z":"f80b6c338afd5483","name":"","rules":[{"t":"move","p":"error.message","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1050,"y":720,"wires":[["65f66b6c4bedb4fc"]]}]

Thank you! I shall give that a shot! Doing the below does not produce any output to debug:

Will report back in 24 hours!

Set your debug nodes to complete msg object. This will show the complete output, not just what is in the payload position.