# USB scanner problems - getting desperate.. :(

## RangerDude

Hey all,

I'm really sick of trying to get my scanner to work.

Here is what I've tried.

I have read all the forum/google through.

My scanner is an Umax AstraNET ia101.

I tried a 1000 things to get sane-find-scanner to find it. After 2 hours I managed to do that. I don't use the kernel module, because it wouldn't work.

I found some sane docs stating that you could ommit the scanner module by using usblib.

So I did

```

emerge usblib

```

and then I got

```

bash-2.05b# sane-find-scanner 

  # No SCSI scanners found. If you expected something different, make sure that

  # you have loaded a SCSI driver for your SCSI adapter.

  # Also you need support for SCSI Generic (sg) in your operating system.

  # If using Linux, try "modprobe sg".

found USB scanner (vendor=0x1606, product=0x0050 [USB SCANNER]) at libusb:001:003

  # A USB device was detected. This program can't be sure if it's really

  # a scanner. If it is your scanner, it may or may not be supported by

  # SANE. Try scanimage -L and read the backend's manpage.

  # Scanners connected to the parallel port or other proprietary ports can't be

  # detected by this program.

```

Weeeeee!!!

I guess I got past 1. stage by getting sane-find-scanner to actually see the scanner. And I guess it doesn't matter if I use the kernel module or usblib.

Now my problem is that scanimage -L doesn't recongnize it.

Could someone plz help- I really would appreciate it.   :Rolling Eyes: 

----------

## plasmaroo

Edit /etc/sane.d/dcc.conf to tell  it which modules you want to load

Edit /etc/sane.d/somethingsoundinglikeyourscanner.conf and change settings to USB in the file

----------

## steveb

what i would do:

- compile everything with usb as a module in the kernel

- add "scanner" entry in my /etc/modules.autoload

- add "options scanner vendor=0x1606 product=0x0050" to /etc/modules.d/scanner file

- emerge hotplug and add it to default boot level (rc-update add hotplug default)

- edit /etc/sane.d/umax.conf and change/add:

```
# usb device list

option connection-type 2

/dev/usbscanner

/dev/usb/scanner0

# Umax AstraNET ia101 via USB:

# usb vendor product

usb 0x1606 0x0050
```

and then don't forget to load the usbcore and that kind of stuff bevore accessing the scanner...

after everything is working do update-modules or modules-update to update /etc/modules.conf

i think this should fix your problem.

cheers

SteveB

----------

## RangerDude

Thanks alot for your replies guys *light in dark times*, but I'm afraid I still have problems.

As mentionned before, sane-find-scanner sees my scanner at libusb:001:002 (:003 last time, guess it changes)

As you said, steve, I edited umax.conf and added

```

/dev/usbscanner

```

and

```

usb 0x1606 0x0050.

```

Now, I didn't have the /dev/usbscanner, so I did

```

mknod /dev/usbscanner c 180 48

```

and then

```

modprobe scanner vendor=0x1606 product=0x0050

```

sane-find-scanner -v still only finds the scanner at libusb:001:002

```

/dev/usbscanner... failed to open

```

So where is the missing link?

From what I can see- /dev/usbscanner doesn't link to the scanner?

So I see 2 possible solutions.

1. Make scanimage see the scanner at libusb:001:002 ommitting /dev/usbscanner-stuff

2. Make /dev/usbscanner work

Anyone?   :Rolling Eyes: 

----------

## steveb

this is exactly one of the resons i do not like usb! anyway... my secretary has a canon usb scanner:

