Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vdr] Re: vdr-1.1.29 / vdr-1.1.30 LIRC problem!?



Hallo,

> >> does anybody else experience problems with LIRC after a while?
> >>
> >> i think since vdr-1.1.29, some keys donīt respond any more after some
> >time.
> >> f.e. all buttons except DOWN respond. next time it is MUTE.
> >>
> >> i have to restart LIRC (and vdr then...) to fix this.
> >>
> >> @klaus: can this happen with these lirc code changes in 1.1.29 ?

With 1.1.28 I sometimes had no respons from my remote _on all buttons_ -
sort of that after longer time with no action the lirc-connection somehow
was lost. But I had the impression that if I pressed lots of keys or started
irw then it would work again !?
As far as I have noticed till now 1.1.29 and 1.1.30 does not have that
problem anylonger - but I may not have used them long enough ;)

Does this only happen with keys that are repeatedly pressed and released
several times (not press and hold) ?

If so then try settings "KEYPRESSDELAY" to 0 or 1 in lirc.c and recompile
VDR.

Or maybe you can try the lirc.c of an older version - I am not sure if
anywhere else things have changed !? - so that this might not work.

This is what I had sent to Klaus - you could also try to remove that again
and see if it gets better. If it does not help you will have to ask Ludwig
Nussel.

Patch for VDR 1.1.27 :

--- lirc.c.ORG  Tue Apr 15 10:23:23 2003
+++ lirc.c      Tue Apr 15 10:26:29 2003
@@ -16,6 +16,7 @@

 #define REPEATLIMIT  20 // ms
 #define REPEATDELAY 350 // ms
+#define KEYPRESSDELAY 150 // ms

 cLircRemote::cLircRemote(char *DeviceName)
 :cRemote("LIRC")
@@ -76,6 +77,12 @@
          sscanf(buf, "%*x %x %29s", &count, KeyName); // '29' in '%29s' is
LIRC_KEY_BUF-1!
          int Now = time_ms();
          if (count == 0) {
+            if (strcmp(KeyName,LastKeyName) == 0)
+              {
+                 if (Now - FirstTime < KEYPRESSDELAY)
+                    //Too fast key skipped...
+                    continue;
+              }
             if (repeat)
                Put(LastKeyName, false, true);
             strcpy(LastKeyName, KeyName);


Greetings
Christian





-- 
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe vdr" as subject.



Home | Main Index | Thread Index