# [solved] libusb not detecting all USB devices

## Olis

Hello,

how can it come that libusb is not detecting all connected USB devices? My telephone switchboard is connected through USB and is seen by /usr/bin/usbview (which is not using libusb), but not by /usr/sbin/lsusb (which uses libusb).

The device is from the German vendor Auerswald, the USB vendor ID is 0x09BF. 

Running lsusb with option -t (Dump the physical USB device hierarchy as a tree) I can see the device on bus #0:

```
Bus#  0

`-Dev#   1 Vendor 0x1d6b Product 0x0001

  `-Dev#   4 Vendor 0x09bf Product 0x00db
```

Using lsusb with no options doesn't show any device on the same bus:

```
frodo ~ # lsusb

Bus 002 Device 051: ID 0411:0098 MelCo., Inc.

Bus 002 Device 003: ID 15a9:0004

Bus 002 Device 004: ID 0bda:0111 Realtek Semiconductor Corp. Card Reader

Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Bus 003 Device 003: ID 046d:c03f Logitech, Inc. UltraX Optical Mouse

Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
```

As you can see there's no device on bus #1 (with -t busses are counted from 0...7, without -t from 1...8 )

In /proc/bus/usb/001 there's also no device file:

```
 ~ # ls -l /proc/bus/usb/001

total 0

-rw-rw-r-- 1 root usb 43 Feb 16 11:03 001
```

Is it possible that for example udev or some weird configuration is hiding a device from libusb?

I also tried to move the device to other ports without success. The device is also working fine as I can use it from a notebook running openSUSE 11.1.

OliverLast edited by Olis on Sat Mar 14, 2009 10:33 am; edited 1 time in total

----------

## SunFox

Hello Olis,

               do you now if your kernel has usb support? (I think that if you have compile the kernel, which are you using now, without usb support, usb won't work. I hope i help you  :Wink: 

                                                                                                                                                                               SunFox

----------

## Olis

 *SunFox wrote:*   

> Hello Olis,
> 
>                do you now if your kernel has usb support? (I think that if you have compile the kernel, which are you using now, without usb support, usb won't work. I hope i help you 
> 
>                                                                                                                                                                                SunFox

 

Yes, the kernel has USB suppport. I have no problems using my mouse, my scanner, my card readers, my camera, usb-sticks, mp3 player... all connected through USB.

I was also able to talk to my telephone switchboard up to kernel 2.6.26. Unfortunately they dropped the auerswald kernel module starting with kernel 2.6.27 (which I'm using now). That's the reason why Auerswald released a new version of their software using libusb.

The software works fine on another PC running openSUSE 11.1, so it has to be my Gentoo configuration.

Oliver

----------

## Olis

 *Olis wrote:*   

> how can it come that libusb is not detecting all connected USB devices? My telephone switchboard is connected through USB and is seen by /usr/bin/usbview (which is not using libusb), but not by /usr/sbin/lsusb (which uses libusb).
> 
> The device is from the German vendor Auerswald, the USB vendor ID is 0x09BF. 
> 
> Running lsusb with option -t (Dump the physical USB device hierarchy as a tree) I can see the device on bus #0:
> ...

 

I found the solution! I thought that lsusb is using /proc/bus/usb, but that's wrong! /proc/bus/usb seems to be deprecated and lsusb is now using /dev/bus/usb (except when using "lsusb -t" which still reads from /proc/bus/usb/devices, see bug 236528).

And while I had a device descriptor for my switchboard in /proc/bus/usb/008 there was no device file for it in /dev/bus/usb/008. So I guessed that for some reason udev didn't create a device file. After a short search I found an old rule in /etc/udev/rules.d/10-local.rules for the Auerswald switchboard. 

After disableing the rule lsusb shows the switchboard device and the Auerswald software is working fine again!

Bye,

Oliver

----------

## SunFox

 :Very Happy: 

----------

