Garten Eden

#linux #programming #android #online #stuff

Install Canon MP640 on Ubuntu

Before all else: The multifunction printer MP640 by Canon works fine under Ubuntu, even via WLAN!

Screenshot Canon printer monitor

1. Updates via PPA

In order to make sure that CUPS and SANE are up to date, I recommend fresh updates via the PPA sources.

sudo add-apt-repository ppa:robbie.w/cups-bjnp
sudo add-apt-repository ppa:robert-ancell/sane-backends
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install cups-bjnp
sudo /etc /init.d/cups restart

2. Download Printer Drivers...

Afterwards we have to download the printer driver and—if required—the scanner software from the Canon (AsiaEurope*) site. Visit Canons software center, select Linux and download the Debian printer driver and/or ScanGear.

3.a ...and install them

Both files are compressed Debian packages which can be installed as usual, at least on 32-bit systems. People using this architecture can continue with step 4.

3.b Special attention for 64-bit

64-bit systems have to force the installation:

sudo dpkg -i --force-architecture ./cnijfilter-*
sudo dpkg -i --force-architecture ./scangearmp-*

Having installed it that way, we have to check whether the needed libraries are also available in a 32-bit version. Therefor there is the tool getlibs. In fact we have to go through all binaries installed by the Canon software, run them in getlibs and control if the corresponding libraries are installed. By doing that on my Lucid system, I found out that only /usr/bin/scangearmp has to be checked.

sudo getlibs /usr/bin/scangearmp

All missing libs should be listed that way and it prompts to download them. In my situation that was only the case for libgimp2.0.

4. Searching the printer

If the printer is not listed in the printer dialog by now, you can add it with the common printer tools of your desktop environment. Gnome, for instance, has the printer GUI in its System/Administration menu.

5. Editing the printer profile

This step is optional. Your printer should be able to print now. Expecting more features from your printer, you can add special functionality like black-white-printing or the like in your printer profile.

I recommend to edit the following files lest an update overwrites your changes (names may vary, backups of original files self-evident).

By editing these files with root access, you can

You can also download my edited PPD file. The original one is released under the GNU GPL:
canonmp640.ppd (30.6KB text/plain) or
canonmp640.ppd.gz (4.5KB application/x-gzip)

Again you have to restart CUPS.

6. Final test

The printer driver comes with a handy status tool which is also the place to go if you want to find out what your printer currently does or if you want to check the availability. So cngpijmonmp640 shows you the printer status and ink level (screenshot at the top).

By the way...

Not only does the printer work, but of course also the scanner. I tested it successfully with xsane, ScanGearMP (single and over GIMP) and SimpleScan. Keep in mind that the sane-backends included in Lucid are too old for the MP640—but with the PPA mentioned above its very easy to have full compatibility by simply updating the package.

Moreover there is a RPM package for other distributions and the source.

*Having compared the MD5 hashes of the files on Canons Asia and Europe site, I stated equality, so theres nothing to be said against the server on the "old continent". In case you prefer the Asian server: print driver, ScanGear MP.

updated Jul-10/2010 8:13pm


Your comment:

So far...

24 Mar, 2012 07:41 pm Morisod Pierre says:
Vielen Danke für ihre Tips !

Linux ubuntu 10.04 kucid / MP600R
25 Dec, 2011 07:28 pm BaileyJS says:
Thanks for this entry. I could not figure out why i kept getting error messages on my 64bit 10.04 while trying to perform step 3b until I realized I was attempting to install the mp640 deb first before the commom deb. Once I figured that out it worked perfectly and the scanner fired right up. Thanks again!
03 Jun, 2011 10:42 am mihocat says:
after reading the thing with the double-click on -deb , it finally worked... when I started to look how it works, I never imagined it would be SO EASY! thank you so much!
19 May, 2011 04:10 am Barry Williams says:
17 May, 2011 05:43 pm Puro says:
Thank you... finally got mp640 working on x64 ubuntu 11.04
09 May, 2011 08:24 pm fireball says:
Sill unsolved for 64bit Natty however, the above mentioned dependency problems persist :(
29 Apr, 2011 10:20 pm mirkuma says:
Installation for 11.04 is the same as for 10.10 for 32bit Ubuntu systems.
But I didnt use any PPA sources.
Only libgimp2.0. and Gimp needs to be installed for a proper scangearmp installation. Application shortcut should bee then made for ScanGearMP if you wish to start ScanGear via application menu on Unity menu instead from terminal.

Thanks again!
29 Apr, 2011 05:23 pm mirkuma says:
Eduard, thank you for your replay.

For 11.04 (64bit) problems, some info is here:

Im doing clean instal of 11.04 (32bit) and will post back if I will have MP640 installation problems.

29 Apr, 2011 03:01 pm Eduard Dopler says:
Im unable to look at the problems right now as I do not use 11.04 yet. Could you get a little bit more into detail, please?
29 Apr, 2011 08:47 am Mirkuma says:
Thanks for the guide. I was able to use it to install MP640 on Ubuntu 10.10 (32bit). There are some dependency problems in 11.04. Can you look at that and update the guide and PPA?
Thank you.
04 Jan, 2011 08:34 pm Eduard Dopler says:
Where do you want to add it to? Actually it should work with the application you prefer. As I said in "By the way…", I tried a handful of programs which were compatible with the scanner. For a start try ScanGearMP.
04 Jan, 2011 07:29 pm Wrong architecture says:
Ok, I got the printer working, I installed getlibs and did as described. How can I now add the scanner?
03 Jan, 2011 08:55 pm Wrong architecture says:
I tried but I get so many error messages.
What did I do:
I downloaded the files from Canon Europe, extracted to documenten640 folder
I opened terminal and went to that folder using cd command.
I installed the driver as told;
I enter the command:sudo getlibs /usr/bin/scangearmp
Now I get a prompt command not found
What to do next? (Until now only trying to print and did not complete the scan procedure)

02 Jan, 2011 05:57 pm Eduard Dopler says:
Well, this means that youre using an 64-bit system while the drivers were composed for 32-bit. Actually you should follow the instructions mentioned under 3.b. Good Luck!
02 Jan, 2011 05:54 pm Wrong architecture says:
I tried to install the drivers but everytime I get a message wrong architecture. Iḿ using Ubuntu 10.04 LTS- the Lucid Lynx. Iḿ just starting with this OS
17 Oct, 2010 03:52 pm Julia says:
Hello Eduard...
I follow your guide set up and now my printer is connected to my Ubuntu 10.04. Thank you very much for your tutorial...!
23 Sep, 2010 11:04 am Eduard Dopler says:
Hi Wayne,I start scangearmp by typing the application name in Gnome-Do or sometimes [Alt+F2] but you can create a launcher of course, either in the Ubuntu menu, the panel or on your desktop.Referring to cngpijmonmp640 I have to admit that I dont have a clue why it comes up with this message. I assume the device is connected properly, hm? No idea, sorry.
23 Sep, 2010 05:07 am Wayne says:
GDay Eduard, I found this guide quite good :) (I am very new to Linux and jumped right in with a LL Ubuntu amd86-64 system )

