Tuesday, August 01, 2006

X-10 to Z-Wave Bridge

Situation: You want to use an X-10 PalmPad and your existing X-10 interface on your HomeSeer system to control Z-Wave devices. Or, you have both X-10 and Z-Wave devices on the same devicecodes (or on the different housecodes but the same unitcodes), and you want to ensure that if you turn on the X-10 one from a PalmPad, the Z-Wave one comes on as well.

Solution: Create a single event in HomeSeer. The trigger should be X-10 Received. Select the housecode that the X-10 devices are on. For the unitcode, choose Any, and for the command, choose Any. The action is a script command, as follows:

If the devices are on the same housecode:
&hs.ExecX10 hs.StringItem(hs.LastX10,2,";"), hs.StringItem(";on;off;dim",hs.StringItem(hs.LastX10,3,";"),";")

If the devices are on different housecodes:
&hs.ExecX10 "q" & mid(hs.StringItem(hs.LastX10,2,";"),2), hs.StringItem(";on;off;dim",hs.StringItem(hs.LastX10,3,";"),";")

Change the q in the latter to whatever housecode you want to control. For instance, to use a PalmPad set on housecode D to control Z-Wave (or indeed, any) devices on housecode R, make the event trigger be housecode D, and change the "q" to "r".

Limitations: This will work for on and off, but not quite for dim; that requires a tiny bit more smarts, but more than will fit in a one-liner. Maybe someday I'll write an actual script to do that; it would only be a few lines long.

This depends on you receiving X-10 commands into HomeSeer in some way; usually that's a PalmPad, keychain remote, sticky-switch, motion sensor, etc. working through an MR26A, TM751, W800, etc. but it could also be other devices putting X-10 onto the powerline (such as PowerFlashes) and this being picked up by your CM11A, Ocelot, etc. Simply operating the local control on an X-10 device will not generally do this, since most will not transmit when operated locally.

Doing this the other way around (Z-Wave to X-10) would be harder since not all Z-Wave devices will notify HomeSeer when they've been changed, whether locally or remotely, and since the Z-Wave USB interface won't tell HomeSeer when someone has used a remote control to operate a device. That said, it'd be very easy to write a little script that would trigger on status change of devices and echo the command; the echo would simply be delayed until the next polling interval for most Z-Wave devices, since that's the first time HomeSeer would know anything changed.

Tuesday, July 25, 2006

Rover Timer

This will be a separate program from Rover, and not require Rover be installed, but be similar in style and in system requirements. Its purpose will be to allow you to set up a one-time timer event using minimal clicks. Following are my notes.

&show=page1, page2, page3, page4, page5, plus options for the selections made on each

Page 1: A brief description of what this does, then a list of device locations and event groups, each being a link to &show=page2&loc=evtScenes (or loc=locLiving_Room).

Page 2: A list of devices or events in the specified loc. If devices, the links are controls (n text format); if events, just the names of the events. Each is a link to &show=page3&action= and the action (in the same format as Rover uses).

Page 3: Title shows the action so far. Shows a list of delays: 1 minute, 5 minutes, 1 hour, etc. Each is a link to &show=page4&action=whatever&time=d500 (the number of seconds). Also has a link to page 3a.

Page 3a: Shows a list of times of day. Each is a link to &show=page4&action=whatever&time=t1215 (that's the specified time). Also has a link back to page 3.

Page 4: If there's no &action field (or an invalid one) jumps back to page 1 or 2 (depending on whether there's a &loc field). If there's no &time field jumps back to page 3. Otherwise, Summarizes the choices so far in an English format (e.g., "In 15 minutes I will turn off the Living Room Stand Fan"). Has links back to each of the pages ("Change the action", "Change the time") as well as a Confirm link which is a link to page 5.

Page 5: Actually creates the event. Reports what was created and offers a link back to the beginning to create a new one, or back to Rover.

Wednesday, July 19, 2006

Rover v2.5 has been released!

New in this version:

  • New "All" location for showing all devices in one screen.
  • Now supports multiple folders of icons and snippets, for configuring multiple devices. Use default small icons on your palmtop and bigger ones on a touchscreen, for instance.
  • Added new substitution strings for options.

Download the update here.

Monday, June 12, 2006

Ideas for ways to use Rover

If you have a question for how to get Rover to do something that you think it can do, or want to share a trick or idea for a clever use for Rover or way to customize it, please post a comment here.

Or post a feature request for Rover if it's something Rover can't do but you wish it could.

Saturday, June 10, 2006


What is Rover?
Downloading Rover

The current release of Rover is v3.0. New in this version:

  • A new "Grid" style of view, in which devices, events, etc. are arranged in a grid with nice big buttons for easy fingertip operation. Ideal for, and designed for, use on touchscreens like the iPad, but also well-suited to many smartphones.
  • Parameters to control the grid's columns and widths, and new snippets to fit into those.
  • A new Menu option that replaces the long list of links on the bottom with some pull-down, Javascript-based menus. If you're using a smartphone or tablet with a smart enough browser to support those, this is a great way to save valuable screen real estate. If not, you can still use the old links that work in any browser under the sun.
  • Some new options to control Rover such as NavAtTop (moves those menus and links to the top), HideDim (display only on and off buttons for dimmable devices), and a link that lets you save default options in Rover.
  • A few new snippet substitution codes for the new options, plus one that shows the status of any device.
And there's one more really big update in v3.0: Tricks. However, this one is listed on its own page both because it's so much bigger -- it's almost like a whole new Rover -- and because you have to pay a few bucks to get it (but those bucks go straight to charity).

You can upgrade from all earlier versions from the Updater (once v3.0 is there), or by unarchiving the below into your HomeSeer directory, honoring paths and overwriting (I recommend backing up your Rover directory first in case you customized icons):

Download Download Rover v3.0 update

Rover is free, as always. Your support is however welcome.

Friday, June 09, 2006


Some related sites worth a look:

Wednesday, June 07, 2006

Time Icons

Updates the three icons in HomeSeer's "time bar" -- at the top of every web page. The clock one becomes a dynamic analog clock showing the real time to within 15 minutes. The sunrise one shows the current sun state: up, rising, setting, or down. The sunset one shows the current moon phase.

Unarchive this zip file in your HomeSeer directory, honoring paths. Then create an event which runs it every 10 minutes or so (I recommend setting it to not log). You also need to reset the Read-Only flag on the following files: html\Images\HomeSeer\clock.gif, html\Images\HomeSeer\sunrise.gif, html\Images\HomeSeer\sunset.gif. Otherwise, the script will accomplish nothing.

None needed. However, if you're a West Coaster, you might want to go swap the names of html\icons\suns\rising.gif and html\icons\suns\setting.gif. Heheheh.

Version History
  • v2.0 - 2006-05-06 - First release of v2.

Future Changes
None planned.

Download Download TimeIcon v2

To report a bug or make a feature suggestion, post a comment.

Network Monitor

Create as many virtual devices as you like to represent network devices you'd like regularly pinged. The script will update their status with regular pings, progressing each device between Up, Alert, and Down states. Devices will have their status updated accordingly, so you can trigger other events based on state or number of failed pings. Status text also shows icons reflecting status, unique to different kinds of devices. You can configure devices with IP addresses or NetBIOS names, so long as your server can ping them. Can also be configured to audibly announce certain devices going up and down, and those announcements can be suppressed depending on a certain other device being on.

Unarchive this zip file in your HomeSeer directory, honoring paths.

Versions up to v2.1 kept the IP address visibly in the device string. v2.2 starts using the UserNote for that. To upgrade, first copy the IP addresses into the user notes for all your network devices; then copy the new version of network_monitor.txt into place. The IP addresses will soon vanish from your devices' strings, resulting in a cleaner display. You can now delete any event you created to set those strings.

