Re: Tricky USB device.

From: Maksim Yevmenkin (maksim.yevmenkin_at_savvis.net)
Date: 04/08/05

  • Next message: David Gilbert: "Re: Tricky USB device."
    Date: Fri, 08 Apr 2005 10:09:56 -0700
    To: David Gilbert <dgilbert@dclg.ca>
    
    

    David,

    >>> ... I don't know if this is hindering me. The usbhid* commands
    >>> aren't particularly helpful. The port udesc_dump seems only to
    >>> work on ugen devices ... and ugen doesn't pop up for this device.
    >
    > Maksim> how about getting usb hid descriptor, parsing and dumping it?
    > Maksim> check out libusbhid - man usbhid(3). it might be that all
    > you Maksim> need to do is to create hid report and send it to the
    > Maksim> device. libusbhid(3) will help you with that.
    >
    > Tried that. The usb_get_report_desc() returns NULL. This is not a
    > complicated device --- it's not even technically a "human interface"
    > device.

    fine, so i presume usbhidctl(1) does not work on the device too. why did
    they made look like usb hid device then?

    >>> I suppose I need to know how to supress uhid ... or to make ugen
    >>> show up. It would also be nice to know how to generically poke
    >>> the interupt enpoints...
    >
    > Maksim> well comment out 'device uhid' from your kernel config and
    > Maksim> rebuilding the kernel should do the trick.
    >
    > I wanted to try to avoid that since I use many USB devices, but it's
    > a last resort kind-of-thing.

    well, for what i know ugen(4) will only claim the device if no other usb
    device driver claimed it. so if the uhid(4) claimed it than (i assume)
    usb interface class on the device is set to the appropriate value.

    > The documentation for the device describes the interface as simply
    > using the two interupt endpoints (read and write).

    another way is to hack /sys/dev/usd/uhid.c and specifically ignore (usb
    vendor id, usb product id) for the device in the MATCH routine.
    something like

    if (uaa->vendor == XXXX && uaa->product == XXXX)
            return (UMATCH_NONE);

    max

    _______________________________________________
    freebsd-hackers@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
    To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"


  • Next message: David Gilbert: "Re: Tricky USB device."

    Relevant Pages

    • Re: Tricky USB device.
      ... Maksim> David, ... Maksim> how about getting usb hid descriptor, ...
      (freebsd-hackers)
    • Re: usb keyboard and mouse config ?
      ... How to support "USB HID Keyboard and Mouse" in PB that we can add it into ... Someone told me that let's add it to my Platform, but i can't find out "USB ...
      (microsoft.public.windowsce.platbuilder)
    • usb mouse
      ... I'm having no luck in getting a USB Mouse to work... ... On boot up into a Knoppix 2.4.20-xfs kernel I always ... usb.c: registered new driver usbdevfs ... USB HID v1.10 Mouse [Microsoft Microsoft ...
      (Debian-User)
    • [SLE] Keypad not working.
      ... PhoneSkype USB Phone SK-04. ... USB HID v1.00 Joystick on ... Hamradio License G3VBV, Keen licensed Private Pilot ...
      (SuSE)