Networked Canon MP640 on Fedora 17 (64 bit)
Addendum: This has been "working" for a long time but ... often the printer would get "stuck". I noticed that in the CUPS interface the default paper size was set to A4. I changed that to US Letter and the reliability improved considerably.
Most info I got from this Ubuntu Board - I don't have too much here that adds to that but anyways ....
Get the Canon Print Driver from here:
http://software.canon-europe.com/products/0010757.asp
Specify Linux, English, and choose the RPM version. This turns out to be a 32-bit driver which seems to work fine on my 64-bit system.
What gets downloaded is
MP640_rpm_driver_pack.tar
So first we need to
tar xvf MP640_rpm_driver_pack.tar
The tarball contains another tarball (weird but that's how they did it). So next need to
tar zxvf cnijfilter-mp640series-3.20-1-i386-rpm.tar.gz
Now cd to the created directory
cd cnijfilter-mp640series-3.20-1-i386-rpm
We'd like to now run install.sh but we get an error related to the 32-bit 64-bit issue.
>sudo ./install.sh
==================================================
Canon Inkjet Printer Driver Ver.3.20-1 for Linux
Copyright CANON INC. 2001-2009
All Rights Reserved.
==================================================
Execution command = rpm -Uvh ./packages/cnijfilter-common-3.20-1.i386.rpm
error: Failed dependencies:
libpopt.so.0 is needed by cnijfilter-common-3.20-1.i386
The answer is to go ahead and install the 32 bit libpopt library like so:
sudo yum install popt.i686
Now we're ready to run install.sh
>sudo ./install.sh
==================================================
Canon Inkjet Printer Driver Ver.3.20-1 for Linux
Copyright CANON INC. 2001-2009
All Rights Reserved.
==================================================
Execution command = rpm -Uvh ./packages/cnijfilter-common-3.20-1.i386.rpm
Preparing... ########################################### [100%]
1:cnijfilter-common ########################################### [100%]
Execution command = rpm -Uvh ./packages/cnijfilter-mp640series-3.20-1.i386.rpm
Preparing... ########################################### [100%]
1:cnijfilter-mp640series ########################################### [100%]
## Driver packages installed. ##
The printer registration has not been completed.
Register the printer manually by using the lpadmin command.
We're told to run the lpadmin command but with what arguments?
From the Ubuntu board we learn we need to run our new cnijnetprn command with search auto.
> cnijnetprn --search auto
network cnijnet:/00-AB-CD-EF-12-34 "Canon MP640 series" "Canon-MP640-series_00-AB-CD-EF-12-34"
Now go to CUPS administration via a web browser. This is possible I have found using Firefox but not possible using Chrome. So fire up Firefox, and use the URL
localhost:631
(again I don't think this is possible using Chrome).
When prompted at some point for a password you have to type in "root" for username and your root password for the password. WARNING: If you get this wrong and you (for example) type in your user password you will need to go into Edit:Preferences and delete the localhost cookie in Firefox, close Firefox, and then restart Firefox.
From CUPS go to "Manage Printers" and the printer that you just added (canon640) should be there. (You may have to actually "add" it but I think the lpadmin command did this - not 100% sure though).
You will want to "modify" this printer and set it to "allow sharing" and there are a number of times you have to click "OK" to make this happen. I think I got some printer errors that said "Printer not shared" before I did this but since this is done via web GUI instead of command line I don't have those exact transactions :(
You should now be able to print a test page from the "Maintenance" button under the canon640 printer.
2nd Warning: I did get one or two transient CUPS errors to the effect of
Returning IPP server-error-not-accepting-jobs for Print-Job
But these seemed to go away and in fact the printer just sort of spontaneously woke up and started printing the requested test pages.
To get scanning to work it's pretty much the same exercise but the driver needed this time is the Canon Scangearmp driver - the 32 bit lib dependencies are gimp-libs.i686 and when you scan you need to invoke the scangearmp executable.
Most info I got from this Ubuntu Board - I don't have too much here that adds to that but anyways ....
Get the Canon Print Driver from here:
http://software.canon-europe.com/products/0010757.asp
Specify Linux, English, and choose the RPM version. This turns out to be a 32-bit driver which seems to work fine on my 64-bit system.
What gets downloaded is
MP640_rpm_driver_pack.tar
So first we need to
tar xvf MP640_rpm_driver_pack.tar
The tarball contains another tarball (weird but that's how they did it). So next need to
tar zxvf cnijfilter-mp640series-3.20-1-i386-rpm.tar.gz
Now cd to the created directory
cd cnijfilter-mp640series-3.20-1-i386-rpm
We'd like to now run install.sh but we get an error related to the 32-bit 64-bit issue.
>sudo ./install.sh
==================================================
Canon Inkjet Printer Driver Ver.3.20-1 for Linux
Copyright CANON INC. 2001-2009
All Rights Reserved.
==================================================
Execution command = rpm -Uvh ./packages/cnijfilter-common-3.20-1.i386.rpm
error: Failed dependencies:
libpopt.so.0 is needed by cnijfilter-common-3.20-1.i386
The answer is to go ahead and install the 32 bit libpopt library like so:
sudo yum install popt.i686
Now we're ready to run install.sh
>sudo ./install.sh
==================================================
Canon Inkjet Printer Driver Ver.3.20-1 for Linux
Copyright CANON INC. 2001-2009
All Rights Reserved.
==================================================
Execution command = rpm -Uvh ./packages/cnijfilter-common-3.20-1.i386.rpm
Preparing... ########################################### [100%]
1:cnijfilter-common ########################################### [100%]
Execution command = rpm -Uvh ./packages/cnijfilter-mp640series-3.20-1.i386.rpm
Preparing... ########################################### [100%]
1:cnijfilter-mp640series ########################################### [100%]
## Driver packages installed. ##
The printer registration has not been completed.
Register the printer manually by using the lpadmin command.
We're told to run the lpadmin command but with what arguments?
From the Ubuntu board we learn we need to run our new cnijnetprn command with search auto.
> cnijnetprn --search auto
network cnijnet:/00-AB-CD-EF-12-34 "Canon MP640 series" "Canon-MP640-series_00-AB-CD-EF-12-34"
Armed with this information we now want to run the command:
> sudo lpadmin -p canon640 -m canonmp640.ppd -v cnijnet:/00-AB-CD-EF-12-34
Now go to CUPS administration via a web browser. This is possible I have found using Firefox but not possible using Chrome. So fire up Firefox, and use the URL
localhost:631
(again I don't think this is possible using Chrome).
When prompted at some point for a password you have to type in "root" for username and your root password for the password. WARNING: If you get this wrong and you (for example) type in your user password you will need to go into Edit:Preferences and delete the localhost cookie in Firefox, close Firefox, and then restart Firefox.
From CUPS go to "Manage Printers" and the printer that you just added (canon640) should be there. (You may have to actually "add" it but I think the lpadmin command did this - not 100% sure though).
You will want to "modify" this printer and set it to "allow sharing" and there are a number of times you have to click "OK" to make this happen. I think I got some printer errors that said "Printer not shared" before I did this but since this is done via web GUI instead of command line I don't have those exact transactions :(
You should now be able to print a test page from the "Maintenance" button under the canon640 printer.
2nd Warning: I did get one or two transient CUPS errors to the effect of
Returning IPP server-error-not-accepting-jobs for Print-Job
But these seemed to go away and in fact the printer just sort of spontaneously woke up and started printing the requested test pages.
To get scanning to work it's pretty much the same exercise but the driver needed this time is the Canon Scangearmp driver - the 32 bit lib dependencies are gimp-libs.i686 and when you scan you need to invoke the scangearmp executable.
Comments