# Installing USB Scanner - HOWTO

## Joseph_sys

Due to lack of decent installation instructions, I decided to write a short but complete how-to on installing USB scanner in Gentoo for kernel 2.6.4 and higher. There is already a lot of information around but none of them is complete and in some cases not applicable to kernel 2.6.4 and higher.

To install USB Scanner in Gentoo (kernel 2.6.4 & higher) follow the steps below:

Note that all of these information is based on assumption that SANE supports your scanner.  You will find a list of SANE supported scanners at:

http://www.sane-project.org/sane-supported-devices.html

1.) Before emerging any packages make sure you have "USE=usb" variable in your /etc/make.config; if not add "usb" variable using your favorable editor.

The packages we will need are:

libusb

sane-backends

hotplug

Check if you have any of them intalled:

```
# emerge -s libusb sane-backends hotplug
```

2.) Make sure you have USB support in your kernel:

(the option you select will depend on your motherboard shipset, select "OHCI HCD" or "UHCI HCD") check your manual or select both options and see which one your motherboad will recognize (might not be the professional way of doing it but it will work if you have no manual or not sure which chipset you have).

In my case above I've VT82xxxxx motherboard with UHCI support so I selected the kernel below: "UHCI HCD"

```
# cd /usr/src/linux

# make menuconfig

Device Drivers  --->

    USB support  --->

        <*>   EHCI HCD (USB 2.0) support

   < >   OHCI HCD support 

        <*>   UHCI HCD (most Intel and VIA) support 
```

Save and compile the kernel if you made any changes, upload and reboot.

NOTE: I compiled the options into kernel though you can compile it as Modules <M>

Connect your scanner to USB port when you issue a command:

```
# cat /proc/bus/usb/devices
```

  (you should see similar output).

T:  Bus=02 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.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1

P:  Vendor=0000 ProdID=0000 Rev= 2.06

S:  Manufacturer=Linux 2.6.7-gentoo-r11 uhci_hcd

S:  Product=VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (#2)

S:  SerialNumber=0000:00:11.3

C:* #Ifs= 1 Cfg#= 1 Atr=c0 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=   2 Ivl=255ms

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

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

P:  Vendor=04b8 ProdID=011b Rev= 1.00

S:  Manufacturer=EPSON

S:  Product=EPSON Scanner

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

I:  If#= 0 Alt= 0 #EPs= 2 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

(you might or might not have a USB 2 support, it depends on your motherboard). Though at this point you should notice on "P" section (of the EPSON Scanner) the output:  Vendor=04b8 ProdID=011b (you might have different values depending on your scanner model). Write it down as you will use this output in some configuration files later on.

3.) Next, you will emerge libusb, sane-backends and hotplug

```
# emerge libusb
```

4.)

```
# emerge sane-backends
```

If you have sane-backends installed, check as it is important that sane-backends is compiled with usb support.

Quick check: was sane-backends compiled with the usb USE flag? etcat should have "+ + besides usb" like:

Code:

```
# etcat -u sane-backends

[ Colour Code : set unset ]

[ Legend   : (U) Col 1 - Current USE flags        ]

[          : (I) Col 2 - Installed With USE flags ]

 U I [ Found these USE variables in : media-gfx/sane-backends-1.0.14-r3 ]

 + + usb     : Adds USB support to applications that have optional USB support (e.g. cups)

 + + gphoto2 : Adds digital camera support
```

If not re-emerge sane-backend with USE="usb" in your make.conf file.

5.)

```
# emerge hotplug
```

Edit /etc/hotplug/usb.usermap

```
# nano -w /etc/hotplug/usb.usermap
```

This section is straight copy from: http://khk.net/sane/libusb.html where you will find more information.

 *Quote:*   

> -------- copy ------------
> 
> You have to add one or more lines (for one or more scanners) to the file /etc/hotplug/usb.usermap. Every line in this file is for one device, the line starts with a name that will also be used for a handler script. We are trying to get an EPSON scanner working, so let's call the entry "epson_scanner". The next entry is always 0x0003, and I don't know - and don't care - what it stands for, so let's just keep it set to 0x0003. The following two entries are the vendor ID (0x4b8 for EPSON) and the product ID (e.g. 0x11c for the Perfection 3200). The remaining fields are all set to 0, so let's just add the following after the product ID: 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000
> 
> You can make this a lot simpler by just copying an existing line and replacing the script name and the two IDs. The line for the Perfection 3200 should look like this (the whole string should be on one line, I split it up so that it does not make this page unreasonable wide):
> ...

 

