>Number:         101066
>Category:       usb
>Synopsis:       Logitech iFeel MouseMan USB - UN53B
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-usb
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sun Jul 30 18:50:13 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Heiko Przybyl
>Release:        7.0-CURRENT-200607
>Organization:
-
>Environment:
FreeBSD tormented-soul 7.0-CURRENT-200607 FreeBSD 7.0-CURRENT-200607 #5: Sun 
Jul 30 16:07:28 CEST 2006     [EMAIL PROTECTED]:/usr/src/sys/i386/compile/HEIKO 
 i386

>Description:
Hi.

After switching from Linux to FreeBSD yesterday, I encounter problems with the 
mouse mentioned in the subject. It is neither recognized in the normal boot-up 
nor when re-plugging it after the boot-up, which renders the device (my only 
mouse) completely useless.
Turning on USB_DEBUG has shown: "usbd_get_string: getting string failed, using 
0". So this beauty seems to not understand the string descriptor requests.
I have searched the usb-list and the net, but without any success. Ok, there 
was a hint about commenting out the code, but I think this is not the way it is 
ment to be. So I decided to have a look into the sources under 
/usr/src/sys/dev/usb. In fact, there is already a Logitech iFeel Mouse in 
usbdevs, but with a different device id. The listed device is 0xc030 whilst 
mine is 0xc032. So I added a new entry "product LOGITECH UN53B 0xc032 iFeel 
MouseMan". Actually this did not solve the problem of failing recognition of 
the device :-) So I took a closer look on usbdi.c::usbd_get_string() which is 
the point of failure and found "if (dev->quirks->uq_flags & UQ_NO_STRINGS)" 
which in turn checks the device for being unable to provide the strings 
usbdi.c::usbd_get_string() wants to extract. So the next step was to add the 
newly created usbdevs entry to usb_quirks.c with UQ_NO_STRINGS as the 
corresponding quirk. Now the mouse is shown in command usbdevs, works fine in 
moused and under
  Xorg. It is successfully recognized as /dev/ums0 4-button mouse with scroll 
wheel.

Attached there are the patches of the changes I did. Hopefully they will find 
their way into the tree, since there seem to be a lot of people struggling with 
that (mouse') problem.

Btw. system is: AthlonXP on VIAKT400A+ (VT82xxxxx UHCI USB) running 
7.0-CURRENT-200607.


Best regards,

    Heiko

>How-To-Repeat:
restart the system
plug out/in the mouse :-)
>Fix:
add "product LOGITECH UN53B 0xc032 iFeel MouseMan" to 
/usr/src/sys/dev/usb/usbdevs
add "{ USB_VENDOR_LOGITECH, USB_PRODUCT_LOGITECH_UN53B, ANY, { UQ_NO_STRINGS 
}}," to /usr/src/sys/dev/usb/usb_quirks.c

If needed, I am able to provided patches for those files.
>Release-Note:
>Audit-Trail:
>Unformatted:
_______________________________________________
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to