# Linksys Instant USB Disk 128mb

## jesterspet

OK, I just bought one of these devices, thinking it was pretty cool, and would beat moving my files over the net.

However, I have one problem. My Gentoo Box doesn't recognize the drive.

I do get a message in my log file:

[kernel] hub.c: USB new device connect on bus3/1, assigned device number 2

[kernel] usb.c: USB device 2 (vend/prod 0x1915/0x2220) is not claimed by any active driver.

[/etc/hotplug/usb.agent] ... no modules for USB product 1915/2220/100

So I know that my box knows the device is there, It just doesn't know what module to load to use the device.  Unfortunatly neither do I.    :Confused: 

Anyone feel like providing me (and my box) with a clue of what to load so that we may use this device   :Question: 

----------

## Jimboberella

see this thread for my take on it

----------

## jesterspet

Jimboberella

posting error.

There is no link to any thread for me to view your take on it.

----------

## jesterspet

I am searching for your previous posts but clarification on which one you meant would be helpfull    :Razz: 

IBM USB DiskOnKey Memory Stick  :Question:   # my best guess

Problems with USB Multimedia Card (MMC) Reader  :Question:    #maybe but this post still wont help.

----------

## jesterspet

Found one thing out, in my tinkering with it.

You must have udftools installed.

However I have not found the magic Kernel module that must be loaded.

right now I have:

udf                    78976   0  (unused)

usbserial              17916   0  (unused)

usb-storage            96880   0  (unused)

sg                     25228   0  (autoclean) (unused)

sd_mod                 10252   0  (autoclean) (unused)

scsi_mod               51428   2  (autoclean) [usb-storage sg sd_mod]

i810_audio             20936   1

soundcore               3748   2  [i810_audio]

ac97_codec              9288   0  [i810_audio]

e1000                  68688   1

After reading your previous article, I made sure I had SCSI emulation, hotplug, usb, and usb mass storage support.  I made them all modules so that I could see which ones were actually being used.

At boot I no longer recieve  my error message of:

[/etc/hotplug/usb.agent] Bad USB agent invocation

[kernel] usb.c: USB disconnect on device 3

[kernel] hub.c: USB new device connect on bus2/2, assigned device number 4

[kernel] usb.c: USB device 4 (vend/prod 0x1915/0x2220) is not claimed by any active driver.

[/etc/hotplug/usb.agent] ... no modules for USB product 1915/2220/100

[kernel] usb.c: USB disconnect on device 4

[kernel] hub.c: USB new device connect on bus2/2, assigned device number 5

[kernel] usb.c: USB device 5 (vend/prod 0x1915/0x2220) is not claimed by any active driver.

[/etc/hotplug/usb.agent] ... no modules for USB product 1915/2220/100

After all of this, I still cannot see the drive.

There are nothing in my logs (how odd I see the led on the drive, and yet no notification that there is new hardware?)

the /dev & /proc filesystems don't show any differences from when the drive is not plugged in.

any Ideas anyone?

----------

## jesterspet

I finally got it working   :Very Happy: 

OK, here is what need to happen to get thes things to work.

First you will need to have fat,vfat, nls-codepage 437, nls iso8859, udf, hotplug, usb, usb mass storage, and scsi generic support (compiled in or as modules) 

Then you will need udftools installed.

After all of this is completed, you should have the framework to get one of these things up and going.  To keep myself sane I also have supermount installed for easy mounting/unmounting.  However this is optional.

After connecting your USB Drive, you should be able to see it in the /proc/bus/usb/devices listing.

Here is mine:

T:  Bus=02 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#=  3 Spd=12  MxCh= 0

D:  Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1

P:  Vendor=1915 ProdID=2220 Rev= 1.00

S:  Manufacturer=Linksys

S:  Product=Instant USB Disk

S:  SerialNumber=1D31130B19C2

C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA

I:  If#= 0 Alt= 0 #EPs= 3 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage

