CUPS Dyesub Backends

This is my personal to-do list for printer-related tasks, encompassing both changes to Gutenprint ( and the CUPS backends (

IDTask TypeCategorySummaryStatusLast Edited
 553 Bug ReportCanon Selphy CP/ES Back-to-back CP1200 prints hang the printer Closed2016-12-03 Task Description

User repors that back-to-back prints cause the printer to hang.  This is with the stock USB backend that relies on standard flow control.

Fixing this will first require printing stuff back-to-back under Windows and sniffing it to see if there's any flow control in use.  Bleh

 552 Feature RequestCanon Selphy CP/ES Write network backend for CPnP printers Closed2019-01-30 Task Description

The 'selphy_go' code showed how to detect CPnP models and send JPGs over to be printed..

Using the CP900, I discovered how to send raw YMC data over CPnP.  This means we can write a native CPnP CUPS+Gutenprint backend for that model.

Unfortunately we won't know if the newer selphyneo models support non-jpeg CPnP printing -- The Windows driver uses WSA/WSD and Macs appear to use AirPrint.  The only way to find out is to write it first.

 551 Feature RequestMitsubishi CP9xxx family Add CP-9600, CP-9800, CP-9810 support to CP-9550 backen ...Closed2016-12-03 Task Description

They're all closely related, so this is the right thing to do.

 550 TODOMitsubishi CP-Dxx family Verify support for D707 Closed2018-09-18 Task Description

Code's complete, but needs to be verified.


548Feature RequestShinko CHC-S6145Add support for Sinfonia CHC-S6145-5A (aka CS2-c)New2017-11-24 Task Description

It's a card-sized variant of the CS2.  89mm cards of various widths.

 547 Feature RequestCommon Code Add printer icons to Gutenprint Closed2016-10-13 Task Description

*OPIcon Manufacturer: "...."

*OPIcon ModelName: "...."

The data is UUEncoded/Base64 64x64 PNG or an SVG image.


I see printers.xml gaining a reference to the image files, and the PPD generation code reading the image, encoding it, and shoving it into the PPD.  It's a minor thing, but nice to have.


 546 Feature RequestCommon Code Extend Gutenprint's option infrastructure to allow for  ...Closed2016-09-09 Task Description

The work's done, but it's not merged yet.

 545 Bug ReportCanon Selphy CP/ES Figure out how to make the CP820/CP910/CP1000/CP1200 ac ...Closed2017-04-21 Task Description

It would be *really* nice if we could figure out a way to ditch the component Y'CbCr output and use native YMC, but it's likely that only Canon ultimately knows if that's possible, and how.

 544 Feature RequestDNP/Citizen Investigate and support new RX1HS Closed2016-10-07 Task Description

DNP's introduced the RX1HS to replace the RX1.  I'm told it's the same hardware, but requires different media.

Initial investigation shows it's added some features that were first introduced in the DS620.  (iSerial support, maybe more).  Backend changes will likely be minimal, but Gutenprint may require a tweak to expose any new features.

Further work will have to work until I get documentation or access to a printer.

543Feature RequestSony UP-D printersIntestigate Color Sony MedSci modelsRequires testing2019-04-21 Task Description

 UP-DR80MD, UP-DR25MD, UP-DR23MD, and so forth.

 541 Feature RequestMitsubishi CP-Dxx family Validate Mitsubishi CP-D90 support Closed2018-05-20 Task Description

It looks like it's an evolution of the D70 family, with one critical exception -- it appears as if the color/thermal compensation is performed in the printer instead of the driver!

 540 TODOOther printers Investigate Fuji ASK 2000/2500/4000 (aka Nidec Copal DP ...Closed2019-01-29 Task Description

They are all related; The 4000 is an 8" version, and the 2000 is an older, slower version of the 2500, both 6" models.


All are rebadged versions of Nidec Copal printers -- ASK4000 == DPB-4000C1, ASK2500 == DPB-7000, ASK2000 == DPB-6000

 539 TODODNP/Citizen Consolidate CW-01 and DNP backends Closed2018-09-18 Task Description

There's a great deal of overlap; the main difference is the format of the print job. It may make sense to fold the CW-01 stuff into the DNP backend (including the spool format), but alternatively perhaps just a shared library?

 538 Feature RequestDNP/Citizen Add support for DS80DX Closed2019-05-21 Task Description

It has all the joy of the DS80, but also supports sheet-fed simplex and duplex operation. It's a veritable mess to support cleanly.

537Feature RequestOther printersWrite backend for Shinko DP-1045 and Kodak D4000New2019-05-14 Task Description

Aka ColorStream D3

They're the same thing, an 8" wide duplex printer. No support in Gutenprint yet.

 536 TODOCommon Code Consolidate Shinko backend code Closed2016-01-14 Task Description

Shinko S1245 and Kodak 68x0 (very closely related)

Shinko S2145
Shinko S6245
Shinko S6145 (sort of a special case due to the image library)

Kodak 605 (AKA Shinko S1545) (similar to S2145?)

And for those not yet written:

Brava 21 (AKA Shinko S6145!)
Kodak 8810 (AKA Shinko S1845) (similar to S6245?)
Kodak 70xx (AKA Shinko S1645)
Kodak D4000 (Aka Shinko DP-1045)

535Feature RequestOther printersWrite backend for Kodak 8810 and 7000/7010/7015Assigned2019-05-21 Task Description

The 8810 is also known as a Shinko CHC-S1845-5A.

It appears closer to the S1245 mechanically, but S6245 programically.

The 7000/7010/7015 models are Shinko CHC-S1645-5A/5B/5C, respectively.

Probably not worth wasting any time on unless someone steps up with docs and hardware.

 534 Feature RequestOther printers Write backend for S6145 Closed2015-12-06 Task Description

This is a sibling of the Mitsu D70 family, but differing in that it uses Shinko's own protocol that's similar to the other Shinko models.

It will need its own backend; however the backend needs to deal with color scaling/dithering. I have binary x86/x86_64 libraries that implement this algorithm, but that is not acceptible for use with GPL code.

533TODOShinko CHC-S6245Verify support for S6245 (and HiTi P910L)Requires testing2019-04-10 Task Description

Code complete, but needs testing.

 532 TODOShinko CHC-S1245 Verify support for S1245 Closed2018-01-27 Task Description

Code complete, but needs testing.

 531 Bug ReportMitsubishi CP-Dxx family Mitsu K60 and Kodak305 don't work properly Closed2016-09-01 Task Description

There's something funky with the backend.

 530 Feature RequestMitsubishi CP-Dxx family Reverse-engineer color scaling/dithering algorithm Closed2016-10-07 Task Description

Mitsubishi CP-D70, D707, K60, D80, and their siblings (Kodak 305, Fuji ASK300) all rely on the driver to dither/scale their output data based on an unknown algorithm.

Figure out what this is, so that these printers can be properly supported.

 529 Feature RequestOther printers Investigate Kodak 8800 Closed2016-10-18 Task Description

The 8800 seems to be related to the Kodak 9810

 528 Feature RequestMitsubishi CP-Dxx family Investigate the CP-D80DW Closed2015-07-23 Task Description

At first blush it looks like the "professional" version of the K60DW-S with higher-speed operation.

Should be straightforward.

 526 Bug ReportCanon Selphy CP/ES CP900 not printing properly. Closed2014-10-30 Task Description

it prints the first page successfully, then keels over.

 525 Bug ReportMitsubishi CP-Dxx family Output on CP-D70 is way too dark Closed2015-07-23 Task Description

This suggests we need to apply a correction curve to the raw 16-bit data sent to the printer.

Uncertain if user was using the ICC profile.

Unfortunately it'll probably take some careful analysis of printing calibration targets to come up with an appropriate correction factor.

 524 Feature RequestOther printers Figure out Mitsibishi CP-D9550's USB comms. Closed2015-07-23 Task Description

It looks like this printer needs a backend.

Also, the '-S' suffixed models probably use a different comms mechanism.

 523 Feature RequestCommon Code Proper media/ribbon status messages Closed2016-08-21 Task Description

CUPS has a standard reporting mechanism for attributes, including media/ribbon/etc levels. The general syntax is:

ATTR: foo=bar[,baz,etc]

There's also the notion of state that can be reported in a unified manner:

STATE: +media-empty [reasontext]
STATE: -media-empty


1) Altering backends to report media empty using this mechanism
2) Alter backends to report remaining media, if known, using this mechanism.

For further details:

 522 Feature RequestKodak 6800/6850 Better status reporting Closed2014-06-04 Task Description

Need to detect media type, number of remaining prints, error conditions, and whatever else is possible given our lack of documentation of the printer internals.

(Maybe decompiling the driver would help?)

521Feature RequestOther printersInvestigate HiTi 720L/750L and 510L/520L/525L/P530D, P3...New2019-05-13 Task Description

P310W is consumer model.

Rest are workhorse kiosk printers, it's currently the cheapest per-print, 300dpi.

Gutenprint seems to support no HiTi models at all.

Early investigation into these models shows that the spooler format is some sort of funky compressed format -- and the data actually sent to the printer is ratehr different.

So no progress will be made without direct access to one or more HiTi printers.

520Feature RequestSony UP-D printersInvestigate Sony UP-CR20L aka DNP SL-20Requires testing2019-04-21 Task Description

Sony sold their printer line to DNP, which rebranded these two models.

Investigate their Spool format, and find out if they need an intelligent backend.

 519 TODOOther printers Investigate Mitsubishi CP-W5000 Closed2018-01-26 Task Description

The CP-W5000 is a duplex 8" model, apparenltly a rebadged Kodak D4000

 518 Feature RequestCanon Selphy CP/ES Recover from Error conditions (ES models) Closed2014-03-12 Task Description

There's a special command the driver sends to clear the printer's error state.

We know this for the CP-series, but none of the ES-series.

The backend supports this just fine now, but we don't know how the ES models recover.

 517 Feature RequestCommon Code Support multi-page print jobs Closed2014-01-20 Task Description

The backends should handle multi-page jobs by splitting it into individual prints. This is presumably handled by concatenating multiple spool files together...

The entire structure of the backends are designed around single-page operation.

Many of the backends are smart enough to tell when a page ends, but some aren't. Extend the backend core so that it can handle this when the backend supports it.

 512 Feature RequestDNP/Citizen Enhance DS40/DS80 backend Closed2013-12-17 Task Description

There's now a backend for the DS40/DS80 that will handle things like multiple copies and whatnot.

Verify it works with both a DS40 and an DS80.

Enhance it so it properly reads the printer status, buffer state, and whatnot to ensure we're good to submit a new print job.

 511 Feature RequestMitsubishi CP-Dxx family Investigate the Mitsibishi CP-K60DW Closed2015-07-23 Task Description

Outwardly it appears nearly identical to the CP-D70DW. Spec-wise it seems the same (even using the same media!) except for a lower print speed.

Find out if it speaks the same spool file format.

 507 TODODNP/Citizen Get USB IDs for Citizen OP900/OP900II Closed2016-07-17 Task Description

DNP DS80 and Mitsu 3800 are rebadged Citizen CX-W models. (8" wide media)

The others use 6" wide media:

DNP DS40 is a rebadged Citizen CX.
DNP DS-RX1 is a rebadged Citizen CY.
The Citizen CW-02/OP900II are updated CW-01/OP900.

The CY and its derivatives don't support 6x9 prints, but otherwise all of these printers are identical from a software perspective.

With the additions of their USB IDs to the backend, they are expected to JustWork!

We have:
DNP DS40 / Citizen CX
DNP DS80 / Citizen CX-W / Mitsubishi CP-3800DW
DNP DSRX1 / Citizen CY

Citizen CW-01 and Citizen CW-02

We need:
Citizen OP900/OP900II

 506 TODOOther printers Verify support for Mitsubishi CP-9550 Closed2014-05-13 Task Description

Experimental support is present in Gutenprint, but it needs to be tested.

505TODOOther printersVerify support for Mitsubishi CP3020D/DA printersRequires testing2013-10-18 Task Description

Experimental support is in gutenprint, but this needs testing.

 504 TODOMitsubishi CP-Dxx family Verify support for the Mitsubishi CP-D70x printers Closed2014-09-29 Task Description

I have initial backend code written, but no idea if it works.

502TODOOther printersVerify support for Kodak 8500 and 9810/8800.Requires testing2016-08-18 Task Description

The 8500 is a rebadged Mitsubishi CP3020, but the 9810 and 8800 is unique.

Both need sniffs to determine if they need an intelligent spooler.

 501 TODOOther printers Add support for various Mitsubishi printers Closed2013-10-18 Task Description

Specifically, the CP9810, CP70, CP707, CP9550 and CP3020-series.

Update: The CP9810 has a positive report, though the lamination and color curves are different than windows (as expected)

500TODOOther printersInvestigate Shinko S8145Assigned2019-05-14 Task Description

The T1/S8145 is a fancy "silver foil" thingey with two print heads.

 499 Feature RequestCanon Selphy CP/ES Better error detection & handling Closed2014-01-30 Task Description

The remaining chunk of the patch set Ake Koomsin sent over considerably improves error detection, handling, and recovery from the CP-XXX handler. (The other models are TBD)

Wade through the patch set to make sure everything relevant is integrated.

(FWIW, this is a lot easier now that the backend is unified; it simplified the code quite a bit)

 498 TODOOther printers Add support for Kodak 605 Closed2013-07-20 Task Description

It's the replacement for the 68x0 family. Uses a slightly different spool format, so probably isn't directly compatible.

 497 TODOCommon Code Unify all backends into one. Closed2013-07-19 Task Description

We'll call it 'gutenprint+usb' or something like that, and it will handle all printers.

This means we'll have two independent invocation methods; when called via CUPS, we'll have a URI and will consequently know the spool format to match.

When called directly, we'll need to specify the printer type somehow (symlink and $0 detection?) and use that as a filter for printer format.

This has to be carefully planned. Sigh.

 495 TODOOther printers Investigate Sony UP-DR150 Closed2013-07-14 Task Description

We have a report of the UP-DR150 not working.

I'm working on obtaining sniffs so we can actually see what's going on. Maybe it'll need a backend too.

 494 Feature RequestCommon Code Improve detection to include printer status Closed2014-02-18 Task Description

When you have more than one printer in the system, how about ignoring the ones that are busy when trying to service a print job?

For printers that support multiple media types, it would be handy to be able to return which media the printer has loaded, so we
can more intelligently route print jobs.

This is probably beyond the scope of a CUPS backend, but may be handy for standalone operation.

Just a WIBNI.

 493 Feature RequestShinko CHC-S2145 Use 'unique string' in lieu of serial number Closed2013-07-25 Task Description

The Shinko S2145 doesn't return a serial number in its USB descriptor. Unfortunately this means there is no way to distinguish between multiple printers on a single system.

The printer does have a user-configurable string; the backend allows for this to be queried and set. Perhaps we could add the ability to use this string in lieu of the serial number?

 492 Feature RequestKodak 6800/6850 Add support for setting tone curves Closed2013-10-18 Task Description

The Kodak 6800 is supported by Kodak's "visual profiler" tool; get a USB sniff of what it does and use that to add support to the backend.

Showing tasks 51 - 100 of 116 Page 2 of 3 - 1 - 2 - 3 -

Available keyboard shortcuts


Task Details

Task Editing