PDA

View Full Version : 'sticky' buttons repeat infinitley



jameswing
March 13th, 2005, 04:13 PM
Using NetRemote + NRIR Server + USB_UIRT.

The USB-UIRT driver for NRIR Server has exactly one (1) user-configurable parameter, 'disable hold-down button repeats'. With this set on, the repeating portion of the codes is transmitted six (6) times, which results in a robust code that is reliably received by the targeted device. When it is off, the repeating portion of the codes is transmitted from one (1) to many times, depending on for how long you hold down the button.

The problem comes when you have a very quick button press-and-release. The UIRT continues to transmit the code indefinitely after the button is released. (You can make it stop by pressing any button that will send a code to the UIRT for transmission.) It seems that if the ‘button up’ event follows the ‘button down’ event too closely, then the ‘button up’ event is not ‘seen’.

Ideally, it works something like this:

Events:
<button down> - event occurs when the button is ‘pressed’ in NetRemote
<button up> - event occurs when the button is ‘released’ in NetRemote

Parameters:
<max repeat count> = maximum number of times that the repeating portion of a code will be transmitted before we assume that communication has been lost with the client and that we will never receive a ‘button up’ event, so we should just stop
<default repeat count> = fixed number of times that the repeating portion of a code will be transmitted if ‘disable hold-down button repeats’ is set ‘on’.
<disable hold-down button repeats> = flag to indicate whether or not the repeating portion of the codes should be transmitted until the button is released. – true=no, false=yes
<code> = IR code to be tranmitted


Pseudo-code executed on ‘button down’ event:
If <disable hold-down button repeats> = true Then
send <code>, transmitting the repeating portion <default repeat count> times
Else
send <code>, transmitting the repeating portion <max repeat count> times
End If


Pseudo-code executed on ‘button up’ event:
Send ‘stop transmitting’ command


The way it seems to work currently is that <default repeat count>=6, <max repeat count> = infinity, and the ‘button up’ event is just not working if it follows the ‘button down’ event too closely. I don’t have any logging/debugging capability, but if I did, I could probably tell you who is dropping the ball on the ‘button up’ event – NRIR Server or NetRemote. I am using the client (NetRemote) and the Server (NRIR Server) on the same PC in order to remove a wireless communication failure from the list of possible causes of loosing the ‘button up’ event.


The reason I posted this here, instead of in the bug forum, is that I am leaving wide open the possibility that I am stupid and have simply missed some configuration page where I could set all of these parameters and make it work just the way I want. If so, someone please point me in the right direction. If not, just let me know if and how I can help remedy these issues.

This product is extremly close to being the best thing since sliced bread. -- just needs a couple of little details worked out. :D

--Jim