1

I recently bought a Canon I-SENSYS LBP7010C printer, but I am having issues getting it to work on my Linux Mint 17 system. I installed the drivers from Canon's website successfully, but when I try to print something, it gets stuck on "Sending data to printer".

Driver

This is the driver I installed from Canon's website. It's called CAPT Printer Driver for Linux Version 2.70 (64-bit).

Following Ubuntu's DebuggingPrintingProblems

The printer is connected and powered on.

Open a terminal/console and check if the usb kernel modules are loaded

$ lsmod | grep usb
usblp                  22891  0 
usbhid                 52659  0 
hid                   106148  2 hid_generic,usbhid

Unplug the USB printer cable from your computer and enter this command:

$ tail -f /var/log/syslog 

Reconnect the USB printer cable, you should see some messages appearing.

Mar 30 14:55:09 mm-desktop kernel: [  506.224058] usb 1-8: new high-speed USB device number 5 using ehci-pci
Mar 30 14:55:09 mm-desktop kernel: [  506.361176] usb 1-8: New USB device found, idVendor=04a9, idProduct=271c
Mar 30 14:55:09 mm-desktop kernel: [  506.361182] usb 1-8: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Mar 30 14:55:09 mm-desktop kernel: [  506.361186] usb 1-8: Product: Canon CAPT USB Device
Mar 30 14:55:09 mm-desktop kernel: [  506.361189] usb 1-8: Manufacturer: Canon
Mar 30 14:55:09 mm-desktop kernel: [  506.361192] usb 1-8: SerialNumber: 0000A2F0Q78n
Mar 30 14:55:09 mm-desktop kernel: [  506.362903] usblp 1-8:1.0: usblp1: USB Bidirectional printer dev 5 if 0 alt 0 proto 2 vid 0x04A9 pid 0x271C
Mar 30 14:55:09 mm-desktop mtp-probe: checking bus 1, device 5: "/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-8"
Mar 30 14:55:09 mm-desktop mtp-probe: bus: 1, device: 5 was not an MTP device
Mar 30 14:55:09 mm-desktop udev-configure-printer: add /devices/pci0000:00/0000:00:1d.7/usb1/1-8
Mar 30 14:55:09 mm-desktop udev-configure-printer: device devpath is /devices/pci0000:00/0000:00:1d.7/usb1/1-8
Mar 30 14:55:09 mm-desktop udev-configure-printer: MFG:Canon MDL:LBP7010C/7018C SERN:- serial:0000A2F0Q78n
Mar 30 14:55:10 mm-desktop kernel: [  507.492381] usblp1: removed
Mar 30 14:55:10 mm-desktop kernel: [  507.496039] usblp 1-8:1.0: usblp1: USB Bidirectional printer dev 5 if 0 alt 0 proto 2 vid 0x04A9 pid 0x271C
Mar 30 14:55:10 mm-desktop hp[13602]: io/hpmud/pp.c 627: unable to read device-id ret=-1
Mar 30 14:55:10 mm-desktop python: io/hpmud/pp.c 627: unable to read device-id ret=-1
Mar 30 14:55:10 mm-desktop udev-configure-printer: URI contains USB serial number
Mar 30 14:55:10 mm-desktop udev-configure-printer: URI match: usb://Canon/LBP7010C/7018C?serial=0000A2F0Q78n
Mar 30 14:55:10 mm-desktop udev-configure-printer: URI of detected printer: usb://Canon/LBP7010C/7018C?serial=0000A2F0Q78n, normalized: canon lbp7010c 7018c serial 0000a2f0q78n
Mar 30 14:55:10 mm-desktop udev-configure-printer: URI of print queue: ccp://localhost:59787, normalized: ccp localhost 59787
Mar 30 14:55:10 mm-desktop udev-configure-printer: URI of print queue: usb://Canon/LBP7010C/7018C?serial=0000A2F0Q78n, normalized: canon lbp7010c 7018c serial 0000a2f0q78n
Mar 30 14:55:10 mm-desktop udev-configure-printer: Queue ipp://localhost:631/printers/LBP7010C-7018C has matching device URI

As you may see in the output, I have added two different CUPS entries for this printer. One was added as the printer was automatically detected by CUPS and one through the steps listed in CanonCaptDrv190.

Check whether the printer gets correctly detected by the USB subsystem and determine its USB vendor/product IDs and the USB bus and device addresses:

