Why the perfect universal remote will never exist (but how the Harmony One comes close)

My history of researching, buying, using and discarding universal remotes to operate my home entertainment equipment might be comparable to my search for the perfect computer mouse: neither quest has thus far resulted in finding a product that seems to fit my wishes perfectly.

In these days, with an ever growing pile of eletronics devices that can be remote controlled, it is not hard to imagine that many people are looking for a single universal remote that can replace them all. The idea seems easy: just put all functionality of the seperate remotes into one new device. However, in practice, it seems to be very hard to turn this idea into a well executed product. This is due to a number of reasons that I try to explain in this article.

Although early remote controls in the 1950s used ultrasonic sound to communicate, the consumer electronics industry moved almost entirely towards infrared by the late 70s, early 80s. Using infrared has a number of huge disadvantages, the most prominent of them of course being the fact that you have to have  a clear line-of-sight between the remote and the device. If the signal gets blocked, the command will not arrive. (Imagine how things would have looked today if instead of light, the remote used a radio signal. There would be no loss of signal, and a device could be operated even if it was locked up in a closet.)

Another major design limitation of the infrared remote control is the lack of a reverse-communication path. Generally, there is no way for a device to communicate back to the remote. This could be handy, because that way the device could “confirm” that it received the command. Naturally, this also prevents any “status” display on the remote, as it has simply no clue as to in what state the device it operates is currently in. The latter one was not that big of a problem, as up until recently, a remote control did not provide any means of user feedback in the form of LED indicators or an LCD display.

This design of the early remote control principles seriously limits the user friendlyness up until this day. The remote does not know if the TV is on or if it’s set to the correct input, and thus cannot issue commands based on the device’s status. Most universal and programmable remotes assume a “virgin” state when they operate a device (i.e. that it’s off), so it’s not hard to imagine that this often leads to problems if that’s not the case (i.e. turning off instead of on, or change to another input when the correct one was already selected).

Furthermore, since consumer electronics devices generally also don’t communciate their statuses (properly) to one another, this also limits a seamless operation of your entire home entertainment system. This means that the user has to select a large number of settings by hand (selecting the source input on the receiver, selecting the source input on the TV, setting the correct volume, setting the correct aspect ratio, etc.), that might otherwise be set by the interconnected devices seamlessly and invisibly. As a result, a universal remote needs to duplicate all or most of the buttons of all individual remotes to perform simple tasks.

It is very hard to make the perfect universal remote control, because of the lack of this return channel from device to remote, the lack of even the simplest intelligence between devices and because of an overwhelming and complicated set of commands for all devices.

A number of companies have tried to solve this problem in the past, or at least they made an effort to ease the pain. With varying results. Personally, I have tried several remotes, ranging from simple and relatively cheap programmable models to more expensive full touchscreen remotes like the Philips Pronto and Pronto Pro. They were complicated to program and proved to be ineffecient in daily usage. My latest remote seems to strike a good balance between intelligently dealing with the limitations of infrared, easing the complexity of programming, good ergonomics and design, welll executed functionality, and on top off all carriying a very friendly street-price of around $150. I am talking about the Harmony One from Logitech.

Programming the remote

Setting up a universal remote to control all of your equipment is by far the most complicated and frustating part of using one. Basically, there are three kinds of methods a manufacturer might have choosen to take care of this programming. In the first category are remotes can “learn” commands from another remote by pointing them towards each other and then storing the command in the universal remote’s memory. While theoretically this allows for any command on any remote to be duplicated, in practice it can be painfull, especially while learning keys that send a repeating command, such as Volume up/down. A big limitation of this method is also that you can only learn the keys from your original remote into the programmable one. While this seems obvious, many electronics devices can receive more commands than the supplied remote can send, to do specific things (for example, while the original remote may only contain a single button to toggle trough all inputs, the device might accept commands to immediately switch to a particular input).

The second type of universal remotes contain a library of commands for a multitude of devices. The obvious advantage here is that you don’t have to “learn” the commands into your remote, you simply select the brand and model number to assign the appropriate commands to the remote. Depending on the execution, this can be done by entering a string of numbers representing the brand of your equipment, or more user friendly by selecting the device from the remote’s LCD screen. The biggest drawback with these remotes obviously lies in the fact that the database of devices is static (and may be limited due to storage restricitions by the manufacturer), and new devices are possibly not included in the database. Most of these remotes have a “learning” method as well, to fall back to in the likely case that a specific model is not included in the database.

The third kind of universal remotes are the ones that need to be programmed using a computer. While this might sound complicated at first, it is in fact the most elegant solution. It allows the manufacturer to look up a database of devices online, which can always be updated with new models. It makes these kinds of remotes the most “future proof” (that is, assuming that the manufacturer keeps the online services running for as long as you plan to make modifications to the remote during its lifetime). Logitech in particular has made severe efforts to offer the largest online database of devices, now running into serveral hundreds of thousands of model numbers. In my testing, it even knew the commands of obscure and outdated equipment (like Philips CD-i players), and also contains a lot of “special purpose” devices like multimedia PCs. In fact, it enhances the possibilities of the Mac’s IR receiver by offering functionality way beyond that of the standard Apple Remote, which I will explain in the next post on this blog about the Plex Mediacenter Software.

