Re: How to debug a misbehaving usb device (DYMO LabelManager PC)?

2011-07-28 Thread Torfinn Ingolfsen
Update:

Further testing shows the following:
- VirtualBox shows the error if the host machine is running a 64-bit os 
(FreeBSD, Xubuntu)
- if the host machine is running a 32-bit os (FreeBSD, Xubuntu) doesn't give 
any error
- on a Xubuntu 32-bit host, and using the win98se vm, the label printer works
- on a FreeBSD 32-bit host, and using the win98se vm, the printer doesn't work 
(win98se gives an error)

This might be because the usb stack on FreeBSD in't capable of handling this 
(non-compliant) device fully, or it might be because of
some differences in VirtualBox between FreeBSD and Linux. I don't know.

More details here:
FreeBSD testing: http://sites.google.com/site/tingox/lm_pc_freebsd
Xubuntu testing: http://sites.google.com/site/tingox/lm_pc_linux
-- 
Torfinn

___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org


Re: How to debug a misbehaving usb device (DYMO LabelManager PC)?

2011-07-09 Thread Torfinn Ingolfsen
On Mon, 04 Jul 2011 07:23:27 +0200
Hans Petter Selasky hsela...@c2i.net wrote:

 
 If you add - and -s 16384 it will dump all the data in binary. STALLED 
 means some error occurred.

Ok, another try. Details:
root@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 r...@kg-v7.kg4.no:/usr/obj/usr/src/sys/GENERIC  amd64
root@kg-v7# usbconfig -u 0 -a 3
ugen0.3: product 0x0901 vendor 0xc000 at usbus0, cfg=255 md=HOST spd=LOW 
(1.5Mbps) pwr=ON


I'm doing usbdump like this (inside a script(1) seseion, so I can get the 
output): usbdump -i usbus0 - -s 16384
Here is the output for usbus0.3:
21:56:30.667784 usbus0.2 
DONE-CTRL-EP=0080,SPD=HIGH,NFR=2,SLEN=4,IVAL=0,ERR=0
 frame[0] WRITE 8 bytes
 frame[1] READ 4 bytes
   03 03 00 00 -- -- -- --  -- -- -- -- -- -- -- --  ||
 flags 0x10 PROXY_BUFFER|0
 status 0xca1a1 
OPEN|STARTED|CONTROL_XFR|CONTROL_HDR|BDMA_ENABLE|BDMA_SETUP|CAN_CANCEL_IMMED|DOING_CALLBACK|0
21:56:30.667916 usbus0.3 SUBM-CTRL-EP=,SPD=LOW,NFR=1,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   00 05 03 00 00 00 00 00  -- -- -- -- -- -- -- --  ||
 flags 0x50 PROXY_BUFFER|MANUAL_STATUS|0
 status 0xea3a3 
OPEN|TRANSFERRING|STARTED|CONTROL_XFR|CONTROL_HDR|CONTROL_ACT|BDMA_ENABLE|BDMA_SETUP|CURR_DMA_SET|CAN_CANCEL_IMMED|DOING_CALLBACK|0
21:56:30.668158 usbus0.3 DONE-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0,ERR=0
 frame[0] WRITE 8 bytes
 flags 0x50 PROXY_BUFFER|MANUAL_STATUS|0
 status 0xca3a1 
OPEN|STARTED|CONTROL_XFR|CONTROL_HDR|CONTROL_ACT|BDMA_ENABLE|BDMA_SETUP|CAN_CANCEL_IMMED|DOING_CALLBACK|0
21:56:30.668169 usbus0.3 SUBM-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0
 frame[0] WRITE 0 bytes
 flags 0x10 PROXY_BUFFER|0
 status 0xca0a3 
OPEN|TRANSFERRING|STARTED|CONTROL_XFR|BDMA_ENABLE|BDMA_SETUP|CAN_CANCEL_IMMED|DOING_CALLBACK|0
21:56:30.668281 usbus0.3 DONE-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0,ERR=0
 frame[0] WRITE 0 bytes
 flags 0x10 PROXY_BUFFER|0
 status 0xea0a1 
