• You've been granted Beta access to this site, allowing you to explore some of the new features while they're still under construction. More information can be found in the Beta forum.

Recording data from Elk sensors

jlegault

Active Member
Is there an established way to collect Elk sensor data (thermostat temp, probe temp, keypad temp)? I would like to start collecting so I can overlay with energy usage. Ideally I'd like to poll, time stamp, and stuff into a DB.
 

gcimmino

Active Member
jlegault said:
Is there an established way to collect Elk sensor data (thermostat temp, probe temp, keypad temp)? I would like to start collecting so I can overlay with energy usage. Ideally I'd like to poll, time stamp, and stuff into a DB.
The data is available via the Elk RS-232 protocol -- doc available on their web site.

So, if you have an attached HA system that understands the protocol, then perhaps that system can record/log the data for you.
 

electron

Administrator
Staff member
Take a look at my.Elk if you want to see the protocol implemented. It's very easy! If you have any specific questions, don't hesitate to post. If you have Homeseer, you can use my.Elk to do this.
 

electron

Administrator
Staff member
my.elk is an alternative to the HS elk plugin, it's a script instead of a plugin, and it's open source/free. If you download the HW_VSP software (free), you can use it with the ethernet interface as well. You can either use the code to write your own software, or if you have HS already, it's extremely easy to modify a few lines to log all the stuff to a dedicated db/text file.
 

johndoe74

Member
I've written a .NET application that connects to the ELK Ethernet module, parse the events and output them to a log file. Currently, I do not have time to update it so I am not sure if it's useful to you. But I can send it to you if you want. Here's a screenshot:
 

Attachments

  • elk.JPG
    elk.JPG
    87.6 KB · Views: 66
That is really cool. So you are just reading the logs, not actually directly interacting with the Elk variables, correct? So using the program to change something (like turn on a light) is not possible?
 

Mike

Senior Member
johndoe74 said:
I've written a .NET application that connects to the ELK Ethernet module, parse the events and output them to a log file. Currently, I do not have time to update it so I am not sure if it's useful to you. But I can send it to you if you want. Here's a screenshot:
That is very cool. I suspect if you post a copy here many will find it very useful (especially those who do not have homeseer so have not been able to take advantage of Electron's my.Elk.
 

WayneW

Senior Member
3DogKnight said:
That is really cool. So you are just reading the logs, not actually directly interacting with the Elk variables, correct? So using the program to change something (like turn on a light) is not possible?
I don't think it is reading the actual Elk "logs". The "logs" are where the M1 records all the arms, disarms & troubles. This tool appears to pick up all the data that the M1 spits out when things change. This is the same as the way that my.elk gets its data. This program appears to be logging only, so it would not control things or send data to the M1, but the Elk protocol supports it.
 
I would like to get a copy of the .net code. Are there specific calls or dll libraries that were acquired from Elk Products to make this work? Any documentaion on the supported protocol? I assume somewhere in the code you need to supply an IP address of the Elk, and password and port, etc., correct?
 

johndoe74

Member
Hi all, currently the program only parses info like Zone status changes, X10 changes, and Temp changes, because it's what interest me the most. It certainly can be enhanced to monitor other stuff (voltage outputs/inputs, Task, etc). It can also be enhanced to control M1 like their web application.

I have attached the program here. It requires .NET 2.0, and you need to modify elkm1.ini file to your config. Just enter the IP address/port, and your zone/x10 description in there. Oh, you need to open an unsecured M1 ethernet module port in order for this to work. I tried to use their SSL port but were unsuccessful so I gave up.

Lastly, use this at your own risk, don't blame me if it blows up your M1 :D (Don't worry, this program ONLY reads data from M1)

BTW, I am not sure if I am allowed to post binary to the thread, if not, then mod please edit this post, thanks.
 

Attachments

  • elkm1net.zip
    15.4 KB · Views: 191

Mike

Senior Member
3DogKnight said:
I would like to get a copy of the .net code. Are there specific calls or dll libraries that were acquired from Elk Products to make this work? Any documentaion on the supported protocol? I assume somewhere in the code you need to supply an IP address of the Elk, and password and port, etc., correct?
Unless I'm mistaken I suspect he just implemented the serial protocol that is on the elk site:

http://www.elkproducts.com/pdf/ELK-M1_RS232_PROTOCOL.pdf
 
Top