I had the same problem with the mp640 printer.
After a few months (now) I got it working.
The solution was at http://wiki.ubuntuusers.de/Canon-Drucker.
And at http://www.openprinting.org/show_pri...on-PIXMA_MP640
The solution for me was:
Download the printer driver from http://support-asia.canon-asia.com/contents/ASIA/EN/0100236602.html.
I do not know how exactly I have done it, but i first installed a few packages:
Open a terminal (Applications>Assesoires>Terminal)
And then the tricky part. (Is this tricky?)
sudo apt-get install libxml1 libglade0 libpng3 libtiff4
'cd' to the directory where you saved the files
(in my case)
unpack the tar archive (replace the 'x' before the i386 with the actual number, 1 in my case):
tar zxvf cnijfilter-mp640series-3.20-x-i386-deb.tar.gz
But this didn't work for me.
So I installed the packages manually
EDIT: I don't know if the --force architecture does harm, but I think not. The main part is (as far as i know) the ppd file (/usr/share/cups/model/canonmp640.ppd) and that is (i think) platform independent.
I have a amd64 processor with ubuntu 64 bit, so very different from i386. I think it's save to do this.
EDIT: to install this driver in Ubuntu 11.04, the dependencies need to be removed (everything it needs seems to be installed).
sudo dpkg -i --force architecture ./cnijfilter-common_3.20-1_i386.deb
sudo dpkg -i --force architecture ./cnijfilter-mp640series_3.20-1_i386.deb
And then add the printer using the standard printer window (System>Administration>Printing or Systeem>Beheer>Afdrukken in dutch)
Select New (Nieuw). Ubuntu will search for printers, but will likely not find the printer because it is a network printer.
Select Networkprinter (Netwerkprinter) > I didn't find the English version of it, but likely anything like "Search for Network printer" (In dutch: Netwerkprinter zoeken)
Fill in the ip-adress of the printer, click search and follow the instructions.
The default values are likely the best, they worked for me.
I have not set up the scanner, but I didn't need that (It's easier with the computer beside the printer/scanner).
I hope this helps!
And I am dutch, so there could be hundreds of misspells in this reply. This is also my first post at this forum.