Migrating from bwalarm

neither do I

Yep it’s working! Too bad that panel is gone. I use it all the time, i have all my wall mounted ipads switch to that panel when home is armed, super convenient and looks very sharp. Hope that doesn’t get removed

Works for me too. But hoping to see the Alarm side-panel again soon :D. Thanks for this awsome Alarm component. Exactly how the official Alarm component should have been.

You could try setting up the manual alarm to trigger immediately, but create the delay in your automations.

I’m just in the process of coding the manual_mqtt alarm. Here is my example code:

alarm_control_panel:
  - platform: manual_mqtt
    name: House
    code: 'xxxx'
    pending_time: 60
    delay_time: 60
    trigger_time: 600
    armed_home:
      pending_time: 0
      delay_time: 0
    state_topic: "paradoxCTL/in"
    command_topic: "paradoxdCTL/hassio/Arm"
    payload_disarm: 'disarmed'
    payload_arm_night: 'armed_sleep'
    payload_arm_home: 'armed_home'
    payload_arm_away: 'armed_away'
automation:
  - alias: '[Alarm] Armed Away-Instant Triggers'
    trigger:
      - platform: state
        entity_id:
          - binary_sensor.gym_multisensor_sensor
          - binary_sensor.motion_sensor_158d0001ad43db
          - binary_sensor.ensuite_multisensor_motion
          - binary_sensor.lounge_multisensor_sensor
          - binary_sensor.kitchen_multi_sensor_sensor
          - binary_sensor.paradox_z14_main_shed_pir
          - binary_sensor.paradox_z1_panel_siren_tampers
          - binary_sensor.paradox_z16_repeater_tamper
          - binary_sensor.paradox_z5_living_pir
          - binary_sensor.paradox_z15_garden_shed_pir
          - binary_sensor.paradox_alarm_triggered
        to: 'on'
    condition:
      - condition: state
        entity_id: alarm_control_panel.house
        state: armed_away
    action:
      service: alarm_control_panel.alarm_trigger
      entity_id: alarm_control_panel.house

  - alias: '[Alarm] Armed Away-Delayed Triggers'
    trigger:
      - platform: state
        entity_id:
          - binary_sensor.passage_multi_sensor_sensor
          - binary_sensor.paradox_z4_lounge_pir
        to: 'on'
    condition:
      - condition: state
        entity_id: alarm_control_panel.house
        state: armed_away
    action:
      - delay: '00:01:00'
      - condition: and
        conditions:
          - condition: state
            entity_id:
              - alarm_control_panel.house
            state: armed_away
      - service: alarm_control_panel.alarm_trigger
        entity_id: alarm_control_panel.house

  - alias: '[Alarm] Armed Home-Instant Triggers'
    trigger:
      - platform: state
        entity_id:
          - binary_sensor.gym_multisensor_sensor
          - binary_sensor.paradox_z14_main_shed_pir
          - binary_sensor.paradox_z15_garden_shed_pir
          - binary_sensor.paradox_z16_repeater_tamper
          - binary_sensor.paradox_z1_panel_siren_tampers
          - binary_sensor.paradox_alarm_triggered
        to: 'on'
    condition:
      - condition: state
        entity_id: alarm_control_panel.house
        state: armed_home
    action:
      service: alarm_control_panel.alarm_trigger
      entity_id: alarm_control_panel.house

  - alias: '[Alarm] Armed Home-Delayed Triggers'
    trigger:
      - platform: state
        entity_id:
          - binary_sensor.paradox_z6_alfresco_pir
        to: 'on'
    condition:
      - condition: state
        entity_id: alarm_control_panel.house
        state: armed_home
    action:
      - delay: '00:01:00'
      - condition: and
        conditions:
          - condition: state
            entity_id:
              - alarm_control_panel.house
            state: armed_away
      - service: alarm_control_panel.alarm_trigger
        entity_id: alarm_control_panel.house

You can use the automations with the standard manual alarm.

EDIT: so after doing some experimenting it seems that what the standard HA alarm lacks is a separation between a pending time and and exit delay. When setting a pending time, it gets used for both and exit and a trigger delay. So whatever you set that as it will be added as a delay to any sensor triggering the alarm.

1 Like

Dave, I’m interested to know if this message template still works with the manual alarm:

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 }}"

I’ll let you know once I iron out the current bugs… for some reason the HA sensors seem to send the alarm into ‘pending’ rather than ‘triggered’ then after a whole lot of waiting the alarm finally triggers…

EDIT: currently not getting any notification regarding the triggered sensor, but I’ll work on getting it sorted and post the answer if I get one.

EDIT 2: so after doing some experimenting it seems that what the standard HA alarm lacks is a separation between a pending time and and exit delay. When setting a pending time, it gets used for both and exit and a trigger delay. So whatever you set that as it will be added as a delay to any sensor triggering the alarm (actually I think this is only the manual_mqtt since it differs slightly from the manual alarm). The BWAlarm had a ‘warning’ state for when someone had triggered the alarm and the entry delay was counting down, the manual alarm does not have this…

You could kludge it by setting the pending time to 0 and automating the exit delay. Condition: alarm must be armed for x seconds for a particular group of sensors.

So far I can’t get the triggered sensor to be reported in a notification. I also tried the following:

message: 'ALARM TRIGGERED!!! {{ trigger.to_state.attributes.friendly_name }}'

but that didn’t work, got this error in the log:

Error executing script. Error rendering template for call_service at pos 2: UndefinedError: ‘trigger’ is undefined

That is a good idea to get around it

Yeah that’s what I figured would happen. The attribute changed_by is a bwalrm addition. A way around it is to set an input_text in the Triggers automation to the trigger.to_state.name and use that in the alarm triggered automation message.

You are working very well, I do not give achieved or pending, warning, trigguered, when you have everything you could share it, when you finish can I invite you to a few beers through PayPal?

Ugg I uninstalled this intending to try a reinstall and poof it disappeared! What’s the best way to get this back?

Downgrade home assistant to 0.114.4.

I successfully downgraded, however the integration is gone from the community integrations page and I see

Configuration invalid

                      Platform error alarm_control_panel.bwalarm - Integration 'bwalarm' not found.

Have you pressed the big ‘+’ in the bottom right corner of HACS?

That was it, thank you guys

Currently I have the manual_mqtt alarm working but as mentioned above, due to the limitations of it with regards to the pending status being used for both an exit delay and a warning timer, there is no way to have truly ‘instant’ alarms other than setting the pending time to zero and creating a custom exit timer setup. I haven’t gone into that yet as I’ve been busy. My code above works with the old BWAlarm automations for armed_away, armed_home, triggered and disarmed however I have to remove the templated notification message and simply have ‘triggered’, without the triggering sensor name. Looking at the docs for the normal manual alarm, I don’t think you will have the same issue with the pending timer because I think that one uses a second triggered timer. I unfortunately need the mqtt to integrate with my hard-wired alarm system.

I commented out those lines and all does appear to be well.

PS: Thanks fro the split Tinkerer.

I recently found Alarmo - it can be installed via the HACS store. Similar idea as bwalarm. The dev is very responsive and the implementation looks great. All config done via the UI.