I have a USB HID version of a Topaz signature capture pad that I'm using the evdev interface (/dev/input/eventX) to read from. I've noticed that occasionally certain data bytes returned from the pad do not generate an event to pass them on to user space. I have verified this by debugging hid-core and seeing that some valid data bytes passed in function hid_input_field()'s parameter, *data, do not result in a call to hid_process_event(). Thus, the data byte is lost to the user-space reader.

The problem appears to be the line of code immediately following my comment "WHY IS THE FOLLOWING LINE PRESENT" in the code listing appearing below my signature. My HID Field has HID_MAIN_ITEM_VARIABLE set in the flags and calls the culprit code. The array, value, holds the 8 data bytes just read from the capture pad. The array, field->value, holds the previous 8 data bytes read from the capture pad. If a previous data byte matches a current data byte at the same index, then the current data byte is not processed as an event.

Questions:
1) Is the culprit code correct?
2) What is the culprit code trying to do?
3) Should the array, field->value really hold the previous 8 data bytes?
4) What is meant by "differential reporting" for hid_input_field()?

I am running a Linux 2.4.19 build.
Please advise if I should send this query to the users group rather than the developers group.

Thank you for your help,

Ben Ryan
Senior Software Developer
Ateb, Inc. (www.ateb.com)

phone: 919.882.4926
email: [EMAIL PROTECTED]




-------------------------------------------------------
This sf.net email is sponsored by: Influence the future of Java(TM) technology. Join the Java Community Process(SM) (JCP(SM)) program now. http://ads.sourceforge.net/cgi-bin/redirect.pl?sunm0004en
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to