[sane-devel] Info about HP scanjet 2300c
Gere Károly
kgere@delfin.unideb.hu
Mon, 17 May 2004 01:01:38 +0200
Hi!
I've just read on http://www.sane-project.org that the scanner HP
ScanJet 2300C is
unsupported. Since I own one, I would like to submit the information I
gathered
(at the end of this mail).
I think it would be great to have a working backend for this scanner,
and since I can write programs in C, I'd like to write a driver (or
participate in the creation of the driver), but I'd need some help -
where and how to begin - because I don't know much about creating drivers .
If someone can send me a few links or some documents concerning the
creation of sane backends, I'd be more than happy.
Bye,
Gere Károly
kgere at delfin dot unideb dot hu
------------------------------------------------------------------
Gathered information:
There are two chips inside the scanner.
The first chip says:
EliteMT 100MHz
M11B416256A -25J
DZC1HC695 0215
The other one says:
26-00122-03B
0220FF29F-09
The result of "sane-find-scanner -v -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=0x03f0, product=0x0901) 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=0x03f0, product=0x0901) 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)
trying libusb:
<device descriptor of 0x0000/0x0000 at 005:001 (USB UHCI Root Hub)>
bLength 18
bDescriptorType 1
bcdUSB 1.00
bDeviceClass 9
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x0000
idProduct 0x0000
bcdDevice 0.00
iManufacturer 0 ()
iProduct 2 (USB UHCI Root Hub)
iSerialNumber 1 (a800)
bNumConfigurations 1
<configuration 0>
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0 ()
bmAttributes 64 (Self-powered)
MaxPower 0 mA
<interface 0>
<altsetting 0>
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 (in 0x01)
bmAttributes 3 (interrupt)
wMaxPacketSize 8
bInterval 255 ms
bRefresh 0
bSynchAddress 0
<device descriptor of 0x0000/0x0000 at 004:001 (USB UHCI Root Hub)>
bLength 18
bDescriptorType 1
bcdUSB 1.00
bDeviceClass 9
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x0000
idProduct 0x0000
bcdDevice 0.00
iManufacturer 0 ()
iProduct 2 (USB UHCI Root Hub)
iSerialNumber 1 (b000)
bNumConfigurations 1
<configuration 0>
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0 ()
bmAttributes 64 (Self-powered)
MaxPower 0 mA
<interface 0>
<altsetting 0>
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 (in 0x01)
bmAttributes 3 (interrupt)
wMaxPacketSize 8
bInterval 255 ms
bRefresh 0
bSynchAddress 0
<device descriptor of 0x03f0/0x0901 at 004:004 (Hewlett-Packard hp scanjet
scanner)>
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 255
bDeviceSubClass 255
bDeviceProtocol 255
bMaxPacketSize0 8
idVendor 0x03F0
idProduct 0x0901
bcdDevice 1.01
iManufacturer 1 (Hewlett-Packard)
iProduct 2 (hp scanjet scanner)
iSerialNumber 12 (CN278S30FN)
bNumConfigurations 1
<configuration 0>
bLength 9
bDescriptorType 2
wTotalLength 39
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0 ()
bmAttributes 192 (Self-powered)
MaxPower 48 mA
<interface 0>
<altsetting 0>
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 255
bInterfaceSubClass 255
bInterfaceProtocol 255
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 (in 0x01)
bmAttributes 2 (bulk)
wMaxPacketSize 64
bInterval 0 ms
bRefresh 0
bSynchAddress 0
<endpoint 1>
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 (out 0x02)
bmAttributes 2 (bulk)
wMaxPacketSize 64
bInterval 0 ms
bRefresh 0
bSynchAddress 0
<endpoint 2>
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 (in 0x03)
bmAttributes 3 (interrupt)
wMaxPacketSize 1
bInterval 8 ms
bRefresh 0
bSynchAddress 0
found USB scanner (vendor=0x03f0 [Hewlett-Packard], product=0x0901 [hp
scanjet
scanner]) at libusb:004:004
<device descriptor of 0x0000/0x0000 at 003:001 (USB UHCI Root Hub)>
bLength 18
bDescriptorType 1
bcdUSB 1.00
bDeviceClass 9
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x0000
idProduct 0x0000
bcdDevice 0.00
iManufacturer 0 ()
iProduct 2 (USB UHCI Root Hub)
iSerialNumber 1 (d000)
bNumConfigurations 1
<configuration 0>
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0 ()
bmAttributes 64 (Self-powered)
MaxPower 0 mA
<interface 0>
<altsetting 0>
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 (in 0x01)
bmAttributes 3 (interrupt)
wMaxPacketSize 8
bInterval 255 ms
bRefresh 0
bSynchAddress 0
<device descriptor of 0x0000/0x0000 at 002:001 (USB UHCI Root Hub)>
bLength 18
bDescriptorType 1
bcdUSB 1.00
bDeviceClass 9
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x0000
idProduct 0x0000
bcdDevice 0.00
iManufacturer 0 ()
iProduct 2 (USB UHCI Root Hub)
iSerialNumber 1 (d400)
bNumConfigurations 1
<configuration 0>
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0 ()
bmAttributes 64 (Self-powered)
MaxPower 0 mA
<interface 0>
<altsetting 0>
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 (in 0x01)
bmAttributes 3 (interrupt)
wMaxPacketSize 8
bInterval 255 ms
bRefresh 0
bSynchAddress 0
<device descriptor of 0x0000/0x0000 at 001:001 (Linux 2.4.21-215-athlon
ehci_hcd VIA Technologies, Inc. USB 2.0)>
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 9
bDeviceSubClass 0
bDeviceProtocol 1
bMaxPacketSize0 8
idVendor 0x0000
idProduct 0x0000
bcdDevice 2.04
iManufacturer 3 (Linux 2.4.21-215-athlon ehci_hcd)
iProduct 2 (VIA Technologies, Inc. USB 2.0)
iSerialNumber 1 (00:09.2)
bNumConfigurations 1
<configuration 0>
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0 ()
bmAttributes 64 (Self-powered)
MaxPower 0 mA
<interface 0>
<altsetting 0>
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 (in 0x01)
bmAttributes 3 (interrupt)
wMaxPacketSize 2
bInterval 12 ms
bRefresh 0
bSynchAddress 0
# Your USB scanner was (probably) detected. 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
----------------------------------------------------------------------
The result of "cat /proc/bus/usb/devices" :
----------------------------------------------------------------------
T: Bus=05 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 Root Hub
S: SerialNumber=a800
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=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 11/900 us ( 1%), #Int= 1, #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 Root Hub
S: SerialNumber=b000
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=04 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 4 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=ff(vend.) Sub=ff Prot=ff MxPS= 8 #Cfgs= 1
P: Vendor=03f0 ProdID=0901 Rev= 1.01
S: Manufacturer=Hewlett-Packard
S: Product=hp scanjet scanner
S: SerialNumber=CN278S30FN
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 48mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=usbscanner
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= 1 Ivl=8ms
T: Bus=03 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 Root Hub
S: SerialNumber=d000
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=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.00 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 0.00
S: Product=USB UHCI Root Hub
S: SerialNumber=d400
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=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 4
B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.04
S: Manufacturer=Linux 2.4.21-215-athlon ehci_hcd
S: Product=VIA Technologies, Inc. USB 2.0
S: SerialNumber=00:09.2
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= 2 Ivl=256ms
----------------------------------------------------------------------