OPEN|STARTED|CONTROL_XFR|BDMA_ENABLE|BDMA_SETUP|CURR_DMA_SET|CAN_CANCEL_IMMED|DOING_CALLBACK|0
21:56:30.680811 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   80 06 00 01 00 00 08 00  -- -- -- -- -- -- -- --  ||
 frame[1] READ 8 bytes
 flags 0x10 PROXY_BUFFER|0
 status 0xea1a3 
OPEN|TRANSFERRING|STARTED|CONTROL_XFR|CONTROL_HDR|BDMA_ENABLE|BDMA_SETUP|CURR_DMA_SET|CAN_CANCEL_IMMED|DOING_CALLBACK|0
21:56:30.681406 usbus0.3 DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0,ERR=0
 frame[0] WRITE 8 bytes
 frame[1] READ 8 bytes
   12 01 10 01 00 00 00 08  -- -- -- -- -- -- -- --  ||
 flags 0x10 PROXY_BUFFER|0
 status 0xca1a1 
OPEN|STARTED|CONTROL_XFR|CONTROL_HDR|BDMA_ENABLE|BDMA_SETUP|CAN_CANCEL_IMMED|DOING_CALLBACK|0
21:56:30.681418 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   80 06 00 01 00 00 12 00  -- -- -- -- -- -- -- --  ||
 frame[1] READ 18 bytes
 flags 0x10 PROXY_BUFFER|0
 status 0xca1a3 
OPEN|TRANSFERRING|STARTED|CONTROL_XFR|CONTROL_HDR|BDMA_ENABLE|BDMA_SETUP|CAN_CANCEL_IMMED|DOING_CALLBACK|0
21:56:30.682907 usbus0.3 
DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=20,IVAL=0,ERR=0
 frame[0] WRITE 8 bytes
 frame[1] READ 18 bytes
   03 01 09 02 21 00 01 01  00 C0 01 09 04 00 00 08  |!...|
 0010  03 01 -- -- -- -- -- --  -- -- -- -- -- -- -- --  |..  |
 flags 0x10 PROXY_BUFFER|0
 status 0xea1a1 
OPEN|STARTED|CONTROL_XFR|CONTROL_HDR|BDMA_ENABLE|BDMA_SETUP|CURR_DMA_SET|CAN_CANCEL_IMMED|DOING_CALLBACK|0
21:56:30.684801 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   80 06 00 03 00 00 02 00  -- -- -- -- -- -- -- --  ||
 frame[1] READ 2 bytes
 flags 0x10 PROXY_BUFFER|0
 status 0xea1a3 
OPEN|TRANSFERRING|STARTED|CONTROL_XFR|CONTROL_HDR|BDMA_ENABLE|BDMA_SETUP|CURR_DMA_SET|CAN_CANCEL_IMMED|DOING_CALLBACK|0
21:56:30.685407 usbus0.3 
DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=0,IVAL=0,ERR=STALLED
 frame[0] WRITE 8 bytes
 frame[1] READ 0 bytes
 flags 0x10 PROXY_BUFFER|0
 status 0xca1a1 
OPEN|STARTED|CONTROL_XFR|CONTROL_HDR|BDMA_ENABLE|BDMA_SETUP|CAN_CANCEL_IMMED|DOING_CALLBACK|0
21:56:30.685427 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   80 06 00 02 00 00 09 00  -- -- -- -- -- -- -- --  ||
 frame[1] READ 9 bytes
 flags 0x10 PROXY_BUFFER|0
 status 0xca1a3 
OPEN|TRANSFERRING|STARTED|CONTROL_XFR|CONTROL_HDR|BDMA_ENABLE|BDMA_SETUP|CAN_CANCEL_IMMED|DOING_CALLBACK|0
21:56:30.686532 usbus0.3 
DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=12,IVAL=0,ERR=0
 frame[0] WRITE 8 bytes
 frame[1] READ 9 bytes
   00 08 05 02 03 08 00 04  01 -- -- -- -- -- -- --  |.   |
 flags 0x10 PROXY_BUFFER|0
 status 0xea1a1 
OPEN|STARTED|CONTROL_XFR|CONTROL_HDR|BDMA_ENABLE|BDMA_SETUP|CURR_DMA_SET|CAN_CANCEL_IMMED|DOING_CALLBACK|0
21:56:30.686543 usbus0.3 

Re: How to debug a misbehaving usb device (DYMO LabelManager PC)?

2011-07-09 Thread Hans Petter Selasky
On Saturday 09 July 2011 22:10:15 Torfinn Ingolfsen wrote:
 usbconfig -u 0 -a 3
 ugen0.3: product 0x0901 vendor 0xc000 at usbus0, cfg=255 md=HOST spd=LOW
 (1.5Mbps) pwr=ON

This device won't work because it is unconfigured (cfg=255)

Try to set the config to 0

--HPS
___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org


Re: How to debug a misbehaving usb device (DYMO LabelManager PC)?

2011-07-09 Thread Torfinn Ingolfsen
On Sat, 09 Jul 2011 22:16:33 +0200
Hans Petter Selasky hsela...@c2i.net wrote:

 On Saturday 09 July 2011 22:10:15 Torfinn Ingolfsen wrote:
  usbconfig -u 0 -a 3
  ugen0.3: product 0x0901 vendor 0xc000 at usbus0, cfg=255 md=HOST spd=LOW
  (1.5Mbps) pwr=ON
 
 This device won't work because it is unconfigured (cfg=255)
 
 Try to set the config to 0

root@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@kg-v7# usbconfig -u 0 -a 3 set_config 0
usbconfig: could not set config index: Input/output error
and in /var/log/messages I can see:
Jul  9 22:21:35 kg-v7 kernel: usbd_req_re_enumerate: addr=3, set address 
failed! (USB_ERR_STALLED, ignored)
Jul  9 22:21:35 kg-v7 kernel: usbd_setup_device_desc: getting device descriptor 
at addr 3 failed, USB_ERR_STALLED
Jul  9 22:21:35 kg-v7 kernel: usb_alloc_device: Failure selecting configuration 
index 0:USB_ERR_STALLED, port 4, addr 3 (ignored)
Jul  9 22:21:35 kg-v7 kernel: ugen0.3: vendor 0xc000 at usbus0
Jul  9 22:21:35 kg-v7 kernel: ugen0.3: vendor 0xc000 at usbus0 (disconnected)
Jul  9 22:21:36 kg-v7 kernel: usb_alloc_device: Failure selecting configuration 
index 0:USB_ERR_STALLED, port 4, addr 3 (ignored)
Jul  9 22:21:36 kg-v7 kernel: ugen0.3: vendor 0x0922 at usbus0

So I disconnect and reconnect the device again:
from /var/log/messages:
Jul  9 22:24:24 kg-v7 kernel: ugen0.3: vendor 0x0922 at usbus0 (disconnected)
Jul  9 22:24:41 kg-v7 kernel: usb_alloc_device: Failure selecting configuration 
index 0:USB_ERR_STALLED, port 4, addr 3 (ignored)
Jul  9 22:24:41 kg-v7 kernel: ugen0.3: vendor 0x0922 at usbus0

root@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@kg-v7# usbconfig -u 0 -a 3 set_config 0
usbconfig: could not set config index: Input/output error


-- 
Torfinn

___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org


Re: How to debug a misbehaving usb device (DYMO LabelManager PC)?

2011-07-09 Thread Hans Petter Selasky
On Saturday 09 July 2011 22:27:28 Torfinn Ingolfsen wrote:
 On Sat, 09 Jul 2011 22:16:33 +0200
 
 Hans Petter Selasky hsela...@c2i.net wrote:
  On Saturday 09 July 2011 22:10:15 Torfinn Ingolfsen wrote:
   usbconfig -u 0 -a 3
   ugen0.3: product 0x0901 vendor 0xc000 at usbus0, cfg=255 md=HOST
   spd=LOW (1.5Mbps) pwr=ON
  
  This device won't work because it is unconfigured (cfg=255)
  
  Try to set the config to 0
 

Could you try to reset it?

usbconfig -d X.Y reset 

?

--HPS
___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org


Re: How to debug a misbehaving usb device (DYMO LabelManager PC)?

