Eaton Home Heartbeat

From Bloominglabs
Revision as of 18:13, 18 November 2013 by Dosman (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

As will happen I got an email from a home automation store I occasionally buy from. Hiding at the bottom was an advert for a house monitoring system which was being clearanced out. It was a strange product called the Home Heartbeat by Eaton. It's not a security system and it's not a home automation system. It's just for informational purposes as they say. Released around 2006 it came with a half dozen ZigBee connected sensors and a base station which has a modem to call a central notification service ran by Eaton. This apparently allowed the system to send text messages when the home owner was away. So in 2011 the call-home service was discontinued by Eaton and everyone who had the gear who relied on the text messaging service was SOL. However at the end of 2013 there is still a lot of the new-old stock being sold at a super discount.

So the original price of the base station "starter pack" was around $250 and I had the opportunity to pick one up including a door and water sensor for under $50 with shipping which I took advantage of. I did some quick googling and found that the base station was easy to communicate with via it's built in FTDI USB interface. Also most of the data output format had been decoded and documented so I took the chance that I could extend this system with some shell or perl scripting.

Once I got my unit I was able to get a perl script running which outputs useful human-readable data. There are a couple good sites with information about this system but no one has yet posted a monitoring script. Mine is posted at the bottom.

I have the base station (comes with a Home key), motion sensor, water sensor, open/close sensor, and power sensor. The "Home key" allows you to receive notifications when you are within range of the base station. When you are out of range this apparently told the base station to call-home and text you when there was a worthy notification. The Home key is also used to program new sensors into the system. Apparently there is a reed-relay in each sensor and the key which allows for simple ZigBee pairing just by sliding the key into the top of each sensor.


Sensor List

  • Open/Close sensor
  • Motion sensor
  • Water sensor
  • Garage door sensor (tilt sensor)
  • Power monitor sensor
  • Attention sensor
  • Reminder sensor
  • Remote water shutoff

Additional parts

  • Home key (key ring adapter, has multiple purposes)
  • Base station
  • Broadband gateway

Connecting with minicom

So the first gotcha is that the vendor ID for the base station is unique. It's still just an FTDI USB serial device though and that is easy enough to fix (at least on Linux).

  • Add modprobe line for ftdi_sio driver, get vendor and product lines from lsusb (RHEL5/6 and CENTOS 5/6):
    • echo "options ftdi_sio vendor=0x403 product=0xde29" > /etc/modprobe.d/ftdi_sio.conf
  • If you want to get fancy add a udev rule like this to /etc/udev/rules.d/50-udev.rules or similar to get a /dev/hh device:
    • ATTRS{idVendor}=="0403", ATTRS{idProduct}=="de29", SYSFS{product}=="HHB Basestation", SYMLINK+="hh", GROUP="uucp", MODE="0660"
  • Next reload ftdi_sio (as root) and it should be picked up correctly now:
    • modprobe -r ftdi_sio
    • modprobe ftdi_sio

Now you should have a new /dev/ttyUSBx device and possibly a /dev/hh device if you added the udev rule (not required). The connection settings are 38400 8n1, any terminal program will do. The serial interface has a built-in help screen (type ?) with lots of commands. This is all well documented at some of the other sites talking about Home Heartbeat so I won't rehash that here.

Perl script

Coming soon.

Further work

One thing I am interested in is being able to build my own sensors which can interface to the system. I already am working on a separate environmental monitoring system for my house however I'd love to reduce its footprint by expanding this nice system. The sensors use ZigBee which is great and the base station reports that it's on channel 9. ZigBee channels 1-10 are all on the 900MHz band (11 on up are in the 2.4GHz band). The bad thing is that the 900MHz ZigBee dev boards for testing are not nearly as common these days. However I did manage to find someone who still makes a 900MHz ZigBee Arduino shield which is my forte. I would have to see if Eaton is using any encryption on the ZigBee network, if they are not it shouldn't be too hard to add your own sensors. However there hasn't been much work published on sniffing the 900MHz channels. It shouldn't be too hard, maby with some help I could get this part moving forwards.

Other sites with info

This site has the base station state table protocol decoded. My script follows their definitions so it should support any sensor I don't have yet.

Another site with some info. The comments on the articles can be useful:

Personal tools