LinHES Forums http://forum.linhes.org/ |
|
IR Blaster & Change 2-Digit Channel Issue http://forum.linhes.org/viewtopic.php?f=17&t=12770 |
Page 1 of 1 |
Author: | dgif52 [ Wed Nov 29, 2006 1:49 am ] |
Post subject: | IR Blaster & Change 2-Digit Channel Issue |
Hi all, I'm just about finished setting up a fresh install of R5D1 on a box that had a KnoppMyth version from about a year and a half ago. What a difference! It took me weeks to get everything working then. Now, it is almost perfect out-of-the-box. I am having one issue however. I am using an external cable box, and a Hauppage 150 IR blaster to change the channels on the box. Everything works perfect for all channels above 99 (3 digit channels). Everything below it gets busted up. Basically, instead of sending the channel number to my change_channel script, it sends 3 random numbers, followed by "250". Its strange that the 250 is always the last 3 numbers sent in, but the first 3 appear random based upon channel number. Once again, everything above 99 is perfect. I've confirmed that its not a bug in the change_channel script because I can do that correctly from the command line for any 2-digit channel. I'm wondering if this has something to do with the channel list from Zap2IT, but it appears fine - all channels are listed correctly when I navigate inside live TV. I have searched the forums for this issue and cannot find a reference to anything similar. Does anyone have any ideas where I should start looking, or, if I'm lucky, an actual answer to this problem? Otherwise, what a sweet program. Its definitely come a long way. Thanks for any help. |
Author: | rayyuh [ Wed Nov 29, 2006 11:04 am ] |
Post subject: | |
I seem to have the same problem with R5D1. If you use the change_channel script and send 011 it works, but not if 11 is used. Mythtv is just sending 2 digits to the external Motoroal Cable box, I see the channel changing, but then changes back to the previous 3 digit channel. Anyone have any suggestions? Ray |
Author: | rayyuh [ Wed Nov 29, 2006 8:56 pm ] |
Post subject: | |
So I fixed my problem by modifying the change_channel script to send an "ENTER" if number of digits was less than 3. |
Author: | iscraigh [ Wed Nov 29, 2006 10:08 pm ] |
Post subject: | |
could you post your modification so it can be included in Myth (or at least so I can get it ![]() You can also turn auto tune on in the motorola box and it will change when it doesn't get a third entry after a few seconds. |
Author: | dgif52 [ Thu Nov 30, 2006 10:06 am ] |
Post subject: | Fixed |
Thanks for the help guys. It turns out I hosed my channel list by using the "Scan for Channels" after using the Zap2IT list. Basically, it was changing the channels on the cable box via a five-digit frequency, not just the particular channel number. Everything is golden now. Thanks! |
Author: | rayyuh [ Tue Dec 19, 2006 12:12 pm ] |
Post subject: | |
Here is the modified script that I got from here. http://www.blushingpenguin.com/mark/lmi ... laster.bin Added two_digits_only check which sends an "OK" when only two digits are pushed on the remote. Sorry for the long delay. #!/usr/bin/perl # make sure to set this string to # the corresponding remote in /etc/lircd.conf $remote_name = "blaster"; # Let's assume you don't need to press enter after you punch in a # channel number. Change this to 1 if your cable box expects you press # enter after each command $needs_enter = 1; $two_digits_only = 0; # Change this to point to your rc executable $rc_command = "/usr/bin/irsend"; # This subroutine actually sends the signal to the cable box sub change_SIGNAL { my($SIGNAL) = @_; system ("$rc_command SEND_ONCE $remote_name $SIGNAL"); } $SIGNAL=$ARGV[0]; open F, ">> /var/log/channel.log"; print F "channel changing $SIGNAL\n"; close F; print "channel changing $SIGNAL\n"; # Checks if $SIGNAL begins with a digit # If it detects that the string is made up of digits, then it puts # spaces between the digits. Ex. 1234 becomes 1 2 3 4 if ( $SIGNAL =~ /^\d+$/ ) { my $length = length($SIGNAL); my $counter = 0; my $temp; while( $counter < $length ) { $temp .= substr($SIGNAL,$counter,1) ." "; $counter++; } if ($length < 3) { $two_digits_only = 1; } change_SIGNAL($temp); } else { # argument we passed was not made up of digits, so it must be a # command that does something other than channel changing on the # cable box change_SIGNAL($SIGNAL); } # Do we need to send enter if ( $needs_enter && $two_digits_only ) { system ("$rc_command SEND_ONCE $remote_name OK"); } |
Page 1 of 1 | All times are UTC - 6 hours |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |