LinHES Forums http://forums.linhes.org/ |
|
Cisco/Comcast/SA RNG-100 Cable Box IR Blasting http://forums.linhes.org/viewtopic.php?f=23&t=21241 |
Page 1 of 1 |
Author: | langelgjm [ Tue Jul 20, 2010 1:39 pm ] |
Post subject: | Cisco/Comcast/SA RNG-100 Cable Box IR Blasting |
My old SA Explorer 2200 recently died, so I traded it in at the Comcast office for a new box. Expecting the same, I was surprised when they handed me a slim, fancy looking cable box with "Cisco" on the front. "Cool! A nice new box." Excitement soon turned to dismay when I discovered that this box is a complete PITA when it comes to remotes and IR. It uses the XMP protocol, which presents a problem for using other remotes with the box, but also potentially for IR blasting. If you are using a stand-alone blaster (such as the $12 serial version), it's just a matter of using the codeset found here. However, if you have a PVR-150 (MCE version excluded) and you're using its IR blaster, this won't work. The PVR-150 uses special codesets and is limited to those, so you cannot send arbitrary codes. The only solution is a new IR blaster. You can buy the $12 version or make your own; I made my own. Once you've done that, you need to configure lircd to deal with two separate devices: your PVR-150 for IR reception, and the serial blaster for IR transmission. The startup script for lircd is designed to handle exactly this situation, but it seems to me there's a problem: it determines whether you have multiple IR devices by counting lirc[0-9] entries in /dev. Yet it will only load the lirc_serial module (which creates the device file in /dev) AFTER it has counted the number of devices. My solution was just to insert the lines loading lirc_serial directly before the number of devices is counted in the /etc/sv/lircd/run file. Restarting lircd now shows the correct number of devices in /dev, and the correct number of lircd processes. $ ls -l /dev/lirc* Code: lrwxrwxrwx 1 root root 5 2010-07-20 14:55 /dev/lirc -> lirc0 crw-rw---- 1 root root 61, 0 2010-07-20 14:55 /dev/lirc0 crw-rw---- 1 root root 61, 1 2010-07-20 14:56 /dev/lirc1 srw-rw-rw- 1 root root 0 2010-07-20 14:56 /dev/lircd srw-rw-rw- 1 root root 0 2010-07-20 14:56 /dev/lircd1 Code: $ ps aux | grep lircd root 4244 0.0 0.0 1548 316 ? Ss 14:56 0:00 runsv lircd root 4273 0.0 0.0 3056 856 ? S 14:56 0:00 /usr/sbin/lircd -r -n -d /dev/lirc0 --output /dev/lircd --connect=localhost 8761 root 5139 0.0 0.0 3012 556 ? Ss 14:56 0:00 /usr/sbin/lircd -r -d /dev/lirc1 --output=/dev/lircd1 --pidfile=/var/run/lircd1.pid --listen=8761 gjm 8876 0.0 0.0 3640 832 pts/1 S+ 15:31 0:00 grep lircd Assuming you have inserted the device codeset (Comcast Custom-3-Device) linked to above somehow (either including it in one of the preexisting templates, or making a new directory with that file, etc.) so that your /etc/lircd.conf includes it, you should now be able to receive remote control signals through the PVR-150 and transmit IR through the serial blaster using irsend. You need to specify the device and address when using irsend, something like this: Code: sudo irsend -d /dev/lirc1 -a localhost:8761 SEND_ONCE Comcast_Custom-3-Device 5
For me, this changes the RNG-100 box to channel 5. At this point you'll need to update your channel changing script. I am not going to make this into a HOWTO because I'm not sure this is the "correct" way of doing things; e.g., if the run script for lircd is really broken, or if I'm just not specifying to load the serial module in some other place. (FWIW I tried specifying this in /etc/systemconfig but it didn't work). But if someone else wants to chime in and see whether they think /etc/sv/lircd/run has a bug, then I'll be more confident about filing a bug report. PS: I made the "simple version" of the homebrew IR transmitter (three discrete components) and it works without issue. Range was not a problem for me since I was taping the PVR-150's IR blaster to the cable box anyway. I used an IR LED from an old remote, a 1N4148 signal diode, and a 2200 Ohm resistor.[/url] |
Page 1 of 1 | All times are UTC - 6 hours |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |