Automation/Scripts or Node-Red?

Curious how many people run the majority of their automations via the built in automation tools or via third party tools like Node-Red.

I used to run everything via automations/scripts but then migrated everything to Node-Red because it seemed so much more robust. Lately I’ve wondered what other tools others might be using. I also wonder how much more efficient the built in automation runs compared to anything third party. Running everything on a Raspberry Pi so i don’t want to overly tax the hardware.

Used AppDaemon for around 3 years and I’m currently migrating all my automations to native HA automations. With the recent changes they have become enough powerful to do almost everything. I only have some small automations in AppDaemon because they require additional python libraries. Only tried Node-red briefly at the beginning, but I don’t like doing stuff in the GUI, more a code guy.

I’m very much a code guy, but I also like a nice GUI. At this point all my automations are running in Node-RED and it doesn’t seem to be taxing my PI3B+ at all.

Whatever works for you is what I would recommend. I’m running HA on a dedicated Intel NUC so I see zero latency in automations when I compare HA vs Node-RED. Even though HA automations have made quite a bit of progress, it’s still pretty far behind the things you can do in Node-RED (especially dropping into a function node) or presumably AppDaemon (haven’t actually used this so can’t say for sure).

What automation can you do in Node-RED, that is not possible with native HA automations?
It may be easier with Node-RED/AppDaemon/…, but that’s also because one is used to it, but in the end of the day you can do it all with native HA automations.

You bring up a very valid point, while I have been following the changelogs with each release in regards to automations, I haven’t used native automations for well over a year. That being said, the one area Node-RED really shines is debugging flows. If you have a complex automation it’s much easier to debug in Node-RED by seeing the statuses of each node and being able to simply drop in a Debug node at any point in the message flow to help figure out what’s going on.

In regards to the original post the 3 main ways I’m aware of to handle automations are native HA automations, Node-RED and AppDaemon. I’ve seen a couple smaller projects but nothing that has really taken off. If you aren’t noticing any delay with your current setup then I wouldn’t worry about switching to something else. It’s also completely valid to have automations setup in both Node-RED and native HA automations. If you notice some lag in say Node-RED you could try setting up the automation in HA instead and see if you notice any improvement.

One area that native HA automations has a leg up over Node-RED is being able to easily see in the dashboard what had triggered an automation and being able to view a history of those triggers. I don’t think there is a way to view history of triggered automations in Node-RED.

That’s definitely true, there were quite some feature requests and WTH in the past regarding this topic. I don’t know the plans of the devs, but I assume something in this direction is in the works, at least for the GUI editor.

Personally, I don’t like mixing different systems for automations, you can quickly get lost “did I set this up in HA or NodeRed or AppDaemon?” And you also need to “maintain” multiple systems then. But, that’s just my personal opinion and my OCD kicking in haha

The template editor is pretty much all you need to debug native automations and scripts.
Just drop bits in and see how they evaluate
Use the odd input boolean to trigger automations that you can’t be bothered to wait for to check conditions and running actions is just like running scripts
Best of all, zero overhead

2 Likes

Ultimately, what I have done thus far, is used native automation for very simple things. When it comes to more complex automations with timeouts and repeats, I’ll use Node-Red. I just haven’t been able to implement the more complex operations in the native tool nearly as easily. It’s also nice to see status of each flow as it’s running, especially when individual flows can span long periods of time.