Toggle door chime feature with DSC alarm + Envisalink?

All,

I have a Home Assistant setup connected to a DSC alarm panel via the envisalink package and an EVL-4. Without doing any special configuration, I have a “Home Alarm Keypad” sensor (?) at the top in HA. When I click on that “Keypad”, the window includes a state for “chime” which does track the state of the door chime on my DSC. I’d love to have a switch or button in HA that I can use to control the “chime” feature, but I haven’t been able to find any sample configuration. It looks like there was a toggle chime feature implemented for the alarmdecoder type of alarm, but I don’t see anything similar for the envisalink component. I can toggle the chime feature on/off by either holding the chime button down on any keypad, or entering the sequence “*4” into any keypad or sending that to the Envisalink. Ultimately, I’d like something where I could switch it on/off at specified times, but it seems like that’s the easy part if I have a switch to operate on.

Does anyone have a suggestion for me on this? I’d love sample config to copy/paste, but even a bread-crumb of where to start would be appreciated …!

Hi pieceofMind

I am trying to implement the same functionality. I am very new to Home Assistant so am still exploring…

I had partial success by adding the following to scripts.yaml:

 button_test:
   alias: 'Toggle Alarm Chime'
   sequence:
     - service: alarm_control_panel.envisalink_alarm_keypress
       data:
         entity_id: 'alarm_control_panel.home'
         keypress: '*4'
     - delay: 00:00:03

What I found is that the Chime status always reset to False after re-starting the Pi, but this may be an issue reading the status back from the panel? I need to spend more time testing this - so please send an update if you make any progress.

Regards, FXS

@FXS how do you expect to “read the status back from the panel” ?

If I click on the “Home Alarm Panel” icon at the top of my HomeAssistant installation (I think these are sensors that haven’t been added to cards), I get a pop-up that has my alarm panel’s status – if it’s alarming, if there is an alarm in memory, if it is armed, if it is armed away, if there is AC power present, if it’s armed bypass, if the door chime feature is toggled, etc … And when I have tested it, the chime status is accurate. That particular field is not as far as I can tell exposed as like a binary sensor in HomeAssistant, but the EVL4 (and HomeAssistant) do appear to have the ability to read the status of the chime, but that might only be after a command has been sent to the EVL4 or some other keypad action has happened.

I wonder if @Cinntax can assist with this? I get the same status for the Alarm Keypad, but the “Chime” state will always default to false if I restart Home Assistant. I think this applies to the other settings as well.

If I change the Chime State, it will then reflect the correct state. Thats i until HA is restarted.

The only way to reliably “read” the current Chime State is therefore to change it twice!

I did take a look at the pyenvisalink code, as well as the Envisalink API information.
Unfortunately i think we’re out of luck here- upon initialization of our connection to the envisalink device, we’re already asking the panel to send all information over to us, so we can set the proper status. I don’t see in their documentation that there is a way to query the chime on the DSC panels, or any way that they report it to us other than what you’re/we’re already doing.

I did a quick search in their support forums as well to see if I was missing anything, and it just simply appears to be a limitation of the envisalink/DSC boards (not sure which to be honest).
http://forum.eyez-on.com/FORUM/viewtopic.php?f=6&t=849&p=3796&hilit=get+chime&sid=40a718518d85f9ca36d7bf64ddce44f8#p3793
Sorry!

But to confirm, we CAN SET the chime with the *4 like you’ve said and when you do so, the envisalink should respond back to us with a confirmation of it’s new status. Unfortunately i don’t see any other functionality related to chime in their documentation than that though :frowning:

This works for me. I setup a script that sends the keypress command to the panel.

'1519188522874':
  alias: Toggle Alarm Chime
  sequence:
  - data:
      entity_id: alarm_control_panel.the_happy_pot
      keypress: '*4'
    service: alarm_control_panel.envisalink_alarm_keypress

Breaking changes to Home Assistant are absolutely killing me. Every update risks an outage as I don’t have a CI/CD pipeline into my home with a spare lab to testing this beast and I’ve got family to keep happy, peace of mind and security concerns about any change. Anyhow, biting the bullet and upgrading after 6 months and it’s killing me. I’m literally going to bleed out on the floor here! I updated 3 days ago, config tests are passing, but now I discover commands sent to my keypad don’t work any longer. I found this diff to the documentation. https://github.com/home-assistant/home-assistant.io/pull/11303/files
Here’s what I have now for a script to toggle my chime:

---
# alias: 'Toggle Envisalink Chime'
sequence:
  - service: alarm_control_panel.alarm_keypress
    data:
      entity_id: 'alarm_control_panel.home_alarm'
      keypress: '*4'
  - delay: 00:00:02

Anyone been through this update and can offer a hint to what I’ve over looked in the renaming of the service ? Appears this should be as simple as changing the text envisalink_alarm_keypress to alarm_keypress

-  - service: alarm_control_panel.envisalink_alarm_keypress
+  - service: alarm_control_panel.alarm_keypress

I figured it out… Maybe this will help someone else.

-  - service: alarm_control_panel.envisalink_alarm_keypress
+  - service: envisalink.alarm_keypress


1 Like