sslug-teknik team mailing list archive
-
sslug-teknik team
-
Mailing list archive
-
Message #73145
Re: USB-scanner under kerne 2.6.5
Anders Gnistrup wrote:
Mogens Jæger wrote:
dmu2201 wrote:
Anders Gnistrup wrote:
Hej
Jeg har en USB-scanner som jeg meget gerne vil snakke med under
kerne 2.6.5. Så vidt jeg har fundet ud af skal man bruge "libusb"
men hvordan pokker aktiver man det?
Mit problem er at sane-find-scanner ingenting finder men i
/proc/bus/usb/devices finder jeg :
T: Bus=05 Lev=01 Prnt=01 Port=03 Cnt=01 Dev#= 2 Spd=480 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
Generelt er Epson fuldt understøttet af SANE, med få undtagelser,
f.eks. er model 1270 med en snapscan bagende, og fungerer muligvis
med denne.
Prøv at se her:
http://www.sane-project.org/lists/sane-mfgs-cvs.html#Z-EPSON
Den er fuldt understøttet.
Det der er problemet er at få installeret den under Linux Kerne 2.6.5
hvor modulet scanner er fjernet og erstattet af libusb, hotplug og
udev i userspace.
Mit problem er at informationen om installeringen af disse er meget
sparsom og ville derfor hører om der var nogen der havde fået det til
at spille. Det er endnu ikke lykkedes mig.
Hilsen Anders
.
Hej Alle
Jeg har fået løst mit problem og fundet årsagen. Da det vil blive et
generelt problem for alle tror jeg at det vil være en rigtig god ide
lige at skrive lidt ned hvad jeg egentlig kom frem til.
Under kerne 2.6.5 er scanner.o modullet røget helt ud og erstattet af
userspace modulet libusb. (At kalde det et "lib" er egentlig en smule
forkert.) Yderligere er der sket det at devfs understøttelse i kernen er
røget helt ud og erstattet af udev. En beskrivelse af dette kan findes
på http://webpages.charter.net/decibelshelp/LinuxHelp_UDEVPrimer.html
Jeg fik sat kernen op, kompileret og genstartet. Jeg prøvede at finde
min scanner uden resultat. Så måtte jeg til at arbejde lidt med udev.
Stadig intet resultat... Fik læst lidt mere om udev og fandt ud af at
den også skulle bruge "hotplug" som jeg så fik installeret. Herefter
kunne jeg finde min scanner, mus og printer under /sys/bus/usb/devices.
Det var en stor hjælp da jeg her kunne finde information om
SYSFS{vendor} og andre. Men jeg kunne stadig ikke finde min scanner med
sane-find-scanner.
Så jeg gik igang med at understøtte min printer under udev og det blev
til følgene i /etc/udev/udev.rules.
BUS="usb", SYSFS{product}="HL-1450 series", SYMLINK="usblp0"
BUS="usb", SYSFS{product}="USB Trackball", NAME="input/mouse0",
SYMLINK="mouse"
Der er en rigtig god side som beskriver ovenståene på
http://www.reactivated.net/udevrules.php
Det fede er nu at jeg kan tage mit USB-kabel til min printer ud, sætte
den over i en anden port men printeren tilgås stadig igennem /dev/usblp0
(grundet SYMLINK). Rigtig rart at man på den måde kan lave en direkte
binding mellem en fysisk enhed og et symlink char device. Virklig en
forbedring til tidligere (specielt med folk med to USB printere). Det
virkede også fint for min mus.
Jeg prøvede at sætte linien for min scanner ind i /etc/udev/udev.conf
BUS="usb", SYSFS{idVendor}="04b8", SYMLINK="epson2400"
udev,hotplug og min kerne var sat rigtigt op (min printer virkede jo
fint), men jeg kunne stadig ikke finde min scanner.....
Så jeg satte følgene ind i /etc/hotplug/usb.usermap
scanner 0x0003 0x04b8 0x011b 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00
0x00000000
Jeg er i tvivl om det overhovedet har nogen effekt.
Så jeg installerede libusb. Til min store overraskelse blev min scanner
stadig IKKE fundet!!!!
Så jeg måtte til at undersøge lidt om hvordan sane egentlig tilgik
scannerene. Det er korrekt at sane bruge libusb men den bruger også en
backend, nemlig sane-backend.
Jeg fandt filen /etc/sane.d/epson.conf og fik sat følgene ind
usb usblib
usb 0x04b8 0x011b
Det der står er er at sane skal bruge libusb og at devicet er lavet af
epson 0x04b8, og har et produkt id = 0x011b. Det er måske et overkill at
tage det hele med (jeg har læst om folk som uden problemer kunne nå
deres scanner gennem libusb blot ved at skrive "usb" og ikke mere). så
skulle libusb og sane-beckend virke men...
Så jeg prøvede igen med sane-find-scanner. Men med samme resultet STADIG
INGEN SCANNER.
Hvad pokker var der galt? efter at have søgt på nettet, prøvet med trial
and error i to dages tid fandt jeg løsningen. Jeg bruger gentoo som
installition og skulle blot angive USE="usb" i /etc/make.canf (eller at
angive den på kommendo linien) for at få usb support under sane (hvis du
bruger RH osv vil usb support være med). Da det var klaret blev min
scanner fundet under
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.
found USB scanner (vendor=0x04b8, product=0x011b) at libusb:005:002
Jubii :-)
Og få sekunder efter havde jeg scannet mit første billede i gimp.
Det eneste problem jeg har tilbage er at der desværre ikke bliver lavet
en symlink fra /dev/epson2400 til libusb:005:002. Hvis det lukkes nogen
at oprette symlinket vil jeg gerne høre om det. Det har sikkert noget at
gøre med et manglene link mellem libusb og hotplug.
Hilsen Anders
References