USB Scanners on Linux
Last modified on 20th November 2001


It is a waste of your time contacting me to ask if your scanner is supported. Everything I know is shown in this page. If you can't find your scanner here, then it means that I don't know. I am unable to offer any help in getting your scanner working under Linux as well. I simply don't have the time to respond to these requests so your email will go unanswered.

The purpose of this page is to provide a central point where you can easily find out what USB scanners work under Linux and SANE, and perhaps more importantly which ones don't. If you are having trouble getting your scanner to work or cannot see it mentioned on this page, contacting me is not appropriate. Your email will simply go unanswered. To get a response you should either post to the sane-devel and/or linux-usb mailing list.

If you are in the market for a new USB scanner to use under Linux then I strongly recommend that you select an Epson scanner. All the Epson scanners conform to the Epson scanner language and the SANE backend is actively maintained. As a result all the Epson scanners APART FROM THE Perfection 1250 work under Linux and SANE. While they might not be the cheapest option they are by far the safest option. I have received absolutely nothing from Epson for this recommendation and I am in no way connected to them.

If you are developing a SANE backend for a USB scanner I would be grateful if I you could inform me of updates. If you have been in contact with a manufacturer asking for programming information and been turned down let me know and I will update the page. If you are a manufacturer and don't like the fact that you are listed as refusing to release documentation, then you know what to do. You may be interested to know that this page is getting well over 350 unique visitors per day. That is over 125,000 potential customers per year you could be losing out on.

The following is a key to the colour coding in the table.

  A full backend is included in the latest version of SANE. The scanner should function with few problems and image quality is as good as the native MS Windows/MacOS drivers.
  Although a driver is in development it is still at the beta stage. It may not be included in the SANE distribution and expect some issues getting it working and with the quality of the scanned images.
  Either no code is currently available or there is only a stand alone utility for scanning images. There will be difficulties with getting it working and issues with the quality of the scanned images.
  This manufacturer refuses to release documentation. It is very unlikely that the models listed will be supported. It is therefore unlikely that the scanner will ever be supported under Linux/SANE.
  No backend currently exists or is known to be under development. It is also unknown whether the manufacturer will provide the documentation needed to write a driver.

Below is a list of models from different manufacturers and the status of any support that is available under Linux that I have complied. This list is by no means complete or necessarily accurate. However any information that could be used to expand the scope and accuracy of this page will be greatly appreciated.

