Finding Codes

From JP1 Remotes Wiki
Revision as of 18:44, 2 November 2025 by The Robman (talk | contribs) (20 revisions imported)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Back to IR Help Index

Previous Topic Special Protocols

Next Topic: WAV FILES

Overview

What makes UEI remotes so unique is the ability to program any key using EFCs (Extended Function Codes) also known as advanced codes. Every button that comes pre-programmed on these universal remotes has a function code associated with it. There also may be function codes that are not pre-programmed on the remote, including some that weren't even on the original remote. These functions can be sent from the keypad using an EFC.


In most cases, the JP1 tools can't be used to extract any of the built-in setup code details, the exception being the newest USB connected remotes the XSight and Simpleset models. For most remotes, that information is stored in ROM and JP1 tools only read the E2/EEPROM area. There are some alternative ways to get the information you need to build an upgrade.

Searching the JP1 site for Upgrades

This really is the best place to start. Major manufacturers keep their codes very stable as they add to their product line. You can see that when you look in the manual that came with your universal remotes. Most of the manufactures of TV’s get 1 or 2 setup codes. Chances are if you don’t find your exact match, you’ll find something that will work. Also if you look at these other setups you may find some EFCs that do something your original remote does not do. For example I’ve got a Sony RDR 330 and the OEM remote has no [REC PAUSE] key, but when I was building my device upgrade I looked at the Sony RDR-GX7 and saw an EFC for REC PAUSE, and it worked on my DVD recorder too! The user upgrades are located at

Forum Index -> Download Database -> JP1 File Section -> Device Upgrades

To make sense of these text files you’ll need either Keymap-Master or RemoteMaster.

See also Using Keymap-Master or Using RemoteMaster

Searcing Hifi-Remote's Advanced Codes

If a built in code is working for your remote, this is a great place to find additional EFCs for functions that are not found in the basic setup.

Rob has a huge collection of UEI advanced codes at this address. http://www.hifi-remote.com/ofa/adv-codes.shtml

When you get to this address you’ll get your choice of TV, DVD, VCR device codes. Once you select the type of device you’ll find the UEI 4 digit setup code reference.

Here is the type of information you’d find for VCR 0616.

Using Learns

If you have learning remote you can learn the signals. When you download from the remote, IR will decode the signals. Making an upgrade from these decodes is easy.

If you have a learning remote, I'd strongly suggest making a backup upgrade for all your equipment and posting the files in the forum. You never know when your OEM remote is going to die.

See the Learned Signal Section for a refresher on how to learn a signal. Please see Using Keymap-Master or Using RemoteMaster for a tutorial on how to build an upgrade from learned signals

Using Keymoves

It sure would be nice if we could read the ROM of our remote with IR or RMIR, but as you already know the JP1 tools only read the E2/EEPROM area. However, if your older EEPROM type remote supports the KeyMover feature, you can move this information into the EEPROM and then read it with IR. This does not work on the FLASH remotes because these move type keymoves are now accomplished with a keycode. Lets say I want to know the power button EFC for my TV, I’m going to do a keymove to copy my TV power key to my Aux Power key. Press and hold SET until the LED (red light) blinks twice Enter 994 the LED will blink twice Press TV once to set the source mode Press power for the source key Press AUX once, to set the destination mode Press power for the destination key. The LED will blink twice Download it to IR you can see what the EFC is.

as noted above the newest USB style remotes have the setup code in the E2 area, so you don't have to use this tric,.

Using the Devices4

There is an Excel spreadsheet called Devices4.xls that contains the basic keys for built in library codes for some of the key assignments. You specify the component setup code and it gives you a list of functions.

You pick the component code and it shows you the basic buttons EFCs and the protocol information you need to create a device upgrade. And columns E and F copy and paste into the Keymap-Master function Sheet which makes this a great place to start your upgrade.

Using the JP1 Lookup Tool

