USB HID parser

Milan Obuch freebsd-usb at
Thu May 15 04:48:36 UTC 2008

On Thursday 15 May 2008, Chuck Robey wrote:
> Milan Obuch wrote:
> > On Wednesday 14 May 2008, Chuck Robey wrote:
> >> I wrote a parser, and I don't know if anyone might be interested in it. 
> >> I didn't write it as something to be used in a driver ... I wrote it as
> >> a learning aid, for someone who's trying to learn that horrible USB HID
> >> spec. It's quite verbose, most especially if you use it in GUI mode (I
> >> wrote it in Python, and it's got a integral Tkinter GUI.  In Python
> >> mode, it's got help info available on every output it has, and displays
> >> the data it's parsing in a way taht makes it fairly easy to have the USB
> >> HID parser on your knee, while you slowly step the parser thru the input
> >> data.
> >>

[ ... ]

> >>
> >> I called it parsetool.  I know that's a fairly dumb name )(there are one
> >> or two projects already oout with that name), come up with a better one,
> >> and I'll gladly use it (if it's not overly silly).
> >>

May I suggest another name? We have udesc_dump in ports, I would like to offer 
uhid_parse(r) as a better alternative...

> >> Write me if you want it, I'll mail it to you, the tarball is fairly
> >> small (even with all those tables, it's only about 25K compressed) and
> >> installation couldn't really get any easier, just make sure you have a
> >> working python of 2.3 or later, with a working Tkinter.
> >
> > Could you eventually make a port from it and submit it this way? I think
> > it could be usefull for many...
> After getting no response to any requests for any feedback (like alpha
> test, but about either the protocol features, OR the accessibility of the
> UI) I begin to wonder if there is really any interest pool for this. 
> Unless I get at least *some* feedback, I will make it available, but no
> port.  Geeze, it doesn't need one!  If you have Python + Tkinter, then copy
> it into come directory, then kick it off either with a < redirect or a -f
> filename flag (yes, there's a "usage()"), it can't get a whole lot easier,
> could it?  Not even any compiling! I sat for what seemed like forever and
> pounded those endless tables into the source code, too.

Well, putting a port into repository is not that hard. Actually, it makes a 
bit more exposure for your code. All you need is a small Makefile, distinfo 
and that's all. And put distfile somewhere on web to make it actually 
accessible. Choose license for your code (if I understand it right you wrote 
it all, so there is nobody else to do this) and here you are.
Then you can expect some responses or maybe even patches...
If you would like to help with porting, we could cooperate. I do not think I 
am the best person for this, just offering a help if you like.

> I'm beginning to wonder if I will have even one FreeBSDer who wants it, 
> Might get rid of a couple of Linux versions.  I hate to admit that it works
> just as well on Windows, darn it.  Maybe I could figure out how to break it
> for Windows, what do you say?

Everyone working seriously with USB devices will try it when it will know 
about and it will be easily accessible, which is what ports are for.
As for Windows, no idea. But if you could make some sort of how-to with simple 
guide hove to get all prerequisites fullfilled, expect some feedback. Or 
there will be none? If you won't try it, you won't know.


Address this mail is sent from is used only for this mailing list.
Do not send any messages to it directly as a response, reply only
to mailing list. For mail to me personally, use milan in address instead.

More information about the freebsd-usb mailing list