2011-07-09 Thread Torfinn Ingolfsen
On Sat, 09 Jul 2011 22:29:22 +0200
Hans Petter Selasky hsela...@c2i.net wrote:

 Could you try to reset it?
 
 usbconfig -d X.Y reset 

root@kg-v7# usbconfig -d 0.3
ugen0.3: product 0x0011 vendor 0x0922 at usbus0, cfg=255 md=HOST spd=LOW 
(1.5Mbps) pwr=ON
root@kg-v7# usbconfig -d 0.3 reset
root@kg-v7# usbconfig -d 0.3
ugen0.3: product 0x0011 vendor 0x0922 at usbus0, cfg=255 md=HOST spd=LOW 
(1.5Mbps) pwr=ON
The light on the device breiefly changed from green to red before going back to 
green ,ad the was it.
No new messages in /var/log/messages either:
root@kg-v7# tvlm
Jul  9 22:21:35 kg-v7 kernel: usbd_req_re_enumerate: addr=3, set address 
failed! (USB_ERR_STALLED, ignored)
Jul  9 22:21:35 kg-v7 kernel: usbd_setup_device_desc: getting device descriptor 
at addr 3 failed, USB_ERR_STALLED
Jul  9 22:21:35 kg-v7 kernel: usb_alloc_device: Failure selecting configuration 
index 0:USB_ERR_STALLED, port 4, addr 3 (ignored)
Jul  9 22:21:35 kg-v7 kernel: ugen0.3: vendor 0xc000 at usbus0
Jul  9 22:21:35 kg-v7 kernel: ugen0.3: vendor 0xc000 at usbus0 (disconnected)
Jul  9 22:21:36 kg-v7 kernel: usb_alloc_device: Failure selecting configuration 
index 0:USB_ERR_STALLED, port 4, addr 3 (ignored)
Jul  9 22:21:36 kg-v7 kernel: ugen0.3: vendor 0x0922 at usbus0
Jul  9 22:24:24 kg-v7 kernel: ugen0.3: vendor 0x0922 at usbus0 (disconnected)
Jul  9 22:24:41 kg-v7 kernel: usb_alloc_device: Failure selecting configuration 
index 0:USB_ERR_STALLED, port 4, addr 3 (ignored)
Jul  9 22:24:41 kg-v7 kernel: ugen0.3: vendor 0x0922 at usbus0

-- 
Torfinn

___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org


Re: How to debug a misbehaving usb device (DYMO LabelManager PC)?

2011-07-09 Thread Hans Petter Selasky
On Saturday 09 July 2011 22:36:53 Torfinn Ingolfsen wrote:
 On Sat, 09 Jul 2011 22:29:22 +0200
 
 Hans Petter Selasky hsela...@c2i.net wrote:
  Could you try to reset it?
  
  usbconfig -d X.Y reset
 

What does the device descriptor say about the number of configurations?

If there are any configurations, could you dump them?

--HPS
___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org


Re: How to debug a misbehaving usb device (DYMO LabelManager PC)?

2011-07-09 Thread Torfinn Ingolfsen
On Sat, 09 Jul 2011 22:38:04 +0200
Hans Petter Selasky hsela...@c2i.net wrote:

 
 What does the device descriptor say about the number of configurations?

root@kg-v7# usbconfig -d 0.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 = 0x 
  bDeviceProtocol = 0x0001 
  bMaxPacketSize0 = 0x0001 
  idVendor = 0xc000 
  idProduct = 0x0901 
  bcdDevice = 0x0004 
  iManufacturer = 0x  no string
  iProduct = 0x0002  retrieving string failed
  iSerialNumber = 0x0003  0
  bNumConfigurations = 0x0001 
 
 If there are any configurations, could you dump them?

root@kg-v7# usbconfig -d 0.3 dump_curr_config_desc
ugen0.3: product 0x0011 vendor 0x0922 at usbus0, cfg=255 md=HOST spd=LOW 
(1.5Mbps) pwr=ON
root@kg-v7# usbconfig -d 0.3 dump_all_config_desc
ugen0.3: product 0x0011 vendor 0x0922 at usbus0, cfg=255 md=HOST spd=LOW 
(1.5Mbps) pwr=ON


 Configuration index 0

