USB
21 February 2005

Status

  • Olympus Stylus 400 Digital Camera, Archos Recorder 20GB, and Flash Drive are all recognized automatically on Sigillo, Trevi, and likely others, and can be mounted with "mount /flash" -- make sure /etc/fstab has /dev/sda1 using vfat
  • Back-up Q Penr-35u2f mounts fine on Spello's USB2.0 with "mount /mnt/tv1" -- make sure /etc/fstab has /dev/sda1 using ext2 -- unmounting and remounting is unproblematic

Guides

Installation history

GPS

GPS Model Navius NSA-U3 is supported by gpsd, but I'm not seeing it actually recognized as a device.

Flash drive formating

I tried to format a 512MB flash drive with ext2 and failed -- the command to write the file system would time out and generate errors in dmesg. It may be the fat16 file system is hardcoded -- at any rate I decided to revert to it.

I then used parted as follows (I actually first created a partition on cfdisk, but I don't think it mattered):

parted /dev/sdc
print
rm 1                                                 (removes the first and only partition)
mkpart primary fat16 0 507MB     (make a new partition -- fat16 because less than 2GB)
mkfs 1 fat16                                    (make a fat16 file system on the first and only partition)
toggle 1 boot                                  (make the stick bootable)
(parted) print

Disk /dev/sdc: 513MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End    Size   Type     File system  Flags
 1      0.51kB  507MB  507MB  primary  fat16        boot, lba

Nice and clean, and all instantaneous. However, when I gave the size as 513MB, which is what parted says it is, I got "Partition 1 has different physical/logical endings". I then used fdisk -l /dev/sdc to get a value of 507MB, and this resulted in a clean formating, and the drive mounted.  However, the hardware appears to be shot and kept producing errors during copying.

Flash drive on non-powered hub

Starting with kernel 2.6.16, the kernel checks if enough power is available to mount a USB drive on a non-powered hub, and doesn't create the device node if there isn't (you'll get "no configuration chosen"). Very annoying, as my flash drive does fine on the non-powered hub in the keyboard, and the machine itself is in another room. It's a good thing I didn't depend on this happening in the 30 seconds I often have for this before class!

Anyway the workaround is simple:

echo -n 1 >/sys/bus/usb/devices/1-3.3/bConfigurationValue

Check dmesg to find the right value for 1-3.3. The value "1" is correct for the current flash drive but could change for another drive. The device node is now created as before -- except you get "usb 1-3.3: new config #1 exceeds power limit by 78mA".

I put this in a script called flash. It will shift to 1-2.3 if the quickcam driver is unloaded.


Back-up Q Penr-35u2f External Harddrive (see also Firewire)
21 February 2005

Works fine on Spello's USB2.0 card on boot:

ehci_hcd 0000:00:0e.2: NEC Corporation USB 2.0
ehci_hcd 0000:00:0e.2: irq 9, pci mem d080e000
ehci_hcd 0000:00:0e.2: new USB bus registered, assigned bus number 1
ehci_hcd 0000:00:0e.2: USB 2.0 enabled, EHCI 0.95, driver 2004-May-10

usb 1-2: new high speed USB device using address 2
SCSI subsystem initialized
Initializing USB Mass Storage driver...
scsi0 : SCSI emulation for USB Mass Storage devices
  Vendor: ST320082  Model: 2A                Rev: 3.01
  Type:   Direct-Access                      ANSI SCSI revision: 02
USB Mass Storage device found at 2
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
SCSI device sda: 390721969 512-byte hdwr sectors (200050 MB)
sda: assuming drive cache: write through
 sda: sda1
Attached scsi disk sda at scsi0, channel 0, id 0, lun 0

ohci_hcd 0000:00:0e.0: NEC Corporation USB
ohci_hcd 0000:00:0e.0: irq 10, pci mem d0812000
ohci_hcd 0000:00:0e.0: new USB bus registered, assigned bus number 2
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 3 ports detected
ohci_hcd 0000:00:0e.1: NEC Corporation USB (#2)
ohci_hcd 0000:00:0e.1: irq 11, pci mem d0814000
ohci_hcd 0000:00:0e.1: new USB bus registered, assigned bus number 3
hub 3-0:1.0: USB hub found
hub 3-0:1.0: 2 ports detected
USB Universal Host Controller Interface driver v2.2

Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0,  type 0

# lsusb
Bus 004 Device 004: ID 046d:c00c Logitech, Inc. Optical Wheel Mouse
Bus 004 Device 003: ID 045e:001d Microsoft Corp. Natural Keyboard Pro
Bus 004 Device 002: ID 0451:1446 Texas Instruments, Inc. TUSB2040/2070 Hub
Bus 004 Device 001: ID 0000:0000
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 002: ID 067b:3507 Prolific Technology, Inc.
Bus 001 Device 001: ID 0000:0000
So the drive shows up as ID 067b:3507 Prolific Technology, Inc. Mounts on /mnt/tv1 with ext2.  On trevi, do this, to avoid confusion with cybers:/mnt/tv1:
mount spello:/mnt/tv1 /mnt/tv1
This works. Television footage flows without problems.  Copying speed seems to be comparable to firewire -- precise benchmarks not yet done. Note also that spello's NIC is operating at Gbit/s and cybers for some reason fell back to 100 Mbit/s, so spello should be faster. A real comparison would be spello firewire to spello usb2; cf. todo.

Now unmounting and remounting: works flawlessly! To unattach and then reattach without rebooting, follow this procedure:
  • trevi: umount /dev/tv1  (unmount the nfs-mounts)
  • cybers: stop nfs-kernel-server (this frees the exported drives)
  • cybers: umount /dev/tv1
  • cybers: start nfs-kernel-server (make /vh available again)
  • detach the USB cable (may not be needed)
  • turn off the drive enclosure unit
  • give the drive a rest to cool down
  • turn on the drive enclosure unit
  • wait until the drive is up to speed (a few seconds)
  • reattach the USB cable if it was detached
  • wait a few seconds for the drive to reattach
  • mount /mnt/tv1
This seems robust and straightforward. You can't daisy-chain USB devices, but
they're easy to turn on and off, and you can presumably use extended hubs.

Olympus Stylus 400 Digital Camera
13 June 2004

I searched Linux USB devices and found the status is OK; the ID is 0x07b4:0x0102; see details. You can mount it on /mnt/flash, like the USB flash card -- this is also a scsi emulation (note that the battery has to be in for the camera to be detected):

Jun 13 17:47:20 sigillo kernel: SCSI subsystem initialized
Jun 13 17:47:55 sigillo kernel: usb 2-1.2: new full speed USB device using address 6
Jun 13 17:47:56 sigillo kernel: Initializing USB Mass Storage driver...
Jun 13 17:47:56 sigillo kernel: scsi0 : SCSI emulation for USB Mass Storage devices
Jun 13 17:47:56 sigillo kernel:   Vendor: OLYMPUS   Model: u20D,S400D,u400D  Rev: 1001
Jun 13 17:47:56 sigillo kernel:   Type:   Direct-Access                      ANSI SCSI revision: 02
Jun 13 17:47:57 sigillo kernel: sda: Spinning up disk....ready
Jun 13 17:47:57 sigillo kernel: SCSI device sda: 256000 512-byte hdwr sectors (131 MB)
Jun 13 17:47:57 sigillo kernel: sda: assuming Write Enabled
Jun 13 17:47:57 sigillo kernel:  sda: sda1
Jun 13 17:47:57 sigillo kernel: Attached scsi removable disk sda at scsi0, channel 0, id 0, lun 0
Jun 13 17:47:57 sigillo kernel: drivers/usb/core/usb.c: registered new driver usb-storage
Jun 13 17:47:57 sigillo kernel: USB Mass Storage support registered.
Jun 13 17:47:58 sigillo usb.agent[18512]:      usb-storage: loaded sucessfully
Jun 13 17:47:58 sigillo scsi.agent[18551]: disk at /devices/pci0000:00/0000:00:0b.1/usb2/2-1/2-1.2/2-1.2:1.0/host0/0:0:0:0

root@sigillo:~# lsusb
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 006: ID 07b4:0102 Olympus Optical Co., Ltd Camedia E-10/C-220 Camera

root@sigillo:~# mount /mnt/flash
root@sigillo:~# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda1               127936       928    127008   1% /mnt/flash
So far so good. The pictures are jpeg files, in /mnt/flash/dcim/100olymp/ and can be copied over as usual.

Jog Shuttle -- Griffin Technologies Powermate
25 May 2004

Kino 0.7.2 has support for this device!

"PowerMate can be programmed to do most anything in any application. It does this by sending keyboard shortcuts called Key Commands."

First installation attempt failed:
May 25 12:13:03 sigillo input.agent[3914]:      evdev: already loaded
May 25 12:13:03 sigillo input.agent[3921]:      evdev: already loaded
May 25 12:13:03 sigillo input.agent[3928]:      evdev: already loaded
May 25 12:13:03 sigillo input.agent[3928]:      joydev: already loaded

May 25 12:14:50 sigillo kernel: ieee1394: raw1394: /dev/raw1394 device initialized

May 25 12:15:36 sigillo kernel: usb 2-1: USB disconnect, address 10
May 25 12:15:46 sigillo kernel: usb 2-1: new low speed USB device using address 11
May 25 12:15:46 sigillo kernel: hid: probe of 2-1:1.0 failed with error -5
A cat /proc/bus/usb/devices gets me this:
T:  Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 11 Spd=1.5 MxCh= 0
D:  Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=077d ProdID=0410 Rev= 3.21
S:  Manufacturer=Griffin Technology, Inc.
S:  Product=Griffin PowerMate
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA
I:  If#= 0 Alt= 0 #EPs= 2 Cls=03(HID  ) Sub=00 Prot=00 Driver=(none)
E:  Ad=81(I) Atr=03(Int.) MxPS=   6 Ivl=10ms
E:  Ad=02(O) Atr=03(Int.) MxPS=   1 Ivl=10ms
I added the driver to the kernel -- under Device drivers | USB | HID.

Flash drive
17 May 2004

Software and guides

Inserted the USB drive in the powered USB hub and it started pulsing slowly. lsusb showed it as

Bus 003 Device 006: ID 08ec:0012 M-Systems Flash Disk Pioneers
This auto-loaded three kernel modules:
sd_mod
usb_storage
scsi_mod
In /var/log/messages I see it's assigned to /dev/sd1:
May 17 15:46:12 sigillo kernel: usb 3-1.2: new full speed USB device using address 6
May 17 15:46:12 sigillo kernel: SCSI subsystem initialized
May 17 15:46:12 sigillo kernel: Initializing USB Mass Storage driver...
May 17 15:46:12 sigillo kernel: scsi0 : SCSI emulation for USB Mass Storage devices
May 17 15:46:12 sigillo kernel:   Vendor: PNY       Model: Attache 2.0       Rev: 4.85
May 17 15:46:12 sigillo kernel:   Type:   Direct-Access                      ANSI SCSI revision: 02
May 17 15:46:12 sigillo kernel: usbcore: registered new driver usb-storage
May 17 15:46:12 sigillo kernel: USB Mass Storage support registered.
May 17 15:46:12 sigillo usb.agent[5379]:      usb-storage: loaded sucessfully
May 17 15:46:13 sigillo scsi.agent[5425]: disk at /devices/pci0000:00/0000:00:0b.1/usb3/3-1/3-1.2/3-1.2:1.0/host0/0:0:0:0
May 17 15:46:13 sigillo kernel: SCSI device sda: 239872 512-byte hdwr sectors (123 MB)
May 17 15:46:13 sigillo kernel: sda: assuming Write Enabled
May 17 15:46:13 sigillo kernel:  sda: sda1
May 17 15:46:13 sigillo kernel: Attached scsi removable disk sda at scsi0, channel 0, id 0, lun 0
I created /mnt/flash and mounted with this command:
mount /dev/sda1 /mnt/flash -t vfat
Worked instantly. df shows capacity:
/dev/sda1               119684         0    119684   0% /mnt/flash
I copied over a file and unmounted -- this just works!

External drive

After installing the old /vs -- a 320GB drive -- on Gubbio, I kept having I/O problems that made the drive non-functional. I removed it and placed it in an external encloser, hooked it into Clitunno's USB port, and issued (more or less a guess):

mount -t ext2 /dev/sdc1 /mnt/vsa
It just mounted. I deduced the others would mount on /dev/sdc2, 3, and 4, and ran e2fsck /dev/sdc4 to prove it; looks fine. Now of course one consequence of moving to USB is that the copying will be slower, and presumably easier on the drive, so maybe this is a good thing. So far no errors. In /var/log/messages I see this:
clitunno kernel: hub.c: new USB device 03:00.1-2, assigned address 2
clitunno kernel: usb.c: USB device 2 (vend/prod 0x67b/0x3507) is not claimed by any active driver.
clitunno kernel: Initializing USB Mass Storage driver...
clitunno kernel: usb.c: registered new driver usb-storage
clitunno kernel: scsi1 : SCSI emulation for USB Mass Storage devices
clitunno kernel:   Vendor: Maxtor 4  Model: A320J8            Rev: RAMB
clitunno kernel:   Type:   Direct-Access                      ANSI SCSI revision: 02
clitunno kernel: Attached scsi disk sdc at scsi1, channel 0, id 0, lun 0
clitunno kernel: SCSI device sdc: 632672209 512-byte hdwr sectors (323928 MB)
clitunno kernel:  sdc: sdc1 sdc2 sdc3 sdc4
clitunno kernel: WARNING: USB Mass Storage data integrity not assured
clitunno kernel: USB Mass Storage device found at 2
clitunno kernel: USB Mass Storage support registered.
clitunno insmod: Using /lib/modules/2.4.21-193-smp/kernel/drivers/usb/storage/usb-storage.o
So the kernel module loads and the driver works. However, the I/O problems persist, so the drive is likely shot. I umount and unhook it; to reattach, remove the usb-storage module and then modprobe it. Run lsusb to see it activated -- "Prolific Technology, Inc." I did the same thing on Sigillo and got the same result with the 2.6.3 kernel -- SCSI emulation. Mounted instantly with
mount -t ext2 /dev/sda1 /mnt/vsa

Scanner on vacation

In late October 2003, the scanner stopped working -- not sure what triggered it. Same problem in 2.4.20 and 2.5.69, so unlikely to be kernel-related. Don't recall what brought it back -- perhaps the new KDE scanner software?

USB and VMware

On 19 November 2002, I was unable to install a USB printer driver and a USB driver for the PDA cradle on the guest Win98 OS because "The specified device appears to be claimed by another driver (serial) on the host operating system which means that the device may be in use. VMware Workstation cannot safely take control of the device until the host driver is unloaded." So I need to find a way to stop the USB bus temporarily on Linux -- I've written VMware support for a more elegant and stable solution.

Wrong USB driver

At some point, in upgrading from 2.4.16 to 2.4.19 on gubbio or cyberspace, I realized that I had been running the wrong USB driver -- I had been running the (I think) UHCI alternate instead of the regular, which I should have been running. See also the FAQ on UHCI and OHCI. Spello has "00:07.2 USB Controller: Intel Corp. 82371AB PIIX4 USB (rev 01)" and thus needs the inferior UHCI. Check the details with "cat /proc/bus/usb/devices" -- at least on Spello, usbfs is installed and running.

Lost mouse and keyboard on cyberspace

A shocking experience with a happy ending on cyberspace, 27 Sep 2002.

I tried to install a new USB mouse and ran SaX2. It froze and I had to reboot (never run this beast within X-windows; it works fine if KDE is not loaded). I then lost my normal mouse and didn't know how to get it back. Finally I figured out that the mouse is defined in /etc/X11/XF86Config. I found some help online, but then realized that gubbio's /etc/X11/XF86Config would have all the info I needed, as indeed it did:

Section "InputDevice"
Driver "mouse"
Identifier "Mouse[1]"
Option "ButtonNumber" "5"
Option "Device" "/dev/mouse"
Option "Name" "Autodetection"
Option "Protocol" "imps/2"
Option "Vendor" "Sysp"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "on"
EndSection

So this was a lesson in configuring X -- supremely simple in the configuration file, and a nightmare with SaX2.

January 2002 status report

As of 1 Jan 2002, dmesg produces this:

usb-uhci.c: $Revision: 1.268
usb.c: registered new driver usbdevfs
usb.c: registered new driver hub
usb-uhci.c: $Revision: 1.268 $ time 04:12:58 Dec 30 2001
usb-uhci.c: High bandwidth mode enabled
usb-uhci.c: USB UHCI at I/O 0xa000, IRQ 11
usb-uhci.c: Detected 2 ports usb.c: new USB bus registered, assigned bus number 1
hub.c: USB hub found hub.c: 2 ports detected
usb-uhci.c: v1.268:USB Universal Host Controller Interface driver
usb.c: registered new driver hid hid-core.c: v1.8 Andreas Gal, Vojtech Pavlik <vojtech@suse.cz>
hid-core.c: USB HID support drivers
usb.c: registered new driver usbscanner
scanner.c: 0.4.6:USB Scanner Driver
usb.c: registered new driver usblp
printer.c: v0.8:USB Printer Device Class driver
hub.c: USB new device connect on bus1/2, assigned device number 2
hub.c: USB hub found hub.c: 7 ports detected
hub.c: USB new device connect on bus1/2/6, assigned device number 3
printer.c: usblp0: USB Bidirectional printer dev 3 if 0 alt 0

Now, could it be that the lid-core is messing up the usb drivers? This is a new element in a system that I believe was actually working great before. So you've introduced two new problems, usb and cdrw, while solving the gigabus and firewire problems. It's funny how those latter two, which sound hard, are working great and caused me little trouble, while what was already working has been messed up. On the other hand, if this is the problem, then SuSE's kernel should work fine, which it's not doing.

 

 

top
Debate
Evolution
CogSci

Maintained by Francis F. Steen, Communication Studies, University of California Los Angeles


CogWeb