Dye-Sublimation Photo Printers and Linux

Last updated 2021-04-12

Notes on using dye-sub photo printers with Linux

Over the years, I've written drivers for many dye-sublimation photo printers. They are all part of the Gutenprint driver suite.

This is intended to be an overview of the current state of affairs, to help guide you towards purchasing something that is known to work with Linux. Please note that this does not cover inkjet printers, which are far more common, but have their own set of quirks beyond the scope of this document and my attention.

Also note that this document presumes use bleeding-edge Gutenprint code. Mileage will vary if using older Gutenprint releases.

How to compile current Gutenprint code

I have physical access to all models marked with an asterisk.

Tier One

These printers have first-rate support. All known features are supported and tested. Basically, you can't go wrong with one of these.

  • Canon
    • Selphy CP series *
    • Selphy ES series *
  • Ciaat
  • Citizen
    • CX
    • CX-W
    • CY / CY-02
    • CW-02 / OP900ii
    • CX-02
    • CX-02W
    • CZ-01
  • DNP
    • DS40 *
    • DS80 *
    • DS80DX
    • DS620 *
    • DS680 *
    • RX1 / RX1HS *
    • QW410 *
  • Fujifilm
  • Kodak
    • 305 Notes *
    • 6850 *
    • 7000
    • 8810
  • Mitsubishi
    • CP-D70DW / D70DW-S Notes
    • CP-D707DW / D70DW-S Notes
    • CP-D80DW Notes *
    • CP-K60DW-S Notes
    • P93DW *
    • P95DW *
  • Shinko/Sinfonia
    • CHC-S2145 / S2 *
    • CHC-S6145 / CS2 Notes *

Tier Two

These printers have good support in general. Most features are expected, or known, to work.

  • Citizen
    • CW-01
  • HiTi
    • P520L *
    • P525L
  • Kodak
    • 605
    • 805
    • 1400 *
    • 6800
  • Magicard Notes
    • Avalon E
    • Rio 2E
    • Tango 2E *
    • Tango +L
  • Mitsubishi
    • CP30DW *
    • CP9550DW
    • CP9550DW-S
    • CP9600DW
    • CP-D90DW
    • CP-M1 / CP-M15 Notes
  • Shinko/Sinfonia
    • CHC-S1245 / E1
    • CHC-S2245 / S3 Notes *
  • Sony
    • UP-CR10L
    • UP-D895 *
    • UP-D897 *
    • UP-D898MD * / UP-X898MD
    • UP-DR80MD
  • Stryker
    • SDP1000

Tier Three

These models have minimal support; they are known to work but the drivers may lack advanced features such as status reporting and error handling.

  • Nidac Copal
    • DPB-6000
  • Sony
    • UP-DR150
    • UP-DR200

Tier Four

These are models are expected to work, but have not been tested.

  • Canon
    • SELPHY ES20
    • SELPHY CP-220
    • SELPHY CP520
    • SELPHY CP530
    • SELPHY CP600
    • SELPHY CP810
  • DNP
    • DS-SL10
    • M4 / Q4
    • Q8
  • Fujifilm
    • ASK-2000
    • ASK-2500
    • ASK-4000
  • HiTi
    • M610 Notes
    • P510K
    • P510L
    • P510S
    • P510Si
    • P518A
    • P518S
    • P720L
    • P728L
    • P750L
    • P910L
  • Kodak
  • Mitsubishi
    • CP3800DW
    • CP9800DW / CP9810DW Notes
  • Nidac Copal
    • DPB-4000
    • DPB-7000
  • Olmec
    • OP900
  • Shinko / Sinfonia
    • CHC-S6245 / CE1

Tier Five

These models are not expected to work without additional (possibly considerable) development.

  • Canon
    • SELPHY QX series
    • IVY series (ZINK)
  • DNP
    • DS-SL20
  • Fujifilm
    • ASK-500
  • HiTi
    • P110 series
    • CS-200e
    • CS-220e
    • P530D
    • X610
    • All others not explicitly mentioned
  • Kodak
    • 8800 / 9810
    • D4000
    • D4600
  • Mitsubishi
    • CP9550DW-A
    • CP9550DW-U
    • CP9800DW-U Notes
    • CP9800DW-S Notes
    • CP9820DW-S Notes
    • CP-D80DW-S Notes
    • CP-W5000DW
  • Shinko/Sinfonia
    • DP-1045 / D3
    • CHC-S8145 / T1
  • Sony
    • UP-CR20L
    • UP-DR80
  • Zebra
    • P120i / WM120i *