```
# sane-find-scanner -v

searching for SCSI scanners:

checking /dev/scanner... failed to open (Invalid argument)

checking /dev/sg0... failed to open (Invalid argument)

checking /dev/sg1... failed to open (Invalid argument)

checking /dev/sg2... failed to open (Invalid argument)

checking /dev/sg3... failed to open (Invalid argument)

checking /dev/sg4... failed to open (Invalid argument)

checking /dev/sg5... failed to open (Invalid argument)

checking /dev/sg6... failed to open (Invalid argument)

checking /dev/sg7... failed to open (Invalid argument)

checking /dev/sg8... failed to open (Invalid argument)

checking /dev/sg9... failed to open (Invalid argument)

checking /dev/sga... failed to open (Invalid argument)

checking /dev/sgb... failed to open (Invalid argument)

checking /dev/sgc... failed to open (Invalid argument)

checking /dev/sgd... failed to open (Invalid argument)

checking /dev/sge... failed to open (Invalid argument)

checking /dev/sgf... failed to open (Invalid argument)

checking /dev/sgg... failed to open (Invalid argument)

checking /dev/sgh... failed to open (Invalid argument)

checking /dev/sgi... failed to open (Invalid argument)

checking /dev/sgj... failed to open (Invalid argument)

checking /dev/sgk... failed to open (Invalid argument)

checking /dev/sgl... failed to open (Invalid argument)

checking /dev/sgm... failed to open (Invalid argument)

checking /dev/sgn... failed to open (Invalid argument)

checking /dev/sgo... failed to open (Invalid argument)

checking /dev/sgp... failed to open (Invalid argument)

checking /dev/sgq... failed to open (Invalid argument)

checking /dev/sgr... failed to open (Invalid argument)

checking /dev/sgs... failed to open (Invalid argument)

checking /dev/sgt... failed to open (Invalid argument)

checking /dev/sgu... failed to open (Invalid argument)

checking /dev/sgv... failed to open (Invalid argument)

checking /dev/sgw... failed to open (Invalid argument)

checking /dev/sgx... failed to open (Invalid argument)

checking /dev/sgy... failed to open (Invalid argument)

checking /dev/sgz... failed to open (Invalid argument)

  # No SCSI scanners found. If you expected something different, make sure that

  # you have loaded a SCSI driver for your SCSI adapter.

searching for USB scanners:

checking /dev/usb/scanner... failed to open (Invalid argument)

checking /dev/usb/scanner0... open ok, vendor and product ids were identified

found USB scanner (vendor=0x04a9, product=0x2206) at /dev/usb/scanner0

checking /dev/usb/scanner1... failed to open (Invalid argument)

checking /dev/usb/scanner2... failed to open (Invalid argument)

checking /dev/usb/scanner3... failed to open (Invalid argument)

checking /dev/usb/scanner4... failed to open (Invalid argument)

checking /dev/usb/scanner5... failed to open (Invalid argument)

checking /dev/usb/scanner5... failed to open (Invalid argument)

checking /dev/usb/scanner7... failed to open (Invalid argument)

checking /dev/usb/scanner8... failed to open (Invalid argument)

checking /dev/usb/scanner9... failed to open (Invalid argument)

checking /dev/usb/scanner10... failed to open (Invalid argument)

checking /dev/usb/scanner11... failed to open (Invalid argument)

checking /dev/usb/scanner12... failed to open (Invalid argument)

checking /dev/usb/scanner13... failed to open (Invalid argument)

checking /dev/usb/scanner14... failed to open (Invalid argument)

checking /dev/usb/scanner15... failed to open (Invalid argument)

checking /dev/usbscanner... open ok, vendor and product ids were identified

found USB scanner (vendor=0x04a9, product=0x2206) at /dev/usbscanner

checking /dev/usbscanner0... failed to open (Invalid argument)

checking /dev/usbscanner1... failed to open (Invalid argument)

checking /dev/usbscanner2... failed to open (Invalid argument)

checking /dev/usbscanner3... failed to open (Invalid argument)

checking /dev/usbscanner4... failed to open (Invalid argument)

checking /dev/usbscanner5... failed to open (Invalid argument)

checking /dev/usbscanner6... failed to open (Invalid argument)

checking /dev/usbscanner7... failed to open (Invalid argument)

checking /dev/usbscanner8... failed to open (Invalid argument)

checking /dev/usbscanner9... failed to open (Invalid argument)

checking /dev/usbscanner10... failed to open (Invalid argument)

checking /dev/usbscanner11... failed to open (Invalid argument)

checking /dev/usbscanner12... failed to open (Invalid argument)

checking /dev/usbscanner13... failed to open (Invalid argument)

checking /dev/usbscanner14... failed to open (Invalid argument)

checking /dev/usbscanner15... failed to open (Invalid argument)

found USB scanner (vendor=0x04a9 [Canon], product=0x2206 [CanoScan]) at libusb:002:002

  # A USB device was detected. This program can't be sure if it's really

  # a scanner. If it is your scanner, it may or may not be supported by

  # SANE. Try scanimage -L and read the backend's manpage.

  # Scanners connected to the parallel port or other proprietary ports can't be

  # detected by this program.

done
```

