# JP1 remote

A JP1 remote is a type of universal remote, usually with a six-pin interface connector labeled "JP1" in the battery compartment, manufactured by Universal Electronics Inc. The JP1 interface allows the remote to be reprogrammed, adding new code lists and functions. Home theater hobbyists use JP1 to avoid obsolescence.
Most JP1 remotes are capable of advanced functions like remapping keys and macros. Some models can be updated over the telephone to add new code lists.

## JP1 Remote controls

All JP1 remotes are made by Universal Electronics, Inc. UEI sells various models under their One For All brand name, and supplies remotes to consumer electronic manufacturers such as Radio Shack, Sony, and Sky, as well as North American cable TV providers such as Comcast, Rogers, Cox, Shaw, Charter and Time Warner.
On printed circuit boards the marking "JP1" is a common abbreviation of "Jumper 1", i.e. the first (and for most remotes, the only) jumper on the board. Later models are labeled "JP1.x", where "x" is 1, 2, 3 or 4 depending on the type of processor used. For newer remotes, a "JP2" label has been used.
Earlier JP1 circuit board designs employ an EEPROM memory chip. Later designs employ processors with flash memory.

## Hardware interface

A JP1 interface cable connects a JP1 remote to a PC, enabling the PC to read and write to the remote's user memory. Schematics for cabling parallel port, serial port or USB connectors to various JP1 remote controls are freely available, and several vendors offer pre-built interface cables. JP1.x and JP2 remotes cannot be programmed with the older style JP1 cables, these remotes can be programmed using ready-made FTDI cables, where only the connector needs to be replaced.

## Updating JP1 Remotes via an interface

The data and software in many JP1 remote controls can be updated and extended using an interface cable connected to a PC using a software program called RemoteMaster, or RMIR. Updates and extensions include new device code data, new IR protocols, advanced keymapping, and macros.
Nicola Salmoria discovered how to add new functions by writing software "Extenders" (protocols which replace a JP1 remote's main processing loop). Extenders may depend on a particular JP1 remote's hardware capabilities. Typical extender features include longer macro length; fast command execution; nested macros; and the long key press (LKP) -- in which a key performs different actions depending on how long it is pressed.

## Software

There are various software packages available. The core package at its simplest allows for the basic remote functionality to be updated via the PC. It also allows for installing new devices, protocols and extenders, though these are created separately and copied into the core package. It also permits the entire remote control's configuration to be saved as files on the PC for backup purposes or "cloning" remote controls.
Programs complementary to the core package cover such functionality as creating new devices, creating new protocols, assembling the assembly languages of the processors in the remote control, and analysis of signals learned on the remote control to enable proper protocol support to be built to control new devices.
In October, 2000, at remotecentral.com’s "General Consumer Remotes" forum, electronics hobbyists Dan "HW Hackr" Nelson and Rob Crowe worked out how a JP1 connector could be used to examine and modify that portion of a remote control's memory containing user configuration data and user-updated devices. The hobbyists were able to reverse engineer the layout of this memory area, then discovered how to apply updates directly. The JP1 Remotes Forum expanded on that work, and remains the foremost locus of discovery for exploiting new JP1 functionality.

## Extended Function Codes (EFC)

Earlier universal remote controls used a device code/protocol number and three-digit extended function codes for programming via the remote itself, or through the JP1 interface. These sometimes enable a universal remote control to be programmed to use some extra functions which may not have been made available even on the original equipment manufacturer's remote control. In later controls, these function codes were extended to a length of five digits.
There is a tool which assists in the lookup of these code sets at the JP1 group site, and additional codes can also generally be obtained from the remote control manufacturer or supplier.

## Older UEI Remote controls

Universal Electronics Inc. also supplied a previous series of universal remote controls, typified by the European control called the 'Big Easy'. This control can operate up to four consumer devices, with protocols and code sets normally limited to TV, analogue satellite and VCR. However, some terrestrial digital receivers and DVD players are using old protocols and code sets, typically those previously used by analogue satellite receivers. This means that these old controls can still be useful. Remote controls in this product range can normally be identified by the presence of three programming eyelets in the battery compartment. The codes to reprogram these remotes can be set down in the form of an algorithm, which can be freely downloaded and used to find extended control sets.

## Press

JP1 has been reported on by the Detroit Free Press and Nuts and Volts magazine.