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