```
# grep -i ^scanner /etc/modules.autoload 

scanner
```

```
# cat /etc/modules.d/scanner                

# http://www.gjaeger.de/scanner/plustek.html

options scanner vendor=0x04A9 product=0x2206
```

```
# modinfo scanner

filename:    /lib/modules/2.4.20-xfs-r3/kernel/drivers/usb/scanner.o

description: "USB Scanner Driver 0.4.6"

author:      "Brian Beattie, beattie@beattie-home.net"

license:     "GPL"

parm:        vendor int, description "User specified USB idVendor"

parm:        product int, description "User specified USB idProduct"

parm:        read_timeout int, description "User specified read timeout in seconds"
```

```
# cat /etc/sane.d/plustek.conf 

# Plustek-SANE Backend configuration file

# For use with Plustek parallel-port scanners and

# LM9831/2/3 based USB scanners

#

# For parport devices use the parport section

#

[parport]

device /dev/pt_drv

#

# leave the default values as specified in /etc/modules.conf

#

option warmup    -1

option lOffOnEnd -1

option lampOff   -1

#

# The USB section:

# each device needs at least two lines:

# - [usb] vendor-ID and product-ID

# - device devicename

# i.e. for Plustek (0x07B3) UT12/16/24 (0x0017)

# [usb] 0x07B3 0x0017

# device /dev/usbscanner

# or

# device libusb:bbb:ddd

# where bbb is the busnumber and ddd the device number

# make sure that your user has access to /proc/bus/usb/bbb/ddd

#

# additionally you can specify some options

# warmup, lOffOnEnd, lampOff

#

# For autodetection use

# [usb]

# device /dev/usbscanner

#

# or simply

# [usb]

#

# or if you want a specific device but you have no idea about

# the device node or you use libusb, simply set vendor- and product-ID

# [usb] 0x07B3 0x0017

# device auto

#

# NOTE: autodetection is safe, as it uses the info it got

#       from the USB subsystem. If you're not using the

#       autodetection, you MUST have attached that device

#       at your USB-port, that you have specified...

#

[usb]

#

# options for the previous USB entry

#

# switch lamp off after xxx secs, 0 disables the feature

option lampOff 300

# warmup period in seconds, 0 means no warmup

option warmup 15

# 0 means leave lamp-status untouched, not 0 means switch off

# on sane_close

option lOffOnEnd 1

#

# options to tweak the image start-position

# (WARNING: there's no internal range check!!!)

#

# for the normal scan area

#

option posOffX 0

option posOffY 0

# for transparencies

option tpaOffX 0

option tpaOffY 0

# for negatives

option negOffX 0

option negOffY 0

#

# for setting the calibration strip position

# (WARNING: there's no internal range check!!!)

# -1 means use built in

#

option posShadingY -1

option tpaShadingY -1

option negShadingY -1

#

# to invert the negatives, 0 disables the feature

#

option invertNegatives 0

# for skipping whole calibration step

option skipCalibration 0

# for skipping entire fine calibration step

# coarse calibration is done

option skipFine 0

# discard the result of the fine white calibration

option skipFineWhite 0

# for replacing the gain values found during

# calibration

option red_gain   -1

option green_gain -1

option blue_gain  -1

#

# for adjusting the default gamma values

#

option redGamma         1.0

option greenGamma       1.0

option blueGamma        1.0

option grayGamma        1.0

#

# to enable TPA (non Plustek devices only)

# 0 means default behaviour as specified in the internal tables

# 1 means enable

#

option enableTPA 0

#

# and of course the device-name

#

# device /dev/usbscanner

device auto

#

# to define a new device, start with a new section:

# [usb] or [parport]

#
```

