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"


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.
Post a Comment

Popular posts from this blog

Hit failing alternator with a hammer to confirm diagnosis of failing alternator due to bad brushes

alternatives --install gets stuck: failed to read link: No such file or directory

Using SSH, SOCKS, tsocks, and proxy settings to create a simultaneous "dual use" work/home computer