tyrstag !at! gmail.com
The steps outlined here were the result of my wanting to be able to record one program while watching another in "LiveTV". Since I was using DishNetwork and had no cable connection, it wasn't as easy as I originally expected (is it ever?). I knew that I could get another PVR-250 and hook another receiver up to it, but how could I control both receivers independently? At first I considered compiling 2 versions of Lirc, installing them on different serial ports and putting one of the receivers in a cabinet (silly huh?).
Then one day on Jim Sandoz's site there was a message about changing the remote ID on a DishNetwork box and that was the last piece of the puzzle. Most of the things I did were based on the notes from Mark (MarkRShirley !at! eaton.com) and the work of other people, I just modified them to my taste and my desire to keep my MythTV box looking like an A/V component.
Important Note: In order for this setup to work, the devices you intend to control MUST use different signalling protocols. If they all use the same protocol, then every action you take with the remote control will affect all devices which have an IR "stick on eye" on it.
FYI: It may be possible to change the remote codes on other devices besides DishNetwork receivers, I don't know and I have no way to test them. If you know about others, please send me the info and I'll add it here.
The number one goal of this was to NOT break my existing configuration, and while I was at it, make my current IRblaster more attractive than an IR-LED hanging off the end of a piece of old Cat5 cable.
Because I had done some home automation installations, I knew about some devices that Russound makes (it didn't hurt that I was an authorized dealer). 2 parts in particular were of interest, the Russound 857 IR Hub and several Russound IR "stick on eyes". I wasn't sure if my serial port would drive the 857 Hub or not, so I called Russound tech support. After much explaining what I wanted to do and a couple of "I'll have to talk to an engineer" conversations, Russound finally said, "If you can control an IR device now, then it should work. But we won't guarantee it". That was good enough for me to give it a try. I purchased the 857 and a bunch of "Eyes".
The first unit I built was primarily for testing, so I didn't care how it looked. I took my old "IR-LED on a Wire", cut the LED off and mounted a 1/8" mini-plug. Plugged that into the 857 hub, plugged an "Eye" in and stuck it on my receiver and connected some power. Everything looked OK so I turned on my Myth box and the TV, changed the channel in the EPG and would you believe that it actually worked? Not only did it work, but it was better and more reliable than my old IRLED.
Now that I knew it would work, it was time to make it look nice and control an additional device.
1) Have a working LIRC serial controlling your current device. You can find the how-to for that here.
2) Make a serial "IRblaster" cable with a 1/8" mini-plug. I mounted the resistor and diode inside the DB9 shell to hide and protect the components.
![]() |
Here's a
picture of my serial "IRblaster" notice the diode and resistor mounted
inside. Here's the schematic from lirc.org
Replace the IRLED with an 1/8" MONO mini-plug. DTR is pin 4 and GND is pin 5 on a 9 pin connector. The resistor should be around 2Kohm. Notice the direction of the diode, the black stripe is away from the plug end, it doesn't matter with the resistor. |
3) Disassemble the 857 Hub and mount it in a floppy drive blank. I don't remember off-hand what size the drill bit is (mental note to get that info).
![]() |
The holes
for the jacks are exactly 1cm from center-to-center, I found the center of
the blank from top to bottom, then decided how close to one side or the
other I wanted the jacks.
I left room to mount my PVR-250 IR receiver on one side of the blank. (see pic.) I did the drilling with a cordless electric drill. If you have access to a drill press, you will have a much easier time keeping them even than I did. |
4) Power the IR Hub.
![]() |
In this
picture you can see the other end of the serial cable with the mini-plug
attached. You can also see the power connection. On my power supply I had 4 floppy style power connectors, more than I was going to need. So, one was sacrificed to become the power source for my hub. The yellow wire is +12VDC, and the black wire is GND Notice the screw type connector on the hub, that whole piece is a plug in module. Makes it much easier to mount the power then plug it in. The tape on the PVR receiver was holding it in place while the glue dried.
|
5) Mount the "Eyes" on the devices you want to control.
![]() |
Here's a pic
with the eyes mounted on 2 DishNetwork receivers.
Yes, that's a LaserDisk player under them. I'm old school. |
6) Power it up and make sure that your original device still works!! You don't want to do all the work to make 2 devices work, just to find that you never tested to see if it would control one! I can't stress this enough.
7) Add the config for your new device to your /etc/lircd.conf, I'm listing mine here in table format. Notice that they are all almost identical except for the second to last digit of the code. ID 1 is FF or EF, ID 6 is 7F or 6F and ID 9 is BF or AF. There are other ID's you can use, DishNetwork supports ID's 1 to 16. I didn't need that many and other people had already created these config's.
| DishNetwork Remote ID 1 | DishNetwork Remote ID 6 | DishNetwork Remote ID 9 |
| begin remote name DISH_1 bits 16 flags SPACE_ENC|NO_HEAD_REP eps 30 aeps 100 header 350 6000 one 324 2800 zero 324 1700 ptrail 324 gap 6000 min_repeat 1 toggle_bit 0 begin codes tv/video 0x000000000000A3FF power 0x000000000000F7FF menu 0x000000000000D3FF page_up 0x000000000000C3EF page_down 0x000000000000E3EF guide 0x000000000000AFFF pointer_up 0x00000000000097FF pointer_left 0x0000000000008FFF pointer_right 0x0000000000009FFF pointer_down 0x00000000000087FF select 0x000000000000BFFF recall 0x00000000000093FF info 0x000000000000FFFF view 0x000000000000A7FF cancel 0x000000000000B7FF sys_info 0x0000000000006FFF record 0x00000000000083FF 1 0x000000000000EFFF 2 0x000000000000EBFF 3 0x000000000000E7FF 4 0x000000000000DFFF 5 0x000000000000DBFF 6 0x000000000000D7FF 7 0x000000000000CFFF 8 0x000000000000CBFF 9 0x000000000000C7FF 0 0x000000000000BBFF * 0x0000000000006BFF # 0x00000000000067FF end codes end remote |
begin remote name DISH_6 bits 16 flags SPACE_ENC|NO_HEAD_REP eps 30 aeps 100 header 350 6000 one 324 2800 zero 324 1700 ptrail 324 gap 6000 min_repeat 1 toggle_bit 0 begin codes tv/video 0x000000000000A37F power 0x000000000000F77F menu 0x000000000000D37F page_up 0x000000000000C36F page_down 0x000000000000E36F guide 0x000000000000AF7F pointer_up 0x000000000000977F pointer_left 0x0000000000008F7F pointer_right 0x0000000000009F7F pointer_down 0x000000000000877F select 0x000000000000BF7F recall 0x000000000000937F info 0x000000000000FF7F view 0x000000000000A77F cancel 0x000000000000B77F sys_info 0x0000000000006F7F record 0x000000000000837F 1 0x000000000000EF7F 2 0x000000000000EB7F 3 0x000000000000E77F 4 0x000000000000DF7F 5 0x000000000000DB7F 6 0x000000000000D77F 7 0x000000000000CF7F 8 0x000000000000CB7F 9 0x000000000000C77F 0 0x000000000000BB7F * 0x0000000000006B7F # 0x000000000000677F end codes end remote |
begin remote |
8) The next step is to change your receiver to match the code you are using. For Most DishNetwork receivers.
Important System Information screen. . For most receiver models which use this remote, press the SYS INFO button on the receiver front panel. The Important System Information screen shows a Remote Address.1. Open the
2. Press and hold the
SAT mode button about three seconds, until all the mode buttons light up, and then let go of the SAT button. The SAT mode button will blink.3. Use the number buttons to enter 1, 6 or 9 depending on which receiver code you want to use. The
SAT mode button goes out after you enter each digit, and then lights up again.4. Press the
POUND (#) button. If you entered the address correctly, the SAT mode button will flash three times.5. Press the
RECORD button. You must point the remote control at the receiver while pressing the RECORD button.6. Make sure the
Remote Address on the Important System Information screen now is the same as the one you entered in step3. If it isnt, the remote cant control the receiver.
7. To check the remote control address, press and hold the
SAT mode button for three seconds. Then, let go of the SAT button, and press the POUND (#) button twice. The SAT mode button flashes the same number of times as the address you entered in step 3.8. Press the
SELECT button to close the Important System Information screen.
9) Create channel change scripts for your MythTV box to use. I use one like this:
#!/bin/sh
REMOTE_NAME=DISH_1 # Define my remote name here
for digit in $(echo $1 | sed -e 's/./& /g'); do # Accept input from MythTV
irsend --device=/dev/lircd1 SEND_ONCE $REMOTE_NAME $digit # Send the output to
Lirc
sleep 0.4 # note, you may have to tweak the interdigit delay up a bit # Wait for
next digit
done # got last digit from MythTV
irsend --device=/dev/lircd1 SEND_ONCE $REMOTE_NAME select # Add a select to
speed up channel changing.
sleep 0.4
irsend --device=/dev/lircd1 SEND_ONCE $REMOTE_NAME cancel # Get the Dish OSD off
the screen, it annoys me and I don't want it on my recordings.
I saved my script as change_1.sh and made it executable. Now that you have one script done you can make another copy of it and name it change_6.sh modify to REMOTE_NAME=DISH_6 and save it. Make it executable and now your second script is done. If you need a third script just do it again.
10) Run mythtvsetup and add your external channel change scripts to your new inputs. Make sure that you use the script that matches the receiver that's connected to that input. ie:
Card1 is connected to receiver with remote ID 1 and uses change_1.sh
Card2 is connected to receiver with remote ID 6 and uses change_6.sh
and so on.
11) Do some testing by changing channels on all your inputs, try PIP and try watching LiveTV while recording something else.
12) If you're happy, I'm happy :) Enjoy!!
v0.05 (02/17/05)
-Moved site (again). Andy did a great job of moving everything and setting up the original site - Andy
-URL is now http://www.lircsetup.com/lirc/multi - Andy
-Added info about changing DishNetwork remote codes - Pete
-Changed table fonts so they would fit better - Pete
-Added info on setting up multiple cards - Pete
-Fixed a bunch of typo's and bad grammar - Pete
-Changed BBClone's config so I'm not counting myself as hits - Pete
-Changed BBClone's timezone to my local - Pete
ToDo:
-Add ColorCoding to match Andy's page
-Design an "Entry" page
-Come up with a Logo or header design
14) Kudo's
To:
Andy Long - For turning my notes into the original how-to
Mark Shirley - For putting together the info on changing Dish Id's
Christoph Bartelmus - For answering numerous dumb questions
Last updated 02/17/2005