```
# qpkg -I -nc -v sane*  

media-gfx/sane-frontends-1.0.9

media-gfx/sane-backends-1.0.11

media-gfx/xsane-0.90
```

```
# qpkg -I -nc -v hotplug*      

sys-apps/hotplug-20020826-r2
```

```
# grep -i usb /lib/modules/$(uname -r)/build/.config                     

# CONFIG_INPUT_IFORCE_USB is not set

# USB support

CONFIG_USB=m

# CONFIG_USB_DEBUG is not set

CONFIG_USB_DEVICEFS=y

# CONFIG_USB_BANDWIDTH is not set

# CONFIG_USB_LONG_TIMEOUT is not set

CONFIG_USB_EHCI_HCD=m

CONFIG_USB_UHCI=m

CONFIG_USB_UHCI_ALT=m

CONFIG_USB_OHCI=m

CONFIG_USB_AUDIO=m

CONFIG_USB_EMI26=m

# CONFIG_USB_BLUETOOTH is not set

CONFIG_USB_MIDI=m

CONFIG_USB_STORAGE=m

# CONFIG_USB_STORAGE_DEBUG is not set

CONFIG_USB_STORAGE_DATAFAB=y

CONFIG_USB_STORAGE_FREECOM=y

CONFIG_USB_STORAGE_ISD200=y

CONFIG_USB_STORAGE_DPCM=y

CONFIG_USB_STORAGE_HP8200e=y

CONFIG_USB_STORAGE_SDDR09=y

CONFIG_USB_STORAGE_SDDR55=y

CONFIG_USB_STORAGE_JUMPSHOT=y

CONFIG_USB_ACM=m

CONFIG_USB_PRINTER=m

CONFIG_USB_HID=m

CONFIG_USB_HIDINPUT=y

CONFIG_USB_HIDDEV=y

CONFIG_USB_KBD=m

CONFIG_USB_MOUSE=m

CONFIG_USB_AIPTEK=m

CONFIG_USB_WACOM=m

CONFIG_USB_DC2XX=m

CONFIG_USB_MDC800=m

CONFIG_USB_SCANNER=m

CONFIG_USB_MICROTEK=m

CONFIG_USB_HPUSBSCSI=m

# CONFIG_USB_PEGASUS is not set

# CONFIG_USB_RTL8150 is not set

# CONFIG_USB_KAWETH is not set

# CONFIG_USB_CATC is not set

# CONFIG_USB_CDCETHER is not set

# CONFIG_USB_USBNET is not set

CONFIG_USB_USS720=m

# USB Serial Converter support

CONFIG_USB_SERIAL=m

# CONFIG_USB_SERIAL_DEBUG is not set

CONFIG_USB_SERIAL_GENERIC=y

CONFIG_USB_SERIAL_BELKIN=m

CONFIG_USB_SERIAL_WHITEHEAT=m

CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m

CONFIG_USB_SERIAL_EMPEG=m

CONFIG_USB_SERIAL_FTDI_SIO=m

CONFIG_USB_SERIAL_VISOR=m

CONFIG_USB_SERIAL_IPAQ=m

# CONFIG_USB_SERIAL_IR is not set

CONFIG_USB_SERIAL_EDGEPORT=m

CONFIG_USB_SERIAL_EDGEPORT_TI=m

# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set

CONFIG_USB_SERIAL_KEYSPAN=m

CONFIG_USB_SERIAL_KEYSPAN_USA28=y

CONFIG_USB_SERIAL_KEYSPAN_USA28X=y

CONFIG_USB_SERIAL_KEYSPAN_USA28XA=y

CONFIG_USB_SERIAL_KEYSPAN_USA28XB=y

CONFIG_USB_SERIAL_KEYSPAN_USA19=y

CONFIG_USB_SERIAL_KEYSPAN_USA18X=y

CONFIG_USB_SERIAL_KEYSPAN_USA19W=y

CONFIG_USB_SERIAL_KEYSPAN_USA19QW=y

CONFIG_USB_SERIAL_KEYSPAN_USA19QI=y

CONFIG_USB_SERIAL_KEYSPAN_USA49W=y

CONFIG_USB_SERIAL_MCT_U232=m

CONFIG_USB_SERIAL_KLSI=m

CONFIG_USB_SERIAL_PL2303=m

# CONFIG_USB_SERIAL_CYBERJACK is not set

# CONFIG_USB_SERIAL_XIRCOM is not set

# CONFIG_USB_SERIAL_OMNINET is not set

# CONFIG_USB_RIO500 is not set

# CONFIG_USB_AUERSWALD is not set

CONFIG_USB_TIGL=m

# CONFIG_USB_BRLVGER is not set

CONFIG_USB_LCD=m
```

