[libhid-discuss] hidparser - development

Charles Lepple clepple at ghz.cc
Sun Sep 19 16:04:59 UTC 2010


On Sep 18, 2010, at 6:38 PM, Skip Hodgson wrote:

> I notice this discussion list does not seem very active.  Does this  
> mean the libhid project development is dormant?  I ask this because  
> there seem to be some discrepancies in the hidparser and I don't  
> know whether a new one is under development or whether it matters to  
> anyone any more.  There are a number of characteristics in the HID  
> spec (version 1.11) which don't seem to be in the parser (at  
> revision 364).  Specifically at least the Local Items "Usage  
> Minimum" and "Usage Maximum" are not recognized.  These are used by  
> a number of existing devices so the deficiency is noticeable.  I  
> have developed a little patch to deal with these for our own project  
> but I would like to know if further development is under way or if I  
> have just misunderstood the spec. or the project.

You're right that there are Usage Minimum and Usage Maximum items in  
the spec, and I thought that they were handled in some rudimentary  
fashion. The debug routines that dump the parsed information don't  
handle them well at all, though.

There are several use cases for HID which don't really overlap, and  
libhid (and the hidparser code) were designed to work with the fairly  
deep HID structure of an UPS (hence the "path" concept) rather than  
the shallow structure of a mouse or keyboard (the latter of which will  
often have Usage Minimum and Usage Maximum to span the range of key  
scan codes).

Most _human_ interface devices (mouse, keyboard, etc., as opposed to  
non-interface devices that just piggy-back on the HID protocol  
definitions) are already handled by the OS HID drivers, so the  
hidparser code is a little redundant in those situations.

Then, there's the license situation: hidparser is GPL (not LGPL),  
which is a showstopper for people who want to use libhid and/or  
hidparser in closed-source projects.

That said, it sounds like you've found enough of a use case to warrant  
a patch, and you are more than welcome to post the patch to the list  
(gzipped if it's larger than a few kB).





More information about the libhid-discuss mailing list