Warning - If you grant a group a full permission to access the scanner (by using udev, hotplug, resmgr etc.), every members in the group will have full access rights not only for the scanner part but also for the other parts of the device i.e. printer, memory-card reader and fax. These users can bypass your system's security policy and do everything with the device intentionally and unintentionally. If this is not what you want especially for a workgroup computer, you should consider using saned as a proxy. Then all other user frontends should be able to access the scanner only through saned. (saned is included in the sane-backends package.)
21 July 2007 - Canon's official driver for MP160, MP510 and MP600. Go to the "Support&Download" section. Some part of the driver is GPLed but the most important part is binary-only, unfortunately.
19 July 2007 - Release version 0.13.1.
21 April 2007 - Update links to printer drivers and status of MP180, MP510 and MP830.
8 April 2007 - Finally, after a long break, release version 0.13.0. Some information may be out of date at this moment. I'll try to update the rest of the website/document on the next days.
Canon PIXMA MP is a series of multi-function devices (All-in-one printer). This software supports only the scanning function of the device. MP150, MP170, MP450 and MP500 are currently supported. I'm working on support for MP750 and other devices in the series. (See status) I've contacted Martin Schewe (the author of the driver for MP750/MP780) and started some experiments to integrate the both drivers in one binary. Because I only have MP150, I need your help for testing the software with other models. Currently, the software compiles and runs on Linux. Porting to other OSes that support USB is also possible.
The core driver, on which the SANE backend and stand-alone utility are based, is in an ALPHA stage and will stay in this stage because I've no programming manual or protocol specification for the devices at all. By analyzing USB traffics I could get enough information to write a driver that seems to work. Although many testers and I do our best to test the software, it will not work in every situation.
If you are looking for a Linux printer driver for these devices, have a look at
Scanner utility and SANE backend for Canon PIXMA MP series
Copyright (C) 2006-2007 Wittawat Yamwong
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
See also detailed status (out of date).
| Model | USB ID | Hardware features | Status and comments | ||||
|---|---|---|---|---|---|---|---|
| DPI | GR | GT | AD | BT | |||
| Protocol 1a: The backend is ready for day-to-day use although some features are missing. | |||||||
| MP150 | 4A9:1709 | 1200(1) | Y | Y | - | 1x1 | working |
| MP170 | 4A9:170A | 1200(1) | Y | Y | - | 2x1 | working |
| MP450 | 4A9:170B | 1200(1) | Y | Y | - | 2x4 | working but making loud noise at 600 DPI |
| MP500 | 4A9:170C | 1200(1) | Y | Y | - | 2x4 | working |
| MP530 | 4A9:1712 | 1200(1) | Y | Y | Y | 2x1 | working |
| MP800 | 4A9:170D | 2400(2) | Y | Y | - | 2x5 | working but no support for film scan |
| MP800R | 4A9:170E | 2400(2) | Y | Y | - | 2(?) | working but no support for film scan |
| MP830 | 4A9:1713 | 2400(2) | Y | Y | Y | 2x1 | working but no duplex ADF yet, problem with RGB color alignment at high resolution (if you know the technical term, please let me know.) |
| Protocol 1b | |||||||
| MP160 | 4A9:1714 | 600 | ? | Y | - | ? | Full scan @ 75DPI color works. TBD |
| MP180 | 4A9:1715 | 1200 | ? | Y | - | ? | working, TBD |
| MP460 | 4A9:1716 | 1200 | ? | Y | - | ? | Full scan @ 75DPI color works. TBD |
| MP510 | 4A9:1717 | 1200 | ? | Y | - | ? | working, TBD |
| MP600 | 4A9:1718 | 2400 | ? | Y | - | ? | working but buggy at 2400DPI. TBD |
| MP600R | 4A9:1719 | 2400 | ? | ? | - | ? | working but buggy at 2400DPI. TBD |
| MP810 | 4A9:171A | 4800 | ? | ? | - | ? | untested |
| MP960 | 4A9:171B | 4800 | ? | ? | - | ? | Full scan @ 75 DPI works. TBD |
| Protocol 2 | |||||||
| MP360 | 4A9:263C | 1200 | Y | - | - | ? | The scanner locks up sometimes. |
| MP370 | 4A9:263D | 1200 | ? | - | - | ? | TBD |
| MP390 | 4A9:263E | 1200 | ? | - | - | ? | ? |
| MP700 | 4A9:2630 | 1200 | Y | - | - | 1x1 | working except grayscale @ 1200DPI |
| MP730 | 4A9:262F | 1200 | Y(?) | - | ? | 1x1(?) | ADF and grayscale are untested. |
| Protocol 3 | |||||||
| MP750 | 4A9:1706 | 2400(2) | - | - | Y | 2x1 | Canceling scan in ADF mode doesn't eject the paper! |
| MP760 | 4A9:1708 | 2400(2) | - | - | - | 2(?) | The scanner hangs! |
| MP780 | 4A9:1707 | 2400(2) | - | - | Y | 2(?) | Both flatbed and ADF work but scanner hangs when cancel during a scan. |
| Unknown protocol: These devices don't work with this backend and there is no easy way to add supports because they use a different command set which has to be analyzed first. Co-programmers are welcome! :-) I personally cannot do this because I don't have the devices. | |||||||
| MP110 | 4A9:1700 | 1200 | N | N | - | N | unsupported |
| MP130 | 4A9:1701 | 1200 | N | N | - | N | unsupported |
|
|
Notes
The SANE backend is now included in the sane-backends CVS. It can be downloaded from the SANE project homepage. Please follow the download instruction.
Note: For Linux kernel 2.4.x and other OSes please download the driver (backend) from the SANE project homepage.
| Version | Comment |
|---|---|
| 0.13.1 |
md5sum: 3a0374af96a9d93af1fb5aca345da42d
|
| 0.13.0 |
md5sum: aef52ea4bca25605c5cbff09920d0987
|
| 0.12.2 |
md5sum: ca94896251b339691f1c1ed4585d8ed8
|
| 0.12.1 |
md5sum: d697d20454944e5f820008f04b1e5e28
|
| 0.12.0 |
md5sum: 3a4d6f4eb830c14b8e32aa5bf4de28b1
|
| 0.11.3 |
md5sum: 3ab071e4e44d1ed34502a915d5b35947
|
| 0.11.2 |
md5sum: 08b31221fa21d5a77d5f48925ed96cd0
|
| 0.11.1 |
md5sum: 0b3f067498f712856bf5fa0e514d737d
|
| 0.11.0 |
md5sum: 872b39013b753d9babdfae12368831ce
|
| 0.10.1 |
md5sum: 25ac6e465082554e0896202762fc46e8
|
| 0.10.0 |
md5sum: b3c5e6bfcbea469cec3fc2a66d4ca2ef
|
The software has been successfully tested on SUSE Linux 10.0 OSS (i386 and x86_64), kernel 2.6.13. It should compile on other Linux distributions as well. You need an ANSI C-Compiler and make, such as GNU gcc and make, and glibc. resmgr and libtiff (3.7.3 or later) are optional. SANE's header files sane.h and saneopts.h are also optional. If they are installed, Makefile will use them. If not, the files that come with the driver are used instead.
Please read README.html in the package for more information.
I would like to thank: (The list needs to be updated.)
and many others who are not (yet) listed in the above list.
For the SANE backend: sane-devel mailing list and bug tracking system.
Or mail to wy-pixma at arcor dot de. If the size of log files are more than 50kB, put them on the web and send me just the link. (Prefered languages: Thai, German and English)