problem with Soekris net5501 and USB hub

Graham Menhennitt graham at menhennitt.com.au
Mon Jul 13 23:24:40 UTC 2009


I originally sent this to the Soekris list thinking it was platform 
specific. I got a couple of replies suggesting that it's a FreeBSD 
problem instead. So, if anybody can offer any insights, I would most 
appreciate it.

I have a Soekris net5501 running FreeBSD 7-Stable. I want to connect a 
number of USB devices to it:
- a HP Laserjet 1020 printer
- an APC Back UPS 350 UPS
- a 6-in-one card reader (not so fussed about this one).
The Soekris box has only one USB port brought out to a connector on the 
case, so rather than mod the box to add another port, I thought I would 
just use an external hub.

If I plug any of the devcies directly into the Soekris's USB port it 
works fine. However, if I use a USB hub then it doesn't work at all. 
I've tried it with two different hubs and two different cables. I've 
tried the hubs both with a plug pack, and being powered from the USB 
bus. The only thing common to the failures is the Soefkis and freeBSD. 
The hubs are both USB 2.0 according to their advertising.

The hub itself is recognised (although I don't have the output from
usbdevs available at the moment). The UPS doesn't ever seem to be
recognised when connected via the hub - there's nothing in dmesg and
nothing in usbdevs. Ditto for the 6-in-one card reader - the LED on the
front of it doesn't even light up.

The printer sometimes gets partially recognised. The output from
"usbdevs -v" when the printer is connected directly and working properly
looks like:

     Controller /dev/usb0:
    addr 1: full speed, self powered, config 1, OHCI root hub(0x0000), 
AMD(0x0000), rev 1.00
     port 1 powered
     port 2 powered
     port 3 powered
     port 4 powered
    Controller /dev/usb1:
    addr 1: high speed, self powered, config 1, EHCI root hub(0x0000), 
AMD(0x0000), rev 1.00
     port 1 addr 2: high speed, self powered, config 1, HP LaserJet 
1020(0x2b17), Hewlett-Packard(0x03f0), rev 1.00
     port 2 powered
     port 3 powered
     port 4 powered

However, if I connect it via the hub, it sometimes doesn't show it at 
all, while other times it says something like (doing this from memory):

    port 1 addr 2: high speed, self powered, config 1, 0x2b17(0x2b17), 
vendor 0x03f0(0x03f0), rev 1.00

So, it can see it but it doesn't resolve the vendor or device ids. It 
looks like the Soekris can see whatever is directly connected to it, but 
  can't (reliably) see things that more than one step away.

My (custom) kernel has:

    device          usb             # USB Bus (required)
    device          umass           # Disks/Mass storage - Requires 
scbus and da
    device          scbus           # SCSI bus (required for SCSI)
    device          da              # Direct Access (disks)
    device          uhci            # UHCI PCI->USB interface
    device          ohci            # OHCI PCI->USB interface
    device          ehci            # EHCI PCI->USB interface (USB 2.0)
    device          ugen            # Generic

So, does anybody have any ideas about how to fix this.

Thanks for any help,
  Graham


More information about the freebsd-stable mailing list