Canon Pixma iP4500 - problem with colours

WATANABE Kazuhiro CQG00620 at nifty.ne.jp
Sun Oct 5 08:48:44 UTC 2008


Hello,

At Wed, 1 Oct 2008 15:46:29 +0100,
Mike Clarke wrote:
> I've just installed a Canon Pixma iP4500 on a 6.3 system using CUPS and 
> gutenprint. Black printing is fine but I've got problems with colours. 
> The colour wheel on the CUPS test page comes out as a psychedelic 
> collection of brightly coloured rings. If I print from gimp then the 
> correct colours appear but they are very dark and "muddy". The colours 
> start to look a bit more reasonable from the gimp if I push the gamma 
> value up to 2.
> 
> This isn't a physical problem with the printer, I get good results when 
> printing from Windows.
> 
> Should I be able to get correct colour rendering "out of the box" or do 
> I have to fiddle about with the multitude of output control adjustments 
> available on the CUPS admin panel?
> 
> Or should I be using something other than CUPS, that's what I've always 
> used so far but I'm happy to try alternatives if necessary.

I've used Canon MP810 with CUPS and "IJ Printer Driver" for Linux
(supplied by Canon) on FreeBSD.

Canon doesn't supply the printer driver for MP810, but I've been able
to use the printer with the driver for MP610.  These printer specs are
very similar.

I don't use the printer from FreeBSD so many time, but printing an web
page from firefox and the "Print Test Page" from http://localhost:631/
are fine.  That color print has no defferences between the Windows's
one.


So you will be able to use Canon iP4500 (and MP610/MP520/iP3500) with
the procedure below [1].


  1. Installng necessary ports

   1.1. For the PS to Canon IJ filter

print/cups
emulators/linux_base-fc4
graphics/linux-jpeg
graphics/linux-png
graphics/linux-tiff
archivers/rpm2cpio

   1.2. For compiling the Canon CUPS filter

devel/autotools
devel/gmake
shells/bash

  2. Read /usr/ports/print/cups-base/pkg-message, and set some
     necessary settings.

  3. Set the following lines to /etc/rc.conf:

linux_enable="YES"
cupsd_enable="YES"

  4. Download the IJ Printer Driver Ver.2.80 for Linux

The following two archives are required:

 IJ Printer Driver Ver. 2.80 for Linux (rpm Package for iP4500 series) 
 cnijfilter-ip4500series-2.80-1.i386.rpm 

 IJ Printer Driver Ver. 2.80 for Linux (Source file)
 cnijfilter-common-2.80-1.tar.gz

These archives are available at the following sites:

 Canon Australia - Drivers
 http://www.canon.com.au/drivers/

 Canon Singapore - Support & Download Search
 http://support-asia.canon-asia.com/

 Canon in Japan - "Software Download - Other OSes" (in Japanese)
 http://cweb.canon.jp/drv-upd/bj/other.html#linux

  5. Installing the binary package for iP4500, and a printing test

   5.1. Install

$ mkdir ip4500					# working directory
$ cd ip4500
$ rpm2cpio /PATH/TO/cnijfilter-ip4500series-2.80-1.i386.rpm | cpio -ivd
$ su
Password:
# cp -Ri ./usr /compat/linux/
# /compat/linux/sbin/ldconfig -r /compat/linux

   5.2. Printing test (ASCII text)

It uses a2ps (ports/print/a2ps-a4).

$ su
Password:
# a2ps -B --borders=no ascii-text.txt | \
gs -q -r600 -dSAFER -dNOPAUSE -dBATCH -sDEVICE=ppmraw -sOutputFile=- - | \
/compat/linux/usr/local/bin/cifip4500 --imageres 600 --media plain > \
/dev/ulpt0

  6. Compiling the Canon CUPS filter, and a printing test

   6.1. Compile

Extract the common source archive, and apply a patch:

 http://homepage2.nifty.com/dumb_show/unix/cnijfilter-common-2.80-freebsd.diff

The patch file is not my original.  I got a patch for "Canon Inkjet
Print Filter Ver.2.60 for Linux" from http://tabochan.f2g.net/pixus.html
(currently the site is down) and modified it for 2.70 and 2.80.

Then compile and install the necessary (not all) program.

$ mkdir common					# working directory
$ cd common
$ tar zxvf /PATH/TO/cnijfilter-common-2.80-1.tar.gz
$ patch < /PATH/TO/cnijfilter-common-2.80-freebsd.diff
$ cd cnijfilter-common-2.80/libs
$ ./autogen.sh
$ gmake
$ cd ../pstocanonij
$ ./autogen.sh
$ gmake
$ cd ../
$ su
Password:
# cp -i pstocanonij/filter/pstocanonij /usr/local/libexec/cups/filter/
# cp -i ppd/*.ppd /usr/local/share/cups/model/

   6.2. Printing test

Register the printer.

$ su
Password:
# /usr/local/etc/rc.d/cupsd restart
# lpadmin -p PIXUSIP4500 -m canonip4500.ppd -v usb:/dev/ulpt0 -E

Finally visit http://localhost:631/ with an web browser, and click
"Printers" -> "Print Test Page".


[1] The original text was posted to the FreeBSD Japansese mailing list.
    http://www.mail-archive.com/freebsd-users-jp@jp.freebsd.org/msg02592.html
---
WATANABE Kazuhiro (CQG00620 at nifty.ne.jp)


More information about the freebsd-questions mailing list