[mythtv-users] Remote misses keys

OCG Technical Support support at ocg.ca
Sat Jan 31 15:51:06 UTC 2009


Wow great explanation - thanks.  I don't know if you are part of the Lirc
project, but if so you should replace their confusing explanation with the
below.

Now to experiment with new settings...

-----Original Message-----
From: mythtv-users-bounces at mythtv.org
[mailto:mythtv-users-bounces at mythtv.org] On Behalf Of Michael T. Dean
Sent: January 31, 2009 10:07 AM
To: Myth TV Users List
Subject: Re: [mythtv-users] Remote misses keys
Importance: High

<fixed top posting and improper formatting by broken MUA>

On 01/31/2009 09:36 AM, OCG Technical Support wrote:
> From: Brad DerManouelian
>> On Jan 30, 2009, at 7:58 PM, Michael T. Dean wrote:
>>> On 01/30/2009 08:34 PM, OCG Technical Support wrote:
>>>> I use LIRC to interface my remote to MythTV.  I notice that if I  
>>>> press remote keys too quickly, some get lost.  If I leave ½ sec  
>>>> between keys then all works fine.
>>>>
>>>>
>>>> Is there a setting I can use to correct this?
>>> Fix your LIRC config (~/.lircrc and/or ~/.mythtv/lircrc)-- 
>>> specifically the delay portion or your /etc/lircd.conf's gap.
>> This can happen if your repeat is set too high for your liking, too.  
>> (It ignores every nth key press when repeat = n )
> I don’t use the "delay=" settings at all, but I have "repeat = 3" for each
> button.
>
> I never quite understood this...
>
> Are you saying lirc will ignore every 3rd keypress?  Or will it only send
> the string ONCE for every 3 keypresses?

"repeat = 3" says that if the button is pressed /and held down/ that 
LIRC should only pass on every 3rd keypress. It and it's relative, 
"delay," are used for exactly the same purpose as rate-limiting the 
keyboard repeat rate with "xset r rate <delay> <rate>" with the 
exception that rate is exactly inverse (i.e. LIRC specifies how many 
repeats to ignore and xset says how many repeats to send). For LIRC, the 
delay specifies how many repeats should be ignored before allowing 
autorepeat, and the special value "repeat = 0" says to ignore all repeat 
button presses.

The confusing part is how LIRC determines whether the button was held 
down or not. Some remotes actually send key down/key up events--for 
these, it's straight-forward to determine whether the event was a second 
keypress or a repeat from holding the button down. For others, LIRC 
remote configurations specify a gap that specifies how much time passes 
between remote signals when the button is held down. For these, if you 
press the button twice within that gap, LIRC sees it as a repeat and not 
as another button press.

Note, also, that repeat and delay /only/ have an effect when the exact 
same button is received. If you were talking about missed buttons /only/ 
when the same button is pressed multiple times, it could be repeat or 
delay. If differing buttons are also affected, it can't be repeat or delay.

But, really, as mentioned in my first reply, your issue--if you don't 
use delay--is most likely the gap specified in your /etc/lircd.conf . 
Note, also, that the exact same gap specified on different processors 
can have different effects, so it's not that unusual to have to adjust it.

If you simply modify the repeat, you're likely to mess things up. For 
example, the Mute button is not likely one you want to press and hold 
down to toggle mute on/off repeatedly. Therefore, its repeat should be 
set to 0 (which means to ignore all repeats). If you were to change it 
to 1 (send all events), then you'd likely double-toggle mute 
occasionally--/especially/ if you had a broken gap value.

While the mute button is relatively intuitive to configure, for other 
buttons, sometimes you /do/ want to hit the button twice, for example, 
the "1" button. If hitting it twice quickly causes the second button 
press to be ignored, you could modify the repeat, but doing so may cause 
it to send too many events when you don't want them--i.e. causing it to 
send "11" when you mean to send "1".

Note that you need to restart lircd /and/ any clients using LIRC 
(mythfrontend) before changes to gap (changes to /etc/lircd.conf ) will 
take effect. If you modify the repeat (any change to your ~/.lircrc or 
~/.mythtv/lircrc ), you will need to restart any clients using LIRC 
(mythfrontend)

Mike
_______________________________________________
mythtv-users mailing list
mythtv-users at mythtv.org
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users



More information about the mythtv-users mailing list