Upgrading from v2.2 to v2.3 should be as simple as replacing the network_monitor.txt file. Don't forget, if you customized it, don't overwrite your customizations!

Follow the directions in the top of network_monitor.txt (in the Scripts directory) to configure it and set up Device Types and Devices accordingly. The archive includes icons for most of the device types listed, so you might need to create more icons if you create other device types. I recommend making the event that runs it set to not log.

You can then set up other events which trigger based on these devices going On (up), Dim (alert), or Off (down), or against their Device Value, which counts number of failed ping bundles. (Device value of 0 is Up, 1 is Alert, and 2+ is Down. Though each point there represents a bundle of ping failures, not a single one, to avoid situations where brief blips count as outages.)

Version History
  • v2.0 - 2006-05-06 - First release of v2.
  • v2.1 - 2006-05-11 - Fixed missing includes. Now uses hs.Ping. Up/Alert/Down are color-coded. Fixed my email address in the file.
  • v2.2 - 2006-05-26 - Moved IP addresses to hidden place in UserNote. Rewrote installation directions to make it simpler to get started.
  • v2.3 - 2006-06-03 - Added a "Ping" button to these devices. Added a printer icon to the collection.

Future Changes
I am still hoping to find a way to use a MAC to ping or look up the IP to ping, but that's only because my dumb router doesn't support MAC reservations, and I don't want to make everything fixed-IP instead of DHCP.

Download Download Network Monitor v2.3

To report a bug or make a feature suggestion, post a comment.


This blog, the new home for support and updates for Rover and my other HomeSeer software, is now officially open for business. Please review the links in the sidebar on the right to find everything you need. And welcome!

All my HomeSeer software is free. If you feel a need to drop a few bucks in my tip jar, you'll find a button for doing so via PayPal; help yourself. But don't feel obligated; all this software is written because I wanted it, and shared because I enjoy sharing it.

Latest news:
Updates to future plans.
Rover v2.7 released!

Tuesday, June 06, 2006

Feature Requests for Rover

If you have ideas or suggestions for improvements to Rover, please post them as comments on this post. Don't forget to check the future plans too.

Rover Bug Reports

If you have a bug report to make about Rover, please post it as a comment on this post.

Future plans for Rover

Updates for future versions of Rover:
  • An option to sort devices alphabetically by name.
  • An option to show dimmables only at 25, 50, and 75% instead of by 10s.
  • An option for a page that shows only devices which are on.
  • A "mixed" mode (between text and icons) that shows only on/off/dim as icons, but not the device icons themselves.
I'm also considering a separate but related program, Rover Timer, that uses a Rover-like interface to let you set up simple events.

Why is Rover support on this blog?

In the interest of keeping this blog technical and professional in nature, I am keeping this question, its answer, and any subsequent discussion, on my personal blog.

Where can I get Rover?

New installations: Use the HomeSeer Updater to install Rover v3.0, or by unarchiving the below into your HomeSeer directory, honoring paths and overwriting (I recommend backing up your Rover directory first in case you customized icons):

Download Download Rover v3.0 update

What is Rover for HomeSeer?

Rover is a small, free software plugin for HomeSeer v2 that provides a streamlined, simplified, but fully functional web interface. Using Rover, you can control all of your HomeSeer devices using any HTTP/HTML web browser you have.

  • From a Palm, Pocket PC, or other handheld computer, a cell phone, a Sony PSP, or other small computer with limited screen space.
  • Over a very slow connection.
  • Using an old or outdated browser that doesn't support CSS, Javascript, frames, forms, tables, or even images.
  • In a narrow "side panel" in a browser like Opera or FireFox.
  • From a touchscreen, even running an old operating system.

Rover is easy to use, and fully functional out of the box. You can control any kind of device: lamps, appliances, thermostats (both old .thm style and new plugin style), Compose, custom devices, even status-only. You can run any of your events. It's also possible to highly customize it using no coding at all, just by writing small amounts of HTML.

Rover is entirely free to use, or even to alter, steal code from, etc. You can download it using HomeSeer's updater.