USB Drivers for the Home Heartbeat

 

The Eaton Home Heartbeat uses an FTDI serial to USB converter chip to interface to the host USB port on your PC. A Virtual COM Port (VCP) driver is needed for your operating system to communicate with this FTDI chip. Drivers are available for most operating systems from the manufacturer’s web site:

http://www.ftdichip.com/Drivers/VCP.htm

With the exception of the Macintosh, these drivers will not work as is. The Windows and Linux drivers have built-in Vendor ID and Product ID (VID/PID) values that do not include those used by the Home Heartbeat. Eaton never released drivers specifically designed to work with the Home Heartbeat, so we have to make some adjustments to the stock drivers to get them to work. What follows are installation instructions for Windows 7, Ubuntu Linux, and the Macintosh.

Installing the VCP Driver for Windows 7

Start by downloading the driver. Do not Install it just yet.

www.ftdichip.com/Drivers/CDM/CDM%202.08.24%20WHQL%20Certified.zip

You’ll need to unzip this file to a temporary folder. In this folder you will find two text files containing configuration data:

ftdibus.inf
ftdiport.inf

Each of these files contain reference to the VID/PID configurations. The default value for the VID is 0403 which is the same as used by the Home Heartbeat. There are several default values for the PID in the range of 6001 to 6015 as the driver supports multiple USB ports at the same time. To make the driver work with the Home Heartbeat you’ll need to replace all of the instances of 6001 with DE29. All of the other lines containing PIDs of 6010 through 6015 can be deleted as they are not needed for this application. Be sure and change all of the PIDs in both files.

Now you can install the driver as normal by following the instructions provided by FTDI:

http://www.ftdichip.com/Support/Documents/AppNotes/AN_119_FTDI_Drivers_Installation_Guide_for_Windows7.pdf

After installing the driver, you should probably reboot your computer, then you can test your new setup by running any serial terminal emulator program. Putty works well and can be easily installed with this utility:

http://the.earth.li/~sgtatham/putty/latest/x86/putty-0.62-installer.exe

Setup Putty for communication on COM3 (or whatever COM port is being used on your system) at 38400 baud, 8 data bits, 1 stop bit, no parity, and no flow control. Hit enter in the open Putty terminal window and the Home Heartbeat should respond with a line similar to this:

BASE-000D6F0000094E95

Congratulations, you are communicating with your Home Heartbeat.

Setting up the Ubuntu Linux FTDI Serial Driver (new method)

The old version of the ftdi_sio driver supported vendor and product options. If you are using an Ubuntu release that still  supports this then see the old method in the next section.

The FTDI serial driver module comes already installed with Ubuntu Linux. It needs to be loaded with the correct VID/PID for the Home Heartbeat. Create the file /etc/udev/rules.d/10-home-heartbeat.rules containing the following line of text:

SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="de29", RUN+="/sbin/modprobe ftdi_sio", RUN+="/bin/sh -c 'echo 0403 de29 > /sys/bus/usb-serial/drivers/ftdi_sio/new_id'", SYMLINK+="hhb"

When the ftdi_sio module gets loaded, a new device will be created as /dev/ttyUSB?. The question mark is because it is indeterminate what ttyUSB device will be assigned. An alias to this device is created as /dev/hhb as a more consistent device name.

The next thing to do is to test the connection to the Home Heartbeat with a terminal program. The program cutecom is simple to use and serves this purpose well. Configure cutecom for device /dev/hhb at 38400 baud, 8 data bits, 1 stop bit, no parity, and no flow control. As demonstrated in the Windows section above, hitting enter on the keyboard should elicit a “BASE” response from the Home Heartbeat Base Station.

Setting up the Ubuntu Linux FTDI Serial Driver (old method)

The old version of the ftdi_sio driver supported vendor and product options. If you are using an Ubuntu release that no longer supports this then see the new method in the previous section.

The FTDI serial driver module comes already installed with Ubuntu Linux. It needs to be loaded with the correct VID/PID for the Home Heartbeat. The quick and dirty way of doing this is as simple as executing this command from a shell prompt:

modprobe ftdi_sio vendor=0x0403 product=0xde29

You could simply place that line into the /etc/rc.local file. A better way would be to create a configuration file in the /etc/modprobe.d directory. This configuration file, possibly named hhb.conf, would contain:

options ftdi_sio vendor=0x0403 product=0xde29

Then the actual module would get loaded by placing its name in the /etc/modules file. When the ftdi_sio module gets loaded, a new device will be created as /dev/ttyUSB?. The question mark is because it is indeterminate what ttyUSB device will be assigned. It would be useful to have an alias that could be depended upon. Save the following text as the file /lib/udev/rules.d/10-hhb.rules, to create a device alias of /dev/hhb:

SUBSYSTEMS=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="de29", NAME="hhb"

The next thing to do is to test the connection to the Home Heartbeat with a terminal program. The program cutecom is simple to use and serves this purpose well. Configure cutecom for device /dev/hhb at 38400 baud, 8 data bits, 1 stop bit, no parity, and no flow control. As demonstrated in the Windows section above, hitting enter on the keyboard should elicit a “BASE” response from the Home Heartbeat Base Station.

Installing the VCP Macintosh Driver

As noted before, the Macintosh driver comes already configured to work with the Home Heartbeat. You can download the driver from:

http://www.ftdichip.com/Drivers/VCP/MacOSX/FTDIUSBSerialDriver_v2_2_17.dmg

and then install it with theses instructions:

http://www.ftdichip.com/Support/Documents/AppNotes/AN_134_FTDI_Drivers_Installation_Guide_for_MAC_OSX.pdf

You can test the installed driver with any serial terminal program. A freely available utility, called CoolTerm, can be installed from the following link:

http://freeware.the-meiers.org/CoolTermMac.zip

As with Windows and Linux, the CoolTerm application needs to be configured for 38400 baud, 8 data bits, 1 stop bit, no parity, and no flow control. Select the serial port, which should be usbserial-0000309F, or something similar. Press the Connect button, then hit the enter key and see the magic.

Trying Out the Home Heartbeat Commands

Now that you have a working serial connection to the Home Heartbeat, you’ll want to try the various commands supported by the device. There is another document that discusses all of these commands:

Serial Commands of the Home Heartbeat

 Posted by at 8:19 am

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)