```
# lsmod

Module                  Size  Used by    Tainted: PF 

agpgart                14000   3  (autoclean)

vmnet                  19784   4 

vmmon                  23348   0  (unused)

smbfs                  39120   4  (autoclean)

nfs                    71736   1  (autoclean)

lockd                  51312   1  (autoclean) [nfs]

sunrpc                 66620   1  (autoclean) [nfs lockd]

parport_pc             27816   1  (autoclean)

lp                      7460   0  (autoclean)

parport                26016   1  (autoclean) [parport_pc lp]

bcm4400                27744   0 

uhci                   25712   0  (unused)

ehci-hcd               14952   0  (unused)

snd-via82xx             8972   0 

snd-pcm                60992   0  [snd-via82xx]

snd-timer              11144   0  [snd-pcm]

snd-ac97-codec         30436   0  [snd-via82xx]

snd-mpu401-uart         3168   0  [snd-via82xx]

snd-rawmidi            13920   0  [snd-mpu401-uart]

snd-seq-device          4284   0  [snd-rawmidi]

snd                    28044   0  [snd-via82xx snd-pcm snd-timer snd-ac97-codec snd-mpu401-uart snd-rawmidi snd-seq-device]

soundcore               3876   0  [snd]

w83781d                21456   0  (unused)

i2c-proc                7440   0  [w83781d]

i2c-viapro              4016   0  (unused)

i2c-core               15816   0  [w83781d i2c-proc i2c-viapro]

nvidia               1541824  10 

scanner                 9432   0  (unused)

sr_mod                 14232   0  (unused)

sg                     28300   0  (unused)

ide-scsi                9296   0 

scsi_mod               86772   3  [sr_mod sg ide-scsi]

hid                    19396   0  (unused)

mousedev                4276   0  (unused)

input                   3552   0  [hid mousedev]

printer                 7488   0  (unused)

usbcore                62912   1  [uhci ehci-hcd scanner hid printer]

tulip                  42144   1
```

as you see, the scanner gets found by sane. but maybe this setup differs to much from yours. i don't know...

cheers

SteveB

----------

## RangerDude

Thanks alot streve! Great with all the configs!

But I'm kinda stuck when sane-find-scanner dont see anything at /dev/usbscanner.

How do I fix that, so I can procede to next step?

I find it really amazing how difficult it is to get a USB scanner to work? Why is it so? Is it sane making bad software or just detecting scanners being VERY complex?

----------

## steveb

 *RangerDude wrote:*   

> Thanks alot streve! Great with all the configs!
> 
> But I'm kinda stuck when sane-find-scanner dont see anything at /dev/usbscanner.
> 
> How do I fix that, so I can procede to next step?
> ...

 

if you don't have /dev/usbscanner, then you don't have usb support and usb scanner support activated as module or directly in the kernel!

i unloaded almost everything (except the network card) to show you the effect:

```
# lsmod

Module                  Size  Used by    Tainted: PF 

tulip                  42144   1 

# ls -lah /dev/us*

lr-xr-xr-x    1 root     root           12 Apr 29 04:12 /dev/usbscanner -> usb/scanner0
```