E:  Ad=81(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms

E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms

E:  Ad=83(I) Atr=03(Int.) MxPS=   2 Ivl=1ms

Now this did not tell me what device is was assigned as (at least not in plain english) so now is the time you go digging for the device in your /dev filesystem.

A quick ls -al of /dev/discs/ revealed a new addition to my listed disks:

# ls -al discs/

total 0

drwxr-xr-x    1 root     root            0 Dec 31  1969 .

drwxr-xr-x    1 root     root            0 Dec 31  1969 ..

lr-xr-xr-x    1 root     root           30 Dec 31  1969 disc0 -> ../ide/host0/bus0/target0/lun0

lr-xr-xr-x    1 root     root           31 Dec 31  1969 disc1 -> ../scsi/host0/bus0/target0/lun0

Having an IDE only system, I know that any scsi devices will not be internal devices, but external ones so this must be my target.  Now that I have the disk name that was added when I connected the drive,   I can find out the common name under the /dev filesystem so that I can add it to my /etc/fstab.

One quick grep of the /dev filesystem for any scsi disks revealed:

# grep sd* /dev

Binary file sda matches

Binary file sda1 matches

e.g One scsi disk with one partition. 

Now that i have identified the elusive usb disk, I just have to add it to my fstab for easy mounting/unmounting

Here is what I added:

none            /mnt/usbdisk    supermount rw,users,fs=auto,dev=/dev/sda1

And now to see if all of my efforst worked:

# mount /mnt/usbdisk/

# ls -al /mnt/usbdisk/

total 61244

drwxrwxrwx    1 root     root            0 Mar 14 13:39 .

drwxr-xr-x    8 root     root         4096 Mar 14 11:31 ..

# cd /mnt/usbdisk/

# echo delteme > deleteme

# ls

deleteme

Looks like it is working to me, time for the happy dance    :Surprised: 

----------

## Beekster

Thanks for the great posts.  I was almost there, having the device (in this case a Sony "memory stick" camera, show up as a SCSI character (not block) device.  It was also listed in /proc/bus/usb/devices.  But I couldn't mount the character device...

Added SCSI disk support, got the block device, and was able to mount it for the first time.  Was very happy!   :Cool:  I'm one step closer to wiping my XP partitions!!

I don't have everything installed that you have.  I don't have udf or udftools.  From what I've read it has more to do with DVD filesystems and packet writing??  I have the hotplug scripts installed, but haven't needed them (??) to get it working.  I _don't_ have hotplug support in the kernel, which I've just checked is what calls the hotplug scripts.

I am able to connect the camera to the running computer, and dmesg will then display this at the end of its listing:

hub.c: USB new device connect on bus1/2, assigned device number 3

scsi1 : SCSI emulation for USB Mass Storage devices

  Vendor: Sony      Model: Sony DSC          Rev: 2.10

  Type:   Direct-Access                      ANSI SCSI revision: 02

Attached scsi removable disk sda at scsi1, channel 0, id 0, lun 0

SCSI device sda: 253696 512-byte hdwr sectors (130 MB)

sda: Write Protect is off

 /dev/scsi/host1/bus0/target0/lun0: p1

WARNING: USB Mass Storage data integrity not assured

USB Mass Storage device found at 3

The kernel will display the same message a bit earlier in the boot sequence if the camera is connected while booting.

I can unmount, and disconnect it, and the kernel then registers:

usb.c: USB disconnect on device 3

A reconnect then gives:

hub.c: USB new device connect on bus1/2, assigned device number 4

WARNING: USB Mass Storage data integrity not assured

USB Mass Storage device found at 4

usb.c: USB disconnect on device 4

which can also then be mounted!!  Was worried about it getting a new device number.

I don't use supermount, although it is in the kernel.  My fstab (line):

/dev/sda1		/mnt/cam	vfat		noauto,noatime		0 0

I then use the gkrellm disk monitor, with fstab mounting enabled, to mount and dismount it easily. (one click and it's mounted or dismounted)

Here are the sections of my .config for a Gentoo-Sources-2.4.19-r10 kernel, relevant to USB "disk" support. (note that most commented lines snipped)

# SCSI support

#

CONFIG_SCSI=y

CONFIG_BLK_DEV_SD=y

CONFIG_SD_EXTRA_DEVS=40

CONFIG_BLK_DEV_SR=y

CONFIG_SR_EXTRA_DEVS=2

CONFIG_CHR_DEV_SG=y

CONFIG_SCSI_DEBUG_QUEUES=y

# File systems

#

CONFIG_REISERFS_FS=y

CONFIG_REISERFS_PROC_INFO=y

CONFIG_SUPERMOUNT=y

CONFIG_EXT3_FS=y

CONFIG_JBD=y

CONFIG_FAT_FS=y

CONFIG_MSDOS_FS=y

CONFIG_VFAT_FS=y

CONFIG_TMPFS=y

CONFIG_RAMFS=y

CONFIG_ISO9660_FS=y

CONFIG_JOLIET=y

CONFIG_ZISOFS=y

CONFIG_NTFS_FS=y

CONFIG_PROC_FS=y

CONFIG_DEVFS_FS=y

CONFIG_DEVFS_MOUNT=y

CONFIG_EXT2_FS=y

# Partition Types

#

CONFIG_PARTITION_ADVANCED=y

CONFIG_MSDOS_PARTITION=y

CONFIG_LDM_PARTITION=y

CONFIG_NLS=y

# USB support

#

CONFIG_USB=y

CONFIG_USB_DEVICEFS=y

CONFIG_USB_UHCI_ALT=y

CONFIG_USB_STORAGE=y

CONFIG_USB_ACM=y

CONFIG_USB_PRINTER=y

CONFIG_USB_HID=y

CONFIG_USB_SCANNER=y

Some of these are obviously for other things, but I included the complete relevant sections.

So as far as I can tell, it's all in the kernel, with the exception of the mounting.  Hope it's of use to someone.

----------

## doener

I've noticed that most posts about getting USB sticks to work mention that you need the usb-storage module, but don't explicity mention that you also need the sd_mod module to get any /dev/sdaX devices.

----------

