Honeywell/Ademco alarm central station [updated]

For what it’s worth, I decided to start digging into how ancient alarm systems work, and how alarm central monitoring services do their job.  Why?  Well, paying between $8 and $40/month for a service seemed a little crazy, and paying AT&T one single penny, much less $25/month for a landline that saw no other use was even worse.   I probably have about 30 hours into it, which means my work will be paid back in about 45 years… but I’m not giving any more money to AT&T.

In the end, I learned how to decode the protocols and wrote my own central station monitoring system which can either supplement (as a more advanced call center) or replace entirely the central office dispatch.  The alarm I’ve tested against speaks the Honeywell / Ademco / SIA Contact-ID protocol and is a Honeywell Ademco Vista V20-P, but it can work with anything that talks Ademco Contact-ID.

It was surprisingly easy to bring up the Asterisk PBX program, and configure it to receive messages over the phone from my alarm.  In fact, after doing it on my server at a colo facility, I brought up a second instance on a $35 Raspberry Pi.

What does it do?  Accepts any/all alarm or status or trouble messages that these panels generate.  Then it issues alerts to interested parties via:

  • a voice based telephone call
  • e-mail
  • SMS (via Google Voice)
  • twitter direct messages
  • Boxcar

What I’m looking for now — some beta-testers who are clueful enough to program their alarm panel to add my server as a secondary alarm station.

Code is released under GPL 2.0, and was derived from code originally written by Uros Indihar.  Contact me by e-mail if you know it, or leave a comment if you don’t.

Updated:  The code is now on github