Paid request - intergration with Elk M1 security panel

I did some of the integration and am currently stuck waiting for a bit more time. I have created a device which can plug into the serial pins and is capable or arming and disarming the alarm, but it doesnt yet do more than that!

I want to have a look at supporting the ethernet connection aswell as serial, since as mentioned above I think that is possibly more common?

It does support firmware updates, so it is easy to upload new firmware when ready.


Excited to see some action on an Elk integration, I was actually looking at giving up on Smartthings today and decided to check the forums. Surprise!

I have an Elk M1 and the M1XEP Ethernet interface. Happy to install and test anything thrown in my direction and provide assistance where I can. Technically capable, but no programming skills.

Would love to be able to arm/disarm, and use all the wired door and motion sensors already installed.


1 Like

I’ll set up something to share this week, it won’t be perfect as I have no test device(!), but hopefully some things will work and we can go from there!

I don’t know if it is helpful to you guys, but this forum (for a different platform) is also is helpful

If anyone needs an XEP for testing, I can lend you mine.

CJCharles, I don’t know how I missed this post earlier.

I am happy to share access to my panel through a port forward since I am not actively using it as my primary alarm. Let me know the best way to share the information with you.

Hi, any integration that we can upload and test out? Thanks

Really interested in trialling this integration out. Have been looking for a way to integrate my smart things with my elk m1.

Happy to be the tester if required.

Any luck with it?

Sorry, totally ran out of time after a job change. What I’ll do is package up my first go at the firmware this weekend, which will go on an ESP based chip. You can buy yourself or from the site I setup to sell my Visonic alarm integration. If you are using network control then the NodeMCU/Heatmiser integration will work as base firmware, if you might use power from the alarm panel then get the Wemos/Visonic kit.
The first go includes features which should allow you to set and unset the alarm, but wont yet allow use of the alarm sensors or read alarm panel state. I hope that if this works as planned then I can add the sensor/alarm status afterwards via a 2 minute firmware update which you can do from the web dashboard.

That sounds fantastic. Of course we appreciate all your efforts to the cause. I would like to buy from your site to support you. Between the two options, which one would you recommend? I already have an ELK M! XEP network interface hooked up to the serial port. Should I go with the NodeMCU/Heatmiser option?


If you have the network interface already then just get the NodeMCU as you can power it easily from micro USB and can be anywhere within range of your WiFi (in theory as I havent tested things!).
Thanks for the offer of support, lets see how things go with first steps and can then make a decision about best way to proceed based on how long it might take and who else might be able to assist if I build the framework (given my shortage of time now :frowning: )

1 Like

I’ve been following and have been very interested in the integration. I purchased the node and look forward to moving forward with this.

1 Like

Same here. Purchased and eager to get things rolling. My Elk M1 is hooked up to some zones, but is not my primary alarm system yet. If you need it to test zones, just let me know.

I came across this node-red library that might also be helpful.

Ok both, I hope the NodeMCU has arrived by now (or will have in the next day or so).

It has taken a LONG time to package everything up and merge the changes between multiple different codebases which I have for other projects (they all seem to be needed in some reason or other for this such as forwarding requests or connecting to external devices such as the Elk).

I think the current status is that we should start to have some control options working and that is all for now, though as Ive said without any option of testing it might do absolutely NOTHING in the first few versions! Lol, once Ive got the connection up and running to the alarm (for control), then it should be fairly logical and easy (if time consuming) to start to get alarm/zone status back from it.

  1. Start by giving the device WiFi credentials by connecting to its access point which you should see as an open router you can connect to on your phone. Then you can type in credentials and disconnect, you should then find it on your own WiFi network by looking in the router for its IP address (or it should show up in Windows Network places).

  2. Then you need to update the firmware to this:

  3. Then you need to configure the device which is all done through web commands as below (you can do this from a browser or something like that):
    Note that the password is effectively the pin, and if you have a 4 digit pin then prefix two zeros so that it is 6 char, i.e. if pin is 1234 then your PIN_CODE_FOR_ALARM should be 001234
    A completed request string might be as follows:

  4. Then install the device handler if you want to have the basics of ST control, though if you cant arm/disarm from the webpage of the NodeMCU then adding it to ST will not help you…:

  5. Let me know whether the arm/disarm buttons do anything!!

Thanks so much for the efforts! It hasn’t arrived yet, but I am looking forward to receiving it!

Progress! I have connected the node and am able to Arm the alarm from the webpage but it seems as though after 1 command is sent that you can’t do anything else unless you reset the node. I have installed a generic device with the device handler. Right now it seems to not be operable but I’m going to work with it some more and will provide an update.

Thanks for your work on this!

What do you mean by generic device with the device handler?

Thanks for the feedback, glad to hear that it is partially doing something, its a positive step I think as it means it can connect with the alarm, I just need to look at why the connection drops out. It is possibly something to do with it not being held open, and possibly to do with more messages arriving from the alarm (which I havent coded how to deal with yet). I am mentally busy this week but will aim to give it another look next weekend to sort that problem as a first step!

I corrected the issue with device type. Disregard…

I’m willing to help out. I have an ELK M1 XEP and will order the NodeMCU. Additionally, I’m not sure if this will help, but I have a RPI running homebridge to link the ELK to Apple’s Siri.