SPP-2020 is a cheap photo printer from Samsung. The print quality is great and usage costs are acceptable. However the manufacturer doesn't provide a Linux driver which is somewhat strange for Samsung.
The rastertospp is a CUPS raster converter that takes a cups-raster as its input, and on the output spits a stream of data suitable for direct sending to the printer. This is one possible form of a driver for CUPS, the one which makes most sense in the case of this printer.
Print quality of this driver seems the same as from the Windows driver, no color profiling is done. As of version 1.1 there is an "Avoid clipping" option (default: on) which in some cases yields better results than stock Windows driver.
Data format suitable for the printer was derived by analysing several print-to-files made on Windows.
Only best-quality on 4x6" (~10-15cm) photo paper is implemented but it seems the only use-case anyway.
The current version is always available at http://koprowski.org/rastertospp. As of now this is rastertospp-1.2.tar.gz.
Unpack the tar.gz archive, enter the rastertospp-1.2 directory and compile with the following command:
$ gcc -O2 -Wall -lcups -lcupsimage -o rastertospp rastertospp.c
In case of Debian you will need libcupsimage2-dev, libcupsfilters-dev and libcups2-dev to build properly.
Copy the compiled rastertospp to
Make sure your
CUPS is configured for use with rasterto* filters, it should be someplace
in the CUPS docs, but in short: you must use the ESP version of ghostscript
which can output with a 'cups' device (do
gs -help|grep cups
if unsure), you should have
/etc/cups/pstoraster.convs present and in
mime.convs the following lines should be uncommented:
application/postscript application/vnd.cups-postscript 66 pstops
application/vnd.cups-postscript application/vnd.cups-raster 100 pstoraster
application/octet-stream application/vnd.cups-raw 0 -
Configure your printer as usual with the web interface to CUPS. Provide it with the included PPD file when asked for. If in doubt you the docs. You should be able to print a test page. Enjoy!
In case of bugs or problems with the driver feel free to contact me at tomek(at)koprowski(dot)org. Please don't ask me any general CUPS-related questions though, I don't know CUPS all that well myself. There are support forums for that kind of stuff.
Someone at Samsung probably decided that more contrast in prints is a good thing, so the printer seems to be enhancing contrast internally. Unfortunately it over-does it, which results in some color clipping. If you print a picture of white clouds on a blue sky you may end up with burnt-out (uniform white) spots instead. There's some detail loss in shadows as well. The "Avoid clipping" option prevents just that -- by sacrificing global contrast it prevents loss of detail in very bright and very dark areas. In my opinion the prints look much better that way, but as always YMMV, so you can disable it if you don't like it.