$ lsusb
Bus 001 Device 006: ID 04a9:271c Canon, Inc. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 0603:00f2 Novatek Microelectronics Corp. Keyboard (Labtec Ultra Flat Keyboard)
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 046d:c05a Logitech, Inc. M90/M100 Optical Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Check whether the device files for the printer get created and the ownerships ("root lp") and permissions (non-HP: "crw-rw-r--", HP: "crw-rw-r--+") correctly set:

$ ls -l /dev/usb/lp* /dev/bus/usb/*/*
crw-rw-r-- 1 root root 189,   0 mar 30 14:46 /dev/bus/usb/001/001
crw-rw-r-- 1 root lp   189,   5 mar 30 14:57 /dev/bus/usb/001/006
crw-rw-r-- 1 root root 189, 128 mar 30 14:46 /dev/bus/usb/002/001
crw-rw-r-- 1 root root 189, 129 mar 30 14:46 /dev/bus/usb/002/002
crw-rw-r-- 1 root root 189, 256 mar 30 14:46 /dev/bus/usb/003/001
crw-rw-r-- 1 root root 189, 257 mar 30 14:46 /dev/bus/usb/003/002
crw-rw-r-- 1 root root 189, 384 mar 30 14:46 /dev/bus/usb/004/001
crw-rw-r-- 1 root root 189, 512 mar 30 14:46 /dev/bus/usb/005/001
crw-rw---- 1 root lp   180,   1 mar 30 14:57 /dev/usb/lp1

There seems to be a problem here I didn't see before. /dev/usb/lp1 is actually missing read permission for others.

Determine the printer's device ID strings:

$ sudo usb_printerid /dev/usb/lp1
GET_DEVICE_ID string:
MFG:Canon;MDL:LBP7010C/7018C;CMD:CAPT;VER:3.0;CLS:PRINTER;DES:Canon LBP7010C/7018C

Find out if your printer gets detected by CUPS:

$ lpinfo -v
network ipp14
direct usb://Canon/LBP7010C/7018C?serial=0000A2F0Q78n
direct ccp
network lpd
network http
network ipp
network https
network socket
serial serial:/dev/ttyS0?baud=115200
network ipps
network smb
direct parallel:/dev/lp0

syslog

What follows is my syslog for the process of plugging in and turning the printer on, adding it through system-config-printer and then attempting to print out a test page when prompted.

Mar 23 15:29:39 mm-desktop kernel: [ 4318.648033] usb 1-8: new high-speed USB device number 9 using ehci-pci
Mar 23 15:29:39 mm-desktop kernel: [ 4318.783740] usb 1-8: New USB device found, idVendor=04a9, idProduct=271c
Mar 23 15:29:39 mm-desktop kernel: [ 4318.783746] usb 1-8: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Mar 23 15:29:39 mm-desktop kernel: [ 4318.783749] usb 1-8: Product: Canon CAPT USB Device
Mar 23 15:29:39 mm-desktop kernel: [ 4318.783753] usb 1-8: Manufacturer: Canon
Mar 23 15:29:39 mm-desktop kernel: [ 4318.783756] usb 1-8: SerialNumber: 0000A2F0Q78n
Mar 23 15:29:39 mm-desktop kernel: [ 4318.785433] usblp 1-8:1.0: usblp1: USB Bidirectional printer dev 9 if 0 alt 0 proto 2 vid 0x04A9 pid 0x271C
Mar 23 15:29:39 mm-desktop mtp-probe: checking bus 1, device 9: "/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-8"
Mar 23 15:29:39 mm-desktop mtp-probe: bus: 1, device: 9 was not an MTP device
Mar 23 15:29:39 mm-desktop udev-configure-printer: add /devices/pci0000:00/0000:00:1d.7/usb1/1-8
Mar 23 15:29:39 mm-desktop udev-configure-printer: device devpath is /devices/pci0000:00/0000:00:1d.7/usb1/1-8
Mar 23 15:29:39 mm-desktop udev-configure-printer: MFG:Canon MDL:LBP7010C/7018C SERN:- serial:0000A2F0Q78n
Mar 23 15:29:40 mm-desktop kernel: [ 4319.829770] usblp1: removed
Mar 23 15:29:40 mm-desktop kernel: [ 4319.832654] usblp 1-8:1.0: usblp1: USB Bidirectional printer dev 9 if 0 alt 0 proto 2 vid 0x04A9 pid 0x271C
Mar 23 15:29:40 mm-desktop hp[3477]: io/hpmud/pp.c 627: unable to read device-id ret=-1
Mar 23 15:29:40 mm-desktop python: io/hpmud/pp.c 627: unable to read device-id ret=-1
Mar 23 15:29:40 mm-desktop udev-configure-printer: no corresponding CUPS device found
Mar 23 15:30:13 mm-desktop dbus[520]: [system] Activating service name='org.freedesktop.hostname1' (using servicehelper)
Mar 23 15:30:13 mm-desktop dbus[520]: [system] Successfully activated service 'org.freedesktop.hostname1'
Mar 23 15:30:13 mm-desktop kernel: [ 4352.312742] systemd-hostnamed[3500]: Warning: nss-myhostname is not installed. Changing the local hostname might make it unresolveable. Please install nss-myhostname!
Mar 23 15:30:18 mm-desktop dbus[520]: [system] Activating service name='org.opensuse.CupsPkHelper.Mechanism' (using servicehelper)
Mar 23 15:30:18 mm-desktop dbus[520]: [system] Successfully activated service 'org.opensuse.CupsPkHelper.Mechanism'
Mar 23 15:30:18 mm-desktop kernel: [ 4357.479407] usblp1: removed
Mar 23 15:30:18 mm-desktop kernel: [ 4357.490463] usblp 1-8:1.0: usblp1: USB Bidirectional printer dev 9 if 0 alt 0 proto 2 vid 0x04A9 pid 0x271C
Mar 23 15:30:18 mm-desktop hp[3524]: io/hpmud/pp.c 627: unable to read device-id ret=-1
Mar 23 15:30:18 mm-desktop python: io/hpmud/pp.c 627: unable to read device-id ret=-1
Mar 23 15:30:43 mm-desktop colord: Profile added: Canon-LBP7010C-7018C-Gray..
Mar 23 15:30:43 mm-desktop colord: Profile added: Canon-LBP7010C-7018C-RGB..
Mar 23 15:30:43 mm-desktop colord: Device added: cups-Canon-LBP7010C-7018C
Mar 23 15:30:47 mm-desktop kernel: [ 4386.398394] usblp1: removed

There are no messages in /var/log/cups/error_log.

Things I have tried

  • Installed the drivers for my MacBook and got it to work there.
  • Restarted the printer, computer and cups service.
  • Installing printer-driver-cjet.
  • Adding myself to lp and lpadmin groups.
  • Following the Ubuntu guide CanonCaptDrv190. Most notably I added the printer again with lpadmin (see below) and installed a broken dependency for captfilter. Doing this, I discovered a new entry in /dev/usb/lp1 (shown above).

Update: printer thorugh lpadmin

Using the new printer I added, jobs finish, but nothing is really printed. Running captstatusui -P LBP7010C shows the UI saying "Communication error".

Update: /dev entries

After making some changes, I discovered a new entry: /dev/usb/lp1. I tried setting both that and /dev/lp0 as devpath in ccpd.conf.

# Canon Printer Daemon for CUPS Configuration Data

<Path>
# CUPS configuration file path.
#  Default  /etc/cups/

CUPS_ConfigPath   /etc/cups/

# Log directory path.
#  LogDirectoryPath /var/log/CCPD/

</Path>

<Printer LBP7010C>
DevicePath /dev/usb/lp0
</Printer>

<Ports>
# Status monitoring socket port.
#  Default 59787
UI_Port  59787
PDATA_Port  59687
</Ports>

Update: Printing!

I don't know exactly what I did, but I can now sometimes print pages. It works at least after just restarting the printer, though the printed pages are very faint. I don't know the cause of this, but following Canon's FAQ suggests the toner cartridges have run out. I fail to see how this can be the case with a brand new printer, but nothing else on that list seems plausible.

  • Add a link to the Canon drivers you installed, please. And you've probably seen askubuntu.com/a/392598/15729 already, but just in case...Also, ubuntuforums.org/showthread.php?t=2135549 – Faheem Mitha Mar 23 '16 at 15:49
  • Hi, thanks for your comment! I'll add the link to the post, and also take a look at those links as soon as I can. – jacwah Mar 25 '16 at 0:53
  • This is unlikely to be your problem, but there is a comment in the logs, namely "systemd-hostnamed[3500]: Warning: nss-myhostname is not installed. Changing the local hostname might make it unresolveable. Please install nss-myhostname!" The only match on Debian is libnss-myhostname, so you could try installing that. – Faheem Mitha Mar 25 '16 at 8:18
  • "io/hpmud/pp.c 627: unable to read device-id ret=-1" is pretty clearly an error. Googling for that brings up some hits. Check if you are in the lp group, and if not, add yourself. Also lpadmin for good measure. Remember to log out and back in again. – Faheem Mitha Mar 25 '16 at 8:23
  • Also, post the relevant portions of /etc/cups/printers.conf. – Faheem Mitha Mar 25 '16 at 8:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.