USB HID Driver help

Tom Rhodes trhodes at FreeBSD.org
Fri Mar 2 16:10:34 UTC 2007


On Fri, 02 Mar 2007 09:45:59 -0600
Tony Shadwick <tshadwick+freebsd-arch.freebsd.org at oss-solutions.com> wrote:

> Tom Rhodes wrote:
> > On Fri, 02 Mar 2007 09:16:07 -0600
> > Tony Shadwick <tshadwick+freebsd-arch.freebsd.org at oss-solutions.com> wrote:
> > 
> >> Sorry for being slow to respond.  I tried doing kldload uhid, and was 
> >> told "file already exists", so I take that to presume uhid is getting 
> >> loaded at boot, thus perhaps you're right about needing to work around 
> >> this. How would you suggest?
> > 
> > Or is included via the GENERIC kernel file.  So you will need to
> > remove it from your kernel before using the module.
> > 
> >>
> >> Markus Brueffer wrote:
> >>> Hi Tony,
> >>>
> >>> On Monday 26 February 2007 21:43, Tony Shadwick wrote:
> >>>> I'm definitely not a high-end programmer, but I have gone to the trouble
> >>>> of working out the protocol for a USB light gun that is normally used on
> >>>> a Playstation 2 video game console.  It has 10 buttons, and can track
> >>>> on-screen location if it has access to the composite sync video signal.
> >>>>
> >>>> http://forum.arcadecontrols.com/index.php?topic=60813.0
> >>>>
> >>>> I've written just a basic parser for the gun.  FreeBSD picks up the gun
> >>>> and gives it a ugen character device that I then take continuous input
> >>>> from.  The protocol is 6 bytes long repeated pretty much as fast as the
> >>>> gun can send it.
> >>> Did you have uhid(4) in the kernel or loaded as module? If not, please try 
> >>> loading the module and see if the device gets picked up by it (you need to 
> >>> replug it after loading the module).
> >>>
> >>> Judging from the description of the protocol, it seems that the device is a 
> >>> regular USB HID device. If it doesn't get picked up by uhid(4), it suffers 
> >>> from the same problem as the gamepad of the Xbox360 by not exposing itself as 
> >>> being a regular USB HID device and not providing a HID descriptor. Both can 
> >>> be worked around but please verify first, that uhid(4) doesn't already 
> >>> support the device. Writing an extra driver for this device is not 
> >>> neccessary.
> >>>
> >>> Markus
> >>>
> >> _______________________________________________
> >> freebsd-arch at freebsd.org mailing list
> >> http://lists.freebsd.org/mailman/listinfo/freebsd-arch
> >> To unsubscribe, send any mail to "freebsd-arch-unsubscribe at freebsd.org"
> >>
> > 
> > 
> 
> We wre trying to establish that uhid was loaded to see whether the light 
> gun was really an HID device or not, and if it is similar to the XBox 
> controller that is, but doesn't get detected, we need to work around 
> that problem.  I'm asking how it is suggested that I work around the 
> issue.  I've never written a driver before.

Oh, my bad.  I thought you wanted to try the approach of unloading
and then re-loading the module but was getting tripped up with
the message above.  Sorry,

-- 
Tom Rhodes


More information about the freebsd-arch mailing list