ELK M1 Interface

I know very little about the C1M1, so clearly I have not tested with it. The marketing material makes it sound like you can access your Elk over the local network. Does the C1M1 have an IP address on the local network? What happens when you try to connect the integration to that address? Debug logs would help. It could be something simple with the login sequence. Or it could be something way out of scope. I’ll take a peek if someone provides more info.

On the top of page 4 of this document: https://elk-manuals.s3.amazonaws.com/C1M1-ElkCommBd-Manual-Addendum.pdf it talks about the ways to connect.

Looks like using the USB port should work and connect using the serial option in the HA integration. Alternatively, if you read further down the page the “legacy” ElkRP connection methods look like they should work.

Appears, that there are a couple of things that can be tried. As always, logs may help you or others helping you :wink:

@gwww I’m dipping my toes into Home Assistant after 10 years with ISY. I chose ISY for elk and zwave. I have Polisy hardware that i was thinking of moving to, but to be honest i think their ecosystem and outlook is a generation behind. The only reason to do that painful migration to Polisy vs. moving to Home Assistant would be if HA is not going to be as robust - especially on the Elk front. So my question is - should I use the native Elk HA integration, or leave it to Polisy? i know that’s an odd question given that you are a force behind the Elk integration…but I appreciate your thoughts.

I’m an early user of the Elk integration in Home Assistant. Previously, I had written some code to talk to the Elk for some ad-hoc purposes, too. I’ve found the Elk integration to be very reliable. I’ve found it more reliable in practice than the Z-Wave and Zigbee devices that I have (which actually work quite well on their own…) Having all those hard-wired zones on the Elk delivers reliable behavior.

I rely on zone sensors quite a bit (mostly door sensors and PIR motion detectors) and would notice very quickly if things went wrong. But they haven’t had issues.

I’ve been able to have two different Home Assistant instances talk to the Elk at the same time; I have my “live” system and occasionally a test-instance of HA that I occasionally run. So you have an option to maybe try both Home Assistant and Polisy or ISY at the same time and have a soft cut-over. Just something to think about…

That’s awesome to hear. thank-you. I just installed the integration. I did have to dust off an old VM with RP2 running to setup a login/pass for the integration. Literally within a minute it was up and required nothing from me to nail it. And it’s able to communicate with the M1 while the ISY is running. Very nice.

Great to hear! Early on, I used some X-10 floodlights managed by the Elk’s X-10 interface from Home Assistant, and that worked great. At least until the X-10 floodlight finally crapped out and got replaced. I’m pretty please with how complete the coverage is of the Elk features.

I also was able to get the Elk to speak phrases, driven from Home Assistant, but I don’t use that because my wife isn’t amused… And the Elk has a somewhat limited vocabulary compared to the Alexa medial play TTS capability, or other similar generalized TTS services. Still, that feature is out there. Maybe for April fools day or something…

Can someone point me in the right direction? I can’t seem to get my integration to allow me to “Arm” my elk. i can trigger rules, see the status in real time - but I cannot arm it. It does not even acknowledge that it is trying to arm it. When calling elkm1.alarm_arm_home_instant, I get nothing in response. I suspect there are many things that could be wrong, just need a point in the right direction before I tear out the integration and try it again. Also, if there is a way for me to edit the HA-assisted/automated integration, that would be helpful too - have no idea where to look for that configuration file since it was an automatic integration. TIA!

Were you trying to arm the system using the developer tools? In Developer Tools → Services you can do something like this:

service: elkm1.alarm_arm_home_instant
data:
  code: 1234

Was there anything in your logs?

I just updated my M1G to 5.3.14 and XEP to 2.0.48.

I deleted the integration and restarted to re-integrate from my configuration.yaml. I had to change to the secure port and specify TLS 1.2, but the integration loads, yet it is now titled: ElkM1 badbad.

That doesn’t sound very goodgood, but things seem to work. How do I debug this?

Well that is a first! I’ve never seen it come up with a name like that. SInce you deleted and reinstalled, did you consider using the UI to turn turn on the integration? Sometime last year I switched and I’m happy with it. For all the extra entities that are created that I don’t want I just disable them. When I added binary_sensors last year that resulted in a number of “duplicates”.

Since you’ve been editing the YAML config, perhaps take a look in the .storage subdirectory. Once in there just grep badbad core.*. Maybe that will give a clue where it came from.

The only other thought I have is that since you had an Elk integration, deleted it, and then reinstalled it somehow the name from your previous installation is still around. Maybe another grep for your old name will give some clues. Use grep for sleuthing around to understand what’s going on. I would not advise that you edit anything in .storage.

Thats slightly hilarious. I bet the mac address ends in BA:DB:AD

I started writing a really long post of all the permutations I’ve gone through that involved reloading the integration probably more than twenty times.

But the bottom line is I just renamed it in integrations.

Cheers,

I don’t recommend editing. If you decide you really want to, make sure you have a solid full backup :grimacing:

1 Like

FWIW, after reinstalling with UI config my sensor.elkm1 is now called sensor.elkm1_elkm1

Cheers,

Ok, I figured it out, I need to send a data attribute with the API call, which the UI components don’t seem to support properly. I can create an automation that works now - thank-you!

OUT 2 is set to voltage (Option 26). I have it linked to Home Assistant, but when I turn on the output, I’m not reading any different voltage at the panel, even after waiting for the five-second delay. The output goes to a relay, so there is no problem with current draw.

How would I debug this?

Take a look in ElkRP. You should be able to get the status of outputs there. If that doesn’t tell you anything then turn on debugging for the Elk integration and share the logs.

1 Like

This is what I did if it’s helpful in my dashboard.

type: custom:mushroom-alarm-control-panel-card
entity: alarm_control_panel.elkm1_area_1
tap_action:
  action: call-service
  service: elkm1.alarm_arm_night_instant
  data:
    code: '####'
  target:
    entity_id: alarm_control_panel.elkm1_area_1
hold_action:
  action: call-service
  service: alarm_control_panel.alarm_arm_away
  data:
    code: '####'
  target:
    entity_id: alarm_control_panel.elkm1_area_1
double_tap_action:
  action: call-service
  service: alarm_control_panel.alarm_disarm
  data:
    code: '####'
  target:
    entity_id: alarm_control_panel.elkm1_area_1
fill_container: false
name: Alarm System

Can anyone advise if it is possible now, or anticipated to be possible in some future update to receive Elk’s users as actionable entities in home assistant? I apologize if this query should have been posted in a feature request.
Acknowledging the same apology, is it also possible or anticipated to be possible to have home assistant poll the M1 to create a continuous log of the Elk events to avoid the 512 event limitation within the M1?
We do not use the M1 for any alarm conditions, only for access and other control functions.

Does anyone know how to pass any message the Elk may display on the keypad to Home Assistant in a way I can get the push notification to my phone? I have sensors from the Elk working in HA. But if I get some random message on HA and don’t have code to watch that sensor I won’t get a notification. I was looking for something more generic to take any message and relay it. Thanks!