Help: GPIO IR Reciever and XBOX360 Remote getting double presses?

Hi all,

 

Recently made the move from RaspBMC to RasPlex. On RaspBMC I was using a XBOX360 Remote (This one: http://i.imgur.com/Wdov4a3.jpg) and an IR Receiver wired through GPIO, and loaded a custom lircd.conf (I think it was called) file and it worked great. The one exception was that after some time without use/interaction the system would sleep (or something) and the remote would become unresponsive. Wasn't frozen as keyboard would still work.

 

Now in RasPlex using the same IR Reciever / Remote it worked 'out of the box' except for most remote buttons would 'double press' making it quite frustrating to navigate the menus, etc. I also still get the issue with the system sleeping and remote not working for a short while but I found that if I kept pressing buttons it's soon (maybe 30-60 seconds) come back to life.

 

How can I eliminate this, can I use the same remote config file somehow? I tried to SSH in and have a look but everything was mounted as read-only so I couldn't actually change anything.

 

Heads up, I'm bit of a linux noob.

 

I'm running RasPlex on a Model B off of a 4GB SD card (need a better card at some stage) if that helps.

I have noticed this too...   Normally, all keypresses are multiple switch closures, often thousands.  So in the olden days we debounced switches with flip flops (a type of electronic circuit building block).

However in the days of CPU's reading keypresses, we could write input routines that would debounce the characters for us, so the flipflop was not needed.

When you become ready for input, the first thing that you do is clear the input buffer, so no errant keystrokes from earlier in the day are camped out waiting to wreck the user experience.  Then we use a variety of methods to determine when that 13 pulses we got from a keyswitch were close enough together to be just one keypress.

What I noticed in particular is they don't ever clear the input buffer, so every keystroke, no matter how long ago it was pressed, is acted on... And the keypress debounce routine seems to have a very short timer threshold.  But I don't know where that is controled in the software.  I was using a completely different input path than you, but get similar results.

When I first booted 0.4.0 RC5 on my b+, the remote was completely unresponsive for about 4 or 5 minuted after the first prompt asking me for input.  No keypress did anything.  Then it flipped through all of the config screens at once, because I had been trying to press buttons for the 4 or 5 minutes it was sitting there.  When it was flipping pages, it never once cleared the input buffer, despite the keypresses being severtal minutes old.  When that isn't happening, I still get a lot of double-presses, so going up and down in a menu is maddening, as it always goes past the item you are trying to select.

So we can "learn" from this and be careful how we handle the remote, but really the software should be doing a better job of handling backlogged keystrokes and debouncing the inputs.  This is input programming 101.I'm sure it will be resolved.  For those wondering, my input path is using my tv remote to the tv, which passes the signals by way of the HDMI port.  My TV frequently misses keystrokes, so the ods that I will send a second or third if the system in unresponsive is high.

It *could* be my tv that did the buffering, but I don't think so, as other devices like my blu-ray player work flawlessly from this signal path, so I have never seen the TV queue up keypresses in the 3 years that I have had it and the blu-ray player.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.