Flyspray:: Wed, 30 Jan 2019 03:17:19 +0000 Flyspray::CUPS Dyesub Backends: Recently closed tasks FS#571: Check for error statuses in the Kodak 605 processing loops. Solomon Peachy Thu, 23 Mar 2017 04:10:48 +0000 We don't check any error codes at all.  In part because I don't know what's an error and what isn't.  With access to a printer this would be a lot easier..

FS#552: Write network backend for CPnP printers Solomon Peachy Thu, 13 Oct 2016 03:47:06 +0000 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.

FS#540: Investigate Fuji ASK 2000/2500/4000 (aka Nidec Copal DPB-6000/7000/4000) Solomon Peachy Wed, 26 Aug 2015 04:22:51 +0000 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

FS#595: When trying to enumerate printers, don't block for a long time when one's busy Solomon Peachy Fri, 16 Feb 2018 12:11:44 +0000 This is a particular problem when we have more than one model of the same printer family attached, and one or more of them are busy doing something -- but we can't query the serial number when the printer is claimed.

This may require a two pass approach -- first try to probe everything with minimal timeouts.  If we don't succeed in finding the one we want, re-try the probe with longer timeouts.  In both cases, we shouldn't report a failure until we finish walking the entire list.

FS#603: Support using external LUT Solomon Peachy Thu, 28 Jun 2018 19:03:05 +0000 The official drivers come with a file called 'P95D.lut' that consists of a 16-byte header followed by 34 bytes of LUT that neatly fit into the "gamma" header.  I see two approaches:

  1. Add another gamma enumeration, for "external LUT"
    • Have the backend read the file and fil the job at runtime
    • Permanently store the file in the backend, fill job at runtime
  2. Have Gutenprint fill in the gamma table from hardcoded value
  3. Allow gutenprint's gamma table to be overridden.

I'm thinking that pushing this into Gutenprint (hardcoded, but overridable via an option) is the right way to do this.

FS#539: Consolidate CW-01 and DNP backends Solomon Peachy Wed, 26 Aug 2015 04:12:50 +0000 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?

FS#550: Verify support for D707 Solomon Peachy Fri, 07 Oct 2016 02:03:18 +0000 Code's complete, but needs to be verified.


FS#604: Use a simpler URI scheme Solomon Peachy Tue, 14 Aug 2018 20:25:58 +0000 Currently the URI scheme is a little convoluted:


I'd like to move to something much simpler:


Now that the core code returns a unique, per-model string that can be used to look up the backend, this is a far simpler approach to take.  We'll have to support the old scheme indefinitely though.

FS#541: Validate Mitsubishi CP-D90 support Solomon Peachy Thu, 28 Apr 2016 22:41:05 +0000 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!

FS#601: Figure out a way to add a generic test harness for file parsing Solomon Peachy Thu, 10 May 2018 02:14:19 +0000 Right now there's no way to parse the input files without the printer being attached first.

Would require shimming libusb...