Photo Image Print System for Linux Copyright (C) Seiko Epson Corporation 2005-2008. 10-Jun-2008 -------------------------------------------------------------------------- 1 Contents -------------------------------------------------------------------------- 1 Contents 2 Introduction 3 License Agreement 4 Revision History 5 Availability 6 Installation 6.1 Software Installation 6.2 Initial Setting 6.2.1 Connecting the Printer 6.2.1 Setting Changes for SELinux 6.3 Uninstallation 7 Printer Setting Details 7.1 Printer Registration in CUPS 8 Printing Procedure 8.1 Check the Printing Environment (Spool System) 8.2 Check the Connection with the Printer 8.3 Print Settings 8.4 Printing Method 9 Communication Function Details 9.1 Communication with the Printer 9.2 Communication Service (ekpd) 9.2.1 Description 9.2.2 Initiation Method 9.3 Communication Setting Tool (ekpd-tool) 9.3.1 Description 9.3.2 Initiation Method 9.3.3 Setting Method 9.4 Status Monitor (ekpstm) 9.4.1 Description 9.4.2 Initiation Method 10 Printing Specification Details 10.1 Printing 10.2 Printing Filter (pips-filter) 10.3 Print Settings with CUPS 10.3.1 Setting Method 10.3.2 Setting Items 10.4 Printer Maintenance Tool (espmntg) 10.4.1 Description 10.4.2 Initiation Method 10.4.3 Functions 10.5 Printer Maintenance Command (espmnt) 10.5.1 Description 10.5.2 Options -------------------------------------------------------------------------- 2 Introduction -------------------------------------------------------------------------- Photo Image Print System for Linux (hereafter "PIPS") is a printer driver (filter) for high quality printing from Linux using a Seiko Epson color inkjet printer. This document explains the method of setting PIPS and the procedure for using it. The content of this document applies to all printers. For information regarding individual printers, refer to the documentation of the relevant printer. The printer documentation is installed at the following path. /usr/share/doc/pips--/*_Manual.txt In addition, for the latest information, visit the Avasys web site. Avasys download service for Linux URL -------------------------------------------------------------------------- 3 License Agreement -------------------------------------------------------------------------- This package contains source code covered by the GNU General Public License and the GNU Library General Public License (see ./COPYING and ./COPYING.LIB for their terms) and object code distributed under the terms of the AVASYS Public License (see ./AVASYSPL.en.txt for details). All object code contained in the sources are Copyright AVASYS Corporation and Seiko Epson Corporation. You can get free source code from Avasys web download site. http://avasys.jp/english/linux_e/ -------------------------------------------------------------------------- 4 Revision History -------------------------------------------------------------------------- See the Change Log. -------------------------------------------------------------------------- 5 Availability -------------------------------------------------------------------------- You can download PIPS from the Avasys driver download page. Avasys download service for Linux URL By entering basic information on the driver download page (your printer and distribution), you can obtain the correct software for your equipment. The name of the PIPS installation file has the following format. # pips----.install The meaning of the parts shown in brackets ("< >") is as follows. Name | Explanation -------------+---------------------------------------------------- printer | The name of the printer. distribution | The name of the distribution. keys | Represents the functions contained in the file with | the first character of the package name. There may | be several keys included. | The types of package described are Extension, GUI, | and Spooler. version | The version of the software. PIPS is provided with several packages of different functions in one package. These consist of the following 5 types of function. Function name | Explanation -------------+---------------------------------------------------- Core | Provides functions that are common to all printers. GUI | Provides a graphical user interface (GUI). Spooler | Provides functions for use from the print spooling system. Distribution | Provides functions for use by the various distributions. Printer | Provides information and functions unique to each printer. -------------------------------------------------------------------------- 6 Installation -------------------------------------------------------------------------- Note: Do not connect the printer yet. Connect the printer after installing the software. If you connect the printer and it is registered to CUPS before installing the software, once uninstall the printer. 6.1 Software Installation Let's take installation of the driver for the Epson Stylus T20 series (Epson Stylus S20/T20/T20E/T23/T26/T10/T11) as an example. The downloaded file is a gzip compressed tar archive, so you have to extract it first. This can be done with a GUI utility such as File Roller, or by executing the command below. # tar xfz pips-st20-Fedora9-CG-3.1.0-CG.tgz Execute the extracted file by clicking it from within the file manager or with the following command. Always install the files using root privileges. # ./pips-st20-Fedora9-CG-3.1.0-CG.tgz.install When the files finish copying, the installer starts the communication setting tool (ekpd-tool) for connecting with the printer. This is necessary for connecting with the printer, so be sure to make the settings.The settings are as follows. Setting item | Explanation --------------------+------------------------------------------------- Printer Name | Selects the printer to set. Connection Method | Selects the connection method for the printer. Device Path | Selects the connection path for the printer. Alias Name | Defines the setting name when using the printer. It is not normally necessary to change the alias name. For details of the ekpd-tool, refer to "9.3 Communication Setting Tool (ekpd-tool)". 6.2 Initial Setting Since the settings required for using PIPS are made during installation, you do not have to set them yourself (excluding the communication settings using the ekpd-tool). To change the settings after installation, refer to "7 Printer Setting Details". The installer registers the printer to CUPS automatically. The name registered here is the name of the printer driver. For example, "Epson Stylus T20" series are registered as "st20". 6.2.1 Connecting the printer Connect the printer and turn on the printer. The product name of the connected printer (USB Device ID) is automatically registered to the system. For example, Epson Stylus T20 is registered as "Stylus-T20". Epson Stylus T10 is registered as "Stylus-T10". Normally, this printer is used for printing. If the printer name is not registered automatically, see "7 Printer Setting Details", and register the printer manually. 6.2.2 Setting Changes for SELinux For distributions installed SELinux such as Fedora9, you need special settings for SELinux. (1) Change SELinux settings to "Permissive". (2) Restart CUPS. The following procedures are examples of Fedora9. [Fedora 9 GNOME] * Setting changes for SELinux. (1) From the menu, select [System] - [Administration] - [SELinux Management]. (2) Select the [Status] page and change [System Default Enforcing Mode] and [Current Enforcing Mode] to [Permissive]. * Restart CUPS # /etc/init.d/cups restart 6.2.3 Printer device settings Now you can print from the printer with settings above, but cannot acquire the printer status during the printing process, nor print with the status monitor open. To enable these functions, change the printer device URI as follows. "usb://EPSON/(Product name¡ËUSB #1" - > "ekplp:/var/ekpd/ekplp0" The following procedures are examples of Fedora9. [Fedora 9 GNOME] (1) From the menu, select [System] - [Administration] - [Printing]. (2) Select Printer. (3) Press the "Change" button of the Device URI. (4) Select "Epson Inkjet Printer #1" (5) Select "Apply". 6.3 Uninstallation To uninstall PIPS, execute the special program. # /usr/local/EPAva/printer//uninstall-.sh Example: To uninstall Epson Stylus T20 series driver # /usr/local/EPAva/printer/st20/uninstall-st20.sh -------------------------------------------------------------------------- 7 Printer Setting Details -------------------------------------------------------------------------- 7.1 Printer Registration in CUPS With CUPS, add, edit, or delete settings using the setting commands or the network interface provided with CUPS. *** Adding settings with the command line *** Add settings using lpadmin. For details of the tool, refer to the manual page lpadmin(8). The following example shows a setting using Epson Stylus T20 as an example. # lpadmin -p st20 -E -v ekplp:/var/ekpd/ekplp0 -m ekst20.ppd Option | Explanation -------------+------------------------------------------------ -p | Specifies the printer setting name. -E | Enables the printer settings. -v | Specifies the driver used for connection and the | destination. -m | Specifies the setting file (PPD). *** Adding settings using a web browser *** CUPS is provided with a CGI for settings, so that printer settings can be performed in a browser. To add a printer, use the following procedure. (1) Start the web browser. (2) Enter the URL "localhost:631" to display the CUPS setting screen. (3) Click "Manage Printers". (3) Click "Add Printer". (4) Enter the printer setting name in "Name", and click "Continue". The other items are not essential, so enter them as necessary. (5) Set "EPSON Inkjet Printer #1 (Photo Image Print System)" in "Device", and click "Continue". (6) Set "EPSON" in "Make", and click "Continue". (7) Set the printer name in "Model", and click "Continue". -------------------------------------------------------------------------- 8 Printing Procedure -------------------------------------------------------------------------- 8.1 Check the Printing Environment (Spool System) To print from Linux, the spooling system application that manages printing must be running. PIPS is started via the spooling system, and the print setting method differs according to the spooling system used. The spooling systems that support PIPS are as follows. CUPS: A printing system for UNIX and UNIX series OS developed by Easy Software Products. This is currently used with nearly all distributions. Available at 8.2 Check the Connection with the Printer In order to use a printer, PIPS and the printer must be able to communicate. To check this, execute the following command to start the status monitor. $ ekpstm When the status monitor is started, check the content displayed. If the status information is displayed correctly in the status monitor, printing is possible. If an error is displayed in the status monitor such as "Cannot connect to the printer (communication error)", check that the printer is switched on, that the printer cable is inserted correctly, that the communication settings are correct, and so on. For details of the printer connection settings, refer to "9.3 Communication Setting Tool (ekpd-tool)". 8.3 Print Settings The print settings for PIPS differs according to the spooling system. In addition, the items that can be set differ according to the printer used. For details of the settings, refer to "9 Printing Specification Details". With CUPS, PIPS performs the settings using the tool that comes with CUPS. The setting method with CUPS includes the following 3 main types. - Setting using the command line - Setting using a web browser - Setting when printing For details of the settings, refer to "10.3 Print Settings with CUPS". 8.4 Printing Method There are 2 main methods of printing. *** Printing from the Command Line *** In the command line, use the lpr (or lp) command to specify and print the file directly. The file formats that can be entered are as follows. PostScript, text, PDF, various image types, and the image formats supported by CUPS. For the types supported, refer to the CUPS documentation. *** Printing from the Application *** Use the printing function provided in the application. Each application may have its own print settings. For details, refer to the manual of the relevant application. Note: With applications that have a paper size setting, make sure that the setting is the same as for paper size in PIPS. The setting in the application is not reflected in PIPS. In addition, the top left is the reference for printing in PIPS, and margins are added to the left and right, top and bottom of the paper size. With printing in some applications, the edges of the paper may be cut off. -------------------------------------------------------------------------- 9 Communication Function Details -------------------------------------------------------------------------- 9.1 Communication with the Printer In PIPS, all communication with the printer is via the communication service program (ekpd). The status monitor (ekpstm) and print filter (pips-filter) do not access the printer directly, performing all requests through ekpd instead. ekpd manages these requests, transmitting the print data to the printer, getting the status and so on. For details of ekpd, refer to "9.2 Communication Service (ekpd)". Printing pips-filter ----> ekpd ----> printer Status acquisition ekpstm <---- ekpd <---- printer In order to communicate with the printer, the correct settings are necessary. The dedicated communication setting tool (ekpd-tool) is used to make the communication settings. For details of the ekpd-tool, refer to "9.3 Communication Setting Tool (ekpd-tool)". If the communication settings are correct and communication with the printer is possible, the status information of the printer can be displayed using the status monitor (ekpstm). For details of ekpstm, refer to "9.4 Status Monitor (ekpstm)". 9.2 Communication Service (ekpd) 9.2.1 Description ekpd is a service program that connects to the printer and manages all communication with the printer. PIPS communicates with the printer through ekpd from the port assigned by ekpd. Note: ekpd only handles one printer at a time. 9.2.2 Initiation Method ekpd is normally started automatically when Linux starts up, so you do not have to start it yourself. If it does not start, start "ekpd" with the service management tool provided with the distribution, or execute the following command with root privileges. # /etc/rc.d/init.d/ekpd start Note: The above command may differ according to the distribution. Refer to the manual of the distribution. The above command has the following options. Option | Explanation -----------+-------------------------------------------------- start | Starts ekpd. start | Stops ekpd. restart | Restarts ekpd. 9.3 Communication Setting Tool (ekpd-tool) 9.3.1 Description ekpd settings can be made. ekpd setting information is saved in the setting file (/etc/ekpdrc), and is enabled the next time ekpd is started. Note: Do not edit the setting file directly. Always change the settings using the ekpd-tool. If the file is edited incorrectly, ekpd will not work properly. 9.3.2 Initiation Method To start ekpd-tool from the command line, execute the following command. # ekpd-tool 9.3.3 Setting Method The setting items are as follows. Setting item | Explanation -------------------+--------------------------------------------------- Printer Name | Selects the printer to set. | The other setting items are applied to the printer | specified by this printer name. Connection Method | Selects the connection method for the printer. Device Path | Selects the connection path for the printer. Alias Name | Defines the setting name for registering in the | spooling system and when using the printer. Default Printer | Checks the printer setting to use. | When ekpd starts, the checked printer settings | are used for communication. Note: Alias name cannot be changed when using CUPS. 9.4 Status Monitor (ekpstm) 9.4.1 Description You can check the status of the printer, ink remaining and so on when it is connected. In addition, if an error has occurred in the printer, you can cancel the error. 9.4.2 Initiation Method To Start ekpstm from the command line, execute the following command. $ ekpstm -------------------------------------------------------------------------- 10 Printing Specification Details -------------------------------------------------------------------------- 10.1 Printing For printing, the document data passed from the spooling system is converted by the print filter (pips-filter) into the various print data of the printer, and is transferred to the printer. The printer decodes the transferred print data, and prints it on the paper. PIPS can set the size of the paper for printing and various settings regarding print quality using the tool that comes with CUPS. In addition, since the capacity of each printer is different, the items that can be set and the values that can be specified differ. For the details of each printer, refer to the manual of the relevant printer. The printer documentation is installed at the following path. /usr/share/doc/pips--/*_Manual.txt 10.2 Printing Filter (pips-filter) Converts documents for printing into printer data. pips-filter gets the setting value information from CUPS and generates print data according to those settings. Normally, pips-filter is started from the spooling system, so you do not have to launch it yourself. 10.3 Print Settings with CUPS 10.3.1 Setting Method Perform the settings using the tool that comes with CUPS. The setting method with CUPS includes the following 4 main types. *** Setting using a GUI tool *** [Fedora 9 GNOME] (1)Select System - Administration - Printing. (2)Select Printer. (3)Click "Printer Options" Tab. (4)Select Printer Optons. (5)Click "Apply". *** Setting with the command line *** Use the CUPS print setting tool lpoptions. For details of the tool, refer to the manual page lpoptions(1). The following is an example of a setting with PIPS. Example: When changing the setting to Page Size=A4_AUTO, quality=PLAIN_Q $ lpoptions -p st20 -o media=A4_AUTO -o quality=PLAIN_Q *** Setting using a web browser *** CUPS has a network interface (CGI) for displaying print settings and jobs. (1) Start the web browser. (2) Enter the URL "localhost:631" to display the CUPS setting screen. (3) Click "Manage Printers". (4) Click "Configure Printer" for the relevant printer to display the printer options setting screen. (5) Select a setting and click "Continue". *** Setting when printing *** With CUPS, the printing options can be changed with the same options (-o) as lpoptions in the lpr or lp command. For details, refer to manual page lpr(1) or lp(1). 10.3.2 Setting Items The items that can be set with CUPS are as follows. In the table below, options in the explanation marked (*) are options for which the values that can be specified differ according to the printer. For the values to specify for these options, refer to the manual of the relevant printer. Option | Display name | Explanation -----------+---------------+----------------------------------------- ink | Color | Specifies the print color. For color | | printing, set "COLOR" and for grayscale | | printing, set"MONO". media | Paper Size | Specifies the paper size. (*) quality | Print Quality | Specifies the quality. (*) inkset | Inkset | Selects the inkset being used. (*) | | The inkset information is normally obtained | | automatically from the printer, but with CUPS, | | since it must be set as an option, you must | | specify it in advance. In addition, there are many settings other than the above supported by CUPS. For example, CUPS itself supports functions such as multi page. For this reason, these functions are not provided by PIPS. For details of the functions supported by CUPS, refer to the CUPS documentation. 10.4 Printer Maintenance Tool (espmntg) 10.4.1 Description You can perform the Nozzle Check, Head Cleaning and Print Head Alignment from GUI. When you start the commands, the "Epson Printer Utility" window will be displayed. If you click the Nozzle Check, Head Cleaning or Print Head Alignment button, corresponding utility will start. 10.4.2 Initiation Method Execute the following command. $ espmntg 10.4.3 Functions You can perform the Nozzle Check, Head Cleaning and Print Head Alignment. *** Nozzle Check Pattern *** You can print the nozzle check pattern to confirm that the heads are clean. Follow the instructions on the screen after clicking the "Nozzle Check" button. *** Print Head Cleaning *** If your printouts are unexpectedly light, or dots are or lines are missing, you may need to clean the print head. The printer head (Nozzle) is cleand by discharging and vaccuming ink. Therefore, Print head cleaning uses inks. Follow the instructions on the screen after clicking the "Head Cleaning" button. *** Aligning the Print Head *** When printing in bi-directional mode, if your printouts contain misaligned vertical lines, or you see light or dark horizontal banding, you may need to align the printer head. Follow the instructions on the screen after clicking the "Print Head Alignment" button. 10.5 Printer Maintenance Command (espmnt) 10.5.1 Description You can perform the Nozzle Check, Head Cleaning and Print Head Alignment from the command line. espmnt [ -p ] -e [ -v ] 10.5.2 Options Option | Explanation -------------+----------------------------------------------------- -p | Specifies the printer name. If not specified, the default printer will be used. -e | Specifies the utility to perform. | See each printer driver manual for selectable values. -v | Specifies the parameters of the utility to perform. -e | Specifies the utility to perform. | See each printer driver manual for selectable values. -------------------------------------------------------------------------- EOF