Canon CanoScan Driver Project

What We Do

This project aims to develop open-source drivers for Canoscan FB630P and FB330P parallel-port scanners. Thanks to user contributions and help, the N640P and N340P are compatible with this driver also. We have also had reports that the new N640P ex model also works. Thanks to someone lending me one, the FB620P and FB320P are now also supported. The FB310P and FB610P are rebadged AVision scanners which use a completely different command set, and will never be supported by this driver, sorry.

The most recent version of the driver produces very good results. The image below is an example which was scanned on an FB330P.

(Man, I hate it when bugs land on the scanner bed! - MD)

Currently Supported:

Things We're Still Working On:

About The Driver:

The driver is a stand-alone console utility PLUS a SANE backend which is now part of the SANE Backends package. It is well-tested on Linux only at the moment, but it should work on any platform that libieee1284 has been ported to - this includes Solaris/x86, FreeBSD, OpenBSD, NetBSD and even Cygwin. Hurd or BeOS5 coming soon (maybe).

You can always download the latest source package from our downloads page at sourceforge, and you will also need to get libieee1284 to compile it.


[27/4/04] A dude named David Price just emailed me a fairly awesome-looking QT frontend for the standalone driver. I have not tested it myself but judging from the screenshot, it is pretty complete and good. So if you don't like using the SANE driver, or it doesn't work well for you, give this a go. David hasn't included his email address in the tarball but if you wish to contact him I can pass on messages. -SK

[27/9/03] A small update tonight. I've just taken new photos of the hardware to replace the ones lost to dingoblue on the reverse engineering page. Also, if you want to use a parallel port other than the first one on your system, you may want to check the latest CVS code which has a much improved commandline parsing system. -MD

[3/9/03] I've received a report of a successful test of the new version with an FB320P, so I'm declaring it to be supported. Excellent. -MD

[1/9/03] Release 5.0 is now out - grab it from the Sourceforge downloads page. The most significant new feature is the support for 620P and 320P models - so if you have one of those, we're particularly interested in hearing if it works for you. Also, if you use Solaris/x86, OpenBSD or NetBSD, get the latest version of libieee1284 and try out the driver! -KE

Older News...


I have been surprised at the popularity of this driver. We have had thousands of downloads since the beginning of the project. Just have a look at this graph to see the rate of growth we've experienced. In a way I don't think this driver is mature or stable enough yet to meet most people's needs. But there are things everyone can do to help the project along. I suggest writing a letter (on paper, not email) to Canon politely letting them know about this project. Information about Canon's parallel port scanners would be cheap for them to provide, and benefit over 10 new customers a day (over 340 downloads in December).

Things to point out:

And if you are an employee of Canon, please ask your boss about the possibility of providing information to us.

Thank you



Visit our project page if you want to look at the status of the project, or for instructions on getting the latest code out of cvs.

If you prefer the stand-alone to the SANE version, but would like a GUI anyway, try this PERL-tk script by Hans Jeuken.

If you've got one of the main supported scanners, and this driver didn't work for you, please do email me (Matt) or Kevin about it. We're serious about this project and always have time to answer questions about the drivers. If you want to email us just to tell us how great we are, we won't complain either. If you're having trouble compiling the driver, try these HowTos by Luis F. Cisneros in English or espaņol.

This driver is built from a black-box reverse-engineering job. Reverse-engineering this scanner was a fairly fun experiment. If you're interested in knowing how I captured the protocol, visit this page

This driver doesn't support the USB versions of these scanners. Unfortunately, the internal electronics for the USB versions are COMPLETELY different, and the protocol is pretty much 100% different. If you want to help support these scanners, check out Vladimir Dergachev's SANE Backend / Utilities for Canon USB (FB1220U mainly) Scanners and, Nathan Rutman and Simon Heywood's work on the FB630U.

If you have a different scanner or you have no idea what SANE is, check out the SANE Home Page

This driver uses Tim Waugh's libieee1284.

The first image


Please Note: We don't work for Canon, we're not associated with Canon, and we know nothing about the Windows driver.

Matt Duggan (also available via MSN messenger or ICQ:1735098)

Simon Krix

Kevin Easton

All the other geniuses behind this project.

SourceForge Logo