selphy_print/docs/usage.txt

1157 lines
36 KiB
Plaintext
Raw Normal View History

2012-10-28 11:18:29 -04:00
***************************************************************************
2012-10-26 22:18:27 -04:00
Unified Gutenprint/CUPS backend for various Dye-Sublimation photo printers
2012-10-28 11:18:29 -04:00
2024-01-05 12:09:41 -05:00
Copyright (c) 2007-2024 Solomon Peachy <pizza@shaftnet.org>
This free software comes with ABSOLUTELY NO WARRANTY and is licensed under
the GNU GPL (v3 or later); see the 'COPYING' file for more details.
SPDX-License-Identifier: GPL-3.0+
2012-10-28 11:18:29 -04:00
2013-07-18 21:23:34 -04:00
The latest version can be found at
2018-05-17 19:32:12 -04:00
https://git.shaftnet.org/gitea/slp/selphy_print.git
2013-07-08 11:44:06 -04:00
For a list of known bugs and development plans, see:
https://git.shaftnet.org/gitea/slp/selphy_print/issues
2012-10-28 11:18:29 -04:00
***************************************************************************
2013-06-30 12:48:46 -04:00
CUPS backend usage:
2013-07-18 21:23:34 -04:00
DEVICE_URI=someuri \
2021-09-27 06:49:19 -04:00
gutenprint53+usb job-id user title num-copies options [ filename ]
2013-07-18 21:23:34 -04:00
The backend generates output for CUPS to parse, including logging
2020-01-23 18:29:00 -05:00
print counts, reporting loaded media types, and remaining media counts.
2017-04-21 07:04:01 -04:00
Please note that this backend merely handles the low-level
communication with the printer! Actually generating print jobs requires
use of Gutenprint compiled with support for CUPS.
2017-04-21 07:04:01 -04:00
2021-09-27 06:49:19 -04:00
DEVICE_URI=someuri CONTENT_TYPE=application/vnd.cups-command \
gutenprint53+usb job-id user title num-copies options [ filename ]
This parses a CUPS command file and performs actions listed in the file.
Implemented commands:
ReportLevels Report the marker (ie media) type and levels.
2019-05-16 10:36:00 -04:00
Other commands may be implemented in the future. Individual printer
models may not implement these commands.
Other Notes:
'someuri' is the URI returned by the backend when it probes for supported
devices. is invoked by calling the backend with no arguments.
The backend supports multiple URI schemes. First, the "modern" one:
gutenprint53+usb://backendname/serialnum
And the old/legacy/classic ones:
gutenprint52+usb://manufacturer/model/?backend=backendname&serial=serialnum
gutenprint52+usb://manufacturer/model/?serial=serialnum&backend=backendname
The URI scheme generated at device probing depends on the version of
gutenprint installed. By default, the modern scheme is used when compiled
against Gutenprint 5.3 or newer, and the legacy scheme is used with
Gutenprint 5.2.
Regardless of the scheme generated at probe time, the backend will continue
to detect and parse both schemes indefinitely as to not break backwards
compatibility with existing deployments. To manually switch the URI
scheme type generated at runtime, set the OLD_URI_SCHEME environment
variable to either 0 or 1, as appropriate.
***************************************************************************
2013-06-30 12:48:46 -04:00
Standalone usage:
2013-07-18 21:23:34 -04:00
This backend is set up as a multi-call executable; that is to say
behaivor changes based on the name used to invoke the executable.
When compiled, a set of symlinks are created, corresponding to the generic
name of each of the internal backends. Alternatively you may set
the BACKEND environment variable to force a specific backend to be used.
These commands are equivalent:
BACKEND=backend ./gutenprint52+usb [ arguments ]
./backend [ arguments ]
The 'backend' name is any one of the names listed when invoking the
executable with no arguments. For example:
./dnpds40
DEBUG: Multi-Call Dye-sublimation CUPS Backend version 0.88
[ ... ]
DEBUG: Standalone DNP DS-series / Citizen C-series backend version 0.106
DEBUG: supporting: dnp_citizen dnpds40 dnpds80 dnpds80dx dnpds620 dnpds820 dnprx1 citizencw01 citizencw02 citizencx02
[ ... ]
The first entry after 'supporting' is the generic backend name, while
the others correspond to specific models the backend supports. Any one
can be used as the 'backend' name.
2013-07-18 21:23:34 -04:00
All backends support the following invocations:
2013-07-18 21:23:34 -04:00
backend [ arguments ]
2015-11-19 08:26:15 -05:00
backend [ arguments ] filename
backend [ arguments ] - < filename
somecommand | backend [ arguments ] -
2013-07-18 21:23:34 -04:00
The 'filename' here refers to the raw spool data generated by
2018-05-17 19:32:12 -04:00
Gutenprint (eg via its gimp plugin) or the Windows print-to-file
2013-07-18 21:23:34 -04:00
output.
2013-06-30 12:48:46 -04:00
All global arguments:
2015-11-19 08:26:15 -05:00
-D Increment debug level [1]
-G Display GPL text
-f Enable fast return mode if possible [2]
-d numcopies Print 'numcopies' of the supplied job
-v Silence all output except for warnings/errors
[1] This argument can be repeated to increase the debug level.
Alternatively, the 'DYESUB_DEBUG' environment variable can be
2015-11-19 08:26:15 -05:00
used. For example, '-DDD' and 'DYESUB_DEBUG=3' are equivalent.
DYESUB_DEBUG=1 Enable debug output
DYESUB_DEBUG=2 Dump contents of short messges
DYESUB_DEBUG=3 Dump contents of all messages
[2] This terminates the backend as soon as the printer has
2019-05-16 10:36:00 -04:00
accepted the print job, without waiting for the print job
2018-05-17 19:32:12 -04:00
to complete. Not all printers support this feature. This
can also be enabled by setting the 'FAST_RETURN' environment
variable. This is the default behavior when using this backend
2018-05-17 19:32:12 -04:00
with CUPS.
Finally, some backends support additional arguments; see their details
below.
***************************************************************************
Other Environment Variables:
If you have multiple models of the same printer family connected
simultaneously, the backend will choose the first one it finds.
If you wish to target a specific device, you may specify its
serial number using the 'SERIAL' environment variable. For example:
SERIAL=N782 backend filename [ arguments ]
All backends support an additional operational mode, to test out
unknown models. To use this mode, specify the VID, PID and its
internal device type as environment variables:
EXTRA_VID=04a9 EXTRA_PID=3ab1 EXTRA_TYPE=7 backend filename
2018-05-17 19:32:12 -04:00
The VID and PID are specified in hexidecimal, and the TYPE is
the P_XXX enumeration defined in backend_common.h. The '7' in this
example corresponds to most Canon SELPHY CP models, and is what you
would use if you were trying to get the backend to detect an
otherwise unrecognized SELPHY CP model.
If you are able to successfuly print using this technique,
please let us know so we can add the apppriate entry to the
internal database.
For debugging USB operation, there following environment variables
can be set:
MAX_XFER_SIZE Maximum transfer size, in bytes.
XFER_TIMEOUT Timeout, in milliseconds, for all USB operations
for example:
MAX_XFER_SIZE=32768 XFER_TIMEOUT=30000 backend filename
To change the location of backend data at runtime, set CORRTABLE_PATH
to the appropriate directory.
Finally, BACKEND_QUIET can be set to a non-zero value to silence all
output other than warnings and errors.
***************************************************************************
Standalone status queries:
If you just want to query the printer and media status in a
printer-independent manner, the backend supports reporting a standard
set of data in either textual or JSON format. This is used with the
BACKEND_STATS_ONLY environment variable:
BACKEND_STATS_ONLY=? BACKEND=backend [SERIAL=??] ./gutenprint53+usb
BACKEND_STATS_ONLY=? [SERIAL=??] ./backend
BACKEND_STATS_ONLY=1 will report in textual format, for example:
Backend: HiTi Photo Printers
Version: 0.100 / 0.16
Timestamp: 2019-1 2-13 14:54:28
Manufacturer: HiTi
Model: HiTi:Usb Photo Printer:HiTi P520L
Serial Number: 2WC4A1013968279
Firmware Version: 1.21.0.i
Printer Status: Idle
Lifetime Prints: 194
Media 0 Type: 4x6
Media 0 Level: 313 / 500
BACKEND_STATS_ONLY=2 will report in JSON format, for example:
{
"backend": "HiTi Photo Printers",
"version": "0.100 / 0.16",
"timestamp": "2019-12-13 14:57:38",
"manufacturer": "HiTi",
"model": "HiTi:Usb Photo Printer:HiTi P520L",
"serial": "2WC4A1013968279",
"firmware": "1.21.0.i",
"status": "Idle",
"counters": {
"lifetime": 194
},
"media": [
{
"type": "4x6",
"level": "OK",
"levelnow": 313,
"levelmax": 500
}
]
}
***************************************************************************
2013-07-18 21:23:34 -04:00
BACKEND=canonselphy
2013-06-30 12:48:46 -04:00
2019-05-16 10:36:00 -04:00
Model IDs recognized:
canon-cp10 canon-cp100 canon-cp200 canon-cp220 canon-cp300 canon-cp330
canon-cp400 canon-cp500 canon-cp510 canon-cp520 canon-cp530 canon-cp600
canon-cp710 canon-cp720 canon-cp730 canon-cp740 canon-cp750 canon-cp760
canon-cp770 canon-cp780 canon-cp790 canon-cp800 canon-cp810 canon-cp900
2019-05-16 10:36:00 -04:00
canon-es1 canon-es2 canon-es20 canon-es3 canon-es30 canon-es40
Model IDs for backwards compatibility with older releases:
selphycp10 selphycp100 selphycp200 selphycp220 selphycp300 selphycp330
selphycp400 selphycp500 selphycp510 selphycp520 selphycp530 selphycp600
selphycp710 selphycp720 selphycp730 selphycp740 selphycp750 selphycp760
selphycp770 selphycp780 selphycp790 selphycp800 selphycp810 selphycp900
selphyes1 selphyes2 selphyes20 selphyes3 selphyes30 selphyes40
2013-06-30 12:48:46 -04:00
Verified supported printers:
2018-05-17 19:32:12 -04:00
ES1, ES2, ES3, ES30, ES40, CP-10, CP-100, CP-200, CP-300, CP-330,
CP400, CP500, CP510, CP710, CP720, CP730, CP740, CP750, CP760, CP770,
CP780, CP790, CP800, CP900
2013-06-30 12:48:46 -04:00
Untested, but expected to work:
2013-06-30 12:48:46 -04:00
2014-05-18 18:31:32 -04:00
ES20, CP-220, CP520, CP530, CP600, CP810
2014-05-05 12:49:41 -04:00
Valid commands:
2018-05-17 19:32:12 -04:00
-R Reset printer to factory defaults
-s Query printer status
2019-05-16 10:36:00 -04:00
Notes:
2020-01-23 18:29:00 -05:00
* The SELPHY ES3 and ES30 cannot report the loaded media type
2019-05-16 10:36:00 -04:00
* All models can report media empty, but not quantity remaining
2018-05-17 19:32:12 -04:00
***************************************************************************
BACKEND=canonselphyneo
2019-05-16 10:36:00 -04:00
Model IDs recognized:
canon-cp820 canon-cp910 canon-cp1000 canon-cp1200 canon-cp1300 canon-cp1500
2019-05-16 10:36:00 -04:00
Model IDs for backwards compatibility with older releases:
selphycp820 selphycp910 selphycp1000 selphycp1200 selphycp1300
Verified supported printers:
2018-05-17 19:32:12 -04:00
2023-01-17 16:54:29 -05:00
CP1000, CP1200, CP1300, CP1500
Untested, but expected to work:
2023-01-17 16:54:29 -05:00
CP820, CP910
Valid commands:
2018-05-17 19:32:12 -04:00
-R Reset printer to factory defaults
-s Query printer status
2019-05-16 10:36:00 -04:00
Notes:
* All models can report media empty, but not quantity remaining
2018-05-17 19:32:12 -04:00
***************************************************************************
2013-07-18 21:23:34 -04:00
BACKEND=kodak1400
Additional model IDs recognized:
2019-05-16 10:36:00 -04:00
kodak-1400 kodak-805
mitsubishi-3020d mitsubishi-3020da, mitsubishi-3020dae mitsubishi-3020de
mitsubishi-3020du
2019-05-16 10:36:00 -04:00
Model IDs for backwards compatibility with older releases:
kodak1400 kodak805 mitsu3020d mitsu3020da
2013-07-18 21:23:34 -04:00
Verified supported printers:
2013-06-30 12:48:46 -04:00
2013-07-18 21:23:34 -04:00
Kodak 1400
Kodak 805
2013-06-30 12:48:46 -04:00
Work-in-progress printers:
Mitsubishi CP3020D/DE
Mitsubishi CP3020DA/DAE
Valid commands:
-C filename Set tone curve [1]
Notes:
2020-01-23 18:29:00 -05:00
* These models cannot report media type or remaining levels,
but are able to report out of media conditions.
2019-05-16 10:36:00 -04:00
[1] Format of curvedata file:
2019-05-16 10:36:00 -04:00
256 entries each of Yellow, Magenta, Cyan mappings:
Values are unsigned 16-bit big endian, between 0 and ???
(unsure as to the bit usage)
2018-05-17 19:32:12 -04:00
***************************************************************************
BACKEND=kodak68x0
2019-05-16 10:36:00 -04:00
Model IDs recognized:
2019-05-16 10:36:00 -04:00
kodak-6800 kodak-6850
Model IDs for backwards compatibility with older releases:
kodak6800 kodak6850
2013-06-30 12:48:46 -04:00
2013-07-18 21:23:34 -04:00
Verified supported printers:
Kodak 6800
Kodak 6850
Development was sponsored in part by:
LiveLink Technology [ www.livelinktechnology.net ]
Valid commands:
-c filename Query tone curve [1]
-C filename Set tone curve [1]
-l filename Query Current tone curve from RAM [1]
-L filename Store Current tone curve in RAM [1]
2019-05-16 10:36:00 -04:00
-m Query media information
-s Query printer status
2018-05-17 19:32:12 -04:00
-R Reset printer to factory defaults
-X id Cancel print job 'id' [2]
Notes:
2019-05-16 10:36:00 -04:00
[1] Format of curvedata file:
2019-05-16 10:36:00 -04:00
256 entries each of Yellow, Magenta, Cyan mappings:
Values are unsigned 16-bit big endian, between 0 and 16383
(ie 14-bit)
2019-05-16 10:36:00 -04:00
[2] Job ID is the Internal Job ID (reported via status)
This cancels a multi-copy print job.
To see which jobs are active/pending, see the output of the
'-s' command, specifically the 'Bank' output.
2018-05-17 19:32:12 -04:00
***************************************************************************
2013-11-20 21:35:17 -05:00
BACKEND=kodak605
Additional model IDs recognized:
kodak-605, kodak-7000, kodak-7010, kodak-7015,
2013-11-24 11:01:44 -05:00
Verified supported printers:
2013-11-20 21:35:17 -05:00
Kodak 605
Kodak 7000
2013-11-20 21:35:17 -05:00
Work-in-progress printers:
Kodak 7010/7015
Valid commands:
-b [ 0 | 1 ] Disable or Enable the printer control panel
-c filename Query User tone curve from flash [1]
-C filename Store User tone curve in flash [1]
-e Query error log
-F Flash printer LEDs for 5 seconds
-i Query printer firmware information
-l filename Query Current tone curve from RAM [1]
-L filename Store Current tone curve in RAM [1]
2019-05-16 10:36:00 -04:00
-m Query media information
-r Reset User tone curve to default [3]
-R Reset printer to factory defaults
-s Query printer status
-X id Cancel print job 'id' [2]
2013-11-24 11:01:44 -05:00
Notes:
2019-05-16 10:36:00 -04:00
[1] Format of curvedata file:
2013-11-24 11:01:44 -05:00
2019-05-16 10:36:00 -04:00
256 entries each of Yellow, Magenta, Cyan mappings:
Values are unsigned 16-bit big endian, between 0 and ???
(unsure as to the bit usage)
2013-11-20 21:35:17 -05:00
2019-05-16 10:36:00 -04:00
[2] Job ID is the Internal Job ID (reported via status)
This cancels a multi-copy print job.
To see which jobs are active/pending, see the output of the
'-s' command, specifically the 'Bank' output.
[3] Default printer tone curve is a linear 'val << 3'
***************************************************************************
BACKEND=kodak8800
Additional model IDs recognized:
kodak-8800, kodak-9810
Verified Supported printers:
Kodak 8800/9810
Valid commands:
-e [ 1|2|3 ] Query error logs
-i Query printer info
-m Query media info
-n Query counters
-X id Cancel job (0 for all/current)
2018-05-17 19:32:12 -04:00
***************************************************************************
2013-07-18 21:23:34 -04:00
BACKEND=shinkos2145
2019-05-16 10:36:00 -04:00
Model IDs recognized:
shinko-chcs2145 sinfonia-chcs2145 olmec-op1000
2013-07-18 21:23:34 -04:00
Verified supported printers:
Shinko CHC-S2145 (aka "Sinfonia S2")
Olmec OP1000
Work-in-process printers:
HiTi P710L
Development was sponsored in part by:
LiveLink Technology [ www.livelinktechnology.net ]
In order to use this backend, you will need to ensure the printer is
2018-05-17 19:32:12 -04:00
configured to use the 'DRV' (as opposed to 'DLL') operating mode. See
the printer documentation for details on how to set this.
Valid commands:
-b [ 0 | 1 ] Disable or Enable the printer control panel
-c filename Query User tone curve from flash [1]
-C filename Store User tone curve in flash [1]
-e Query Error log
-F Flash printer LEDs for 5 seconds
-i Query printer firmware information
-l filename Query Current tone curve from RAM [1]
-L filename Store Current tone curve in RAM [1]
-m Query media information
-r Reset User tone curve to default [4]
-R Reset printer to factory defaults
-s Query printer status
-u Query user string
-U somestring Set user string to 'somestring'
-X id Cancel print job 'id' [3]
Notes:
2019-05-16 10:36:00 -04:00
[1] Format of curvedata file:
2019-05-16 10:36:00 -04:00
256 entries each of Yellow, Magenta, Cyan mappings:
Values are unsigned 16-bit big endian, between 0 and 2047
(ie only 11 bits used)
2019-05-16 10:36:00 -04:00
[3] Job ID is the Internal Job ID (reported via status)
This cancels a multi-copy print job.
To see which jobs are active/pending, see the output of the
'-s' command, specifically the 'Bank' output.
2019-05-16 10:36:00 -04:00
[4] Default printer tone curve is a linear 'val << 3'
2018-05-17 19:32:12 -04:00
***************************************************************************
BACKEND=shinkos1245
Low-level documentation was provided by Sinfonia, Inc. Thank you!
2019-05-16 10:36:00 -04:00
Model IDs recognized:
shinko-chcs1245 sinfonia-chcs1245
2018-01-09 21:37:41 -05:00
Verified supported printers:
Shinko CHC-S1245 (aka "Sinfonia E1")
Unsupported printers (unknown VID/PID):
DNP Q8
2015-02-08 18:59:26 -05:00
Valid commands:
-s Query printer status
-m Query media information
-u Query user string
-U somestring Set user string to 'somestring'
-X id Cancel print job 'id' [1]
2018-05-17 19:32:12 -04:00
-R Reset printer to factory defaults
2015-02-18 20:54:57 -05:00
-F Tone curve commands affect FINE table
-c filename Query User tone curve from flash [2]
-C filename Store User tone curve in flash [2]
-l filename Query Current tone curve from RAM [2]
-L filename Store Current tone curve in RAM [2]
2020-01-23 18:29:00 -05:00
Notes:
2019-05-16 10:36:00 -04:00
[1] Job ID is the Internal Job ID (reported via status)
This cancels a multi-copy print job.
To see which jobs are active/pending, see the output of the
'-s' command, specifically the 'Bank' output.
2015-02-18 20:54:57 -05:00
2019-05-16 10:36:00 -04:00
[2] Format of tone curve file:
2015-02-18 20:54:57 -05:00
2019-05-16 10:36:00 -04:00
256 entries each of Yellow, Magenta, Cyan mappings:
Values are unsigned 16-bit big endian, between 0 and 16383
(ie only 14 bits used)
2015-02-18 20:54:57 -05:00
2019-05-16 10:36:00 -04:00
***************************************************************************
BACKEND=shinkos6145
2019-05-16 10:36:00 -04:00
Low-level documentation was provided by Sinfonia and CIAAT. Thank you!
2019-05-16 10:36:00 -04:00
Model IDs recognized:
sinfonia-chcs6145 ciaat-brava-21 shinko-chcs6145
sinfonia-chcs2245 hiti-m610 kodak-6900 kodak-6950
2019-05-16 10:36:00 -04:00
Model IDs for backwards compatibility with older releases:
2019-05-16 10:36:00 -04:00
shinks6145 brava21
Verified supported printers:
2015-08-28 21:08:08 -04:00
Ciaat Brava 21
2016-12-13 22:54:26 -05:00
Shinko CHC-S6145 (aka "Sinfonia CS2")
2020-08-10 08:04:05 -04:00
Sinfonia CHC-S2245 (aka "S3")
Work-in-progress printers:
HiTi M610
Kodak 6900 / 6950
2020-08-10 08:04:05 -04:00
Shinko CHC-S6145-5A (aka "CS2-c")
2019-05-16 10:36:00 -04:00
*** VERY IMPORTANT ***
In order to generate usable output, the Sinfonia CHC-S6145 and CHC-S2245
printers (and their siblings listed above) require the input data to be
transformed using specific image processing algorithms.
The library that implements this processing is dynamically loaded
at runtime. There are three options:
* libS6145ImageProcess and S2245IP -- Supported by Sinfonia, these
are proprietary libraries. They can be obtained by politely
contacting your local Sinfonia distributor.
If you have the appropriate permission fron Sinfonia and their
technical and legal limitations are acceptible to you, we
recommend you use these official supported libraries.
* libS6145ImageReProcess and libS2245ImageReProcess -- GPL'd
re-implementations of the Sinfonia algorithms, available as
source. They are drop-in replacement that appears to generate
identical output to the proprietary Sinfonia libraries.
DISCLAIMER: Sinfonia Inc was not involved in the creation of
these libraries and is not responsible in any way for any
deficiencies in its output. They will provide no support if it is
used.
Do *NOT* contact Sinfonia for support if you are using
libS6146ImageReProcess or libS2245ImageReProcess!
(Please see the full disclaimer in libS6145ImageReProcess.c and
libS2245ImageReProcess.c)
As selphy_print is released under the terms of the GPL, it cannot
normally be combined with proprietary libraries.
Therefore, the authors of selphy_print grant its users an
additional permission (under section 7 of the GPLv3) to combine
and/or redistribute it with the proprietart libS6145ImageProcess
and/or S2245IP libraries. For the full text of this license
exception, please see the header of backend_shinkos6145.c
Valid commands:
-c filename Query User tone curve from flash [1]
-C filename Store User tone curve in flash [1]
-e Query Error log
-F Flash printer LEDs for 5 seconds
-i Query printer firmware information
-k num Specify standby delay (5-240 minutes)
-l filename Query Current tone curve from RAM [1]
-L filename Store Current tone curve in RAM [1]
-m Query media information
2019-05-16 10:36:00 -04:00
-q filename Dump eeprom data [4]
-Q filename Dump image correction data [4]
-r Reset User tone curve to default [3]
-R Reset printer to factory defaults
-s Query printer status
-X id Cancel print job 'id' [2]
Notes:
2019-05-16 10:36:00 -04:00
[1] Format of curvedata file:
2019-05-16 10:36:00 -04:00
256 entries each of Yellow, Magenta, Cyan mappings:
Values are unsigned 16-bit big endian, between 0 and 2047
(ie only 11 bits used)
2019-05-16 10:36:00 -04:00
[2] Job ID is the Internal Job ID (reported via status)
This cancels a multi-copy print job.
To see which jobs are active/pending, see the output of the
'-s' command, specifically the 'Bank' output.
2019-05-16 10:36:00 -04:00
[3] Default printer tone curve is a linear 'val << 3'
2019-05-16 10:36:00 -04:00
[4] This is used as an input to the image processing code, and is
only useful for debugging purposes.
2019-05-16 10:36:00 -04:00
***************************************************************************
BACKEND=shinkos6245
Low-level documentation was provided by Sinfonia, Inc. Thank you!
2019-05-16 10:36:00 -04:00
Model IDs recognized:
sinfonia-chcs6245 hiti-p910l shinko-chcs6245
kodak-8810
2019-05-16 10:36:00 -04:00
Model IDs for backwards compatibility with older releases:
2019-05-16 10:36:00 -04:00
shinkos6245 hitip910
Verified supported printers:
Kodak 8810
Shinko CHC-S6245 (aka "Sinfonia CE1")
Work-in-process printers:
HiTi P910L
Valid commands:
-b [ 0 | 1 ] Disable or Enable the printer control panel [4]
-c filename Query User tone curve from flash [1]
-C filename Store User tone curve in flash [1]
-e Query Error log
-F Flash printer LEDs for 5 seconds
-i Query printer firmware information