Universal remote

A universal remote is a remote control that can be programmed to operate various brands of one or more types of consumer electronics devices. Low-end universal remotes can only control a set number of devices determined by their manufacturer, while mid- and high-end universal remotes allow the user to program in new control codes to the remote. Many remotes sold with various electronics include universal remote capabilities for other types of devices, which allows the remote to control other devices beyond the device it came with. For example, a VCR remote may be programmed to operate various brands of televisions.
History.
On May 30, 1985, Philips introduced the first universal remote (U.S. Pat. #4774511) under the Magnavox brand name.
In 1985, Robin Rumbolt, William "Russ" McIntyre, and Larry Goodson with North American Philips Consumer Electronics (Magnavox, Sylvania, and Philco) developed the first universal remote control.
In 1987, the first programmable universal remote control was released. It was called the "CORE" and was created by CL 9, a startup founded by Steve Wozniak, the inventor of the Apple I and Apple II computers.
In March 1987, Steve Ciarcia published an article in Byte Magazine entitled "Build a Trainable Infrared Master Controller", describing a universal remote with the ability to upload the settings to a computer. This device had macro capabilities.
Layout and features.
Most universal remotes share a number of basic design elements:
Certain highly reduced designs such as the TV-B-Gone or keychain-sized remotes include only a few buttons, such as power and channel/volume selectors.
Higher-end remotes have numerous other features:
Upgradable and learning remotes.
Some universal remotes allow the code lists programmed into the remote to be updated to support new brands or models of devices not currently supported by the remote. Some higher end universal learning remotes require a computer to be connected. The connection is typically done via USB from the computer to mini-USB on the remote or the remotes base station.
In 2000, a group of enthusiasts discovered that universal remotes made by UEI and sold under the One For All, RadioShack, and other brands can be reprogrammed by means of an interface called JP1.
IR learning remotes can learn the code for any button on many other IR remote controls. This functionality allows the remote to learn functions not supported by default for a particular device, making it sometimes possible to control devices that the remote was not originally designed to control. A drawback of this approach is that the learning remote needs a functioning teaching remote. Also, some entertainment equipment manufacturers use pulse frequencies that are higher than what the learning remote can detect and store in its memory.
Touch-screen remotes.
These remotes feature an LCD screen that can be either monochrome or full color. The "buttons" are actually images on the screen, which, when touched, will send IR signals to controlled devices. Some models have multiple screens that are accessed through virtual buttons on the touch-screen and other models have a combination of the touch-screen and physical buttons.
Some models of the touch-screen remotes are programmed using a graphical interface program on a PC, which allows the user to customize the screens, backgrounds, buttons and even the "actions" the buttons perform. The "project" that is created is then downloaded into the remote through a USB cable or, in the most recent models, wirelessly by Bluetooth or Wi-Fi.
The newest touch-screen remotes, such as the Logitech 900 and 1100, include an RF transmitter to allow signals to reach locations much farther than the usual range of IR (approximately 6 meters). RF also does not require line of sight.
Some touch-screen remote controls, such as the Ray Super Remote, now have content recommendations built directly in to the universal remote control. 
Smartphone and tablet universal remotes.
Smartphones and tablets such as those running Nokia's Maemo (N900), Apple's iOS and Google's Android operating system can also be used as universal remote controls.
A number of devices from vendors such as Samsung, LG and Nokia include a built-in IR port that can be used as a remote, while others require a physical attachment, or 'dongle', be connected on to the phone when used as a remote. The dongle is required to convert the electrical control signals from the phone into infra red signals that are required by most home audio visual components for remote control. However it is also possible to implement a system that does not require a dongle. Such systems use a stand-alone piece of hardware called a 'gateway', which receives the electrical control signals from the smartphone in Bluetooth or wi-fi form and forward them on in infra red form to the components to be controlled.
References.
Universal Remote Codes Guide