Remote ergonomics and usability

In the past, I have owned a number of remotes that include a full size touchscreen (comparable in size to the screen on the iPhone) as their sole method of user input. Particularly the Philips Pronto (b/w) and its successor, the color Pronto Pro. Logitech also offers such remotes, such as the 1000/1100-series. While such remotes look very cool at first glance, their usage on a daily basis is limited at best, or just plain frustating. While a big LCD screen gives you lots of room to re-create any possible button, in practice it makes it very hard to select these buttons due to the fact that you have to look at the remote at all times, and make sure you pin-point the desired button precisely. Things like zapping trough channels or adjusting the volume become painfull experiences that never reach the experience of using even the cheapest of remotes.

It was because of this experience that I decided not to buy an all-LCD remote again, which is when the Logitech Harmony One came in sight. This remote has very good design ergonomics (which might not be that surprising given Logitech’s long-term experience in designing human interface devices like keyboards and mice) and contains a lot of nicely layed-out “hard” buttons for all kinds of standard operations like menu navigation, number selection and transport control (stop/play/pause/search/etc.). But on top of this, the Harmony One also features a small, but beautifull colour touchscreen-LCD at its top, allowing you to assign clear desciptions and labels to buttons that don’t fit any of the hard buttons, it can show things like network logo’s for immediate selection of your favorite channels, but most importantly it can list all of the “activities” that you have set up to operate multiple devices at once.

As a nice touch of both design aesthetics and usabiliy, the Harmony One’s LCD is a capacitive touchscreen, rather than a pressure sensitive one. It reacts to finger presses by means of electic sensing, comparable to the iPhone. Logitech placed two arrows on both the left and right side of the display, and two selection options below it, all of which only lit up when available. This expands the touchable area of the remote beyond just the display, which both looks and works very nice.


Like most programmable universal remotes, the Harmony One allows for the creation of activities. Activities contain multiple IR-commands that are being send out in succession, for example to turn on the DVD player, TV and reveiver to start watching a movie. While most universal remotes can do this, a lot of problems arise due to the lack of feedback from the devices to the remote, as outlined in the beginning of this article. Most remotes assume a “virgin” state when beginning the sending out of commands, and most will not produce the desired results when for some reason one of the devices did not receive the commands properly.

Logitech seems to circumvent both problems as good as it can get within the limitations of the IR system. It will remember what activity you selected last, so when switching from say watching a DVD to using your media center, it will only turn on or off the devices based on their current state (and hence does not require the TV to be off for example). This is all pretty neatly implemented. However, it might still be possible to not get every device to react as expected, for example because the Logitech assumed a device’s state incorrectly, or simply because the signal of the remote got blocked. For these cases, the remote includes a “Help” button. Simply pressing this button will make the remote send out additional (or repeated) commands in a series of batches, each time asking you “if this solved the problem”. In my testing, in almost all of the cases a problem arose it was solved by the Harmony One’s effecting troubleshooting. Nice.

The missing link – Network connectivity

When doing research for a new remote, I also searched for a model with built-in Wi-Fi. I figured that having network access on my remote would allow for nice additional functionality, such as browsing a TV guide or getting feedback from some devices, like a mediacenter. I found that Wi-Fi connectivity could be found in the high-end (and expensive) all-touch screen segment of the market, which I already ruled out because of my past experiences with all-LCD remotes. I also found that some unknown manufacturer has made a reference design for a universal remote with Wi-Fi access based on Windows CE, but this one lacked all of the polish and computer programmability that I expect from a modern universal remote. In the end, I figured that having network access on my remote would centainly be a very welcome addition, but not something that I would sacrifice usability and ergonomics for.

In the end, my perfect universal remote would be one that combines all of the features of the Harmony One (great design, great execution of “activities” and macros and a gigantic online database containing every piece of consumer electronics ever made) with network access. Think of the Remote application that Apple created for the iPhone to control iTunes playback. Wouldn’t it be great to have this feedback of currently playing and upcoming songs on the display of the very same remote that you can use to control your TV and amplifier? I am sure that the folks at Logitech and other companies must be working on such a device. If this added functionality does not come at the price of reduced usability, I would be more than willing to trade in my remote once again.

Because remote controlling multiple devices via IR is so hard due to the inability of devices to talk to each other, or talk back to the remote, I don’t expect Apple to ever make a universal remote. It is just too unpredictable how the various devices of your home entertainment system will respond, and for a company that is so obsessed with controlling the whole user experience, this must be a nightmare. At least it gives me one potentional future remote controller to rule out.

In the upcoming article I will explain why I finally found any use for a Mediacenter-type of application on my Mac mini, and how Plex, the software of my choosing, works perfectly in tandem with the Harmony One due to special efforts on the part of both the creators of Plex and Logitech.