bLength = 0x0009 
bDescriptorType = 0x0002 
wTotalLength = 0x0021 
bNumInterfaces = 0x0001 
bConfigurationValue = 0x0001 
iConfiguration = 0x  no string
bmAttributes = 0x00c0 
bMaxPower = 0x0001 

Interface 0
  bLength = 0x0009 
  bDescriptorType = 0x0004 
  bInterfaceNumber = 0x 
  bAlternateSetting = 0x 
  bNumEndpoints = 0x0002 
  bInterfaceClass = 0x0007 
  bInterfaceSubClass = 0x0001 
  bInterfaceProtocol = 0x0002 
  iInterface = 0x  no string

 Endpoint 0
bLength = 0x0007 
bDescriptorType = 0x0005 
bEndpointAddress = 0x0081  IN
bmAttributes = 0x0002  BULK
wMaxPacketSize = 0x0008 
bInterval = 0x 
bRefresh = 0x 
bSynchAddress = 0x 

 Endpoint 1
bLength = 0x0008 
bDescriptorType = 0x0005 
bEndpointAddress = 0x0002  OUT
bmAttributes = 0x0003  INTERRUPT
wMaxPacketSize = 0x0008 
bInterval = 0x0004 
bRefresh = 0x00ff 
bSynchAddress = 0x 

HTH
-- 
Torfinn

___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org


Re: How to debug a misbehaving usb device (DYMO LabelManager PC)?

2011-07-09 Thread Torfinn Ingolfsen
On Sat, 09 Jul 2011 22:44:44 +0200
Hans Petter Selasky hsela...@c2i.net wrote:

 You could try to change in /sys/dev/usb/usb_device.c:
 
 /* Set the actual configuration value. */
 err = usbd_req_set_config(udev, NULL, cdp-bConfigurationValue);
 if (err) {
 goto done;
 }
 
 Into:
 
 /* Set the actual configuration value. */
 err = usbd_req_set_config(udev, NULL, cdp-bConfigurationValue);
 if (err  0) {
 goto done;
 }
 err = 0;
 
 I think the device has received the set config, though there appears to be 
 something wrong about the STALL part, which I think we can safely ignore.

Ok, I did that change and rebuilt the kernel. Like this:
root@kg-v7# uname -a
FreeBSD kg-v7.kg4.no 8.2-STABLE FreeBSD 8.2-STABLE #7: Sat Jul  9 23:00:31 CEST 
2011 r...@kg-v7.kg4.no:/usr/obj/usr/src/sys/GENERIC  amd64

Attaching the device, and
root@kg-v7# usbconfig -d 0.3
ugen0.3: product 0x0011 vendor 0x0922 at usbus0, cfg=0 md=HOST spd=LOW 
(1.5Mbps) pwr=ON
root@kg-v7# usbconfig -d 0.3 dump_curr_config_desc
ugen0.3: product 0x0011 vendor 0x0922 at usbus0, cfg=0 md=HOST spd=LOW 
(1.5Mbps) pwr=ON


 Configuration index 0

bLength = 0x0009 
bDescriptorType = 0x0002 
wTotalLength = 0x0021 
bNumInterfaces = 0x0002 
bConfigurationValue = 0x0007 
iConfiguration = 0x0001  retrieving string failed
bmAttributes = 0x0002 
bMaxPower = 0x0001 

Interface 0
  bLength = 0x0009 
  bDescriptorType = 0x0004 
  bInterfaceNumber = 0x 
  bAlternateSetting = 0x 
  bNumEndpoints = 0x0002 
  bInterfaceClass = 0x0007 
  bInterfaceSubClass = 0x0001 
  bInterfaceProtocol = 0x0002 
  iInterface = 0x  no string

 Endpoint 0
bLength = 0x0007 
bDescriptorType = 0x0005 
bEndpointAddress = 0x0081  IN
bmAttributes = 0x0002  BULK
wMaxPacketSize = 0x0008 
bInterval = 0x 
bRefresh = 0x 
bSynchAddress = 0x 

 Endpoint 1
bLength = 0x0008 
bDescriptorType = 0x0005 
bEndpointAddress = 0x0002  OUT
bmAttributes = 0x0003  INTERRUPT
wMaxPacketSize = 0x0008 
bInterval = 0x0004 
bRefresh = 0x00ff 
bSynchAddress = 0x 

