[Custom Component] Alarmo - browser managed alarm system

This is done finally :tada:, I released v1.5.0b (with the b of beta).
Quite some code has been touched by the update.
I have done extensive testing to cover all use-cases I could think off, but still there’s a chance that some existing functionality is broken. So please only update if you’re OK with that.

A small demonstration of the multiple area functionality together with the alarm master:

Summary of what you see here:

  • This configuration has 2 areas (House and Garage) and the alarm master for operating them together.
  • I use the alarm master for arming and disarming, as you can see both areas respond to it.
  • The areas have different exit delays, which is intentional (this is one of the use-cases actually).
  • After the arming is done I simulate the opening of the front door, which triggers the “house” alarm.
  • The alarm master keeps watching the states of the areas and adjusts its state accordingly.
    The above can now be made with Alarmo, and no automations are required.

I reorganised some things in the Alarmo configuration panel for the added functionality.
For example the arm modes now have a single card with a tab per mode:


Note the dropdown list at the top,which allows you to choose an area which you want to change (its only there if you have multiple). This dropdown also appears in the sensors and automations page, so you can assign these to dedicated areas.

Another change is that the trigger time is now configurable per mode. I can imagine that you don’t want your siren to be ringing for half an hour when you’re at home sleeping.

Please share your feedback of the new version! It helps with the further development :+1:

4 Likes

Thanks! Looks great! Can I update through HACS or do I have to do it manually? can’t currently see the update available in hacs.

In HACS there is a checkbox that needs to be ticked before beta releases are installed:


I marked this release as beta because I want users to know this is update may have some risk.
Anyone who tries it out already is appreciated though, because I need some user feedback before I can declare it stable.

This is such wonderful work!
I don’t actually have a use case more multiple zones, but you have really thought it out well.

I installed 1.5.0b just to test the zones anyway.

My feedback:

  • I like the updated UI elements.
  • After creating a new zone, it didn’t appear in the drop down option until I cleared image cache in my browser.
  • the new zone entity was created, but there was no master alarm entity created. Do I need to restart HA?

The main thing I’m missing for my use case is having some way to send a command manually (via automation) to immediately bypass the delay (for presence/remote control arming). I guess I could create a new zone, duplicating my existing setup, and have that “zone” armed immediately. Still feels like a work around though. I’m still hoping you can implement a simpler way in future versions.

Otherwise I’m really loving the progress on this Alarm. :slight_smile:
Thank you.

I’m unsure as to if I’ve missed something here. I just tried this out and was thinking of the siren. Am I supposed to configure that via the actions-panel (or automations)? From how the readme was written I thought maybe that should be kind of like the sensors, that I just pick a siren and then it’s done :smiley:

Actually it used to be exactly like that. But I’m afraid the documentation is outdated on this point.
Requests came in for being able to select multiple sirens, ability to control behaviour per arming mode, etc.
So I settled on the current ‘Actions’ panel, which allows you to choose when+what.

I’m still figuring out a bit where this should go, because I also get requests for being able to blink lights in red color and things like that. I definitely don’t want to take it as far as the HA automations UI.

I think what’s missing mostly is the ability to add a ‘closing action’, so you could simply say “I want my siren to turn ON when alarm is triggered and turn OFF when no longer triggered” in a single rule.
Now you have to create separate actions for the turn on and turn off of the siren (and yes, alarmo will try to turn off the siren everytime you disarm, also if it is already off).

Work in progress here :slight_smile:
I’ll start by updating the documentation, thanks for the trigger.

4 Likes

Just observed that ‘pending’ on Alarmo is ‘warning’ on BWalarm
And ‘arming’ on Alarmo is ‘pending’ on BWalarm
that’s right isn’t it?
Just an important distinction for anyone moving from BWAlarm

Yes that seems about right.
I chose to stick to the HA alarm state definition to keep things compatible.
I must say that I’m not a big fan of the “pending” state name, I would rather call it “entry”.

1 Like

Alarmo “armed away” is disarmed when HA is rebooted. Shouldn’t it keep previous state?

Edit: Not only when HA is rebooted. It happens when automations are reloaded too . An automation is for disarming alarm pannel when a MQTT “on” payload is published. It should be related with that, but I still can’t understand why it happens.

Alarmo does restore its state after rebooting.
Maybe you use retained payloads for this MQTT topic, such that the automation is fired right after subscribing?

Thanks! It’s not a problem for me, I just wanted to make sure I didn’t miss something obvious :slight_smile:

I have also notet that several times when I have upgraded some things in HA (normally I do this remote, and when alarmo is armed) and it’s is disarmed when the system comes back up. but not every time.

1 Like

Hallo.

I am very satisfied with Alarmo so far but I have one challenge.
I sometime leave windows open when I go for a short walk. Is it possible to arm Alarmo anyway? At the moment Alarmo does not activate when some of the windows sensors is open.

@Bibabutzi Maybe you could use the armed_custom_bypass mode for this (configure it the same as armed_away but without those windows)?
Alarmo does not support the automatic bypassing of (some) sensors, as it compromises the security of your house.
Instead, you will need to confirm that you want to bypass sensors.
The easiest way to do so, is by configuring a push message with a force_arm button.

I totally get the point but there are situations where I take the risk :scream:
Can you provide an example for that? I didn’t use push with questions either force_arm.

Thank you

You might, but I don’t want Alarmo to decide which sensors can be safely ignored.
Its a delicate subject
 At least for now I want the user to confirm they want to bypass sensors.
I understand it can be inconvenient at times, but it can also be pretty helpful in case you actually forgot to close a window and you are leaving on holidays for two weeks.

See documentation on how to set up such a push message.

Ok thank you I found everythink. Unfortunately the yaml editor doesn’t work.

It is just empty

Edit: ok now with the v1.5.0b i see the yaml. Thank you beta looks great

is there a way to make codes work during a sertain time period (for someone like a babysitter that comes once or twice a week)? or onetime codes (for guests)?

If you have a smart lock you can use keymaster as the scheduler and disarm when a key code is pressed. this is done through node-reds and Matt in my case.

I have a water sensor set as “Environmental” device type, I have also enabled the “Always on” flag, but it triggers the alarm only when armed (no matter the mode), but not when it is disarmed.

I have noticed that when the sensor change its status, this error is logged:

Logger: homeassistant
Source: custom_components/alarmo/alarm_control_panel.py:515
First occurred: 7:29:09 PM (2 occurrences)
Last logged: 7:29:52 PM

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File “/config/custom_components/alarmo/sensors.py”, line 170, in async_sensor_state_changed
await alarm_entity.async_trigger(
File “/config/custom_components/alarmo/alarm_control_panel.py”, line 515, in async_trigger
entry_delay = self._config[const.ATTR_MODES][self._arm_mode][“entry_time”]
KeyError: None