If there's a dye-sublimation photo printer not listed here, it's probably not supported under Linux. This (along with a printer being listed as Tier 3/4/5) is generally due to a lack of access to the actual printer, a lack of time/attention on my part, or both. So if there's a model you'd like to see added, drop me a line and we can try to work something out.

That said, these printers are expensive, and I tend to go through a lot of media when developing these drivers and performing ongoing testing. So contributions are always welcome!

Non-monetary contributions are also helpful, especially loaner printers (with various media kits) or testing on models in the tier-3/4/5 list.

My general to-do list can be found here; this includes printers I'd like to support and incomplete or untested features on nominally-supported models.

Notes about Specific Printers

Sinfonia CHC-S6145 / CS2

Also applies to:

  • Ciaat Brava 21

Printing to these models requires an image processing library that is not bundled with Gutenprint. It is, however, Free Software.

Sinfonia CHC-S2245 / S3

Also applies to:

  • Kodak 6900
  • HiTi M610

Printing to these models requires an image processing library that is not bundled with Gutenprint. It is, however, Free Software.

Mitsubishi CP-D70DW

Also applies to:

  • Mitsubishi CP-D70DW-S
  • Mitsubishi CP-D707DW
  • Mitsubishi CP-D707DW-S
  • Mitsubishi CP-K60DW-S
  • Mitsubishi CP-D80DW
  • Mitsubishi CP-D80DW-S
  • Kodak 305
  • Fujifilm ASK-300

Printing to these models requires an image processing library that is not bundled with Gutenprint. It is, however, Free Software.

All of the above models have been tested and confirmed to work, but some features require use of updated firmware that may not be available for public download.

Note that folks wishing to use these models with the popular Raspberry Pi units are advised to use the newest Raspberry Pi 4 model, as earlier ones exhibit communication issues with this family of printers.

Mitsubishi CP9800DW

Also applies to:

  • CP9800DW-S
  • CP9810DW
  • CP9820DW-S

These models are similar to the newer CP-D70DW family in that they require the driver to perform custom gamma correction and thermal compensation on the raw image data.

Considerable progress has been made in reverse-engineering the data tables and algorithms used by the manufacturer's drivers, and other than sharpening, it is feature-complete. Bugs not withstanding, it should now yield comparable results to what the official drivers generate.

This code has seen very little testing, as I lack access to a printer to test things out on and my only willing tester disappeared.

The image processing algorithms devised for these models have been integrated into the lib70x image processing library.

Mitsubishi CP-M1 family

Also applies to:

  • Mitsubishi CP-M15
  • Fujifilm ASK-500

The new CP-M1 family, like other recent Mitsubishi models, requires proprietary image processing algorithms to generate usable output.

Considerable progress has been made in reverse-engineering the data tables and algorithms used by the manufacturer's drivers, and it is now considered feature-complete. Bugs not withstanding, it should now yield comparable results to what the official drivers generate.

This code has seen very little testing, as I lack access to a printer to test things out on. However what few reports I have received are positive.

The image processing algorithms devised for these models have been integrated into the lib70x image processing library.

Magicard Family

The Tango 2E is decently well-supported, with most features of the Windows drivers implemented. Notable exceptions include:

  • Custom holokote
  • Holopatch hole
  • Custom overcoat holes
  • Lamination (A feature unique to the Tango +L model)
  • CMYKOK, KO, and K-only ribbons
  • Magstripe encode-only
  • Magstripe reading

There are some untested features:

  • Magstripe encoding
  • Duplexing
  • Holopatch

Additionally, I have not yet figured out a sane way to query the printer status so errors can be properly reported to the operating system.

My unit also exhibits a slight registration error between the color layers and the black resin layer. I am still experimenting with ways of adjusting this.

The Rio 2E, Avalon E, and Tango +L models are likely to work as well, once the USB PIDs are known. Other Magicard models from newer or older generations may require additional work.

Comments