From /var/log/messages I get:
Jul  9 23:17:27 kg-v7 kernel: ugen0.3: vendor 0x0922 at usbus0
Jul  9 23:17:27 kg-v7 kernel: ulpt0: vendor 0x0922 product 0x0011, class 0/0, 
rev 1.10/1.00, addr 3 on usbus0
Jul  9 23:17:27 kg-v7 kernel: device_attach: ulpt0 attach returned 12

But as I am not going to use ulpt, I'm not worrieed about that.
Now off to try VirtualBox.
Thanks for helping!
-- 
Torfinn

___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org


Re: How to debug a misbehaving usb device (DYMO LabelManager PC)?

2011-07-03 Thread Hans Petter Selasky
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@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 r...@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@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@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 = 0x
   bDeviceProtocol = 0x0001
   bMaxPacketSize0 = 0x0001
   idVendor = 0xc000
   idProduct = 0x0901
   bcdDevice = 0x0004
   iManufacturer = 0x  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
___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org


Re: How to debug a misbehaving usb device (DYMO LabelManager PC)?

2011-07-03 Thread Torfinn Ingolfsen
On Sun, 03 Jul 2011 19:33:52 +0200
Hans Petter Selasky hsela...@c2i.net wrote:

 You could try running usbdump on the bus the device is connected to and see 
 what happens.

Done. I don't know how to interpret the output, but here it is:
(I started usbdump, plugged in the devce, waited a few seconds, and terminted 
usbdump)
21:02:29.495611 usbus0.3 SUBM-CTRL-EP=,SPD=LOW,NFR=1,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   00 05 03 00 00 00 00 00  -- -- -- -- -- -- -- --  ||
21:02:29.495863 usbus0.3 DONE-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0,ERR=0
 frame[0] WRITE 8 bytes
21:02:29.495874 usbus0.3 SUBM-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0
 frame[0] WRITE 0 bytes
21:02:29.496114 usbus0.3 DONE-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0,ERR=0
 frame[0] WRITE 0 bytes
21:02:29.508426 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   80 06 00 01 00 00 08 00  -- -- -- -- -- -- -- --  ||
 frame[1] READ 8 bytes
21:02:29.509114 usbus0.3 DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0,ERR=0
 frame[0] WRITE 8 bytes
 frame[1] READ 8 bytes
   12 01 10 01 00 00 00 08  -- -- -- -- -- -- -- --  ||
21:02:29.509123 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   80 06 00 01 00 00 12 00  -- -- -- -- -- -- -- --  ||
 frame[1] READ 18 bytes
21:02:29.510615 usbus0.3 
DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=20,IVAL=0,ERR=0
 frame[0] WRITE 8 bytes
 frame[1] READ 18 bytes
   03 01 09 02 21 00 01 01  00 C0 01 09 04 00 00 08  |!...|
 0010  03 01 -- -- -- -- -- --  -- -- -- -- -- -- -- --  |..  |
21:02:29.512403 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   80 06 00 03 00 00 02 00  -- -- -- -- -- -- -- --  ||
 frame[1] READ 2 bytes
21:02:29.512990 usbus0.3 
DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=0,IVAL=0,ERR=STALLED
 frame[0] WRITE 8 bytes
 frame[1] READ 0 bytes
21:02:29.513005 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   80 06 00 02 00 00 09 00  -- -- -- -- -- -- -- --  ||
 frame[1] READ 9 bytes
21:02:29.513738 usbus0.3 
DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0,ERR=STALLED
 frame[0] WRITE 8 bytes
 frame[1] READ 8 bytes
   00 08 05 02 03 08 00 04  -- -- -- -- -- -- -- --  ||
21:02:29.811468 usbus0.3 SUBM-CTRL-EP=,SPD=LOW,NFR=1,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   00 05 03 00 00 00 00 00  -- -- -- -- -- -- -- --  ||
21:02:29.811627 usbus0.3 DONE-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0,ERR=0
 frame[0] WRITE 8 bytes