Manufacturer Models Status
Acer Prisa 620U, 640U, 640BU, AcerScan 1240, 3300, 4300, 5300   This scanner would appear to be a relative of the Afga USB Snapscan. Further information, copies of the firmware and firmware download scripts can be found at the SnapScan SANE web page at
Afga Snapscan 1212U, 1236U, e20, e40, e50   This scanner apparently uses the same command set as the Afga SCSI scanners. However a firmware download is necessary before the scanner can be used. Further information, copies of the firmware and firmware download scripts can be found at the SnapScan SANE web page at
Touch   This scanner appears to be similar to the HP Scanjet 3300C.
Artec Ultima 2000   This scanner uses the GT6801 scanner chip from Grantech. A kernel driver and a test program for scanners based on the gt6801 can be found at
Canon CanoScan FB636U, FB630U, N650U, D660U, FB1210U   Canon appear to be unwilling to release the necessary documentation to enable a Linux driver and SANE backend to be written. However an enterprising user has taken his FB630U scanner apart and reports that it has a National Semiconductor LM9830 parallel port scanner chip sitting behind a GL640 USB-to-parallel converter. In theory then a SANE driver for this scanner is a distinct possibility. See There is also a project for the FB1210U: (Both projects are in very early stages; it is not clear whether they will succeed in producing a backend).
Epson GT-7000, Perfection 610U, 636U, 640U, 1200U/Photo, 1240U/Photo, 1640SU, 1650/Photo   Support for the Epson USB scanners is now available from the Epson SANE backend homepage here. The transparency adaptors of the Photo models are also supported. Epson have been very helpful with the development of the backend, to the point of providing documentation that's not yet released.
Perfection 1250/Photo   Please note the Epson Perfection 1250, unlike other Epson scanners, does not use the Epson Scanner Language and is not supported (it is reported to use a LM983x chipset, and may eventually be supported by a backend for such scanners).
Genius Vivid Pro   This scanner uses the E3 chipset in common with a number of other scanners. Further information on a SANE backend for these scanners can be found here.
Hewlett Packard ScanJet 4100C, 5200C, 6200C, 6250C, 6300C, 6350C, 6390C   These scanners all understand the HP SCL. They are all currently supported under Linux and SANE.
ScanJet 5300C, 7400C   These scanners are actually made by Avision and uses the Avision SCSI command set over the USB bus. The 5300C scanner has been reported working with the latest USB kernel driver and the Avision SANE backend. Getting this scanner to work properly can be tricky and is not for the faint hearted. In addition on some systems it causes hangs of the scanner, and/or complete system hangs. See (Because kernel support for SCSI-over-USB is required, this is at present a Linux-only solution.)
ScanJet 4200C   This scanner uses a National Semiconductor Scanner on a Chip LM9830 to drive the scanner (Yes really this is a parallel chip in a USB scanner). A backend for this scanner is currently in development. More information can be found at sourceforge here.
ScanJet 2200C   This is a LM9832 scanner. A backend for this scanner is currently in development (early alpha stage) More information can be found at
ScanJet 3300C, 3400C, 4300C   These scanners also do not use HP SCL, but are not LM983x scanners. Encouraging progress toward a backend (successful scans on both models) is reported at .
IBM IdeaScan 2000USB   This scanner uses the E3 chipset in common with a number of other scanners. Further information on a SANE backend for these scanners can be found here.
Nikon CoolScan IV LS-40   The Linux USB scanner module may not recognise this scanner by default. In order to make the scanner module load, an entry
options scanner vendor=0x4b0 product=0x4000
to /etc/modules.conf (or /etc/conf.modules on a non-FSB compliant distribution) may be necessary. VueScan then works fine with this scanner. State of SANE support is currently unknown.
Microtek Scanmaker X6   The Scanmaker X6 requires SANE version 1.0.3 or later and the kernel driver is in the 2.4.x kernels. The back ported USB drivers do not work.
Scanmaker 3600   A backend for SANE based on reverse engineering of the USB protocol by Marian Eichholz and Glenn Ramsey is included in SANE 1.0.5. More details and source code can be found at Microtek have now provided documentation so the reverse engineered parts can in future be rewritten cleanly.
Scanmaker 3700, 3750   May be supported by the SM3600 backend:
Phantom C6 USB   This is another SCSI over USB scanner, and works with the Microtek kernel driver. You need to use a 2.4.5 kernel and SANE 1.0.5.
Scanmaker V6 USB, Scanmaker X12 USB   These scanners are dual interface SCSI/USB. The ScanMaker V6 has been reported working in USB mode using sane-backends 1.0.5 and xsane 0.79. It would therefore appear likely that the X12 would work in a similar fashion but this has not been confirmed.
Minolta Scan Dual II   This scanner is actually an Avision scanner, and using the hpusbscsi driver in kernels 2.4.13 will allow the scanner to be used by VueScan. Note VueScan is shareware, though if you are serious about film scanning then it far superior to any of the Sane front ends and relatively cheap. Many people use it under Windows and MacOS in preference to the manufacturer's software. The State of SANE support is unknown, though there is an existing Avision backend which will probably drive the scanner with a few modifications.
Mustek Plug-a-Scan 600CU, 1200UB, 1200CU, 1200CU Plus   The 1200UB backend supplied by Mustek has been developed into the SANE mustek_usb backend and included in SANE-1.0.6: see the SANE Mustek backend homepage for details.
1200UB Plus, BearPaw 1200CU   These scanners are based on the GT6801 scanner chip from Grantech. A kernel driver and a test program for scanners based on the gt6801 can be found at
BearPaw 1200, 2400   These scanners use National Semiconductor LM983x chips. A backend for SANE is being written. (Mustek have released some development information). See here for information on progress towards a backend for LM9831/LM9832 scanners, in particular these ones.
BearPaw 1200F, BearPaw 1200TA, BearPaw 2400TA   These scanners are not currently supported. It is reported that the 1200TA uses a GT6816 chip from Grandtech.
Plustek Optic Pro U12, UT12, UT16, U24   A SANE backend is being written. See the SANE Plustek backend home page for information on progress.
Primax Colorado USB 9600   Unknown
Colorado USB 19200   This scanner uses the E3 chipset in common with a number of other scanners. Further information on a SANE backend for these scanners can be found here.
Trust Compact Scan USB 19200   Supported by the mustek_usb backend. See the SANE Mustek backend homepage for details and an alpha release.
UMAX Astra 1220U   This appears to be a LM9830 scanner like the HP4200C. A SANE backend is now in development, and an alpha release can be found at
Astra 2200SU   The status of this scanner is unknown. However it also comes with a SCSI interface and using this it is know to work with the latest SANE backend. It is likely therefore that this scanner will work with the USB scanner driver with the UMAX backend. However this has not been confirmed. It does however work with the SCSI interface.
Astra 2000U, 2100U, 2400U   Like their parallel scanners UMAX refuse to release the necessary programming information so that a SANE backend may be written.
Astra 3400, 5400   These scanners are apparently more LM983x derivatives. Currently there is no support though this may well change in the future.
Visioneer OneTouch 7600   This scanner uses the E3 chipset in common with a number of other scanners. Further information on a SANE backend for these scanners can be found here.
OneTouch 8600   A SANE backend for this scanner can be found at


All material is Copyright 1999-2001 Jonathan Buzzard. You are free to use the information on this page, provided that you clearly state the source of the information.


Page produced by Guava | | Home