YET another take on an alarm system

now i get this error

Blockquote
Invalid config for [automation]: expected a dictionary. Got OrderedDict([(‘homeassistant’, OrderedDict([(‘name’, ‘The Darkside’), (‘latitude’, 55.727203), (‘longitude’, 12.336668), (‘elevation’, 34), (‘unit_system’, ‘metric’), (‘time_zone’, ‘Europe/Copenhagen’), (‘customize’, OrderedDict()), (‘packages’, OrderedDict([(‘sovevarelset’, OrderedDict([(‘homeassistant’, OrderedDict([(‘customize’, OrderedDict([(‘light.tradfri_bulb_e14_ws_opal_400lm’, OrderedDict([(‘icon’, ‘mdi:spotlight’), (‘friendly_name’, ‘Lampen i soveværelset’)]))]))])), (‘group’, Ordere… (See ?, line ?). Please check the docs at Automation - Home Assistant
2:10 PM config.py (ERROR)
Invalid config for [automation]: [alarm_control_panel] is an invalid option for [automation]. Check: automation->alarm_control_panel. (See ?, line ?). Please check the docs at Automation - Home Assistant
2:10 PM config.py (ERROR)
Invalid config for [automation]: [platform] is an invalid option for [automation]. Check: automation->platform. (See ?, line ?). Please check the docs at Automation - Home Assistant
2:10 PM config.py (ERROR)

Blockquote

those 2 line items need to be in configuration.yaml and not automations.yaml

Done, reloaded

Blockquote
Invalid config for [automation]: expected a dictionary. Got OrderedDict([(‘homeassistant’, OrderedDict([(‘name’, ‘The Darkside’), (‘latitude’, 55.727203), (‘longitude’, 12.336668), (‘elevation’, 34), (‘unit_system’, ‘metric’), (‘time_zone’, ‘Europe/Copenhagen’), (‘customize’, OrderedDict()), (‘packages’, OrderedDict([(‘sovevarelset’, OrderedDict([(‘homeassistant’, OrderedDict([(‘customize’, OrderedDict([(‘light.tradfri_bulb_e14_ws_opal_400lm’, OrderedDict([(‘icon’, ‘mdi:spotlight’), (‘friendly_name’, ‘Lampen i soveværelset’)]))]))])), (‘group’, Ordere… (See ?, line ?). Please check the docs at Automation - Home Assistant
3:25 PM config.py (ERROR)
Invalid config for [automation]: required key not provided @ data[‘action’]. Got None required key not provided @ data[‘trigger’]. Got None. (See ?, line ?). Please check the docs at Automation - Home Assistant
3:25 PM config.py (ERROR)
Invalid config for [automation]: [platform] is an invalid option for [automation]. Check: automation->platform. (See ?, line ?). Please check the docs at Automation - Home Assistant
3:25 PM config.py (ERROR)

Feature request: Require pin code also when arming the alarm.

We’ve got kids and this feature would be a must so they can’t activate the alarm system without permission. Is this a reasonable request?

It seems from the error you have posted you have an issue with one of your automations?

Certainly I’ll add it to the next release

Hi Folks,

I’ve been out of action for a little while however I’m busy working on cleaning up the interface and implementing themes when I get a chance.

I’d appreciate some feedback on the images below. Hopefully the content is responsive enough for most if not all devices/resolutions (+landscape/potrait modes) and I’ll likely add some options in the settings popup to further customise the UI (force portrait/landscape, button shape etc)

The three buttons at the bottom allow you to show toggle between the keypad (in mobile mode), the log (if enabled with user specific codes and pictures), Sensor Groups and a settings page.

11 Likes

I’m pretty sure I can get floorplan to show as a statecard within this setup so that it removes the extra menu in the embedded window. I’ll take a look and get back to you. I also use floorplan and its awesome!

2 Likes

Nice! looking forward to the finished product. Nice work!!

Please share if you get it running properly. The new interface looks slick.

I’m so excited to try this new updated. Hope you upload soon.

I really like this new design. Would it be possible to add a password manager in the settings? It would be nice to be able to change user passwords and create passwords which only work between certain hours (for cleaning lady for example) via the web interface.

This is something I had been considering myself, the more we can edit in a user friendly settings menu the better especially with the WAF. Conscious this would need to be secured via an admin password.

Time based passwords would be great, I’ll add it to the list of things to add.

I have user passwords working with logging now.

2 Likes

I love this alarm and have been using it for a long time now and I’m really looking forward to the new interface. It looks amazing.

I’ve been having an issue since the update where the states were split apart and allowed for different sensor groups.
I cannot get the override option to work. I’ve made sure that all files have been updated, and verified that the sensors are named correctly. I even tried using the default alarm.yaml only replacing with my sensors.
I’ve scrolled through the thread and haven’t seen anyone talking about the issue. Any ideas or solutions anyone is able to provide is much appreciated.
Thanks in advance!

I’ll take a look, I may not have wired up the override code correctly.

[edit] as suspected the front panel doesn’t account for the split out states.

I’ll try and get a version of the panel out over the weekend

1 Like

Awesome! Thanks for all the hard work you put into this amazing component!

Hi, I have a feature request (not sure if its inside already).

Tonight the alarm went on, all siren sounded, big panic. We went, half asleep, all over and we are not sure what caused it to trip (the armed at home has only windows/door sensors) because all door/windows were closed (they have xiaomi windows/door sensors). We still do not know what happened, had to go to work, later will try to check the log of the sensors

My request is to have a log of what caused the alarm to trigger, inside your component.

Is this possible?

You could set your notification of an alarm to tell you what sensor tripped it. Like this:

- id: alarm_triggered
  alias: '[Alarm] Triggered'
  trigger:
  - platform: state
    entity_id: alarm_control_panel.house
    to: triggered
  action:
  - service: switch.turn_on
    entity_id: group.alarm_outputs
  - service: notify.ios_iphone
    data_template:
      message: ALARM TRIGGERED!!! {{ states[states.alarm_control_panel.house.attributes.changed_by.split(".")[0]][
        states.alarm_control_panel.house.attributes.changed_by.split(".")[1]].name }}
      data:
        push:
          badge: 0
          sound: "US-EN-Alexa-Motion-Detected-Generic.wav"
          category: "disarmalarm"
        action_data:
          entity_id: group.alarm_outputs
1 Like

Hi there,

I’m having some strange issues… I have setup so that I use the HASwitchPlate (HA SwitchPlate - DIY LCD Touchscreen wall switch replacement) as my input for the alarm system. And it works great! Except for one situation where I can’t find what is wrong.

So I can arm the system from my alarm page och the HASwitchPlate, and put my code in on the touch-numpad to disarm it (first numbers then i Push “disarm”). In addition to this I have a script running, flashing a light on and off, while the system is arming(i.e. Pending). I then tried to add a similar light flashing if the system goes into triggered mode. But for some reason I’m not able to disarm it from my touch-numpad while it is in triggered mode!

Here are my scripts:

## Flashing Alarm Light While Arming
flash_arming_light1:
    alias: Flash Arming Light Loop 1
    sequence:
      - alias: Turn light on to Blue loop 1
        service: light.turn_on
        data:
          entity_id: light.sn1_led
          brightness: 255
          color_name: blue
      - delay:
          # time for flash light on
          seconds: 1
      - alias: Move to loop 2
        service: script.turn_on
        data:
          entity_id: script.flash_arming_light2
flash_arming_light2:
    alias: Flash Arming Light Loop 2
    sequence:
      - alias: Turn light on and to red loop 2
        service: light.turn_on
        data:
          entity_id: light.sn1_led
          brightness: 255
          color_name: purple
      - delay:
          # time for flash light on
          seconds: 1
      - alias: Move back to loop 1
        service: script.turn_on
        data:
          entity_id: script.flash_arming_light1
          
## Alarm Triggered
flash_trigger_light1:
    alias: Flash Trigger Light Loop 1
    sequence:
      - alias: Trigger loop 1
        service: light.turn_on
        data:
          entity_id: light.sn1_led
          brightness: 255
          color_name: red
      - delay:
          # time for flash light on
          seconds: 1
      - alias: Move to loop 2
        service: script.turn_on
        data:
          entity_id: script.flash_trigger_light2
flash_trigger_light2:
    alias: Flash Trigger Light on Loop 2
    sequence:
      - alias: Trigger loop 2
        service: light.turn_off
        data:
          entity_id: light.sn1_led
      - delay:
          # time for flash light on
          seconds: 1
      - alias: Move back to loop 1
        service: script.turn_on
        data:
          entity_id: script.flash_trigger_light1

And here are my automations:

Light go Red When armed

  • id: light_armed
    alias: ‘[Alarm] Armed Light On’
    trigger:
    • platform: state
      entity_id: alarm_control_panel.house
      to: ‘armed_away’
      action:
    • service: script.turn_off
      data:
      entity_id: script.flash_arming_light1
    • service: script.turn_off
      data:
      entity_id: script.flash_arming_light2
    • service: light.turn_on
      data:
      entity_id: light.sn1_led
      brightness: 255
      color_name: red

Light go Green When disarmed

  • id: light_disarmed
    alias: ‘[Alarm] Disarmed Light On’
    trigger:
    • platform: state
      entity_id: alarm_control_panel.house
      to: ‘disarmed’
      action:
    • service: script.turn_off
      data:
      entity_id: script.flash_trigger_light1
    • service: script.turn_off
      data:
      entity_id: script.flash_trigger_light2
    • service: light.turn_on
      data:
      entity_id: light.sn1_led
      brightness: 255
      color_name: green

Blinking light while arming

  • id: light_arming
    alias: ‘[Alarm] Arming Light On’
    trigger:
    • platform: state
      entity_id: alarm_control_panel.house
      to: ‘pending’
      action:
    • service: script.turn_on
      data:
      entity_id: script.flash_arming_light1

Blinking light if Triggered

  • id: light_trigger
    alias: ‘[Alarm] Trigger Light On’
    trigger:
    • platform: state
      entity_id: alarm_control_panel.house
      to: ‘triggered’
      action:
    • service: script.turn_on
      data:
      entity_id: script.flash_trigger_light1

Any ideas?

Hello all. I have a quick question that I’m probably missing something on. I’ve been running this panel for a while and really like it. I’ve used the custom element option to display an ifram of a live feed from my camera that displays the front door. Today, I switched my setup so that is not encrypted. My camera frame still appears but the feed is not longer there. Below is my relevant code. Is there a change that I can make for this to work again. Ideally, I’d like to display as Home Assistant does in the views and not use the iframe option, but I’m willing to do either. I’ve tried just simply putting camera.front_door in the custom element, but that only displays those words below the sensors area. I thought that would be the case. Any help would be appreciated. I’ve posted my custom element html below.

					<!-- ADD YOUR CUSTOM HTML HERE. This could be liver camera views, custom buttons, rotating picture gallery -->
<dom-module id="custom-element">
	<template>
        <div style='text-align: center;'>
            <iframe src="http://camera_url:port/video.mjpg?oid=4&size=600x450&keepAR=true&overlay=false" width="600" height="450" scrolling="no"></iframe>
            		
         </div>
   </template>
</dom-module>

<script>
    Polymer({is: 'custom-element'});
</script>