I'm having some dificutlies using gutenprint52+usb for my Canon Selphy 1200. I've tried both 5.3.11 and the cvs version, but the gutenprint52+usb won't identify my printer.
Printing with the ordinary usb backend works unless you queue one job at a time (which might happen in the photo booth I'm building). Queing two jobs hangs the printer.
CUPS only identifies the usb backend, changing the backend manually throws a
"Printer open failure (No matching printers found!)"
sudo BACKEND=canonselphy /usr/lib/cups/backend/gutenprint52+usb -i
DEBUG: Multi-Call Dye-sublimation CUPS Backend version 0.63G
DEBUG: Copyright 2007-2016 Solomon Peachy
DEBUG: This free software comes with ABSOLUTELY NO WARRANTY!
DEBUG: Licensed under the GNU GPL. Run with '-G' for more details.
DEBUG:
ERROR: Printer open failure (No matching printers found!)
On Wed, Jun 15, 2016 at 08:04:53PM +0000, Mattias Ottosson wrote:
I'm having some dificutlies using gutenprint52+usb for my Canon Selphy
1200. I've tried both 5.3.11 and the cvs version, but the
gutenprint52+usb won't identify my printer.
That's because the newest Selphy printers use an entirely different
backend protocol than the older ones -- and appear to be standard,
correct USB printer class devices.
Printing with the ordinary usb backend works unless you queue one job
at a time (which might happen in the photo booth I'm building). Queing
two jobs hangs the printer.
Oh, yuck. Maybe the printer still isn't a proper USB class printer
then, as that species sane flow control..
Just so I'm sure, you're printing stuff via the system CUPS queue rather
than manually chaining your own printing setup together?
In the short term, you may have better luck using the selphy_go code
that works via wifi printing. I forked it to fix a small pile of bugs
and you can get it here:
I haven't been motivated to write a dedicated backend for this thing,
because it looked like the Windows driver didn't do anything other than
just dump raw data over to the printer too...
- Solomon
Solomon Peachy pizza at shaftnet dot org
Delray Beach, FL ^^ (email/xmpp) ^^
Quidquid latine dictum sit, altum viditur.
Ah, thought that CP1200 maybe was included in the dye-sublimation backend as is says in the readme:
"Canon SELPHY CP series (All models except for CP820 and CP910)"
Sorry for beeing a bit of a noob, printing via command line lp: lp -d Canon_SELPHY_CP1200 photosrgb.jpg
I tried the selphy_go code, seems to be the most stable solution for now. However, the booth is going to be at a pretty croded spot wifi-wise, so a cable always feels a bit more reliable. Not in this case though ;)
Also tried lp via airprint over usb in os x. That works too, but unless the images have a embedded srgb profile the printer rejectes them as "unrecognized data" which feels a bit odd.
Thank you so much for your (fast) answer!
Last edit: Mattias Ottosson 2016-06-15
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
On Wed, Jun 15, 2016 at 09:23:02PM +0000, Mattias Ottosson wrote:
Ah, thought that CP1200 maybe was included in the dye-sublimation backend as is says in the readme:
"Canon SELPHY CP series (All models except for CP820 and CP910)"
Yeah, that text has since been ammended to include the newer models.
I tried the selphy_go code, seems to be the most stable solution for
now. However, the booth is going to be at a pretty croded spot
wifi-wise, so a cable always feels a bit more reliable. Not in this
case though ;)
It also results in better output quality, since the printer natively
translates the jpeg into the printer's underlying format. Going over
USB requires multiple colorspace conversions (jpeg (YCrCb) -> RGB ->
YCrCb -> YMC ) that leave me wondering just what Canon was thinking.
Also tried lp via airprint over usb in os x. That works too, but
unless the images have a embedded srgb profile the printer rejectes
them as "unrecognized data" .
That's funny, as the printer doesn't ened a profile if you print via
wifi/selphy_go. Maybe it has to do with OSX or the canon drivers
there..
Thank you so much for your (fast) answer!
I know far more than one should ever have to when it comes to the Selphy
printers. It's disappointing to see Canon taking a few steps backwards
with their newer ones.
- Solomon
Solomon Peachy pizza at shaftnet dot org
Delray Beach, FL ^^ (email/xmpp) ^^
Quidquid latine dictum sit, altum viditur.
I'm also trying to build a photobooth using the SELPHY CP1200. I managed to build gutenprint, and printer is recognized, but getting the following error when I push a file to print. Is this related to the issues you are having or completely separate?
thought i'd follow up on this. Turns out after some research that the error I was facing was because I had edit the photo in Lightroom before editting. Seem like any edits will render the above error. I tried to print with pictures straight out of the camera and everything works as expected.
Hope this help anyone out with a similar error.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
That is exactly my error.. I'm totally fine with the printer and the driver. I'm using it also in a photobooth and via USB. Is there a way to fix this issue on the CP1200 as I really don't want to relay on wifi :-/
Last edit: pixelbash 2016-12-02
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I recall from my initial bringup work that there didn't appear to be any flow control or status messages being sent back and forth under Windows. But I'll look into this and see if I can uncover anything.
FWIW, Canon seems to prefer that folks use wifi, even under windows. I have the beginnings of a native wifi backend in the works, but it's a low, low priority for me.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
That would be so great! Thank you very much. I'm very curious to see what that bug is about in the end.
What tools do you use to check the messages sent back and forth under windows?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I haven't tried for a while either. :D
Is the 'backend_canonselphyneo.c' the custom backend you had to create back in December?
If not, is there a way to check the current status of the printer via python or so? That way I'm able to create a custom printer queue, that will only print if the status is "Idle".
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Sorry to add to this thread, but I have been struggling with the Canon Selphy CP1200 and a raspberry pi running "Jessie". I've tried with gutenprint 5.2.10, installed the selphy_print package from solomon's git site, and started over with a fresh OS install 3-4 times after trying the stretch testing installs after getting the printer working on the CP910 driver but also having the issue where it crashes the printer if more than one file gets queued for printing...
Now I'm using Jessie standard distribution, with Cups 1.7.5 and I managed to get Gutenprint 5.2.12 compiled/installed with the CUPS backend and added my printer in cups, and it shows up correctly with the canonselphyneo backend and the CP1200 driver and prints a test page perfectly.
But, when I try to print a jpeg from the commandline with
lp -d Canon_SELPHY_CP1200 ~/file.jpg
...I get a print with a single 1-2mm wide 6 inch long line of each ink color on top of each other from one end of the page to the other. (so after printing the 3 colors and the clearcoat, there's a long black line on the print...)
On a whim, I tried converting the jpeg to tiff and that tiff printed perfectly.
So it seems like there is some problem with the jpeg filters/conversion somewhere along the print process. My /var/log/cups/error_log only shows the following entries after trying to print the jpeg. CUPS Debug logging is on.
D [07/May/2017:19:40:54 -0700] cupsdMarkDirty(---J-)
D [07/May/2017:19:40:54 -0700] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs and dirty files"
D [07/May/2017:19:40:54 -0700] cupsd is not idle any more, canceling shutdown.
D [07/May/2017:19:40:55 -0700][Job 9] Unloading...
D [07/May/2017:19:40:55 -0700] cupsd is not idle any more, canceling shutdown.
I [07/May/2017:19:41:09 -0700] Saving printers.conf...
I [07/May/2017:19:41:09 -0700] Saving job.cache...
D [07/May/2017:19:41:09 -0700] cupsdSetBusyState: newbusy="Not busy", busy="Printing jobs and dirty files"
D [07/May/2017:19:41:09 -0700] cupsd is not idle any more, canceling shutdown.
I have verified that libjpeg-dev was installed.
I found some directions for how to capture the files sent to the print queue to see if I can figure out how they differ and they are in the attached zip file. The "appoutjpg" and "appouttif" files are the files captured from the CP1200 print queue when the printer is disabled. The "printoutjpg" and "printouttif"files are the output file if I clone the CP1200 printer to print to a file, per the instructions on this website: https://wiki.ubuntu.com/DebuggingPrintingProblems
If anyone else has any suggestions or has heard of this problem before, I'd be very appreciative. I can provide other log/debugging output as requested.
Gutenprint 5.2.10 combined with the latest selphy_print code should have worked out fine, with no "hang" from multiple jobs -- as long as you added the printer after installing selphy_print.
As for why jpeg images are failing -- keep in mind that the image conversion filters aren't actually part of 'cups'; instead they're part of 'cups-filters'. That said, jpeg or tiff, it's still going through the same 'imagetoraster' filter, so there may be something funky with the images themselves.
One thing I see is that the jpg and tiff files include EXIF blobs. It's possible something in there is responsible for the filter going wrong. I suggest stripping that off the jpeg (including getting rid of the thumbnail) and see what happens.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi!
I'm having some dificutlies using gutenprint52+usb for my Canon Selphy 1200. I've tried both 5.3.11 and the cvs version, but the gutenprint52+usb won't identify my printer.
Printing with the ordinary usb backend works unless you queue one job at a time (which might happen in the photo booth I'm building). Queing two jobs hangs the printer.
CUPS only identifies the usb backend, changing the backend manually throws a
"Printer open failure (No matching printers found!)"
Any help would be much appriciated!
On Wed, Jun 15, 2016 at 08:04:53PM +0000, Mattias Ottosson wrote:
That's because the newest Selphy printers use an entirely different
backend protocol than the older ones -- and appear to be standard,
correct USB printer class devices.
Oh, yuck. Maybe the printer still isn't a proper USB class printer
then, as that species sane flow control..
Just so I'm sure, you're printing stuff via the system CUPS queue rather
than manually chaining your own printing setup together?
In the short term, you may have better luck using the selphy_go code
that works via wifi printing. I forked it to fix a small pile of bugs
and you can get it here:
http://git.shaftnet.org/cgit/users/pizza/public/selphy_go.git/
I haven't been motivated to write a dedicated backend for this thing,
because it looked like the Windows driver didn't do anything other than
just dump raw data over to the printer too...
- Solomon
Solomon Peachy pizza at shaftnet dot org
Delray Beach, FL ^^ (email/xmpp) ^^
Quidquid latine dictum sit, altum viditur.
Ah, thought that CP1200 maybe was included in the dye-sublimation backend as is says in the readme:
"Canon SELPHY CP series (All models except for CP820 and CP910)"
Sorry for beeing a bit of a noob, printing via command line lp:
lp -d Canon_SELPHY_CP1200 photosrgb.jpg
I tried the selphy_go code, seems to be the most stable solution for now. However, the booth is going to be at a pretty croded spot wifi-wise, so a cable always feels a bit more reliable. Not in this case though ;)
Also tried lp via airprint over usb in os x. That works too, but unless the images have a embedded srgb profile the printer rejectes them as "unrecognized data" which feels a bit odd.
Thank you so much for your (fast) answer!
Last edit: Mattias Ottosson 2016-06-15
On Wed, Jun 15, 2016 at 09:23:02PM +0000, Mattias Ottosson wrote:
Yeah, that text has since been ammended to include the newer models.
It also results in better output quality, since the printer natively
translates the jpeg into the printer's underlying format. Going over
USB requires multiple colorspace conversions (jpeg (YCrCb) -> RGB ->
YCrCb -> YMC ) that leave me wondering just what Canon was thinking.
That's funny, as the printer doesn't ened a profile if you print via
wifi/selphy_go. Maybe it has to do with OSX or the canon drivers
there..
I know far more than one should ever have to when it comes to the Selphy
printers. It's disappointing to see Canon taking a few steps backwards
with their newer ones.
- Solomon
Solomon Peachy pizza at shaftnet dot org
Delray Beach, FL ^^ (email/xmpp) ^^
Quidquid latine dictum sit, altum viditur.
Hi Solomon/Mattias,
I'm also trying to build a photobooth using the SELPHY CP1200. I managed to build gutenprint, and printer is recognized, but getting the following error when I push a file to print. Is this related to the issues you are having or completely separate?
Thanks for your help,
Matthew
thought i'd follow up on this. Turns out after some research that the error I was facing was because I had edit the photo in Lightroom before editting. Seem like any edits will render the above error. I tried to print with pictures straight out of the camera and everything works as expected.
Hope this help anyone out with a similar error.
That is exactly my error.. I'm totally fine with the printer and the driver. I'm using it also in a photobooth and via USB. Is there a way to fix this issue on the CP1200 as I really don't want to relay on wifi :-/
Last edit: pixelbash 2016-12-02
I recall from my initial bringup work that there didn't appear to be any flow control or status messages being sent back and forth under Windows. But I'll look into this and see if I can uncover anything.
FWIW, Canon seems to prefer that folks use wifi, even under windows. I have the beginnings of a native wifi backend in the works, but it's a low, low priority for me.
That would be so great! Thank you very much. I'm very curious to see what that bug is about in the end.
What tools do you use to check the messages sent back and forth under windows?
@Solomon: I saw you recently edited "backend_canonselphy.c" - is it worth giving that a new try on my CP1200? Thanks for a short reply :)
Last edit: pixelbash 2017-04-12
the CP1200 uses 'backend_canonselphyneo.c' instead, which hasn't been updated for a little while -- and even then, only to add in missing USB PIDs.
I haven't tried for a while either. :D
Is the 'backend_canonselphyneo.c' the custom backend you had to create back in December?
If not, is there a way to check the current status of the printer via python or so? That way I'm able to create a custom printer queue, that will only print if the status is "Idle".
Yep, that's what I did in December. Gutenprint 5.2.12 included it, and as far as I am aware, it pretty much just works.
There's no general "query status" hook, though I have it on my to-do list to add it.
Thank you so much. It works like a charm. Excelent :-)
Sorry to add to this thread, but I have been struggling with the Canon Selphy CP1200 and a raspberry pi running "Jessie". I've tried with gutenprint 5.2.10, installed the selphy_print package from solomon's git site, and started over with a fresh OS install 3-4 times after trying the stretch testing installs after getting the printer working on the CP910 driver but also having the issue where it crashes the printer if more than one file gets queued for printing...
Now I'm using Jessie standard distribution, with Cups 1.7.5 and I managed to get Gutenprint 5.2.12 compiled/installed with the CUPS backend and added my printer in cups, and it shows up correctly with the canonselphyneo backend and the CP1200 driver and prints a test page perfectly.
But, when I try to print a jpeg from the commandline with
lp -d Canon_SELPHY_CP1200 ~/file.jpg
...I get a print with a single 1-2mm wide 6 inch long line of each ink color on top of each other from one end of the page to the other. (so after printing the 3 colors and the clearcoat, there's a long black line on the print...)
On a whim, I tried converting the jpeg to tiff and that tiff printed perfectly.
So it seems like there is some problem with the jpeg filters/conversion somewhere along the print process. My /var/log/cups/error_log only shows the following entries after trying to print the jpeg. CUPS Debug logging is on.
D [07/May/2017:19:40:54 -0700] cupsdMarkDirty(---J-)
D [07/May/2017:19:40:54 -0700] cupsdSetBusyState: newbusy="Printing jobs and dirty files", busy="Printing jobs and dirty files"
D [07/May/2017:19:40:54 -0700] cupsd is not idle any more, canceling shutdown.
D [07/May/2017:19:40:55 -0700] [Job 9] Unloading...
D [07/May/2017:19:40:55 -0700] cupsd is not idle any more, canceling shutdown.
I [07/May/2017:19:41:09 -0700] Saving printers.conf...
I [07/May/2017:19:41:09 -0700] Saving job.cache...
D [07/May/2017:19:41:09 -0700] cupsdSetBusyState: newbusy="Not busy", busy="Printing jobs and dirty files"
D [07/May/2017:19:41:09 -0700] cupsd is not idle any more, canceling shutdown.
I have verified that libjpeg-dev was installed.
I found some directions for how to capture the files sent to the print queue to see if I can figure out how they differ and they are in the attached zip file. The "appoutjpg" and "appouttif" files are the files captured from the CP1200 print queue when the printer is disabled. The "printoutjpg" and "printouttif"files are the output file if I clone the CP1200 printer to print to a file, per the instructions on this website: https://wiki.ubuntu.com/DebuggingPrintingProblems
If anyone else has any suggestions or has heard of this problem before, I'd be very appreciative. I can provide other log/debugging output as requested.
Thanks!
Nate
Last edit: Nate C 2017-05-08
Gutenprint 5.2.10 combined with the latest selphy_print code should have worked out fine, with no "hang" from multiple jobs -- as long as you added the printer after installing selphy_print.
As for why jpeg images are failing -- keep in mind that the image conversion filters aren't actually part of 'cups'; instead they're part of 'cups-filters'. That said, jpeg or tiff, it's still going through the same 'imagetoraster' filter, so there may be something funky with the images themselves.
One thing I see is that the jpg and tiff files include EXIF blobs. It's possible something in there is responsible for the filter going wrong. I suggest stripping that off the jpeg (including getting rid of the thumbnail) and see what happens.
Thanks Solomon,
I'll try these things tonight.