IMPORTANT: make this script executable

```
# chmod 755 /etc/hotplug/usb/epson_scanner
```

Next, edit /etc/fstab and add entry

```
# Scanner

none   /proc/bus/usb   usbfs           defaults,devmode=0666   0 0
```

6.) Edit /etc/sane.d/epson.conf and comment out the entry "scsi EPSON" by default this entry is uncommented; add the following line:

```
usb 0x4b8 0x011b 
```

  #make sure these numbers match your scanner manufacture and ID you wrote earlier

```
# rc-update add hotplug default

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

Plug-in back your scanner to USB port.

If you type sane-find-scanner you should see:

```
# sane-find-scanner
```

 *Quote:*   

>  # No SCSI scanners found. If you expected something different, make sure that
> 
>   # you have loaded a SCSI driver for your SCSI adapter.
> 
> found USB scanner (vendor=0x04b8 [EPSON], product=0x011b [EPSON Scanner]) at libusb:001:003
> ...

 

7.) One last importand change, when you emerge xsane the program will add group scanner to your /etc/group file.  At the end of the file you will find (your number might be different - DO Not change this number):

scanner:x:408:

add to the end root and yourself (or any other users that will have access to the scanner):

scanner:x:408:root,joseph

Exit and login your session for group to take effect.

Now in console as user type:

In console type groups

$ groups 

tty wheel uucp audio games users scanner

Make sure you see "scanner" word above.

```
$ xsane
```

Now, you should have a working scanner, scan anything to your heart's content. enjoy  :Smile: 

If you find that I missed anything or your scanner requires an additional configuration post your message here with additional instructions.

Final ERROR NOTES:

Sometimes when you restart your hotplug you will get an error:

Starting usb hotplugging...

chown: cannot access `/proc/bus/usb/001/005': No such file or directory

chmod: cannot access `/proc/bus/usb/001/005': No such file or directory

See this thread:

https://forums.gentoo.org/viewtopic.php?t=172556

and bug report:

https://bugs.gentoo.org/show_bug.cgi?id=50934

If you have a solutions share it with us, I was not able to resolve this bug.

----------

## gcostanz

Awesome, awesome, awesome!

I can't thank you enough.  I have not been able to scan as a user (non-root) since I upgaded my kernel.  This worked great the first time.

Thanks!

----------

## eWoud

sane-backend provides its own libusbcanner in /etc/hotplug/usb, so there's no need to make your own

just add 'libusbscanner' to /etc/hotplug/usb.usermap

(you don't have to find out those weird numbers, everything is handled by the libusbscanner script)

Also editing /etc/fstab and /etc/sane.d/<vendor>.conf shouldn't be necessary  :Smile: 

so here's my howto:

put all the necessary usb stuff in your kernel (or let genkernel do it for you)

```
USE="usb" emerge sane-backends hotplug

rc-update add hotplug default
```

add 'libusbscanner' as a new line in /etc/hotplug/usb.usermap

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

don't forget to add your user to the scanner group

done  :Smile: 

now, you need a frontend, like xsane:

```
emerge xsane
```

testing:

```
xsane
```

----------

## anj

I've spent eons trying to find why my scanner was not seen by sane-find-scanner.

This howto was the first really helfull !!!

It works !!!

I did not have "usb" in my USE parameters !

Thank you so much.  :Idea: 

----------

## j_c_p

 *Quote:*   

> Final ERROR NOTES:
> 
> Sometimes when you restart your hotplug you will get an error:
> 
> Starting usb hotplugging...
> ...

 

To solve that, you can put into /etc/conf.d/local.start :

 *Quote:*   

> chmod 0666 /proc/bus/usb/001/*

 

it's not beautiful but it works   :Very Happy: .

----------

## alarmcall

First off: To "Joseph-sys" thanks a lot for this How-To - at last a fully working system!

Just thought I'd share this problem I had (and solution   :Wink:  ) with you all.

I have an Epson Perfection 1250, which after completing all the steps above results in xsane taking a very long time to start, whilst "searching for devices". When I tried to aquire preview it returns an error "Device Busy" and it will not scan at all  :Sad: 

Now issuing "sane-find-scanner" results in the following:

```