the only module loaded is tulip and /dev/usbscanner is a symlink to /dev/usb/scanner0, but /dev/usb is not available any more!

okay... now i start the usb stuff (by hand):

```
# for i in usbcore uhci ehci-hcd scanner;do modprobe $i;done

# lsmod

Module                  Size  Used by    Tainted: PF 

scanner                 9432   0  (unused)

ehci-hcd               14952   0  (unused)

uhci                   25712   0  (unused)

usbcore                62912   0  [scanner ehci-hcd uhci]

tulip                  42144   1

# ls -lah /dev/usb*

lr-xr-xr-x    1 root     root           12 Apr 29 04:12 /dev/usbscanner -> usb/scanner0

/dev/usb:

total 0

drwxr-xr-x    1 root     root            0 Jan  1  1970 .

drwxr-xr-x    1 root     root            0 Jan  1  1970 ..

crw-------    1 root     root     180,  48 Jan  1  1970 scanner0
```

as you can see, after loading uhci and ehci-hcd (wich can be different for your motherboard or usb implementation) and after loading scanner, i have again back my /dev/usb and /dev/usb/scanner0 device!

and that is exactly what you have to do as well!

or if you want, then use hotplug (as mentioned bevore in one of my messages) to load the pci and usb modules:

```
# lsmod && /etc/init.d/hotplug restart && lsmod && ls -lah /dev/usb*

Module                  Size  Used by    Tainted: PF 

tulip                  42144   1 

 * Starting USB and PCI hotplugging...                                                                           [ ok ]

Module                  Size  Used by    Tainted: PF 

scanner                 9432   0  (unused)

bcm4400                27744   1 

uhci                   25712   0  (unused)

ehci-hcd               14952   0  (unused)

usbcore                62912   1  [scanner uhci ehci-hcd]

snd-via82xx             8972   0  (unused)

snd-pcm                60992   0  [snd-via82xx]

snd-timer              11144   0  [snd-pcm]

snd-ac97-codec         30436   0  [snd-via82xx]

snd-mpu401-uart         3168   0  [snd-via82xx]

snd-rawmidi            13920   0  [snd-mpu401-uart]

snd-seq-device          4284   0  [snd-rawmidi]

snd                    28044   0  [snd-via82xx snd-pcm snd-timer snd-ac97-codec snd-mpu401-uart snd-rawmidi snd-seq-device]

soundcore               3876   0  [snd]

tulip                  42144   1 

lr-xr-xr-x    1 root     root           12 Apr 29 04:12 /dev/usbscanner -> usb/scanner0

/dev/usb:

total 0

drwxr-xr-x    1 root     root            0 Jan  1  1970 .

drwxr-xr-x    1 root     root            0 Jan  1  1970 ..

crw-------    1 root     root     180,  48 Jan  1  1970 scanner0
```

i hope this helps you to get /dev/usb. if not let me know.

cheers

SteveB

----------

## aardvark

your scanner should work just fine with libusb. The question is wether it is at all supported by sane

Read up on it on www.mostang.com/sane. 

I just did and find no mention of your scanner there so I guess you have become victim of "my hardware vendor is not providing linux drivers"- syndrome and/or also the "my hardware vendor is not disclosing enough info for the OS community to easily make a driver"-virus

In any case, once you know that your scanner is supported you need to check and possibly modify the appropriate file in /etc/sane.d/ Furthermore there is a chance you will need a usb firmware file for your scanner which can be copied from your (possible) windows partition. Check google on where the file is located. My file for a medion scanner was called eplus2k.usb. so searchin for *.usb may give you the file if needed. Ok that firmware file must be placed somewhere and referred to in the appropriate config file in /etc/sane.d

Good luck

Oh, you might really need hotplug or you might have big problems getting normal non-root users to access the scanner.

----------

## Beekster