The JP1 Lookup Tool lets you find the information about the standard setup codes and covers more setup codes than devices4. http://www.hifi-remote.com/jp1/lookup/

Using the UEI Lookup Tool

UEI provides an online code lookup function by brand and model. Navigate to this site[1] and then select your remote "Click Here for Device Codes" under a remote.

When you see this screen select a device type (Television, Video DVD, Audio, Cable, Satellite, or Video VCR) and then fill in the Brand and Model.


You can then lookup the details of this setup code in the JP1 Lookup Tool.

The JP1 Lookup Tool might have a brand that is not available from this tool.

Using Pronto Files

Pronto is an upscale universal remote that can be programmed via computer. It is an expensive remote costing more than $300. Remote Central remotecentral.com has a large collection of Philips Pronto files. The pronto files come in many different formats.

IR can import Pronto Hex Import is available through the Add and Edit buttons of the Learned Signals page, where there are now radio buttons to choose between UEI Learned and Pronto formats, UEI Learned being the standard learned format of UEI remotes. The import routines support all raw and pre-defined Pronto formats other than the 8000 format, i.e. Pronto signals can be imported if they begin with any of the following values: 0000, 0100, 5000, 5001, 6000, 6001, 9000, 9001, 900A, 900B, 900C, 900D, 900E. Many companies publish their signal information in pronto format.

Another source of pronto hex are the users pronto files. CCF files are the easiest to work with. John Fine has a program called DecodeCCF that will put this file into readable form. DecodeCCF works with DecodeIR.DLL. If you drag a CCF onto the DecodeCCF Icon, it will produce a very nice .txt text file that looks much like the learned signal codes that IR displays. If the signals didn't decode, DecodCCF has an option to display the timing data. Newer pronto remotes use a PCF file. There is no convenient way to do a batch extract and decode of these signals. The signals need to be individually extracted with prontoEditNG and decoded with IR or IRScope. These are less convenient because you can only decode one key at a time, and the user needs to do this by hand. ProntoEditNG is available at RemoteCentral. When downloading ProntoEditNG, make sure you get the version that matches the remote of listed for the PCF's description. If you use the wrong ProntoEditNG version, it will tell you "invalid file format".

Using Brute Force

The Brute force method, is one of my favorite methods for discovering EFCs. This method will only work if you have a partially working setup, and it will only work if your equipment doesn’t use multiple device/sub-device combinations. It’s also a little dangerous. This method involves sending all the EFC or advanced codes to your equipment. This method may reveal undocumented features of your equipment, or it could render your equipment unusable, so use at your own risk. For example, many devices controlled by IR remotes, in Particular TV’s, have undocumented IR code sequences used for servicing the equipment by factory trained technicians in possession of detailed service manuals and test equipment. By causing a service code to be sent to your TV or other device, you may place it in a state where it no longer operates as desired, or at all. An example of this might be the resetting of all convergence offsets, or altering the width or height of the picture. Be careful, if you are not sure of what the outcome might be, perhaps you should not do it. This method only works on setup codes that use 3-digit EFCs. You can find out if your setup code uses 3 or 5 digit EFCs, by looking at the Lookup Tool. You also need to know if your remote uses 5-digit EFCs.

If the setup code you are using uses three digit EFCs, there can only be 256 EFCs, maybe less depending on the protocol. They start at number 000 and go through to 255. After that they start repeating, so 256 is the same as 000, 257 is the same as 001, etc. When you have a partially working device, testing the other 256 advanced codes may reveal the function you are looking for. If your remote is a newer remote, you need to pad these 3-digit EFCs with leading zeros. This would make your values would be between 00000 and 00255.

Your equipment needs to be in a state where it can react. If you are looking for a discrete off, your equipment must be on. If you are looking for a discrete on, your equipment must be off.

I found some really cool features undocumented features on my TV using this method, but I also panicked when I got into the servicing screen after I had read that warning above.

