/******************************* skeleton.php - 2004.02.11 by Jarod Wilson *******************************/ /* page title */ $page_title = "Universal Remotes"; ?> /* Include header */ include("header.php"); ?> /* Include sidebar */ include("sidebar.php"); ?>
There are a good number of univeral remotes that can be programmed for use with MythTV. In general, I find the quality of even the better remotes shipped with TV capture cards (like the grey Hauppauge one) to be rather sub-par. For starters, they're too damned small and flimsy for my taste. Second, when you have as many different A/V components as I do, you DON'T want yet another remote. Thus the desire for a both a better and universal remote.
While there are tons of "Universal" remotes out there, not all are created equal. Some are just way too expensive for me to even consider. Others aren't actually very "Universal" (their device coverage sucks). The list of junk I wanted to control is as follows: a 47" Panasonic HDTV, a 110-disc Technics CD changer, a Motorola DCT-5100 cable box, an X-Box w/the DVD module, a Yamaha amp/receiver and my MythTV Home Theater PC, interfaced via a Hauppauge IR receiver on a WinTV PVR-250 card. Based on the suggestion of another MythTV user, I opted to go with the RadioShack 15-2116 universal remote, which can be had for about $30.
This RadioShack remote (along with most other RS remotes) is actually manufactured by Universal Electronics (UEIC), who also sells their products directly to consumers under the "One-4-All" brand name. Such being the case, you'll typically be able to control the exact same devices with either line of remotes. The steps to programming functionality into these remotes is also very similar. That said, continue on to read just how I went about programming my RadioShack remote for use with MythTV.
I had a pretty good feeling I'd be able to get everything working from the get-go, based on a little bit of research. I figured I'd probably have to get (or build) a serial IR receiver to use the remote with my MythTV box. I was pleasantly surprised to find out that it wasn't at all necessary.
This means the only significant hardware in this puzzle is the RadioShack 15-2116 universal remote, and the IR receiver, hooked to my Hauppauge WinTV PVR-250 (which should function the same as the IR receiver on any other Hauppauge card). Note that these instructions will NOT work with most other TV card's IR receivers, because Hauppauge uses a less-common IR protocol than most.
Note that while this remote *is* JP1-programmable (http://groups.yahoo.com/group/jp1/), I haven't touched JP1 at all. You can get this thing working without JP1 (the JP1 route is probably technically superior and cleaner, but I figured I'd try without, especially since JP1 programming requires a Windows-only app, and MythTV is a Linux project :).
The main pieces of software in question are LIRC (http://www.lirc.org/) and MythTV (http://www.mythtv.org/). Another piece of documentation I've already written describes how to set up lirc with MythTV and a Hauppauge IR receiver on a Fedora/Red Hat Linux system, and applies equally for this little excercise. You can find the relevant section of that doc here:
The primary differences between that documentation and this, is that lircd.conf and lircrc are set up for use with the little grey remote included with recent rev Hauppauge TV capture cards, while we'll need an entirely different lircd.conf file and a slightly modified lircrc file for the RadioShack remote. Below are links to the RadioShack-specific files I'm using:
You'll need to rename those files lircd.conf and lircrc respectively. The lircd.conf file should be placed into /etc/ (/etc/lircd.conf) and the lircrc file into ~/.mythtv/ (your_home_directory/.mythtv/lircrc).
For starters, you'll need to use a remote profile that uses the same RC-5 signaling protocol as the Hauppauge remote. Philips/Magnavox and Marantz are the primary manufacturers that use this signaling protocol. I opted to use the "AUX" device button on my remote for my MythTV system, though the "VCR" button might be preferable to others. Pretty much any of the device buttons will work, so long as you set it up as a VCR device, with VCR device code 0081.
Also, if you've done any prior work on customizing your remote under the VCR 0081 profile (like some IR Learn stuff), you might want to consider starting fresh. Simply temporarily assigning a different device to your desired button, then setting it back to 0081 should give you a fresh 0081 profile. You *might* have to d a full reset of the remote, but I'm not certain...
While this does make many of the buttons function immediately, several of them aren't mapped to do anything under this profile. However, with the remote's keymover function, you can map extended function codes (EFCs) that aren't assigned to any keys to the currently dead keys. A relatively full listing of key codes can be found at http://www.hifi-remote.com/cgi-bin2/ueic.cgi?VCR_0081. This is the primary resource I used (along with Harry's guidance) to get functional codes mapped to the dead buttons.
So how do I program those buttons, you ask? That information might be in your remote's manual (I'm not sure, I didn't actually look there), but it is definitely on the same site just referenced, at http://www.hifi-remote.com/ofa/advanced.shtml#LCD1, specifically section B. under the LCD Remote Instructions (Current models) heading. Shamelessly heisted from that site (but modified to match up exactly w/the RS15-2116), here's how to program the buttons:
| EFC | Destination Key |
| 108 | INFO |
| 050 | GUIDE |
| 113 | PIP |
| 145 | SWAP |
| 076 | MUTE |
| 241 | SLEEP |
| 046 | ENTER |
| 176 | FREEZE |
| 236 | MOVE |
| 210 | +100 |
| 142 | LEFT |
| 110 | RIGHT |
Most of these key assignments match up directly with the mappings show on the hifi-remote site, but with a few of them, I had to get a little creative, as the assignments from that site overlapped with other already programmed keys (essentially, they sent the same IR codes). The end result is that while the EFCs might not match up exactly with those tables, they all send a unique IR code, which can in turn be mapped to a unique function.
I almost forgot... A note about the volume keys: I didn't do anything with them, because I have the volume keys on my remote set to always control volume on my amp. Your situation may differ, but figuring out what to do with them is up to you.
Anyhow, if you follow the above mapping exactly, the lircd.conf and lircrc files I've put together should leave you with a fully functioning setup on your RadioShack 15-2116 universal remote for controlling you MythTV system. Now tweak it to your heart's content. :)
RadioShack page for the 15-2116 remote:
LIRC website:
MythTV website:
LIRC config files:
My full MythTV on Fedora Core HOWTO:
The HiFi Remote website:
The JP1 Yahoo! Group website:
Hauppauge website:
Thread containing Nelson's posting to the MythTV mailing list:
Thread containing Harry's posting to the MythTV mailing list: