this post was submitted on 28 Aug 2023
59 points (100.0% liked)

Free and Open Source Software

17746 readers
25 users here now

If it's free and open source and it's also software, it can be discussed here. Subcommunity of Technology.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 2 years ago
MODERATORS
 

Are there any decent open source alternatives or should I be looking to go down the building route?

I am a coding newbie so would be a bit daunting!

top 16 comments
sorted by: hot top controversial new old
[–] [email protected] 24 points 1 year ago (2 children)

Node-Red is probably your best bet
it's functional with a lot of plugins available as well as relatively easy due to the "flow" workflow

one other command mentioned Home Assistant but even among the Home Assistant community there are quite some people using Node-Red together with Home Assistant to achieve their goals

[–] [email protected] 7 points 1 year ago (1 children)

I’m actually migrating away from Node-Red in HomeAssistant.

Don’t get me wrong i love Node Red, but HomeAssistant’s automations are now capable enough to do about 90% of what I need around the house.

Now, if you’re automating like a large growroom and you have hundreds of lights and sprinkler valves to automate against temp and soil sensors…

[–] [email protected] 3 points 1 year ago

if your goal is to automate your home (or lab, or work place) I also would highly recommend Home Assistant but I hesitated to recommend it anyone since OP didn't really explained what they actually want to with it

i.e. if your goal is automate rss feeds and notifications than Home Assistant ist just completely overkill for this task

[–] [email protected] 5 points 1 year ago* (last edited 1 year ago)

I would start with home assistants built in automations and scripts before diving into node-red. Node-red is great for complex automations, but if all you’re doing is turning on lights and stuff, just using HA is more than enough, and has a much easier learning curve, IMO.

[–] [email protected] 12 points 1 year ago* (last edited 1 year ago) (1 children)

I use n8n, it has node-based workflows with tons of integrations and even the ability to run Javascript for advanced data processing or logic. You can go way further than IFTTT or even Zapier.

The cloud-hosted version is expensive but it's easy to self-host (self-hosting is free).

[–] [email protected] 3 points 1 year ago

not open source, but source available

[–] [email protected] 12 points 1 year ago
[–] [email protected] 11 points 1 year ago

What are you using IFTTT for?

[–] [email protected] 8 points 1 year ago

I found that IFTTT has integrations for hardware and software that doesn't always have a clear public API that can replace it. I would like to be proved wrong on this because I'm definitely using IFTTT and would love to replace it. But it's pretty useful still.

[–] [email protected] 8 points 1 year ago (1 children)

What are you looking to automate? Home Assistant does a lot of things that could have been done with IFTTT.

[–] [email protected] 5 points 1 year ago (1 children)

In all honesty nothing in particular, moreso that I want to explore what's possible. I used IFTTT for things like switching WiFi on when my phone was in a specific location, saving emails with receipts/order confirmations to somewhere central like Google Drive (though trying to find a non-google alternative). I also liked the Pocket integration.

[–] [email protected] 2 points 1 year ago (1 children)

Cryptpad is a decent google workspace alternative. Nextcloud is a popular one, but I've always had some problems with it.

[–] [email protected] 1 points 1 year ago

We have Nextcloud on our lan. Works fine for us.

[–] [email protected] 7 points 1 year ago

I use huginn. Takes some work to get it setup and do what you want. But its completely selfhosted and really powerful and simpler than writing your own one off ad-hoc scripts. Ask me how I know that...

[–] [email protected] 3 points 1 year ago
[–] [email protected] 3 points 1 year ago

Honestly I do all my IoT stuff in plain code, it's actually simpler IMO than trying to use a graphical functional block type interface like NodeRed. And it's a good way for you to get into coding in a way that you can work with real systems in a fairly safe way.

Check out Python's MQTT library, you can build an event driven MQTT handler pretty easily. You set a list of topics you want to subscribe to and then when a message arrives it will call the message handling function. You can check the topic/payload and act on it as you want, publish other messages or perform other operations.

I like distributed control systems myself where individual nodes subscribe to each other and communicate directly (through the MQTT broker) when possible, plus a couple Python scripts running on the broker system to coordinate operations that can't be easily managed that way.

For example an "sundown" topic can be published by a light sensor in the evening, and then either individual lights can subscribe to it and respond, or a script subscribes and iterates through a list of all the lights that are supposed to be on and sends them a power on command. The first option works with custom built endpoints, the second works to integrate Tasmota or similar where several different node devices may exist with different command schema.