$ sane-find-scanner

found USB scanner (vendor=0x04b8 [EPSON], product=0x010f [EPSON Scanner 010F], chip=LM9832/3) at libusb:002:002

```

However, typing "scanimage -L" at the CMD is much more revealling:

```

$ scanimage -L

device `plustek:libusb:002:002' is a Epson Perfection 1250/Photo USB flatbed scanner

```

Hmmm, plustek....Apparently the Epson uses the same chipset (National Semiconductor LM9832) as Plustek, see the link below for more details:

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

So, in order to get the scanner working properly, the solution is not bother with point 6 in the How-To:

```

6) Edit /etc/sane.d/epson.conf and comment out the entry "scsi EPSON" by default this entry is uncommented; add the following line:

usb 0x4b8 0x011b

```

Simply comment out the line containing the word "epson" from the dll.conf file:

```

nano -w /etc/sane.d/dll.conf

...

dmc

#epson

fujitsu

...

```

Bingo! a working scanner and xSane front-end   :Very Happy: 

----------

## _AbYsS_

 *j_c_p wrote:*   

>  *Quote:*   Final ERROR NOTES:
> 
> Sometimes when you restart your hotplug you will get an error:
> 
> Starting usb hotplugging...
> ...

 

I doubt this solves the pb, because /etc/conf.d/local.start is run after hotplug so ... but I will try nevertheless

And thanks joseph for your how-to it's great  :Wink: 

----------

## totopo

Hello I have a HP OfficeJet v40, I followed the instructions but never detected the scanner, it worked when I emerged xsane and uncommented hpoj in the file:

/etc/sane.d/dll.conf   

hope it works if someone is facing problems.

Regards

Marco

----------

## hadoque

I've been trying to install my USB scanner from canon, which actually wen't great until I restarted my machine. I've followed the steps in this thread and the scanner works like it should.

When I restart I'm getting two errors messages. The first one is:

```

mount: mount point /proc/bus/usb does not exist
```

But when the system is started the mount point is mounted, and if I remount it there is no error.

The second error is:

```

/etc/hotplug/usb.agent: line 259: 04a9: Value too great for base (error token is "04a9")
```

When the sysetm is started xsane cannot find the scanner, but if i restart hotplug everything works perfectly. Does anyone have any suggestions on how to fix this?

----------

## kmarasco

Follow eWoud's instructions. You don't need to mess with much of the stuff in the initial how to.

Still, you may run into a situation where you cannot access the scanner except as root, unless you unplug and replug in the scanner after booting.

This is probably because you have not emerged "coldplug." Not too long ago hotplug was split into to progs, hotplug and coldplug. Coldplug handles devices on boot. So,

```
emerge coldplug

rc-update add coldplug boot
```

Then be sure to get rid of the stuff in fstab if you added something there, and reboot. FYI, I'm using udev to manage my devices.

----------

## xanderhsia

Followed it and had success on first try. Kudos to the author.

