Forum: Printers from Epson
This is a known, unsolved problem. There is a simple workaround, because CUPS has an internal function for N-up printing.http://www.cups.org/sum.html to see how N-up works under CUPS.
Many of the Stylus inkjets are purely raster graphics printers. The do not support the standard Epson ESCP/2 command set of the older 9/25 pin impact printers. They also have new commands for controlling ink drop sizes, 6 colors, etc. Most of them will print ASCII with a fixed width font. Newer Stylus's (740 and onward) need a special sequence before they recognize data on their inputs.
There are two ways.
First, there is a new library and command line tool available here:http://freshmeat.net/projects/libinklevel/
Second, With mtink, or you can also try:
escputil -iur /dev/lp0 escputil -iur /dev/usb/lp0
The option -iur
is for USB printers. Use -u
for
parallel printers. If in doubt escputil –help
TWAIN is a Windows driver. We deal with GNU/Linux issues. Goodbye!
This may be because you specify the paper size as A4, but at some stage of the filtering, it is converted to Letter. Configure both CUPS and your application for the same page size.
This behavior has also been reported when a text file is printed from the command line without specifying paper size.
You cannot continue printing with one ink cartridge empty. Before printing, replace the empty cartridge.
This is not a feature of the GNU/Linux driver, this is is a designed behaviour with the Epson printers that cannot be changed in software.
There is a test pattern generator in the gimp-print
package, located in src/testpattern
. The program is
not built by default. You should pass –with-testpattern
on the
command line. There is a script file for the pattern generator calledtestpattern.sample
.
The test pattern generator in 4.3 can print 16-bit CMYK or printer-raw images (“printer-raw” means that e. g. you can print in 6 colors on a 6-color printer) using a special file format.
You cansee a sample program or download it:pos_main.c
This is what it looks like.
#ifdef HAVE_CONFIG_H #include <config.h> #endif
#include <stdio.h> #include <stdlib.h>
#include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h>
int main(int argc, char *argv[1]) { int fp; char cBuf[64], cOut[2];
printf(“Hi, welcome\n Press <ENTER> to finish”); fp = open(“/dev/ttyS0”,O_WRONLY); printf(“fp = %i”,fp);
write(fp,“\n\n\n\n”,4); write(fp,“Hello World\n\n\n\n\n”,14); write(fp,“\x1D\x56\x01”,3); close(fp);
return EXIT_SUCCESS; } Epson Stylus Photo 820
There are no plans to support this resolution. In practice, it would offer no advantage over 2880×720; the 4 picolitre drops are plenty large enough to create solid density at 2880×720 DPI, and packing more resolution in already high resolution dimension isn't going to achieve any visible improvement.
If you want to try 2880×1440 (which would at least give you more vertical resolution), you can try using the Epson 925 driver. If you really want higher resolution, get the 960, which offers 2880×1440 with 2 picolitre drops; this really does offer visible improvement over the 820, but even on that printer there's awfully little difference in output quality between 2880×1440 and 1440×720, which is the next resolution choice. However, both the 780 and 820 are base model 6-color printers; there's no reason to do this as an “upgrade”.
The printer may not be doing 5760x720dpi in hardware anyway. The Epson web site always refers to “5760×720 optimized DPI”; there is no explanation as to what “optimized” means here, but it is perhpas some kind of oversampling being done in software. This has been tried before, but yielded no positive results.
Using the following driver description file.
driver "Raw-Printer" { # This PDQ driver declaration file was generated automatically by # foomatic-rip to allow raw (filter-less) printing. language_driver all { # We accept all file types and pass them through without any changes filetype_regx "" convert_exec { ln -s $INPUT $OUTPUT } } filter_exec { ln -s $INPUT $OUTPUT } }
Let this printer point to the port of your Epson Stylus
Photo 830</tt>. Call this printer Photo830raw
.
Now you have two definitions for your printer, your old onePhoto830
, which you set as the default
printer, is for all jobs from KDE apps, the command line.
The new definition Photo830raw
you use for the GIMP. Enterpdq -P Photo830raw
as printing command there.
You may need to add -o raw
to the command.
Use the Stylus Photo 830U with the ijsgimpprint driver for the Stylus Photo 830. Epson Stylus Photo 895
As of Linux 2.4.21pre5 the card reader is recognised as a
USB mass storage device and appears as /dev/sd?1
, typically/dev/sda1
if you don't have other SCSI devices or
USB mass storage devices.
Check whether the printer appears as a SCSI device.
cat /proc/scsi/scsi
If so, you need a CUPS version with SCSI backend (the current 1.1.x has it): Check for the existence of
/usr/lib/cups/filter/scsi
When you have this file (with or without update of CUPS), restart the CUPS daemon and do
lpinfo -v
If there is a SCSI entry, this is the entry for your printer. Use this URI when setting up your print queue.
If this does not help, please post on a Forum of CUPS:http://www.cups.org/newsgroups.php
In some versions of the printer driver (Gimp-Print) the grayscale and black-and-white are broken, print always in color mode, even if the document is black-and-white.
This is fixed in recent versions of Gimp-print.
This is the typical behaviour when a cartridge is empty. Open the lid, press the leftmost button and see with which cartridge the printhead stops at the little arrow on the left. This is the empty cartridge. Press the button again, change the cartridge and then press the button to get the head back to the right. Now ink is filled into the printhead which can take some minutes. Do not interupt the electric power for the printer during this time. Pressing the </tt>On/Off</tt> buttonm is OK, as the printer finishes the ink filling before going off.
Use gimp-print. The default resolution is 360 dpi. The C60 driver will do 1440×720. The C62 driver offers 2880×720.
Try using the lpadmin command as follows
lpadmin -p Epson -m Epson-Stylus_C62-gimp-print.ppd -v parallel:/dev/lp0 -E
It may be that the C82 uses a “soft” head alignment procedure that we don't support yet. You can try the mtink utility.
You're going to have a lot of difficulty getting a really accurate gray with 4.2. You could try boosting the magenta a bit. You might also want to try 4.3.10, if you're printing from the GIMP; there are additional (linear) color balance sliders that might give you enough control.
The green cast in dark black tones can be reduced, but only by cranking up the magenta so much that the rest of the image (skin tones in particular) gets very bad.
You can do a test print.
Make a 20:1 wide:tall aspect ratio horizontal grayscale ramp. Print it the width of your paper at the top of the page. If it's tinted green, add magenta, and so on for the other primaries Repeat by printing farther down on the same piece of paper. Five or six iterations should do it, and – until you change type of paper or ink – you're all set. Total expense: Half a page of paper and the corresponding amount of ink.
Each print has to be should be separately proofed.
Change resolution from 1440×1440 to 2880×720 or 2880×1440. Epson Stylus Pro 9600
No, Gimp-print with either CUPS or Foomatic will take care of the Postscript.
You need at least kernel 2.4.21 (or the current
2.4.21preXX version). Alternatively you can fix your current kernel as shown on theEpson Stylus CX3200 printer entry page on openprinting.org.
The original author did not specify the kernel version. It is probably 2.4.20 or newer (an early 2.4.21pre<something>). Epson Stylus CX5200
These steps worked for one person.
1) Go to Epson Website to download their Photo Image Print Systempips
Download the rpm: pips-sc82s-cups-2.6.2-1.i386.rpm
2) Unpack the rpm rpm -Uvh pips-sc82s-cups-2.6.2-1.i386.rpm
You may get messages about libcryto
and libssl 0.9.6 dependencies failing. If the libraries are in/usr/lib
then force install the RPM
rpm -Uvh --nodeps --force pips-sc82s-cups-2.6.2-1.i386.rpm
Upon installing, it will automatically modify the/etc/service
and add an entry for the epson status
monitor ekpstm
.
----Start of Modification to **''/etc/service''** ----- # written for pips-sc82s-cups cbtd 35586/tcp # pips-sc82-cups end ------End------
This is for the epson status monitor ekpstm
.
3) On some systems, you may need to make sure your usb daemon is running.
/etc/rc.d/init.d/usb start
3) To setup the printer, run /usr/local/EPKowa/SC82S/setup
It will ask for the connection type and the printer name
used by CUPS. Answer with the following:
Connection type: **''/dev/usb/lp0''**
Printer name: **''Epson_CX5200''**
4) Now connect the USB cables, and then turn on the printer. Then load
the printer module: modprobe printer
5) Goto the /dev/usb
directory, and you should see lp0
which was automatically created.
ls -la /dev/usb/lp0 crw-rw---- 1 lp sys 180, 0 Dec 31 1969 /dev/usb/lp0
6) Launch Epson Status Monitor under X: ekpstm
A status window comes up and it should read all the ink cartridge level
(black, cyan, magenta and yellow). In the status field, it should say Ready to print
7) Download EPS ghostscript filter from http://sourceforge.net/project/showfiles.php?group_id=18073
Download: ghostscript-7.05.5-0.i386.rpm
and ghostscript-cups-7.05.5-0.i386.rpm
.
Install them:
rpm -Uvh ghostscript-7.05.5-0.i386.rpm rpm -Uvh ghostscript-cups-7.05.5-0.i386.rpm
8) Open a browser, and connect to http://127.0.0.1:631/admin Select the following choices:
Manage Printers" --> "Add Printer"
and input these:
Printer Name: Epson_CX5200 Location: http://www.openprinting.org/your location here“ Description: Epson CX5200 MFP Device: EPSON Inkjet Printer #1 (Photo Image Print System) Make: EPSON Model: EPSON Stylus C80, CUPS+GIMP-print v4.2.1-pre5(en)
9) Click Print a Test Page
.
10) If it doesn't work, see the error_log FAQ
to continue debugging CUPS.
The CX-5200 Scanner part is equivalent to Perfection 1200U.
1) Download Image Scan,
which is a backend for SANE. Recommended: iscan-1.4.0-5.i386.rpm
.
2) Install the RPM: rpm -Uvh iscan-1.4.0-5.i386.rpm
3) Modify the scanner.c sources, and recompile scanner.o
module
Become root or su and edit/usr/src/linux-2.4.19-16/mdk/drivers/usb/scanner.c
as follows:
find the lines:
if (dev->config[[http://www.openprinting.org/0|[3]]].bNumInterfaces != 1) { info("probe_scanner: Only one device interface is supported."); return NULL; } and change them so they look like this.
/* if (dev->config[0].bNumInterfaces != 1) { * info("probe_scanner: Only one device interface is supported."); * return NULL; * } */
4) Add a line to scanner.h
right afterPerfection 1660 Photo
, like this:
{ USB_DEVICE(0x04b8, 0x011e) }, /* Perfection 1660 Photo */ { USB_DEVICE(0x04b8, 0x0801) }, /* CX5200 */
5) Create a new directory for the modules.
mkdir /usr/src/modules
and copy the newly modified “scanner.c” and “scanner.h” to this directory.
cp scanner.c scanner.h /usr/src/modules
6) Change to the linux source directory cd /usr/src/linux
and make sure the following lines are set
to reflect your current Mandriva kernel version.
VERSION = 2 PATCHLEVEL = 4 SUBLEVEL = 18 EXTRAVERSION = -8.1mdk
7) Return to the new modules directory cd /usr/src/modules
and compile
the modules:
gcc -DMODULE -D__KERNEL__ -I/usr/src/linux/include -include \ /usr/src/linux/include/linux/modversions.h -c scanner.c this will produce a module called **''scanner.o''**.
8) gzip scanner.o,gzip scanner.o
9) Now copy the new modules into the modules directory
cp scanner.o.gz /libs/modules/2.4.18-8.1mdk/kernel/drivers/usb
10) Add some lines to /etc/modules.conf
:
alias char-major-180-48 scanner options scanner vendor=0x04b8 product=0x0801 11) You should now remove the old **''scanner.o''** **''modprobe -r scanner.o''**
but if that fails, you can simply reboot to force a reload. After removing the old module or rebooting, then
insmod scanner
12) Change to the /dev/usb
directory /dev/usb
and check that scanner0
is there. It should be automatically
generated by usbfs
root:~>ls -la /dev/usb/scanner0 crw-rw---- 1 root usb 180, 48 Dec 31 1969 /dev/usb/scanner0
13) Edit /etc/sane.d
so it looks like this:
epson.conf: (only 1 line) usb /dev/usb/scanner0 dll.conf: (only 2 lines) net epson
14) Run iscan
from the Epson Image Scan rpm package. iscan
You can change Resolution to 300dpi and press SCAN button.
You should be able to scan. The scanner can't use
all of the resolution settings. In addition,
Preview does not work.
15) To make it work inside GIMP, make a symbolic link of “iscan” to ~/.gimp-1.2/plug-ins
ln -s /usr/bin/iscan ~/.gimp-1.2/plugins
The copy function of CX-5200 should work by itself.
You can also try Xsane. It will give you more control over the scanner, and Gimp should be able to use it immediatly.
Instead of using PostScript Level 2
, choose one of these
Epson Stylus CX5200
Epson Stylus C82
Epson Stylus C80
If you choose PostScript Level 2
for a non-PostScript printer, you
have to remove the -oraw
from the printing command.
The PPD file that you can download from openprinting.org
won't be correct if you're using the native CUPS driver. You should use
the one in /etc/cups/ppd
. Try to use the native CX5200,
C82, or C80 driver in the GIMP plugin.
1) Edit /etc/rc.d/init.d/usb
around row 188:
if [ "$MOUSE" = "yes" ];then action "Loading USB mouse" /sbin/modprobe mousedev fi if [ "$KEYBOARD" = "yes" ];then action "Loading USB keyboard" /sbin/modprobe keybdev fi if [ "$STORAGE" = "yes" ];then action "Loading USB storage" /sbin/modprobe usb-storage fi if [ "$PRINTER" = "yes" ];then action "Loading USB printer" /sbin/modprobe printer fi if [ "$SCANNER" = "yes" ];then action "Loading USB scanner" /sbin/modprobe scanner fi
2) Edit /etc/sysconfig/usb
:
USB=yes KEYBOARD_AT_BOOT=no MOUSE=no KEYBOARD=no STORAGE=yes PRINTER=yes SCANNER=yes
3) Make sure the USB daemon is loaded. This can be done withlinuxconf
.
Control Tab --> Control Panel --> Control Service Utility
Find the usb
daemon, and click on it. When theService usb
window pops up, make sureStartup [4] Automatic
is selected.
Click Accept
.
4) Reboot. The scanner and printer modules should be loaded. Run lsmod
to check.
The driver is Epson'salc2000
Look at the ghostscript drivers from the help output gs -h
If it is not there, then use a recent version ofESP Ghostscript
There is no PPD for it on Epson's site, and with the GhostScript driver you have more control than with a generic Foomatic PPD.
The serial configuration problem where the printing
is corrupted 3/4 of the way down the page can be sovled by
using the following stty entry in
the /etc/printcap.local
:stty=parenb raw -echo -echoe -echok -onlcr crtscts:\
Apparently doing this will suppress the unwanted output of extra processing that changes the printer control sequences.
There is a utility available to adjust cpi, font, and a couple of other things. It may work with other epson printers.