Below you will find the instructions for testing and programming a key manually. If you are using an extender, you would need to disable your extender for this to work. You could also use Keymap-Master or remote master to create upgrades that use all 256 EFCs for the particular protocol/device/sub-device combination.

Non-LCD remote instructions:

  • To test a code manually:
  1. Press the device key
  2. Press SETUP (don't hold it)
  3. Enter the EFC code
  4. Check for a response from your equipment
  5. (Holding the final digit down is the same as holding the actual button down)
  • To program a code:
  1. Press the device key
  2. Press and hold SETUP (wait for two blinks)
  3. Enter 9-9-4 (wait for two blinks)
  4. (Optional) Press the device button the code is coming from
  5. Press SETUP (don't hold it)
  6. Enter the EFC code
  7. (Optional) Press the device button the code is going to
  8. Press the button to be assigned
  • To program a code (to a SHIFT key):
  1. Press the device key
  2. Press and hold SETUP (wait for two blinks)
  3. Enter 9-9-4 (wait for two blinks)
  4. (Optional) Press the device button the code is coming from
  5. Press SETUP (don't hold it)
  6. Enter the EFC code
  7. (Optional) Press the device button the code is going to
  8. Press SETUP (don't hold it)
  9. Press the button to be assigned
  • To delete a code:
  1. Press the device key
  2. Press and hold SETUP (wait for two blinks)
  3. Enter 9-9-4 (wait for two blinks)
  4. Press the assigned button twice
  • To delete a code (from a SHIFT key):
  1. Press the device key
  2. Press and hold SETUP (wait for two blinks)
  3. Enter 9-9-4 (wait for two blinks)
  4. Press the assigned button
  5. Press SETUP (don't hold it)
  6. Press the assigned button

LCD Remote Instructions (Current models):

  • To test a code:
  1. Press the device key
  2. Press SETUP (don't hold it)
  3. Enter the EFC code
  4. Check for a response from your equipment
  5. (Holding the final digit down is the same as holding the actual button down)
  • To program a code:
  1. Press and hold SETUP until the screen reads 'CODE SET'.
  2. Scroll down to 'KEY MOVER', hit SELECT.
  3. The screen will read 'FROM MODE'
  4. Press the device button the code is coming from
  5. The screen will read 'FROM KEY'
  6. Press SETUP (don't hold it)
  7. The screen will read 'SYNT'
  8. Enter the EFC code, then press SELECT
  9. The screen will read 'TO MODE'
  10. Press the device button the code is going to
  11. The screen will read 'TO KEY'
  12. Press the button to be assigned
  13. The screen will read 'SUCCESS'
  • To program a code (to a SHIFT key):
  1. Press and hold SETUP until the screen reads 'CODE SET'.
  2. Scroll down to 'KEY MOVER', hit SELECT.
  3. The screen will read 'FROM MODE'
  4. Press the device button the code is coming from
  5. The screen will read 'FROM KEY'
  6. Press SETUP (don't hold it)
  7. The screen will read 'SYNT'
  8. Enter the EFC code, then press SELECT
  9. The screen will read 'TO MODE'
  10. Press the device button the code is going to
  11. The screen will read 'TO KEY'
  12. Press SETUP (don't hold it)
  13. Press the button to be assigned
  14. The screen will read 'SUCCESS'
  • To delete a code:
  1. Press and hold SETUP until the screen reads 'CODE SET'.
  2. Scroll down to 'KEY MOVER', hit SELECT.
  3. The screen will read 'FROM MODE'
  4. Press the device button the code is being deleted from
  5. The screen will read 'FROM KEY'
  6. Press the key being cleared
  7. The screen will read 'TO MODE'
  8. Press the device button the code is being deleted from
  9. The screen will read 'TO KEY'
  10. Press the key being cleared
  11. The screen will read 'CLR KMVR'
  12. Press SELECT, the screen will read 'DELETED'
  • To delete a code (from a SHIFT key):
  1. Press and hold SETUP until the screen reads 'CODE SET'.
  2. Scroll down to 'KEY MOVER', hit SELECT.
  3. The screen will read 'FROM MODE'
  4. Press the device button the code is being deleted from
  5. The screen will read 'FROM KEY'
  6. Press SETUP (don't hold it)
  7. Press the key being cleared
  8. The screen will read 'TO MODE'
  9. Press the device button the code is being deleted from
  10. The screen will read 'TO KEY'
  11. Press SETUP (don't hold it)
  12. Press the key being cleared
  13. The screen will read 'CLR KMVR'
  14. Press SELECT, the screen will read 'DELETED'

LCD Remote Instructions (Older models)

  • To test a code:
  1. Press the device key
  2. Press SETUP (don't hold it)
  3. Enter the EFC code
  4. Check for a response from your equipment
  5. (Holding the final digit down is the same as holding the actual button down)
  • To program a code:
  1. Press the device key
  2. Press and hold SETUP until the screen reads 'TIMED SEQ'.
  3. Scroll down to 'CONFIGURE', hit SELECT.
  4. Scroll down to 'KEY MOVER', hit SELECT.
  5. The screen will read 'FROM'
  6. (Optional) Press the device button the code is coming from
  7. Press SETUP (don't hold it)
  8. Enter the EFC code
  9. The screen will read 'TO'
  10. (Optional) Press the device button the code is going to
  11. Press the button to be assigned
  • To program a code (to a SHIFT key):
  1. Press the device key
  2. Press and hold SETUP until the screen reads 'TIMED SEQ'.
  3. Scroll down to 'CONFIGURE', hit SELECT.
  4. Scroll down to 'KEY MOVER', hit SELECT.
  5. The screen will read 'FROM'
  6. (Optional) Press the device button the code is coming from
  7. Press SETUP (don't hold it)
  8. Enter the EFC code
  9. The screen will read 'TO'
  10. (Optional) Press the device button the code is going to
  11. Press SETUP (don't hold it)
  12. Press the button to be assigned
  • To delete a code:
  1. Press the device key
  2. Press and hold SETUP until the screen reads 'TIMED SEQ'.
  3. Scroll down to 'CONFIGURE', hit SELECT.
  4. Scroll down to 'KEY MOVER', hit SELECT.
  5. The screen will read 'FROM'
  6. Press the button to be cleared.
  7. The screen will read 'TO'
  8. Press the button to be cleared again.
  • To delete a code (from a SHIFT key):
  1. Press the device key
  2. Press and hold SETUP until the screen reads 'TIMED SEQ'.
  3. Scroll down to 'CONFIGURE', hit SELECT.
  4. Scroll down to 'KEY MOVER', hit SELECT.
  5. The screen will read 'FROM'
  6. Press the button to be cleared.
  7. The screen will read 'TO'
  8. Press SETUP (don't hold it)
  9. Press the button to be cleared

Brute Force with Finesse

More and more we are seeing equipment requiring 5-digit EFCs. There are too many possiblilites to just test them all individually. If you build an upgrade, you can see gaps in the OBC sequence. Missing functions are usually found in those holes. If you use RemoteMaster or Keymap-Master you can compute the 5-digit EFC for these missing OBCs. Often those EFCs will turn up a missing function.

The Final Resort

You can post in the JP1 Remotes Forum Index -> Code Search ask using this template
1. Device:
2. Type of device
: 3. Year:
4. UEI Remote model:
5. Do you have a JP1 cable?
6. Still have original remote?
7. Checked the file section?
8. Checked Pronto file section (at R/C)?
9. Partially working setup code?
10. Learning remote question?
These questions are important to us. The way we answer your question, depends on the way you answer the template questions. (read the instructions first).

Back to IR Help Index

Previous Topic Special Protocols

Next Topic: WAV FILES