But (there is always one isn't there?), I am getting an error everytime I try to save an image that xsane captures. As soon as it saves it, xsane exits with an error as follows

```

*** glibc detected *** double free or corruption (!prev): 0x082fa880 ***

```

Anybody have a clue as to what this is? Or should I start another thread for this.

Thanks all.

----------

## markandrew

what to do if you don't use sane? i use vuescan with libusb, and can only access my scanner with root. i don't have anything sane-related installed; the devmode edit for fstab seems to do nothing. any ideas?

----------

## nephros

 *xanderhsia wrote:*   

> 
> 
> ```
> 
> *** glibc detected *** double free or corruption (!prev): 0x082fa880 ***
> ...

 

lookie here:

https://forums.gentoo.org/viewtopic.php?p=1871330

I'd guess sane is calling ImageMagicks "display" tool to show images and hits the same error.

----------

## NightDragon

If the same Problem like above...

CanoScan 5000F

Found by sane-find-scanner

but not by the scanimage -L command.

I know the Scanner isn't supported on sane at the moment... ... but maybe has someone good infos?

Greets,

Nighty

----------

## lazarusrat

I was having the same problem with vanilla 2.6.9 and 2.69.-cksomething, where the libusbscanner script and scanimage -L had different values (001/003 vs. 002/003). Attempting to fix another problem, I recompiled the kernel with UHCI, EHCI, and agpgart as modules (they were compiled in) and added pci=routeirq to the boot arguments. It works now. The libusbscanner script and sane-find-scanner and scanimage -L all show it as 001/003.

Not sure which of those changes did the trick.

----------

## evan18h

thanks so much eWoud, Joseph_sys and alarmcall... I have been trying to get my Epson Perfection 1250 to work for a few days now... I tried everything and couldn't figure out why it wouldn't work! But now It works and I a very happy   :Very Happy:  ... really, i can't belive it was something this simpleLast edited by evan18h on Fri Jan 07, 2005 3:45 am; edited 1 time in total

----------

## Tamerz

Not quite sure what isn't working here.  I followed the steps above and the scanner is being detected but xsane says no devices found.  It does however detect my TV tuner as a device when I load the module for it.

```
# scanimage -L

device `v4l:/dev/video0' is a Noname BT878 video (Leadtek WinFast 20 virtual device

device `artec_eplus48u:libusb:002:005' is a Memorex MEM 48U USB flatbed scanner
```

----------

## sidkdbl07

I can run xsane as root but not as my user

in /etc/group

 *Quote:*   

> 
> 
> ...
> 
> scanner:x:407:sid
> ...

 

----------

## MrBrightside

I followed this instruction guide and I still can't get my HP Scanjet 5400C to work. The scanner is detected by sane-find-scanner and I edited all of the config files, but scanimage doesn't find my scanner. I'm not sure what's wrong with it. Anyone have any ideas?

----------

## Tamerz

 *MrBrightside wrote:*   

> I followed this instruction guide and I still can't get my HP Scanjet 5400C to work. The scanner is detected by sane-find-scanner and I edited all of the config files, but scanimage doesn't find my scanner. I'm not sure what's wrong with it. Anyone have any ideas?

 

Sounds like the same problem I have above.  What does scanimage -L give you?

----------

## MrBrightside

Scanimage -L gives me:

```

No scanners were identified. If you were expecting something different, check that the scanner is plugged in, turned on and detected by the sane-find-scanner tool (if appropriate). Please read the documentation which came with this software (README, FAQ, manpages).

```

----------

## Tamerz

Hmm... not the same then.  Sorry I can't help.  I can't even get mine working even though it is detected by scanimage.

----------

## Gentree

how about some version into here. "my scanner does not work" approach is a bit vague.

version no.s for sane sane-backends libusb udev may help narrow it down.

Like all of you I have issues that seem to come and go every few months, you debug it, it works fine then it gets blown away and you start again.

version numbers gentlemen.

emerge -p  sane sane-backends libusb udev glibc

(any others you think may be relevant)

 :Cool: 

----------

## dr_rockstar66

WORKS LIKE A CHARM, THANKS A TON!!!!!!

EPSON 1200U

----------

## WL(inux)

 *sidkdbl07 wrote:*   

> I can run xsane as root but not as my user
> 
> in /etc/group
> 
>  *Quote:*   
> ...

 

I have more or less the same problem ...

I can RUN and SCAN as root

but as a normal User i cannot scan ... i think it is only a Permission Problem ... i tried to influence the rights manually but i doesnt work either  :Sad: 

Somebody can scan as normal user ? please send me a Private message or answer here please !!!

----------

## sidkdbl07

I had to add myself to the usb group as well  :Very Happy: 

 *Quote:*   

> 
> 
> ...
> 
> usb:x:85:sid 
> ...

 

Hope that helps

----------

## shazow

Could anyone recommend a scanner for a casual artist and linux user?

My current one died (ie. it scans green lines exclusively... it was pretty cheap when I bought it... 5 years ago).

I don't need anything super-professional. Preferably decent resolution, USB capable, not too slow, works on linux, and not too expensive (<$150).

Any suggestions?

- shazow

----------

## sn_invader

i am using scanjet 2300c i tried the following instruction that was posted on this ite everything worked except for the xsane part

i checked the supoorted driver by sane but my scanner is not listed at all not even on the not supported list so what should i do to use this scanner

----------

## V()

I am having trouble to set up my Epson Perfection 640U[SB] scanner under Gentoo 2005.0. The system runs on an AMD64 machine.

First I emerged libusb, then sane-backends and finally xsane. I paid attention that the usb USE-flag was included. I also applied all necessary and seemingly unnecessary changes to the files /etc/hotplug/usb.usermap, /etc/sane.d/dll.conf (i. e. commenting out all other devices) and /etc/sane.d/epson.conf.

"cat /proc/bus/usb/devices" lists the scanner:

[...]

P:  Vendor=04b8 ProdID=010c Rev= 0.01

S:  Manufacturer=EPSON

S:  Product=Perfection640

[...]

But "sane-find-scanner -v" displays the following message:

[...]

libusb not available

[...]

"ls /usr/lib64/libusb*" lists the following files:

/usr/lib64/libusb                     /usr/lib64/libusb.a    /usr/lib64/libusb.so.0

/usr/lib64/libusb-0.1.4          /usr/lib64/libusb.la  /usr/lib64/libusb.so.0.0.0

/usr/lib64/libusb-0.1.4.4.0  /usr/lib64/libusb.so

"libusb-config --version" displays the following version number:

0.1.8

The scanner is not out of order. It worked fine on a Windows notebook a friend of mine has. I know I will burn in hell for trying that but I had to make sure there is no hardware problem.

Solved (see post by lbrtuk below)

----------

## Jeffrey0

 *sn_invader wrote:*   

> i am using scanjet 2300c i tried the following instruction that was posted on this ite everything worked except for the xsane part
> 
> i checked the supoorted driver by sane but my scanner is not listed at all not even on the not supported list so what should i do to use this scanner

 They're working on a backend for it (genesys). There's some code in CVS, but installing it is hard and it doesn't actually work yet.

I've been able to get it to do something, but it crashed before producing useful output.

----------

## Gentoo-Ed

hey all. My installation comes to an wondering halt after sane-find-scanner for it doesn't display anything so I can't start xsane, it says no device found. I have a thread on this https://forums.gentoo.org/viewtopic-t-334553-highlight-.html with everything what I did. Maybe someone can look at it too?

[edit]

Sigh...

Did some more stuff and tried other ports. Still not working. My command "sane-find-scanner -v" gives when checking USB scanners:

checking /dev/usb... failed to open (invalid argument)

libusb not available

Maybe that's wrong??

[edit]

SOLVED my problem, see my threadLast edited by Gentoo-Ed on Thu May 12, 2005 2:39 pm; edited 1 time in total

----------

## lbrtuk

I'm having the same problem as V() and Gentoo-Ed.

sane-backends does not seem to be picking up libusb at compile time no matter what my use flags are.

Edit: I managed to 'solve' this by unmerging usbutils and then remerging libusb. Then emerging sane-backends of course.

----------

## polle

I have the same problems as a few others here: the scanner works fine for root, but not for normal user

It used to work, but as I don't use the scanner often it is impossible for me to tell when it broke for users

user is member of the group scanner and of the group usb

----------

## V()

 *lbrtuk wrote:*   

> I managed to 'solve' this by unmerging usbutils and then remerging libusb. Then emerging sane-backends of course.

 

This worked for me, too. How did you come across that solution ?

----------

## lbrtuk

 *V() wrote:*   

> This worked for me, too. How did you come across that solution ?

 

https://forums.gentoo.org/viewtopic-t-322237-highlight-.html

Ironically it came from someone I was trying to help get his scanner working. Came in useful a few weeks later for myself.

----------

## perrito666

i had the same problem with permissions using libusb on scanning but i solved adding the line coresponding to mi scanner in  /etc/hotplug/usb/libsane.usermap it's, i guess, the bes way, notoriously not all the scanners mentioned in /etc/sane.d/ are in this file so you may have to add yours

----------

## eldados

thanks for the Howto, my canoscam N670U is working!  :Smile: 

----------

## crys0000

When I run sane-find-scanner I get:

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

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

found USB scanner (vendor=0x046d, product=0x08f6 [Camera]) at libusb:002:002

found USB scanner (vendor=0x04b8 [EPSON], product=0x0813 [USB2.0 MFP(Hi-Speed)]) at libusb:001:002

  # Your USB scanner was (probably) detected. It may or may not be supported by

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

  # Not checking for parallel port scanners.

  # Most Scanners connected to the parallel port or other proprietary ports

  # can't be detected by this program.

```

Then: 

```
# scanimage -L

device `v4l:/dev/video0' is a Noname Logitech QuickCam USB virtual device
```

Sane sees my webcam as a scanner...  :Shocked:   If I unplug my webcam scanimage -L gives me:

```
No scanners were identified. If you were expecting something different,

check that the scanner is plugged in, turned on and detected by the

sane-find-scanner tool (if appropriate). Please read the documentation

which came with this software (README, FAQ, manpages).
```

Why this? My scanner is identified by sane-find-scanner but not by scanimage -L. It is an Epson CX6600 and it is supported by sane.

Thanks.

----------

## S3tH

 *Quote:*   

> Sane sees my webcam as a scanner...  If I unplug my webcam scanimage -L gives me:
> 
> Code:
> 
> No scanners were identified. If you were expecting something different,
> ...

 

I'm not sure what to tell you about sane seeing your printer as a camera, but with the epson all-in-ones you have to be careful about some conflicting modules.  If you have these kernel options as modules, try removing them before using scanimage -L.

```
rmmod usblp usb_storage
```

I've heard tell that using the newest unstable sane-backends will get rid of this error, but I havn't tried it.  As of right now with many of the CX line, the usblp and usb_storage modules mess sane up.  You will have to remove them while scanning, then add them again when you are done.  Hope this helps.

Seth

----------

## j4ck455

I'm considering buying either an HP ScanJet or a Canon Canoscan flatbed USB2 scanner [my options are a bit limited to what retailers have available to buy - at least where I am].

After some googling I found this.

Has anyone managed to get any of these scanners to work in Gentoo? [I'm using 2006.0 amd64]:CanoScan 4200F Scanner - 3200x6400 dpi, 48-bit

Canoscan 8400F Scanner - 3200x6400 dpi, 48-bit

CanoScan LiDE 25 Scanner - 1200x2400 dpi, 48-bit

CanoScan LiDE 60 Scanner - 1200x2400 dpi, 48-bit

HP Scanjet 3770 Digital Flatbed Scanner - 1200x2400 dpi, 48-bit

HP ScanJet 3800 Scanner - 2400x4800 dpi, 48-bit

HP ScanJet 4370 Scanner - 3600x7200 dpi, 48-bit

HP ScanJet 4890 Photo Scanner - 4800x9600 dpi, 48-bit

----------

## yfh2

I used to have my Canoscan Lide 60 working with my previous Gentoo box

However, I moved to amd64, and I'm having the very same trouble now :

```

fanless eb # 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.

found USB scanner (vendor=0x04a9 [Canon], product=0x221c [CanoScan], chip=GL841) at libusb:001:004

  # Your USB scanner was (probably) detected. It may or may not be supported by

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

fanless eb # scanimage -L

device `v4l:/dev/video1' is a Noname BT878 video (AVerMedia AVerTV D virtual device

device `v4l:/dev/video0' is a Noname BT878 video (AVerMedia AVerTV D virtual device

```

Obviously, the /dev/sg# device is not created by udev, no idea why, though the usb connection is made :

```

fanless eb # dmesg

...

usb 1-10: new high speed USB device using ehci_hcd and address 4

usb 1-10: configuration #1 chosen from 1 choice

fanless eb # lsusb

Bus 002 Device 001: ID 0000:0000

Bus 001 Device 004: ID 04a9:221c Canon, Inc.

Bus 001 Device 002: ID 058f:6362 Alcor Micro Corp.

Bus 001 Device 001: ID 0000:0000

```

any idea ?

----------

## nationdemon

Iam having trouble with my HP ScanJet 4400c... At first I used the german howto, then I've tried the english one and after that I read nearly all scanner related threads in here. 

Long story short

```

nationdemon@kronenburg ~ $ sudo emerge sane-backends libusb -pv

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild   R   ] media-gfx/sane-backends-1.0.18-r2  USE="gphoto2 ipv6 usb v4l" 0 kB

