How to debug a misbehaving usb device (DYMO LabelManager PC)?
Hans Petter Selasky
hselasky at c2i.net
Sun Jul 3 17:35:42 UTC 2011
On Sunday 03 July 2011 18:33:20 Torfinn Ingolfsen wrote:
> Hello,
>
> So, I have this misbehaving usb device, a label printer which I use to
> label things in my house (which poweradapter belongs to which device, and
> so on).
> It is a DYMO LabelManager PC[1], which is an old device. Not to be confused
> with the LabelManager PC II. Based on information found on the web, this
> device isn't following the usb specification 100%. And no driver exists
> for FreeBSD. I do not plan on changing that.
> What I try to do, is to "pass" the usb device from a FreeBSD host, to a
> virtual machine running windows (in VirtualBox).
> So far, I have managed to get the win vm to regocnize the label printer,
> adn install drivers for it. But - it will not print, claiming there is
> some error with the usb port. And that might be true.
>
> On the host side, I am using the latest FreeBSD 8.2-stable:
> root at kg-v7# uname -a
> FreeBSD kg-v7.kg4.no 8.2-STABLE FreeBSD 8.2-STABLE #6: Sat Jul 2 18:39:45
> CEST 2011 root at kg-v7.kg4.no:/usr/obj/usr/src/sys/GENERIC amd64 And in
> /var/log/messages, I see this when the device is attached:
> Jul 3 18:09:59 kg-v7 kernel: usb_alloc_device: Failure selecting
> configuration index 0:USB_ERR_STALLED, port 4, addr 3 (ignored) Jul 3
> 18:09:59 kg-v7 kernel: ugen0.3: <vendor 0x0922> at usbus0
>
> And usbconfig info:
> root at kg-v7# usbconfig -u 0 -a 3
> ugen0.3: <product 0x0011 vendor 0x0922> at usbus0, cfg=255 md=HOST spd=LOW
> (1.5Mbps) pwr=ON root at kg-v7# usbconfig -u 0 -a 3 dump_device_desc
> ugen0.3: <product 0x0011 vendor 0x0922> at usbus0, cfg=255 md=HOST spd=LOW
> (1.5Mbps) pwr=ON
>
> bLength = 0x0003
> bDescriptorType = 0x0001
> bcdUSB = 0x0209
> bDeviceClass = 0x0021
> bDeviceSubClass = 0x0000
> bDeviceProtocol = 0x0001
> bMaxPacketSize0 = 0x0001
> idVendor = 0xc000
> idProduct = 0x0901
> bcdDevice = 0x0004
> iManufacturer = 0x0000 <no string>
> iProduct = 0x0002 <retrieving string failed>
> iSerialNumber = 0x0003 <retrieving string failed>
> bNumConfigurations = 0x0001
>
> What is the best way to debuug this device?
> I am hoping to get it to a state where it can be forwarded to the virtual
> machine, and work there.
>
> More details on the FreeBSD page for my label printer[2]
>
> References:
> 1) http://global.dymo.com/ieIE/Products/LabelManager_PC.html
> 2) http://sites.google.com/site/tingox/lm_pc_freebsd
You could try running usbdump on the bus the device is connected to and see
what happens.
--HPS
More information about the freebsd-usb
mailing list