Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 12 Aug 2012 14:44:42 +0200
From:      Hans Petter Selasky <hselasky@c2i.net>
To:        freebsd-usb@freebsd.org
Subject:   Re: USB devices disappearing
Message-ID:  <201208121444.42872.hselasky@c2i.net>
In-Reply-To: <20120812013351.GA35331@server.rulingia.com>
References:  <20120812013351.GA35331@server.rulingia.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sunday 12 August 2012 03:33:51 Peter Jeremy wrote:
> I have a USB-connected UPS and both sysutils/nut and a simple client
> that I wrote are reporting "no device" (LIBUSB_ERROR_NO_DEVICE via
> libusb) after talking to it for some (variable) time.  If I restart my
> client it again works for a while before dying the same way.  I'm
> using FreeBSD 8-stable/amd64 (r237444).
> 
> As an example, my client sends "Q1\r" every second and expects a
> status message (chopped into 8-byte chunks) back.  The following is a
> usbdump showing the last successful poll and failure.  Any suggestions
> on where this problem exists?
> 
> 11:12:53.547070 usbus1.3 SUBM-CTRL-EP=00000000,SPD=LOW,NFR=2,SLEN=16,IVAL=0
>  frame[0] WRITE 8 bytes
>  0000  21 09 00 02 00 00 08 00  -- -- -- -- -- -- -- --  |!.......        |
>  frame[1] WRITE 8 bytes
>  0000  51 31 0D 00 00 00 00 00  -- -- -- -- -- -- -- --  |Q1......        |
> 11:12:53.548918 usbus1.3
> DONE-CTRL-EP=00000000,SPD=LOW,NFR=2,SLEN=0,IVAL=0,ERR=0 frame[0] WRITE 8
> bytes
>  frame[1] WRITE 8 bytes
> 11:12:53.548963 usbus1.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=32
>  frame[0] READ 8 bytes
> 11:12:53.601930 usbus1.3
> DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=8,IVAL=32,ERR=0 frame[0] READ 8
> bytes
>  0000  28 32 34 30 2E 38 20 32  -- -- -- -- -- -- -- --  |(240.8 2        |
> 11:12:53.602018 usbus1.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=32
>  frame[0] READ 8 bytes
> 11:12:53.633918 usbus1.3
> DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=8,IVAL=32,ERR=0 frame[0] READ 8
> bytes
>  0000  34 30 2E 34 20 32 34 31  -- -- -- -- -- -- -- --  |40.4 241        |
> 11:12:53.633979 usbus1.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=32
>  frame[0] READ 8 bytes
> 11:12:53.697920 usbus1.3
> DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=8,IVAL=32,ERR=0 frame[0] READ 8
> bytes
>  0000  2E 33 20 30 32 30 20 35  -- -- -- -- -- -- -- --  |.3 020 5        |
> 11:12:53.697995 usbus1.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=32
>  frame[0] READ 8 bytes
> 11:12:53.729919 usbus1.3
> DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=8,IVAL=32,ERR=0 frame[0] READ 8
> bytes
>  0000  30 2E 32 20 31 33 2E 36  -- -- -- -- -- -- -- --  |0.2 13.6        |
> 11:12:53.729999 usbus1.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=32
>  frame[0] READ 8 bytes
> 11:12:53.761916 usbus1.3
> DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=8,IVAL=32,ERR=0 frame[0] READ 8
> bytes
>  0000  20 32 35 2E 30 20 30 30  -- -- -- -- -- -- -- --  | 25.0 00        |
> 11:12:53.761976 usbus1.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=32
>  frame[0] READ 8 bytes
> 11:12:53.793925 usbus1.3
> DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=8,IVAL=32,ERR=0 frame[0] READ 8
> bytes
>  0000  30 30 31 30 30 31 0D 00  -- -- -- -- -- -- -- --  |001001..        |
> 11:12:54.795036 usbus1.3 SUBM-CTRL-EP=00000000,SPD=LOW,NFR=2,SLEN=16,IVAL=0
>  frame[0] WRITE 8 bytes
>  0000  21 09 00 02 00 00 08 00  -- -- -- -- -- -- -- --  |!.......        |
>  frame[1] WRITE 8 bytes
>  0000  51 31 0D 00 00 00 00 00  -- -- -- -- -- -- -- --  |Q1......        |
> 11:12:59.679800 usbus1.3
> DONE-CTRL-EP=00000000,SPD=LOW,NFR=0,SLEN=0,IVAL=0,ERR=TIMEOUT


Hi,

You could try:

hw.usb.ehci.lostintrbug="1"

In /boot/loader.rc

If that doesn't help, it is most likely a device problem.

--HPS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201208121444.42872.hselasky>