DJ500 dead after >= 16 years.

Ted Mittelstaedt tedm at
Fri Feb 22 07:17:10 UTC 2008

> -----Original Message-----
> From: owner-freebsd-questions at
> [mailto:owner-freebsd-questions at]On Behalf Of Predrag
> Punosevac
> Sent: Wednesday, February 20, 2008 12:25 PM
> To: David Kelly
> Cc: Gary Kline; FreeBSD Mailing List
> Subject: Re: DJ500 dead after >= 16 years.
> David Kelly wrote:
> > On Wed, Feb 20, 2008 at 12:02:25AM -0800, Gary Kline wrote:
> >
> >> 	Nutshell, I'd like anyone's ideas/experiences with some of these
> >> 	new HP/<<< or whateverbrand>>> printers. I wouldn't *mind* if I
> >> 	could scan in text from a techy paper into HTML or PDF or text.
> >> 	But mostly, like 99.44%  plain black text.  My old deskjet used
> >> 	gs as a filter to print PostScript.  Do we have any such plugin
> >> 	support, or are printers still roll-your-own?  [FWIW, I can't
> >> 	seem to get CUPS working...  altho it maay be my misssing
> >> 	/dev/lpt0.]
> >>
> >
> >
> Why don't you check for
> the most comprehensive information available.
> Just couple a comments. I would keep native LPD spooling system instead
> installing CUPS unless you need to use something
> like HPLIP drivers.

You do not need CUPS for the hplip drivers, you can use lpd if you

To be perfectly clear on this, all that CUPS is, is 4 things:

Spool manager - LPD does this

Speaks IPP protocol - LPD also does this except it speaks LPR protocol

Easy user interface for the options needed by some of the more complex
filters. - lpd does NOT do this BUT, you can do it by writing
your own filter script and coding the options you want into it.
Note that most options are set once and forget, so CUPS really
doesen't add much here.  CUPS uses Postscript PPD files to automagically
generate the webpage the user fills out to select these options.

web-interface for job mangement - well who needs this for a
personal printer attached to a workstation?

The reason CUPS is used so much is that it dummifies the
chain of hooking together programs into a black box.  So,
people who don't understand what is going on can setup a
printer by clicking buttons.  That is fine if your printer
model is supported.  But if it doesen't work or if the model
is a new one that the cups people haven't quite yet got around
to testing with, or nobody has written a .PPD file for it,
you have to understand what is going on then.

I've posted the following before, but here's the instructions
I use for setting up my C84 without CUPS, so you can see
how this kind of thing works.  They are just a bit old but
still work if you change the version #s.  The setup uses the IJS output
from Ghostscript and feeds it into gimpprint.  The HPLIP
scheme works exactly the same way except that instead of
gimpprint, you use the hpijs driver along with the required

1) setup print queue

Add the following to the end of /etc/printcap:

lp-epson|Epson C84 Color printer:\

lp-epson-raw|Epson C84 Color Printer - raw for Windows systems:\


Create the print queues:

cd /var/spool/output

mkdir lp-epson
mkdir lp-epson-raw

Add in access for the local systems

cat /etc/hosts.lpd
# $FreeBSD: src/etc/hosts.lpd,v 1.4 1999/08/27 23:23:42 peter Exp $
# See lpd(8)

Run some test prints through the queues:

cd /etc
ls -l | lpr -P lp-text

Send a test print page from the Windows 2K workstation
via lpr to the print queue on the BSD box

(do a chmod 664 on the lock file in the lp-epson-raw queue, since network
LPR doesen't set the mask up properly per submitted bug)

2) Install the tools to image a printjob for the Epson, as follows:

cd /usr/ports/print/gimp-print
cd work/gimp-print-4.2.7/src/escputil
./escputil -i -u -r /dev/lpt0 (checks ink levels)
./escputil -n -u -r /dev/lpt0 (prints nozzle alignment)
(try some other commands to see if the level of support is better)
cd ../../../../
make WITHOUT_CUPS=yes install
cd ../ghostscript-gnu
make install
Deselect all the printers, leave in stp and ijs driver, as well
as all the X-windows drivers and the jpg and other image drivers.

test the ghostscript install:

cd /root
man -t which >
gs -dBATCH -sDEVICE=jpeg -sOutputFile=test.jpg
open test.jpg in a browser and see if the page is there

Now test gimpprint and ghostscript:

first manually with the command,

gs -sDEVICE=ijs -sIjsServer=/usr/local/bin/ijsgimpprint -sDeviceManufacturer
=EPSON  -sDeviceModel=escp2-c84 -sIjsParams=Quality=720x360sw,InkType=CMYK
,MediaType=Plain -dIjsUseOutputFD -dNOPAUSE -dBATCH -sOutputFile=test.out

lpr -P lp-epson-raw test.out

Create the file /usr/local/bin/epsonfilter with the following contents:

# Script that runs gimp-print for the Epson
/usr/local/bin/gs -q -sDEVICE=ijs -sIjsServer=/usr/local/bin/ijsgimpprint -s
DeviceManufacturer=EPSON  -sDeviceModel=escp2-c84 -sIjsParams=Quality=720x
360sw,InkType=CMYK,MediaType=Plain -dIjsUseOutputFD -dNOPAUSE -dNOBATCH -dSA
FER -sOutputFile=- -

test with firefox and
 use the printer lpr -P lp-epson

test PS file:  /usr/local/share/ghostscript/7.07/examples/


More information about the freebsd-questions mailing list