Harmony 880 Remote on Linux

A few weeks ago I bought the Harmony 880 Remote from Logitech. The thing is amazing. I cannot run my home theater without it now.

You create an online profile and enter all your hardware from their database. Each hardware profile is fully configurable. If a hardware profile is missing a feature, the remote can “learn” from your OEM remote as it has an IR receiver. Essentially any IR device can be configured to work with the 880 remote. You can create virtual keys – 10 of which can be present in any order on the built in LCD at a time and you can page through more functions. Most features you need for home theater are actual keys on the remote and are organized very well.

Harmony 880 Remote

What’s really fantastic about it is the “Activities” feature. Here you create activity profiles. By this I mean, “Watch Cable DVR,” for example. This profile set my audio receiver to Aux 2, my TV to HDMI, turns my cable DVR to my favorite channel, etc. Audio commands are sent to the receiver, DVR commands to the cable DVR, TV commands to the TV. It’s perfect.

The power of the IR transmitter is tremendous. I can keep the remote with me at my desk, facing in the opposite direction of my audio receiver and another room away (granted, I do have a very open floorplan) and control volume levels. I can lay on my couch with the remote and not worry about pointing it anywhere. It has a motion sensor to detect when it should turn on the button and screen backlights. The thing is just nice.

The problem however, is in its update design. To configure all these settings and niceties you log in to your web-based configuration page and go to town. When you’re ready to update the device, you’re asked to download an EZHex file containing your changes in an XML+Binary blob sort of way. Here comes the trouble. You need to be using Windows or a Mac. I get away with this using my XP VMWare install under SLED, but it’s hardly optimal. Once the file is downloaded, you run it in the EZHex sync program, it contacts your remote over USB, and sends the file. Firmware updates are also delivered in the same way. The same program is also used to somehow read IR commands from the built in IR receiver when you ask the web-baesd configuration program to “learn” a command from an OEM device.

I would love to see a program under Linux that at least supports saving the EZHex dump to the remote. It’d be super-sweet if it could also do OEM IR command learning and firmware updates as well (firmware is probably in the same boat as configuration syncing).

So, I’m ready to donate a cash prize of US$75, which is about 1/2 the price of the 880 remote to the first person that can deliver on a Linux program that implements configuration syncing. Another US$15 if the program supports updating firmware on the device, and finally, another US$60 if the program allows OEM IR command learning. It needs to work with the 880 web-based configuration software of course. If all three features are implemented, I’ll essentially be reimbursing you for your 880 remote. I don’t really care about UI. A console program that does the job is fine with me. The code must be GPL, LGPL, or even better, MIT X11.

I suspect that some debugging/listening will reveal a lot, and it can be implemented fairly quickly using libusb or something. I just don’t have the time to really look into it. It would have been nice if the harmony was a mass storage device and you simply copied your configuration profile and firmware updates to it. Oh well. Maybe Logitech can be contacted and specs can be obtained. That’d be sweet.

That said, once you do get your perfect configuration for the remote, you really have no reason to boot Windows again to do anything with it. You will spend a couple of hours setting it up and tweaking though.

Oh well, I’m still a satisfied customer.

Update: The code must be original, and you of course must be the author. If a utility already exists to sync the 880, I’d appreciate the tip, but it won’t qualify for the prize. :-)

Update 2: Paul Cutler has generously offered to match my US$75 prize for step 1. That is, if step 1 is completed, the total prize is now US$150. Completion of steps 2 and 3 leave the total possible amount at US$225. Start hacking – it’s probably a day or two of work for a full 880 reimbursement!

19 Replies to “Harmony 880 Remote on Linux”

  1. A hint for someone looking into it – the latest 7.2 release of the Harmony software for Windows is Java-based. It hosts the Gecko Runtime environment too!

    I’d wager that everything but the Win32 USB code is written in Java (and a couple of other DLLs you’ll find in the distribution for hosting the GRE, desktop-integration, etc.)

  2. As the owner of a Harmon Remote 880 as well (which I havent been able to sync with vmware with ubuntu since upgrading to edgy, hard to figure out what happened) I will also match $75 for step one! You have my email!

  3. Shawn: outstanding. What do you guys (Paul, Shawn, anyone else willing to contribute) think about setting up a contribution pot at Fundable?

    If we get that going, I’ll make a new post with updates, and the fundable link, etc, and try to get some more interest in this.

  4. I have no strong opinions either way on fundable (do you have a target amount you’re shooting for?). If one was setup i’d pledge my share, or just paypal you or whoever did the work.

  5. If this is going to turn into a larger bounty, it would be nice to expand it to cover other Harmony models… I don’t have an 880, but I do have a 680 and a 688 that I’d sure like to be able to update without VMWare. I would hope that a tool that works for one model would be usable for the others as well… the hardware can’t be too different.

  6. We had a Harmony 159 (I think that is the right model number) from just before Logitech bought Harmony. It was the most we had spent on a remote, about $150. My wife, whom was very hesitant about buying it, thought that it was worth every penny. A one year old plus a glass of soda mixed to disable the ir sensor (only disabling learning) later and I had a good excuse to upgrade. I upgrade to the Harmony 880 when it was $250.

    It certainly is a great remote and the change from a device based remote to an activity based remote is a huge improvement in usability that you just can’t appreciate until you’ve gone through the transision yourself.

  7. It would also be nice if the program supported the Harman Kardon TC30 (which is a special version, only produced for Harman Kardon and is some sort of hybrid between the Harmony 555 (looks) and the 885 (functions)).

Comments are closed.