USB devices disappearing
Hans Petter Selasky
hselasky at c2i.net
Sun Aug 12 12:44:18 UTC 2012
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
More information about the freebsd-usb
mailing list