How to Use a PSP as a Universal Remote for CRT TVs

How to Use a PSP as a Universal Remote for CRT TVs

If you work on a lot of CRT televisions, you will eventually run into one of their biggest annoyances: hidden or obscure button combinations on the original remote to access service menus. 

Some JVC CRTs are a good example. On certain models, accessing the service menu requires pressing two buttons simultaneously on the original remote. For example, some sets require the Display and Picture Mode buttons to be pressed together.

While a universal remote may give you access to both individual buttons, it often cannot reproduce this type of command correctly. Pressing the two buttons on a universal remote simply sends the individual IR codes one after another, whereas the original remote transmits a different IR sequence/code when both buttons are pressed simultaneously. As a result, the CRT doesn't recognize the combination and the service menu won't open.

The JVC example above is what got me looking for a solution for this problem. I had one come in for some repair and calibration and I couldn't access the service menu.

A surprisingly useful solution is an old PSP with custom firmware and iR Shell.

The original PSP has both an infrared receiver and infrared transmitter, allowing it to learn commands from original remotes and then transmit those commands back to the television. iR Shell turns the PSP into a programmable universal remote.

This makes it particularly useful for CRT servicing.

Important: This guide is specifically intended for a PSP model with built-in infrared hardware. The PSP 200X and 300X models do not have the IR hardware required for this feature. Only the 100X model does. 

The ideal setup

The PSP is not necessarily the best everyday remote control.

iR Shell is old, awkward and not particularly user-friendly.

Instead, think of it as a service technician's tool. The way I use it:

PSP + iR Shell → access service menu → use a normal universal remote for everything else


What You Need

The latest versions of iR Shell are very old, so compatibility with modern CFW is not officially supported. iR Shell 5.2 was released in 2010 and its official compatibility was aimed at much older CFW. 

That said, the IR functionality can still be useful on some newer CFW setups. Your mileage may vary.

For this guide, 6.60 PRO CFW is a practical setup to try, but don't expect every iR Shell feature to work perfectly. I only use it for the IR blaster/receiver and it seems to work fine.


Installing iR Shell

First, make sure your PSP already has custom firmware installed. Many YouTube videos available with tutorials for this.

1. Copy iR Shell

Download iR Shell 5.2 and extract it.

Copy the contents of the PSPIRSHELL52 folder to the root of your PSP memory card.

You should end up with the iR Shell files and folders on the root of the card.

⚠️ Important

Once installed correctly, iR Shell seems to replace the normal PSP XMB and boot automatically.

For that reason, I recommend using:

  • A spare PSP, or

  • A separate Memory Stick dedicated to iR Shell.

There's probably a way to turn this off. I haven't looked into it because I dedicated a PSP I have just for this purpose.


Installing the Pronto Codes

Extract prontocodes13.zip to the root of your SD card.

The Pronto package provides infrared codes for a large number of devices and was specifically designed to work with iR Shell's infrared remote functionality.

Once installed, iR Shell will be able to browse the available remote-control database.


Starting iR Shell

Reboot the PSP.

If everything was done correctly, iR Shell should launch automatically.

You may receive a warning about unsupported firmware.

Ignore the warning and continue.

The IR functionality is the what we will focus on in this guide.

From the iR Shell main menu, find:

iR Remote View

Press X.

This is the part of iR Shell that turns the PSP into a remote control. 


Navigating iR Remote View

The basic controls are:

PSP Button Function
D-Pad Navigate remote controls
X Select / launch
Triangle Go back
Select Return to iR Shell menu
Start Open remote-control editing/learning functions

The exact interface can feel extremely unintuitive at first.

Once you understand the two important modes, it becomes much easier.


Using an Existing Remote Code

The Pronto Database contains a ton of codes for a ton of stuff such as CRTs, Stereos and VCRs. 

Navigate through the available remote-control files and find the manufacturer/model you need.

Select the remote and press X.

The PSP will then display the buttons assigned to that remote.

Point the PSP's IR transmitter toward the CRT and press the desired button.

The original iR Shell documentation describes the IR Remote View as a database of remote-control files, with each remote defining the button mappings and infrared codes. (Zanotowane)

