8

I have a Canon MG6450 with Wi-Fi enabled and an up-to-date Arch Linux installation with cnijfilter-mg4200 3.80-1 installed. I can see the printer in print dialogues (sometimes it takes a second to show up, presumably because it's being auto-discovered), I can select it, and I get no error message when clicking OK. However, the printer is completely oblivious to all this, it seems.

I've also tried connecting via USB. Afterwards the printer was not auto-detected by the print dialogue, but it was detected by system-config-printer, and I was able to configure and print with no problems. But it would be very nice to be able to print wirelessly.


It appears some fatal printing errors show up neither in the print dialogue nor in system-config-printer. Both of them simply report printer state as "Idle - Rendering completed". However, after going to the CUPS web interface and clicking the printer I finally got a hint - after each print job is the following message:

"The PPD version (5.2.11) is not compatible with Gutenprint 5.2.12. Please run `/usr/bin/cups-genppdupdate' as administrator."

OK then:

$ sudo /usr/bin/cups-genppdupdate
/etc/cups/ppd/Canon-PIXMA-MG6450.ppd: no valid candidate for replacement.  Skipping
/etc/cups/ppd/Canon-PIXMA-MG6450.ppd: please upgrade this PPD manually
Unable to retrieve PPD file for /etc/cups/ppd/Canon-PIXMA-MG6450.ppd!
Failed to update any PPD files

Now I'm seeing if anywhere has a compatible PPD. Canon's IJ Printer Driver Ver. 4.00 for Linux has PPD files for MG6400 and MG6500. I tried the MG6400 one, cleaned out the printer queue, and tried printing a test page. Now the CUPS web interface has no errors, but system-config-printer reports:

File "/usr/lib/cups/filter/pstocanonij" not available: No such file or directory

Looks like that file is available from cnijfilter-common, which currently can't be built. After following the instructions by c.gerhorst I have installed the package, but now the printer dialogue is complaining that /usr/lib/cups/filter/cmdtocanonij is missing.


There is a /usr/lib/cups/filter/commandtocanon. I've tried replacing cmdtocanonij with commandtocanon in /etc/cups/ppd/Canon-PIXMA-MG6450.ppd and running sudo systemctl daemon-reload and sudo systemctl restart org.cups.cupsd.service. Now I get no error message anywhere, but the print jobs just seem to disappear entirely. The printer shows no sign of receiving them, and the CUPS web interface shows any new jobs as first "processing", then "completed", without any indication that something is black-holing everything.

  • Have you tried connecting it with a usb cab;e or whatever the printer has? I doubt it would make much difference but just in case. – terdon Nov 24 '15 at 19:25
  • I have a cheaper Canon, an MG3250 or something like, and an Arch Linux laptop. Printing comes and goes, and CUPS is super finicky about low ink indicators. I'm awaiting a good answer to this one myself. – Bruce Ediger Nov 24 '15 at 22:30
  • Try navigating to http://localhost:631 , selecting administration > manage printers, select your printer and do administration > modify printer. Then step through the setup again. My guess is the discovery of your printer is out of date. I get that someimes myself, but I have HP. – starfry Dec 20 '16 at 14:29
  • The commandtocanon filter is not for general print jobs. It's meant to perform specific maintenance task, such as printing a test page, cleaning print heads and similar stuff. – Kurt Pfeifle Dec 15 '18 at 10:29
0

Is that particular printer IPP-enabled with AirPrint as well? If so, you may be able to use "driverless" printing (even though that possibly won't support all the bells and whistles which you can ring with Gutenprint).

1. Check IPP support:

Just run

ippfind

If you get a return, IPP is supported, and it will tell you the IPP-URI to address the printer.

2. Install the print queue:

Now run

lpadmin -p my_brother -v $IPP_URI -E -m everywhere

the -m everywhere will directly query the printer for details of all the IPP printing features it supports, and auto-generate a PPD for this printer to be used by all 'legacy' applications which don't know about IPP (yet). This way all print clients can use the CUPS queue as they were used to before....


(I am not familiar with Arch Linux -- I'm only aware of all its supporters being proud of its ability to run the "latest and greatest" in the software world. So I think I can assume a rather recent CUPS version for you, which is needed for the above to work -- now, that it's 2018 and three years after you asked your question...)

  • No, ippfind prints nothing and returns exit code 1. – l0b0 Feb 23 at 7:26

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.