Canon CAPT Printer

This page explains setup and configuration of Canon CAPT Printers.

Introduction
The Canon i-Sensys series of laser printers are supported under CUPS by Canon's proprietary Canon Advanced Printing Technology (CAPT) backend.

Supported models are: LBP9100C, LBP7210Cdn, LBP7200C series, LBP7200Cdn (network mode), LBP7018C, LBP7010C, LBP6310dn, LBP6300, LBP6300n, LBP6200, LBP6020, LBP6018, LBP6000, LBP5300, LBP5100, LBP5050 series, LBP5000, LBP3500, LBP3310, LBP3300, LBP3250, LBP3210, LBP3200, LBP3150, LBP3108, LBP3100, LBP3050, LBP3018, LBP3010, LBP3000, LBP2900, LBP-1210, LBP-1120, LBP-810

cups
Make sure is installed:

The cups service must be started before the driver(s) can be installed.

OpenRC
If OpenRC is used, then the following command can be issued to start the cups service.

To have it started automatically at boot time, use rc-update:

Installing the drivers
Drivers are located on Gentoo's Bugzilla: https://bugs.gentoo.org/show_bug.cgi?id=130612

Latest version being 2.60 in ebuilds inside archive: https://bugs.gentoo.org/attachment.cgi?id=404004 For using it you would need to create Local overlay explained on page Overlay/Local overlay.

Follow instructions in Creating a local overlay section.

Download archive net-print-cndrvcups.tar.gz and unpack it in created overlay. It contains two ebuilds: net-print/cndrvcups-capt and net-print/cndrvcups-common.

If your local overlay location is: /usr/local/portage you should have directories: /usr/local/portage/net-print/cndrvcups-common /usr/local/portage/net-print/cndrvcups-capt

In that case you will need to issue this commands to be able to emerge ebuilds:

After that you will need to emerge them (net-print/cndrvcups-capt depends on net-print/cndrvcups-common):

If you are using USB printer you will need usblp kernel module which is by default blacklisted by net-print/cups, easiest way around this is recompiling cups with USE="-usb". usbplp module is creating /dev/usb/lp0 device used for communicating with printer.

Currently only use flag is USE="-cngplp", disabled by default and is creating some GUI that is not really interesting and needed. And creates multiple issues with compiling this drivers.

CUPS
First the printer needs to be registered with CUPS using lpadmin:

The printer driver file can be found in /usr/share/cups/model. For the printer model, use the ShortNickName found inside the PPD, or take it directly from the file name, for example CNCUPSLBP6310CAPTK.ppd

Alternatively you could check the table provided on the Ubuntu help page, which matches each supported printer with its corresponding PPD.

For example, for the Canon LBP6310dn (UK model) you would enter

CAPT
Next you'll need to register the printer with the CAPT driver itself via ccpdadmin:

USB printers
e.g.

network printers
e.g.

Starting service
After this you will need to start ccpd service:

Status Monitor
The driver includes a status monitor which can be launched with

e.g.

If you only want the status monitor to pop up when a problem occurs, simply append the -e switch:

You may want to add this to your startup folder/script

Alternatives
While searching for solutions of your problems with some of this printers you will get to this pages, eventualy:

http://sourceforge.net/projects/foo2capt/

http://www.boichat.ch/nicolas/capt/

Those were really nice open source drivers, that were actually working at the time, but only had one release. It would be nice if someone would take over those projects and keep them alive. Until then, we will have to use official ones.

100% CPU
This is known to happen. ccpd service must be started after cupsd and udevd.

module usblp
If Status monitor reports error "Check the DevicePath of /etc/ccpd.conf", then you probably don't have usblp kernel module. Run the following command:

lsmod | grep usblp

If it outputs nothing, load the module and restart ccpd:

usblp has been deprecated by CUPS and might not be automatically loaded when you connect your USB printer.

If the status monitor works but printing does not, make sure that /var/ccpd/fifo0 actually exists:

{{Cmd|ls -l /var/ccpd}

When missing, it can be added manually:

CUPS
Use cups web interface to detect problem http://localhost:631 it can help with different issues. Since Canon's this drivers are notorious for not providing any debug information.

64-bit Systems
Proprietary part of this module is complied for 32-bit systems. This can cause problems mostly related to libc6 and libpopt0 libraries on which it depends. You can check that with:

Additionally linked ebuilds are only tested for x86.

(I hope someone with amd64 will be able to provide support or more info.)

Bugs
Expect them. And please report bugs/problems you have with ebuilds to https://bugs.gentoo.org/show_bug.cgi?id=130612

Related Links/Additional Information
[Setting up CAPT printers on Ubuntu] [Setting up CAPT printers on Arch Linux]