I haven't got my scanner working with any 2.4.x kernel, and haven't spent much time trying.  I did get it working with 2.5 (66, 67, 6 :Cool: , just by compiling in the relevant modules.  I have a Canon LiDE 20.  Good luck!

----------

## steveb

ohhh... i just found the SANE-umax homepage.

have a look there... maybe it helps.

cheers

SteveB

----------

## aardvark

What I read there:

 *Quote:*   

> 
> 
> The sane-umax library implements a SANE backend that provides access to several UMAX-SCSI-scanners. Parallel- and USB- scanners are not supported! 

 

----------

## RangerDude

Great steve- we may have narrowed down the problem..

No matter if my scanner is supported by sane or not- the /dev/usb/scanner0 should be there.

I use the following 2.4.20 kernel config

```

<M> Support for USB 

-----

[*]   Preliminary USB device filesystem

--- USB Host Controller Drivers

<M>   EHCI HCD (USB 2.0) support (EXPERIMENTAL)

<M>   UHCI (Intel PIIX4, VIA, ...) support

<M>   UHCI Alternate Driver (JE) support

<M>   OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...) support

--- USB Device Class drivers    

<M>   USB Mass Storage support

--- USB Human Interface Devices (HID)

<M>   USB Human Interface Device (full HID) support

[*]     HID input layer support

--- USB Imaging devices

<M>   USB Scanner support

```

All modules are unloaded (network and sound are compiled into kernel)

```

# modprobe usbcore

# modprobe uhci

# modprobe ehci-hcd

/lib/modules/2.4.20/kernel/drivers/usb/hcd/ehci-hcd.o: init_module: No such device

Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters.

      You may find more information in syslog or the output from dmesg

/lib/modules/2.4.20/kernel/drivers/usb/hcd/ehci-hcd.o: insmod /lib/modules/2.4.20/kernel/drivers/usb/hcd/ehci-hcd.o failed

/lib/modules/2.4.20/kernel/drivers/usb/hcd/ehci-hcd.o: insmod ehci-hcd failed

# modprobe usb-ohci

/lib/modules/2.4.20/kernel/drivers/usb/usb-ohci.o: init_module: No such device

Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters.

      You may find more information in syslog or the output from dmesg

/lib/modules/2.4.20/kernel/drivers/usb/usb-ohci.o: insmod /lib/modules/2.4.20/kernel/drivers/usb/usb-ohci.o failed

/lib/modules/2.4.20/kernel/drivers/usb/usb-ohci.o: insmod usb-ohci failed

# lsmod

Module                  Size  Used by    Not tainted

uhci                   26992   0  (unused)

usbcore                65504   1  [uhci]

# ls -lah /dev/us*

lr-xr-xr-x    1 root     root           10 Apr 30 11:51 /dev/usbmouse -> input/mice

/dev/usb:

total 0

drwxr-xr-x    1 root     root            0 Jan  1  1970 .

drwxr-xr-x    1 root     root            0 Jan  1  1970 ..

# cat /proc/bus/usb/devices 

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 2

B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0

D:  Ver= 1.00 Cls=09(hub  ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1

P:  Vendor=0000 ProdID=0000 Rev= 0.00

S:  Product=USB UHCI-alt Root Hub

S:  SerialNumber=1200

C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr=  0mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   8 Ivl=255ms

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

D:  Ver= 1.10 Cls=ff(vend.) Sub=ff Prot=ff MxPS= 8 #Cfgs=  1

P:  Vendor=1606 ProdID=0050 Rev= 1.00

S:  Product=USB SCANNER

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

I:  If#= 0 Alt= 0 #EPs= 4 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)

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

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

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

E:  Ad=84(I) Atr=02(Bulk) MxPS=   1 Ivl=0ms

```

Is there anything wrong with my laptop or am I doing something wrong?

When I (hot)plug in my USB mouse it works just fine.

----------

## RangerDude

PS.

I also tried

```

#modprobe scanner

#

```

to no good..

----------

## steveb

 *RangerDude wrote:*   

> PS.
> 
> I also tried
> 
> ```
> ...

 

try

```
modprobe scanner vendor=0x1606 product=0x0050
```

and let me know if you see now the scanner in the /dev/usb directory.

cheers

SteveB

----------

## RangerDude

usbcore is loaded at boot because my scanner is detected.

```

# modprobe uhci

# modprobe scanner vendor=0x1606 product=0x0050

# lsmod

Module                  Size  Used by    Not tainted

scanner                 9468   0  (unused)

uhci                   26992   0  (unused)

usbcore                65504   1  [scanner uhci]

# ls -lh /dev/us*

lr-xr-xr-x    1 root     root           10 Apr 30 19:01 /dev/usbmouse -> input/mice

/dev/usb:

total 0

# cat /proc/bus/usb/devices 

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 2

B:  Alloc=  0/900 us ( 0%), #Int=  0, #Iso=  0

D:  Ver= 1.00 Cls=09(hub  ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1

P:  Vendor=0000 ProdID=0000 Rev= 0.00

S:  Product=USB UHCI-alt Root Hub

S:  SerialNumber=1200

C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr=  0mA

I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

E:  Ad=81(I) Atr=03(Int.) MxPS=   8 Ivl=255ms

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

D:  Ver= 1.10 Cls=ff(vend.) Sub=ff Prot=ff MxPS= 8 #Cfgs=  1

P:  Vendor=1606 ProdID=0050 Rev= 1.00

S:  Product=USB SCANNER

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

I:  If#= 0 Alt= 0 #EPs= 4 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)

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

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

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

E:  Ad=84(I) Atr=02(Bulk) MxPS=   1 Ivl=0ms

```

In devfsd.conf I have added my self (was it necessary?)

```

#Added for scanner support - for no awail

REGISTER   ^usb/scanner0$   CFUNCTION GLOBAL mksymlink usb/scanner0 usbscanner0

UNREGISTER   ^usb/scanner0$   CFUNCTION GLOBAL unlink usbscanner0

```

Could it be that the kernel doesn't detect the device as a scanner? But then again, why does sane-find-scanner report it under libusb?

This is driving me nuts.   :Rolling Eyes: 

----------

## steveb

okay... let's try something.

can you do:

```
emerge sys-apps/hotplug

rc-update add hotplug default

/etc/init.d/hotplug start
```

then go and edit /etc/hotplug/usb.usermap and add:

```
scanner              0x0003 0x1606   0x0050    0x0000       0x0000       0x00         0x00            0x00
```

then restart the hotplug deamon:

```
/etc/init.d/hotplug restart
```

after that, check if you get your scanner recognized.

cheers

SteveB

----------

## RangerDude

It's still the same.   :Evil or Very Mad: 

I'm installing gentoo on my stationary PC as this moment- I will try the scanner on it when it's done and report back. It would really be a shame if there's something wrong with my notebook.

----------

## RangerDude

Sorry about the late response, better late than never. icon_rolleyes.gif

Anyway, I have good and bad news.

The bad news is that I have the same problem with my stationary PC when trying the scanner on it.

So the good news is.... there's nothing wrong with my notebook. icon_biggrin.gif

I consider the scanner un supported by... the kernel? (lack of /dev/usbscanner) and the problem unsolvable.

I really appreciated all the help I got. I'm sorry I wasn't able to fix it. Have a nice day ppl.

----------

## Tarball

Hi,

I have a Umax Astra 2200 USB scanner and I think I have a similar problem to you where sane states it cannot open my scanner even though the driver has loaded ok and sane-find-scanner -v finds the scanner fine.  I can get my scanner to work but only with sane-backends-1.0.8.  Version 1.0.9 of the backends breaks it, I have not tried with the unstable stuff though.  Unfortunately, I can't find the statement which says why 1.0.9 breaks but I would try going back to the 1.0.8 drivers before you give up!

----------

## flindt

Just to point out  a pattern here:

I have the exact same problem, and have tried multiple suggestions around this forum but no luck   :Crying or Very sad:   However, there are many posts about this that end with no solution, and either peoble just give up, or they dont come back to tell how they fixed it... (maybe its so easy they are embarassed  :Wink:  )

----------

## flindt

Ok, my problem was solved with version 1.0.15 of sane-backends.   :Smile: 

6 hours of trouble shooting, just because I had not sync'ed for a week...   :Crying or Very sad: 

----------