If you're lucky, your CRT is already supported. Unfortunately, I don't think there are any service menu button codes available in this database, so you'll be limited to regular use.


Learning a Remote From an Original Remote

This is where the PSP becomes particularly useful.

I'd like to launch a community effort to gather codes for all CRTs, especially obscure and rare ones. 

If you have the original CRT remote, you can copy its infrared commands directly into iR Shell.

Creating a new remote

Inside iR Remote View:

  1. Press Start.

  2. Press O / Circle to create a model

  3. Enter the name of the remote model

  4. When finished entering the name, press Start.

  5. iR Shell will enter learning mode.

The keyboard interface is extremely old-school and takes a little getting used to.


Learning Individual Buttons

Once learning mode starts, select the PSP button you want to assign.

The PSP will then wait for an infrared signal from the original remote.

Point the original remote at the PSP's IR receiver on top right next to the L button.

Press the corresponding button on the original remote.

For example:

Press X on the PSP → Point original remote at PSP and press the POWER button

The PSP learns the infrared command for that remote's power button and assigns it to the X button. 

You can then repeat the process to learn whatever buttons you need.

The idea is simply to create a mapping between PSP buttons and the original remote's infrared commands.

After learning the required buttons, save the remote by pressing select then O on the following menu.


Learning a Service-Menu Combination

This is where the system becomes particularly useful for CRT work.

As mentioned earlier in this guide, some sets require buttons pressed simultaneously or even have hidden buttons inside the remote that require disassembly to access. 

You can learn all of those commands into the PSP.

You can then use the PSP to transmit the required sequence without needing the original remote every time.

This of course is extremely useful when the original remote is missing. Especially when the code can be added to the PSP manually without needing the original remote. 

This will allow the community to create a database of these codes to be shared with everyone. 

For the JVC I borrowed a friend's original remote to learn the service menu code and just created a remote in iR Shell with it and a couple of other buttons. For navigating the service menu it's easier for me to use the universal remote.

Note that the exact combinations varies by television, so always verify the service procedure for the specific chassis/model before sending commands.


Help Build the Database

Access the freshly created database here: CRT iRShell PSP Database

Contribute by leaving a comment below or contacting me directly

To manually add the codes in the database above to your PSP, create a new remote using iRShell and open the RDF file on your PC and paste the code in it. The files will be located in SD:IRSHELL/IRCODES. Or you can do this to the RDF file of your TV's model if it already exists in the Pronto database.

If the project gets a lot of contributions I will eventually move this to a GitHub repository where we can all share RDFs directly. 

There are thousands of CRT models out there, and a lot of them have obscure ways to access service menus. 

The original Pronto database provides a useful starting point, but it doesn't cover everything, and as far as I can tell, there are no service menu codes at all.

We can build a community-maintained CRT remote database that's specifically for service menu access. 

I started this project by copying a JVC code from a friend's original remote. I will start by adding the code to the Google sheet above and add to it whenever I have access to remotes from other models. 

The goal is to expand this into a useful database for CRT enthusiasts and techs.

If you have an original CRT remote that requires some special way to access service menus, it can be incredibly useful to learn its commands into iR Shell and contribute the resulting information.

That gives someone else the ability to access the service menu when needed without the need for an original remote.


Conclusion

An old PSP might seem like an unusual tool to have on a CRT repair bench, but its built-in infrared iR blaster and receiver makes it surprisingly capable.

iR Shell is not a modern, user-friendly universal remote.

That's actually not the point.

Its real value is being able to learn obscure infrared commands from original CRT remotes and preserve them digitally.

For CRT techs, collectors and enjoyers, that means you can build a library of service remotes, reproduce obscure button combinations and potentially access service menus on televisions for which the original remote has been lost for decades.

And with the help of the CRT community, we can turn those learned codes into a useful database so that the next person who encounters an obscure JVC, Sony, Panasonic, Philips or other CRT doesn't have to spend hours hunting down a 30-year-old remote just to press three buttons.

Back to blog

Leave a comment

Please note, comments need to be approved before they are published.