I use Node-RED in combination with home assistant, for automations.<p>It's sometimes overly complicated to follow the flows, or do something relatively simple, but otherwise it's a nice middle ground between built in YAML based automations, and something like AppDaemon which requires writing python scripts.
Because of Node-RED i learned a LOT about APIs, protocols and stuff in a playful way.
Especially:<p>-REST<p>-GET, POST, PUT<p>-JSON<p>-Javascript<p>-MQTT<p>And all that helped me a lot in my career, just because i wanted to automate a few things. And now Node-RED is just irreplaceable in my private life.
Some past threads. Others?<p><i>Node-RED 2.0</i> - <a href="https://news.ycombinator.com/item?id=27892226" rel="nofollow">https://news.ycombinator.com/item?id=27892226</a> - July 2021 (62 comments)<p><i>How-to normalize home volume levels with Node-RED</i> - <a href="https://news.ycombinator.com/item?id=23349902" rel="nofollow">https://news.ycombinator.com/item?id=23349902</a> - May 2020 (28 comments)<p><i>Node-Red – Flow-Based Programming for the Internet of Things</i> - <a href="https://news.ycombinator.com/item?id=18859019" rel="nofollow">https://news.ycombinator.com/item?id=18859019</a> - Jan 2019 (77 comments)<p><i>Replacing a Pool and Spa Controller with Raspberry Pi, Arduino, Node Red</i> - <a href="https://news.ycombinator.com/item?id=18142335" rel="nofollow">https://news.ycombinator.com/item?id=18142335</a> - Oct 2018 (3 comments)<p><i>Node-RED: A visual tool for wiring the Internet of Things</i> - <a href="https://news.ycombinator.com/item?id=13495156" rel="nofollow">https://news.ycombinator.com/item?id=13495156</a> - Jan 2017 (6 comments)<p><i>Node-Red, a tool for wiring together hardware devices, APIs and online services</i> - <a href="https://news.ycombinator.com/item?id=8419984" rel="nofollow">https://news.ycombinator.com/item?id=8419984</a> - Oct 2014 (8 comments)<p><i>Node-RED</i> - <a href="https://news.ycombinator.com/item?id=8310536" rel="nofollow">https://news.ycombinator.com/item?id=8310536</a> - Sept 2014 (1 comment)<p><i>Node-red, a visual tool for wiring the Internet of Things</i> - <a href="https://news.ycombinator.com/item?id=8217664" rel="nofollow">https://news.ycombinator.com/item?id=8217664</a> - Aug 2014 (3 comments)<p><i>Programming the Missing Links in the Internet of Things</i> - <a href="https://news.ycombinator.com/item?id=6459564" rel="nofollow">https://news.ycombinator.com/item?id=6459564</a> - Sept 2013 (1 comment)
Even when you know how to script up automations, I still find Node Red invaluable for visualising and rapidly prototyping complex logic before you write a single line of code.<p>Plus, it is the perfect accompaniment to Home Assistant.
<i><enso-fanboi mode="on"></i><p>If you're interested in something more generic, check out if <a href="https://enso.org" rel="nofollow">https://enso.org</a> could be worth a look! Thanks to GraalVM, you might be able to import JS packages too, among others (Java, Python, & more...); OTOH with the caveat that the project is still in ways in-dev...
My friend uses Node-RED to automate and run a lot of devices/things in his van (which he lives in). I'm not sure if it's better to <i>not</i> have a programming background, because it's one of the more difficult environments I've helped someone with and the debugging when something wasn't working was really poor, it all felt very un-intuitive.
Yeah node-red really rocks.
Maybe I am biased as a particularly visually oriented person but i really enjoy the ease of prototyping with nodes and flows. I cannot help but sense that they may become more commonplace- there are applications for embedded sensing and data pipelines where it helps to think less in packets and more in streams or currents... also great for mocking up a synthesizer which I did with Paul Stoffregen's super rad audio tool for teensy/ARM : - )
<a href="https://www.pjrc.com/teensy/gui/" rel="nofollow">https://www.pjrc.com/teensy/gui/</a>
I have just been going through a HELL of a time building a web-based app ("PWA" in progressive lingo) that needs to auto-discover certain devices on the user's LAN. This is a rebuild of an existing AIR-based app that's been in use in a corporate setting for 10 years and needs to be replaced because "death of flash". The AIR app I wrote back then handled discovering the local devices fantastically well. The problem now? Mixed-origin blockades. I can't get into all those devices and routers in each location to set up local DNS servers and maintain certificates. So the connection from the ultimate app to the local node has to be unencrypted. But this means the only answer to a web-based discovery app is to have it be served over HTTP as well.<p>Interesting thing google missed when trying to prevent people from doing this exact thing with PWAs: If you have a valid manifest and service worker, Chrome won't run the service worker if it's not served over SSL, but it WILL include the app name and icons and let you save it to the home screen on Android; it will even cache a good deal of what you intended.<p>For auto-discovery, I used a fuckton of hidden iframes loading asynchronously and waiting for any window.postMessage that matches what I want from a local device.<p>Seriously, Google has made my life fucking miserable as a solo dev. They don't want anyone to be able to write an IoT app without going through them.
What do people automate at home? I genuinely have never thought to have the need to buy a home assistant but apparently lots of people in this thread do
Recently discovered that you can build simple api style end points with it.<p>Eg built one that tries resolving an ad domain to check if ad blocking is functioning correctly and publishes that as a end point that is suitable for an uptime dashboard
Is anyone using the node-RED ecosystem to deliver end-user customization of their <i>not-home-automation</i> product/service?<p>I’m looking for ways to offer practical/accessible low-code (or not considered scary code) composition for our internal users who are running light industry factory production lines, but open to learning about commercial applications in any field to draw inspiration from.
We're (extremely early days into) looking to use NodeRed to provide customised configurations for a fleet of telegraf agents.<p>Telegraf has the ability to phone home and ask for its telegraf.conf as it starts up, but the server-side of that equation is frustratingly left as an exercise for the reader.<p>There's not many ways to skin that particular cat, which is odd and unsettling in its own way.
Since I've been asked a couple of times in the threads for Node-RED examples, here's my home automation write up from a couple of years ago:<p><a href="https://taoofmac.com/space/blog/2019/01/13/1900" rel="nofollow">https://taoofmac.com/space/blog/2019/01/13/1900</a><p>These days I've changed the setup a bit and now take advantage of Node-RED's debugger plugin and Projects/git features, but the rest still applies.
Also, you can use Node-RED with Gladys Assistant (open-source home automation software) to have a clean dashboard on top of Node-RED:<p><a href="https://gladysassistant.com/blog/integrate-node-red-with-gladys-assistant-in-mqtt" rel="nofollow">https://gladysassistant.com/blog/integrate-node-red-with-gla...</a>
I remember trying to use it as a web-server few years ago.<p>You can see an example graph to get a user from the DB by id here: <a href="https://github.com/julius/node-red-contrib-sqlstring#example" rel="nofollow">https://github.com/julius/node-red-contrib-sqlstring#example</a>
I run a Homebridge / Homekit ecosystem at home but have always been curious about leveraging Node-RED to handle more complex automations.<p>Does anyone have any recommendations and/or recommended reading on putting these two together?
I use node-red for Escape Room game high level automation. Gathering data from all the puzzles (over CANbus and mqtt), displaying game state for game masters, fallback control, audio+light sequences, etc