[ebuild   R   ] dev-libs/libusb-0.1.11  USE="doc -debug" 0 kB

Total size of downloads: 0 kB

```

next reports as root

```

kronenburg ~ # lsusb

Bus 002 Device 003: ID 1267:0212 Logic3 / SpectraVideo plc

Bus 001 Device 009: ID 03f0:0705 Hewlett-Packard ScanJet 4400c

Bus 001 Device 007: ID 0409:0059 NEC Corp. HighSpeed Hub

```

```

kronenburg ~ # sane-find-scanner -q

found USB scanner (vendor=0x03f0, product=0x0705) at libusb:001:009

```

```

kronenburg ~ # scanimage -L

No scanners were identified. If you were expecting something different,

check that the scanner is plugged in, turned on and detected by the

sane-find-scanner tool (if appropriate). Please read the documentation

which came with this software (README, FAQ, manpages).

```

nationdemon is in group scanner and usb, ls -l /proc/bus/usb/001/009 told me root:scanner 

```

nationdemon@kronenburg ~ $ cat /proc/bus/usb/devices

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

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

P:  Vendor=03f0 ProdID=0705 Rev= 1.00

S:  Manufacturer=Hewlett-Packard

S:  Product=HP ScanJet 4400c

S:  SerialNumber=CN16M1B13ZB

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

