this post was submitted on 18 May 2024
85 points (98.9% liked)

homeassistant

13863 readers
114 users here now

Home Assistant is open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server. Available for free at home-assistant.io

founded 2 years ago
MODERATORS
85
submitted 11 months ago* (last edited 11 months ago) by padook to c/homeassistant@lemmy.world
 

This is surely common knowledge for some of you but I thought I'd share a story, as this just made me cringe

I never understood the point in the option to "run actions in parallel" I thought if I had a list of actions to complete, HA makes it through them almost instantly, and with the varying latency of each action they wouldn't complete at the same time anyways.

Then I tested my smoke alarm notification that I have had running for over a year.

It went-

If: list of smoke alarms detects smoke Then: Turn on the lamp next to my bed, then Send a notification to my phone.

I had made an error when setting up the lamp entity. (I made it full brightness on both scales, can only use one) this stopped the automation before the notification went out to my phone.

If it's important that the automation makes it to the end, run in parallel!

Talk about a false sense of security

top 14 comments
sorted by: hot top controversial new old
[–] slazer2au@lemmy.world 57 points 11 months ago (1 children)

This is also why testing is important. Speaking of which, when was the last time you tested your backups?

[–] padook 27 points 11 months ago (1 children)

OK daddd (or mommm) it probably is time for me to test my backups haha

[–] slazer2au@lemmy.world 12 points 11 months ago

Good on ya kiddo. If you want we can go to the park and play some catch after dinner.

[–] wander1236@sh.itjust.works 19 points 11 months ago (3 children)

I gotta be honest, I'm not sure I'd be willing to trust something I set up myself with general-purpose software to handle something as important as a smoke alarm alert.

That's the sort of thing that gets hardware dedicated to the task and doesn't rely on me configuring everything correctly and Linux not crashing because some other unrelated process had issues.

[–] padook 22 points 11 months ago* (last edited 11 months ago)

Yes this is in addition to the normal alarm. The light is incase I'm sleeping, as I may not hear the basement alarm going off. The notification is if I'm not home.

[–] NateSwift@lemmy.dbzer0.com 13 points 11 months ago

I would assume that turning on the lights and sending a push notification would happen in addition to normal smoke alarm things. An alert on my phone would be nowhere near enough if there was a real emergency, but it would be super helpful if I was out of the house

[–] MelastSB@sh.itjust.works 7 points 11 months ago

I assume that this automation is in addition to the normal alarm from the smoke detectors, but I agree with your sentiment

[–] unknowing8343@discuss.tchncs.de 15 points 11 months ago (2 children)

Parallel stuff is also used for... Well, some sequences you want to run in parallel.

[–] k_rol@lemmy.ca 4 points 11 months ago

That was insightful

[–] HeartyBeast@kbin.social 1 points 11 months ago (1 children)

Could you give som examples of where it’s desirable ?

[–] unknowing8343@discuss.tchncs.de 2 points 11 months ago* (last edited 11 months ago)

Let's say you have 2 scripts that do some stuff:

  • script A: turns a light pink for 20 seconds and then through a smart speaker you can hear 30 seconds of La Macarena.
  • script B: send 25 notifications to your phone, spaced by 30 seconds, in which each notification is a different letter of an encrypted message.

If you want those things to happen independently you must parallelize them.

So think about an automation that at a certain point you want to launch multiple scripts. I'd always parallelize, even if initially these scripts were "instantaneous", because you might change these and add more complexities in the future.

[–] brb 14 points 11 months ago
[–] HeartyBeast@kbin.social 3 points 11 months ago

Nice tip. Thank you. I was similarly confused

[–] unknowing8343@discuss.tchncs.de 2 points 11 months ago

Also, test your automations! Specially those critical. It's very essy, you can virtually trigger them.