Had a bit of fun finding where the list of binaries were, ended up looking in the tarball. Like you, only had to getlib for the scangearmp.

Speaking of the scangearmp, how do I get it to operate? do I have to create a launch for it? if so where from?

Finally, I ran cngpijmonmp640 and it comes up with "unknown printer"
as a side note, the top title is showing "canon (and its mac addy)"
19 Sep, 2010 05:20 pm adam lipscombe says:
This worked perfectly for me.

I had tried lots of other suggestions but this was the only one that got my M640 working in Simple Scan.

Thanks very much!!
31 Aug, 2010 11:19 am Eduard Dopler says:
To put it differently, you just have to download the files. Then decompress them by right-click → "decompress here" or something similar. What you get is a folder tree where you can find two deb-packages. Now you have to switch to a terminal and go to the directory where the debs are located. We are at point 3 in my tutorial right now. So if you are using a 32-bit Linux, install the packages by double-clicking on them (3.a) and if you are using 64-bit, enter the commands listed in 3.b and continue with the other instructions in this step. Afterwards you can go on with the remaining steps.
31 Aug, 2010 05:24 am Julia says:
Please help...
I tried to follow all the steps but I still cant figure it out how to decompress the .tar.gz files inside the .deb packages. Is that the reason I cant make the command line (3.b) to install the drivers? Sorry, Im still newbie for Linux
27 Jul, 2010 02:52 pm Desmond Sale says:
Working OK now. My error was failing to nominate two sided printing on Page Setup dialogue. Thank you for forcing me to look under my nose!
26 Jul, 2010 09:51 am Eduard Dopler says:
On my setup duplex printing does work. I also havent heard complaints about that up to now.
26 Jul, 2010 06:48 am Desmond Sale says:
Your advice has been very helpful installing new MP640 on Lucid. Thank you.
However I am unable to get duplex printing to work. This was my main reason for getting this printer.
I have had this feature working on a virtual WindowsXP using VirtualBox.
The software provided with the MS drivers showcases many other features of the MP640 and one cant help wondering what else Linux users are missing.
But it is a splendid printer. Thanks again

Des Sale
25 Jul, 2010 02:39 pm Jan-Christian Lupander says:
That did it! A reboot was needed before I could search for and install the printer but now all is ok!
25 Jul, 2010 01:42 pm Eduard Dopler says:
If you are using a 32-bit system, you can just decompress the downloaded TAR-file, then again decompress the TAR-GZ-compressed file called "cnijfilter..." and doubleclick on the package to install it.If you otherwise running a 64-bit machine, you decompress everything and then need to enter the command listed in 3.b.
25 Jul, 2010 01:35 pm Jan-Christian Lupander says:
Your guide seems to be exactly what Im looking for, but could you please flesh out point 3.a a little bit?
"installed as usual" is a bit meager as advice for a beginner!
15 Jul, 2010 12:07 pm Eduard Dopler says:
You can -- as long as you refer to my post and indicate that it came from me (Attribution). See the Creative Commons License (ru).
15 Jul, 2010 09:40 am Nick says:
Having followed lots of other advise that failed this was the solution that worked for me. My MP640 is now printing and scanning from Ubuntu 10.4 (64bit). Thanks.


Wait a sec, loading...

Email (not published)

Homepage (optional)

Comment... (code tag allowed)