Date: Sun, 3 May 2020 10:50:20 -0700 From: "Russell L. Carter" <rcarter@pinyon.org> To: freebsd-questions@freebsd.org Subject: Re: Brother HL-L2340D printer and lpd? Message-ID: <ec10816a-15d1-e947-e032-9ad024c044d6@pinyon.org> In-Reply-To: <20200503192444.2d700440.freebsd@edvax.de> References: <20200503171259.GA48627@admin.sibptus.ru> <20200503192444.2d700440.freebsd@edvax.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2020-05-03 10:24, Polytropon wrote: > On Mon, 4 May 2020 00:12:59 +0700, Victor Sudakov wrote: >> Dear Colleagues, >> >> I'm trying to use a Brother HL-L2340D printer as a simple >> networked line printer with lpd. I've successfully used HP and >> Canon printers like that with a simple printcap like this: >> >> # by VAS lp|Brother HL-L2340D series:\ :sh:\ :rp=TEXT_P1:\ >> :rm=192.168.1.74:sd=/var/spool/output/lpd1:lf=/var/log/lpd-errs: >> >> but the story with Brother HL-L2340D is different. When fed some >> input with "lptest |lpr", it just spits out 3 empty pages. I've >> never seen anything like that before. > > It's possible that your previous printers could understand regular > (unformatted) ASCII text, but the new one doesn't. > > > >> I'm wondering if someone has this printer and made it work as a >> line printer. >> >> From the specification at >> https://support.brother.com/g/b/spec.aspx?c=us&lang=en&prod=hll2340dw_us_eu_as >> it should support LPD. > > It's not a matter of supporting LPD - it's the question which printer > language the printer can process. The default output format for > programs is PS. According to the above specification, the printer > does not understand PS. However, it supports PCL, and tools like gs > (GhostScript) should be able to convert PS to PCL. This is what you > need to send to the printer. > > I assume you're not using CUPS? In this case, a PPD file for this > printer would probably be the easiest thing, but you can get around > using CUPS of course. > > Maybe this example can help: > > First verify that the printer really understands PCL. You can use nc > (netcat) to send it some data directly. If it works, instantiate a > simple printer filter in /etc/printcap, for example: > > Laserjet|ljet4d;r=600x600;q=high;c=full;p=a4;m=auto:\ > :rm=192.168.100.100:\ :rp=raw:\ :lp=:\ > :if=/opt/libexec/ps2pcl-dup.sh:\ :sd=/var/spool/lpd/Laserjet:\ > :lf=/var/spool/lpd/Laserjet/log:\ :af=/var/spool/lpd/Laserjet/acct:\ > :mx#0:\ :sh: > > Then rebuild printcap.db. Make sure the required directories do > exist. Here is the printer filter, /opt/libexec/ps2pcl-dup.sh: > > #!/bin/sh /usr/bin/printf "\033&k2G" || exit 2 /usr/local/bin/gs -q > -dBATCH -dNOPAUSE -dPARANOIDSAFER -dSAFER \ -sDEVICE=ljet4d > -sPAPERSIZE=a4 -r600x600 \ -dDuplex=true \ -sOutputFile=- - && exit > 0 exit 2 > > I use that one with a HP Laserjet 4000 DN. There is also a filter > (and printer) for non-duplex, it's simply missing the -dDuplex=true > entry. ;-) > > Adjust parameters you need, for example if you don't have standard A4 > paper or need a different resolution. > > It might even be possible that you can use this example 1:1, if the > Brother HL-L2340D speaks PCL in a similar way to the HP Laserjet 4000 > DN - see the "ljet4d" device format, which works both for a Laserjet > 4 and a Laserjet 4000 (I have both). Sidenote: That Laserjet printer > can understand PS, PCL, and ASCII text (including escape sequences > for formatting etc., or real plain text without any preprocessing). > > > > For more inspiration, check: > > http://www.wonkity.com/~wblock/docs/html/lpdprinting.html > > > I print to an HL-L2340DW by using CUPS to remotely print to a Debian CUPS that has it configured as a "driverless" printer: https://wiki.debian.org/CUPSDriverlessPrinting I mention this because otherwise it seems like a real hassle to install using the Brother drivers. There are entries in the lists where we went through what it would take... a real maintenance PITA, no thanks. And I don't believe there should be any problem doing what works in Debian on FreeBSD. I tried very hard to get driverless working on FreeBSD but failed, and I think it's because of the versions: Debian: 2.3.1, FreeBSD: 2.2.13 <- up-to-date However, I am no expert, so I might have done something stupid somewhere. Anyway, options all seem to work, eg two sided printing. Russell
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ec10816a-15d1-e947-e032-9ad024c044d6>