Printing via USB Port

Bill Tillman btillman99 at
Fri Feb 26 17:01:39 UTC 2010

Thanks for your reply. Your answers are usually spot on but this is one of those difficult times when the Windows and Linux guys at work laugh their asses off at me for being such a FreeBSD die-hard. I thought it might be a faulty cable or even the printer shot it's wad so I moved it over to a Windows Vista machine and poof, 15 seconds later it had found it, installed the correct driver and printed two pages for me.
I tried your method below and even though I changed "x" attribute all I got was the following in the /var/log/lpd-errs file:
Feb 26 11:30:29 FreeBSD1 lpd[1413]: lp: cannot execv(/usr/local/libexec/ps2pcl): Exec format error
Feb 26 11:30:29 FreeBSD1 lpd[1412]: lp: job could not be printed (

So I added the standard #!/bin/sh line to the beginning of the ps2pcl file and nothing printed, not even error messages about what happened. And that seems to be what's going on here. I also tried the standard ifhp filter file shown in the handbook and switched the device from DJ500 to hl1250. This is the gs driver that worked before with the apsfilter method when the printer was on lpt0: The queue shows it's empty with no jobs waiting and the log files are void of any evidence of what happened to the job. The printer sits there as if nothing happened.
I understand these are difficult topics to overcome with FreeBSD as the docs are not always in synch with the OS. But just like before when I had trouble getting this laser printer to work under lpd until I found apsfilter it was difficult. Once I had that method down it was easy to setup again. It's got to be something simple here.
Thanks again for the advice. If you think of anything else please pass it on. In the meantime I'm still doing google and yahoo searches and will try again with the #freebsd channel.

--- On Fri, 2/26/10, Warren Block <wblock at> wrote:

From: Warren Block <wblock at>
Subject: Re: Printing via USB Port
To: "Bill Tillman" <btillman99 at>
Date: Friday, February 26, 2010, 10:06 AM

Resending this off-list since my filter blocked the reply to Yahoo. I've unblocked Yahoo for now, but that probably won't last long.

On Fri, 26 Feb 2010, Warren Block wrote:
> On Fri, 26 Feb 2010, Bill Tillman wrote:
>> This printer worked fine when I was using lpd and a parallel port. Also the apsfilter port is broken which makes it more difficult for a novice like me to get the correct setting for it with lpr method. So I was really looking forward to getting cupsd working this time round.
> The original lpd will work with USB printers.  This will give you a PostScript printer as the default "lp".  (Following is collected from several systems, please pardon if something was left out.)
> /etc/printcap:
> lp:\
>     :lp=/dev/ulpt0:\
>     :sh:\
>     :mx#0:\
>     :sd=/var/spool/lpd/lp:\
>     :if=/usr/local/libexec/ps2pcl:\
>     :lf=/var/log/lpd-errs:
> Create the spool directory:
>  % mkdir /var/spool/lpd/lp
>  % chmod 770 /var/spool/lpd/lp
> Create the PostScript to PCL filter (Brother HL2040 only understands PCL):
>  % echo "/usr/local/bin/gs -dSAFER -dNOPAUSE -q -sDEVICE=ljet4 -sOutputFile=- -" > /usr/local/libexec/ps2pcl
>  % chmod +x /usr/local/libexec/ps2pcl
> Add lpd_enable="YES" in /etc/rc.conf, and start it manually this time with just
>  % lpd
> More detail:
> -Warren Block * Rapid City, South Dakota USA


More information about the freebsd-questions mailing list