Slow USB transfer speeds on Fedora 10

Are you suffering from slow transfer speeds when copying files to a USB hard drive? Read on as this may be of some help.

I was experiencing very slow throughput when copying large files to a Western Digital Passport drive connected to a Shuttle SA76G2 running Fedora 10.

Using the command ‘lsusb’ you can see all the USB devices that are present on your system, e.g.

$ /sbin/lsusb | sort -n

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 005: ID 1058:070a Western Digital Technologies, Inc.
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 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 005 Device 002: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

The above output shows that there are seven USB root hubs available on my system, but only two of these support the high-speed USB 2.0 protocol. In order to benefit from high-speed data throughput the external USB disk needs to be connected to a bus with a 2.0 root hub. It also helps if you attach one device per bus so they do not share bus bandwidth.

The Shuttle SA76G2 specs claim that all the USB ports are 2.0 compliant, but ‘lsusb’ reveals that Fedora 10 detects only two 2.0 root hubs. After moving the external drive between the physical USB ports I identified a port which was attached to a 2.0 root hub and since then data throughput has been excellent.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s