21:02:29.811632 usbus0.3 SUBM-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0
 frame[0] WRITE 0 bytes
21:02:29.811993 usbus0.3 DONE-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0,ERR=0
 frame[0] WRITE 0 bytes
21:02:29.824448 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   80 06 00 01 00 00 08 00  -- -- -- -- -- -- -- --  ||
 frame[1] READ 8 bytes
21:02:29.825120 usbus0.3 DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0,ERR=0
 frame[0] WRITE 8 bytes
 frame[1] READ 8 bytes
   12 01 10 01 00 00 00 08  -- -- -- -- -- -- -- --  ||
21:02:29.825132 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   80 06 00 01 00 00 12 00  -- -- -- -- -- -- -- --  ||
 frame[1] READ 18 bytes
21:02:29.826496 usbus0.3 
DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=20,IVAL=0,ERR=0
 frame[0] WRITE 8 bytes
 frame[1] READ 18 bytes
   03 01 10 01 00 00 00 08  22 09 11 00 00 01 01 02  |...|
 0010  03 01 -- -- -- -- -- --  -- -- -- -- -- -- -- --  |..  |
21:02:29.826507 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   80 06 00 02 00 00 09 00  -- -- -- -- -- -- -- --  ||
 frame[1] READ 9 bytes
21:02:29.827368 usbus0.3 
DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=12,IVAL=0,ERR=0
 frame[0] WRITE 8 bytes
 frame[1] READ 9 bytes
   09 02 21 00 01 01 00 C0  01 -- -- -- -- -- -- --  |..!..   |
21:02:29.827377 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   80 06 00 02 00 00 21 00  -- -- -- -- -- -- -- --  |..!.|
 frame[1] READ 33 bytes
21:02:29.829120 usbus0.3 
DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=36,IVAL=0,ERR=0
 frame[0] WRITE 8 bytes
 frame[1] READ 33 bytes
   09 02 21 00 01 01 00 C0  01 09 04 00 00 02 07 01  |..!.|
 0010  02 00 07 05 81 02 08 00  00 08 05 02 03 08 00 04  ||
 0020  FF -- -- -- -- -- -- --  -- -- -- -- -- -- -- --  |.   |
21:02:29.829127 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
 frame[0] WRITE 8 bytes
   80 00 00 00 00 00 02 00  -- -- -- -- -- -- -- --  ||
 frame[1] READ 2 bytes
21:02:29.829618 usbus0.3 

Re: How to debug a misbehaving usb device (DYMO LabelManager PC)?