I:  If#= 0 Alt= 0 #EPs= 3 Cls=00(>ifc ) Sub=00 Prot=00 Driver=(none)

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

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

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

```

make.conf SANE_BACKENDS="hp" << seems to do nothing... 

I've tried to set /etc/sane.d/hp.conf to 0x03f0 0x0705 but after that scanimage -L seems to do nothing for a while and breaks with no comment. 

I already know that this is related with the sane_hp_rts88xx.tar.gz. I've found no hint there to copy the files included in this backendpack. I found a thread where someone said he had copied all the files to /var/tmp/portage/backend-xxxxx/work/backend/ and started sane_patch.sh. But the only way I know to get this dir is to interrupt the emergeprocess. But if I do so and copy the files to this dir and start the patch the next emerge fails without an error report (greped for "error" and for "missing").

The readme.html and sane-hp_rts88xx were not very usefull. Maybe someone gots a hint for me. 

Thanks ND

----------

## nationdemon

Hmmm, I stopped emerge sane-backends after source depacking, switched to the directory and copied the files of hp_rts8800.tar.gz in to work/backend. Then I ran patch-sane.sh (recognized it was'nt necessary to copy the files to this location) and the patch had been applied. I started configure, make && make install. Saw that I've to copy the files to the recommended dirs by myself. After all I tried scanimage -L again.

```

kronenburg ~ # export SANE_DEBUG_DLL=128

kronenburg ~ # scanimage -L

[sanei_debug] Setting debug level of dll to 128.

[dll] sane_init: SANE dll backend version 1.0.12 from sane-backends 1.0.18

[dll] sane_init: reading dll.conf

[dll] add_backend: adding backend `hp_rts88xx'

[dll] sane_get_devices

[dll] load: searching backend `hp_rts88xx' in `/usr/lib64/sane'

[dll] load: trying to load `/usr/lib64/sane/libsane-hp_rts88xx.so.1'

[dll] load: dlopen()ing `/usr/lib64/sane/libsane-hp_rts88xx.so.1'

[dll] load: dlopen() failed (/usr/lib64/sane/libsane-hp_rts88xx.so.1: invalid ELF header)

[dll] sane_get_devices: found 0 devices

No scanners were identified. If you were expecting something different,

check that the scanner is plugged in, turned on and detected by the

sane-find-scanner tool (if appropriate). Please read the documentation

which came with this software (README, FAQ, manpages).

[dll] sane_exit: exiting

[dll] sane_exit: finished

```

Humpf ... Any suggestions?

----------

