Ports and Interfaces > USB

USBCV HID Descriptor error

(1/5) > >>

jdunne:
Hello,

I'm attempting to make my USB device compliant with the USBCV tool.  It works perfectly fine under normal use, but when I attempt to test the device it fails the HID Tests.  The error is quite cryptic and very unhelpful.  I'm hoping somebody has knows of a tool that can be used to verify report descriptors.

Following is the error, which is about as helpful as it saying "Error.":
Now Starting Test: HID Class Report Descriptor Test (Configuration Index 0)
Start time: Tue Apr 26 10:55:24 2011

External report descriptor parser 0x200 warnings
External report descriptor parser 0xA errors
(3.2.61) The report descriptor returned in response to a GetDescriptor(Report)
 must be compliant with the HID specification.


I looked into Windows kernel debugging, but got scared and ran for the hills.  Ideally I'd like to just generate a .log file of the enumeration process without having to use all the crazy 2 PC setups they have.  Has anyone used Windows kernel debugging to debug an HID device?  I'd be more willing to put in the effort if I knew I'd get a useful output.  Like I said, the device works, so I'm not really sure if Windows would even show an error in the debug trace.  If anything it might be a warning.

Anyway, does anyone know of a tool to check for errors in HID report descriptors?  Mine are quite lengthy and I can't post them here, so I'm really looking for suggestions of tools to use. 

I might be crazy, but I recall using an application several years ago which output an HTML page showing report descriptor errors.  I can't remember what its called and I can't seem to find it in any of my tools.  The only thing I remember is that I'm fairly certain it was either a Perl script or a Python script.

Joe

Jan Axelson:
The HID descriptor tool is here:

http://www.usb.org/developers/hidpage#HID%20Descriptor%20Tool

Jan

jdunne:
Jan,

Thanks for the reply.  The HID descriptor tool is useful for creating a report descriptor.  It is not useful for verifying one is correct.  I'm trying to determine why usbcv is telling me that it doesn't like my descriptors.

Joe

Jan Axelson:
That's the only tool I can recall. You could try removing sections of the descriptor and retesting to try to isolate the problem.

If the device enumerates, I don't think debugging the enumeration will show anything.

Jan

jdunne:
Jan,

That's the same conclusion I came to.  I have another similar device which does pass the usbcv test and I'm presently in the process of copying portions of the working descriptor over until I get a pass result.  Thanks for the input.

Joe

Navigation

[0] Message Index

[#] Next page

Go to full version