2011-07-03 Thread Hans Petter Selasky
On Sunday 03 July 2011 21:08:39 Torfinn Ingolfsen wrote:
 On Sun, 03 Jul 2011 19:33:52 +0200
 
 Hans Petter Selasky hsela...@c2i.net wrote:
  You could try running usbdump on the bus the device is connected to and
  see what happens.
 
 Done. I don't know how to interpret the output, but here it is:
 (I started usbdump, plugged in the devce, waited a few seconds, and
 terminted usbdump) 21:02:29.495611 usbus0.3
 SUBM-CTRL-EP=,SPD=LOW,NFR=1,SLEN=8,IVAL=0 frame[0] WRITE 8 bytes
    00 05 03 00 00 00 00 00  -- -- -- -- -- -- -- --  ||
 21:02:29.495863 usbus0.3
 DONE-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 8
 bytes
 21:02:29.495874 usbus0.3 SUBM-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0
  frame[0] WRITE 0 bytes
 21:02:29.496114 usbus0.3
 DONE-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 0
 bytes
 21:02:29.508426 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
  frame[0] WRITE 8 bytes
    80 06 00 01 00 00 08 00  -- -- -- -- -- -- -- --  ||
  frame[1] READ 8 bytes
 21:02:29.509114 usbus0.3
 DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0,ERR=0 frame[0] WRITE 8
 bytes
  frame[1] READ 8 bytes
    12 01 10 01 00 00 00 08  -- -- -- -- -- -- -- --  ||
 21:02:29.509123 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
  frame[0] WRITE 8 bytes
    80 06 00 01 00 00 12 00  -- -- -- -- -- -- -- --  ||
  frame[1] READ 18 bytes
 21:02:29.510615 usbus0.3
 DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=20,IVAL=0,ERR=0 frame[0] WRITE 8
 bytes
  frame[1] READ 18 bytes
    03 01 09 02 21 00 01 01  00 C0 01 09 04 00 00 08  |!...|
  0010  03 01 -- -- -- -- -- --  -- -- -- -- -- -- -- --  |..  |
 21:02:29.512403 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
  frame[0] WRITE 8 bytes
    80 06 00 03 00 00 02 00  -- -- -- -- -- -- -- --  ||
  frame[1] READ 2 bytes
 21:02:29.512990 usbus0.3
 DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=0,IVAL=0,ERR=STALLED frame[0]
 WRITE 8 bytes
  frame[1] READ 0 bytes
 21:02:29.513005 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
  frame[0] WRITE 8 bytes
    80 06 00 02 00 00 09 00  -- -- -- -- -- -- -- --  ||
  frame[1] READ 9 bytes
 21:02:29.513738 usbus0.3
 DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0,ERR=STALLED frame[0]
 WRITE 8 bytes
  frame[1] READ 8 bytes
    00 08 05 02 03 08 00 04  -- -- -- -- -- -- -- --  ||
 21:02:29.811468 usbus0.3 SUBM-CTRL-EP=,SPD=LOW,NFR=1,SLEN=8,IVAL=0
  frame[0] WRITE 8 bytes
    00 05 03 00 00 00 00 00  -- -- -- -- -- -- -- --  ||
 21:02:29.811627 usbus0.3
 DONE-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 8
 bytes
 21:02:29.811632 usbus0.3 SUBM-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0
  frame[0] WRITE 0 bytes
 21:02:29.811993 usbus0.3
 DONE-CTRL-EP=,SPD=LOW,NFR=1,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 0
 bytes
 21:02:29.824448 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
  frame[0] WRITE 8 bytes
    80 06 00 01 00 00 08 00  -- -- -- -- -- -- -- --  ||
  frame[1] READ 8 bytes
 21:02:29.825120 usbus0.3
 DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0,ERR=0 frame[0] WRITE 8
 bytes
  frame[1] READ 8 bytes
    12 01 10 01 00 00 00 08  -- -- -- -- -- -- -- --  ||
 21:02:29.825132 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
  frame[0] WRITE 8 bytes
    80 06 00 01 00 00 12 00  -- -- -- -- -- -- -- --  ||
  frame[1] READ 18 bytes
 21:02:29.826496 usbus0.3
 DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=20,IVAL=0,ERR=0 frame[0] WRITE 8
 bytes
  frame[1] READ 18 bytes
    03 01 10 01 00 00 00 08  22 09 11 00 00 01 01 02  |...|
  0010  03 01 -- -- -- -- -- --  -- -- -- -- -- -- -- --  |..  |
 21:02:29.826507 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
  frame[0] WRITE 8 bytes
    80 06 00 02 00 00 09 00  -- -- -- -- -- -- -- --  ||
  frame[1] READ 9 bytes
 21:02:29.827368 usbus0.3
 DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=12,IVAL=0,ERR=0 frame[0] WRITE 8
 bytes
  frame[1] READ 9 bytes
    09 02 21 00 01 01 00 C0  01 -- -- -- -- -- -- --  |..!..   |
 21:02:29.827377 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
  frame[0] WRITE 8 bytes
    80 06 00 02 00 00 21 00  -- -- -- -- -- -- -- --  |..!.|
  frame[1] READ 33 bytes
 21:02:29.829120 usbus0.3
 DONE-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=36,IVAL=0,ERR=0 frame[0] WRITE 8
 bytes
  frame[1] READ 33 bytes
    09 02 21 00 01 01 00 C0  01 09 04 00 00 02 07 01  |..!.|
  0010  02 00 07 05 81 02 08 00  00 08 05 02 03 08 00 04  ||
  0020  FF -- -- -- -- -- -- --  -- -- -- -- -- -- -- --  |.   |
 21:02:29.829127 usbus0.3 SUBM-CTRL-EP=0080,SPD=LOW,NFR=2,SLEN=8,IVAL=0
  frame[0] WRITE