Date: Sat, 27 Feb 2010 05:12:08 -0800 (PST) From: Bill Tillman <btillman99@yahoo.com> To: Robert Bonomi <bonomi@mail.r-bonomi.com> Cc: freebsd-questions@freebsd.org Subject: Re: Printing via USB Port Message-ID: <250360.24168.qm@web36506.mail.mud.yahoo.com> In-Reply-To: <201002270229.o1R2TDO2029973@mail.r-bonomi.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--- On Fri, 2/26/10, Robert Bonomi <bonomi@mail.r-bonomi.com> wrote: From: Robert Bonomi <bonomi@mail.r-bonomi.com> Subject: Re: Printing via USB Port To: btillman99@yahoo.com Date: Friday, February 26, 2010, 8:29 PM > From owner-freebsd-questions@freebsd.org=A0 Fri Feb 26 18:20:29 2010 > Date: Fri, 26 Feb 2010 16:19:40 -0800 (PST) > Cc: freebsd-questions@freebsd.org > Subject: Re: Printing via USB Port > > > > > > From: Warren Block <wblock@wonkity.com> > > Subject: Re: Printing via USB Port > > Date: Friday, February 26, 2010, 5:38 PM > > > > On Fri, 26 Feb 2010, Bill Tillman wrote: > > >=20 > > > Thanks again for your valuable input. I have set up lpd printing on m= y old=20 > > > FreeBSD server at least a dozen times and it became a simple routine = to do=20 > > > with apsfilter.Let me see if I can place all my cards in one place an= d=20 > > > perhaps we can find the bug. > > > > I think I found it. The HL-2040 is a GDI printer, aka winprinter (aka "= oh no, > > one of those", aka "I guess I didn't really want to print that after al= l"). > > It won't respond to PCL, unlike the one I looked up first, the HL-2060. > > > > Based on http://beej.us/hl2040/: > > > >=A0 % cd /usr/local/libexec > >=A0 % cp ps2pcl ps2hl1250 > > > > Change the line in ps2hl1250 to: > > > > /usr/local/bin/gs -dSAFER -dNOPAUSE -q -sDEVICE=3Dhl1250 -sOutputFile= =3D- - > >=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = =A0 =A0 =A0 =A0 =A0 =A0=A0=A0^^^^^^ > > And change the if=3D line in the printcap to refer to ps2hl1250. > > > > (And remember, buying winprinters just encourages them to make more.) > > > > -Warren Block * Rapid City, South Dakota USA > > Warren, > > Once again many thanks, but that is one of the first things I tried. By= =20 > checking ghostcript's drivers > > #gs -h | grep hl > > I found many drivers for the HL-12xx models. I have used this in my previ= ous=20 > setup with my old parallel server. I actually tried what you suggested an= d it > only worked when using the parallel cable, not the USB. For some reason t= he=20 > USB connection on this and any other FreeBSD server I connect to is DOA f= or > printing. I run mouse and keyboard via USB. But these print jobs are lini= ng=20 > up in the queue and just sit there no matter how many times I reconnect t= he=20 > printer, or reboot it or reboot the computer. And once again I'm seeing t= wo=20 > instances of lpd running when I only launched it from the command-line on= ce, > no entry in /etc/rc.conf. > > BigDell# ps -ax | grep lpd > 1311 ?? Is 0:00.00 lpd > 1329 ?? IE 0:00.00 lpd > > BigDell# lpq > no entries > > BigDell# lpc status all > lp: >=A0 queuing is enabled >=A0 printing is enabled >=A0 no entries in spool area >=A0 printer idle > > BigDell# > > This just don't make sense and I hope when we find it it's something we c= an >=A0 laugh about. > OK, it's time to try some _basics_.=A0=A0=A0Can you throw data _directly_ a= t the printer (i.e., *NOT* through lpr/lpd), and will it print? You can't use a simple=A0 'echo Hello, World! >/dev/lp' to find out, becaus= e its=20 a fscking 'winprinter'. power everything down, connect the USB cable only, power up the printer fir= st, then the computer. When it has come up, do you have a /dev/usb/lp0 device? Have you created a symlink at /dev/lp that points to /dev/usb/lp0? What happens if you do (as root) where 'testfile.ps' is a simple Postscript= doc]: =A0 =A0 # /usr/local/libexec/ps2hl1250 < testfile.ps >/dev/usb/lp0 how about:=20 =A0 =A0 # /usr/local/libexec/ps2hl1250 < testfile.ps >/dev/lp For that matter, what does "find /dev -name '*lp*' -ls" show? If any of the names show as symlinks, do an 'ls -l' on the symlink target. I'm guessing that /dev/lp is a 'character device' node, pointing to the=20 parallel port; and when lpd tries tyo print to _that_ -- with only the USB connection, --=A0 it *doesn't*work* (for what is now an 'obvious' reason :) =A0 Thanks for your reply. I hate to be such a noob about this but USB and Free= BSD don't ever seem to work right for me. =A0 I tried the echo method =A0 # echo Hello > /dev/lp /dev/lp: Operation not supported. =A0 So I then tried # echo Hello > /dev/ulpt0 =A0 and I got an empty prompt until I pressed Ctrl+c to exit. =A0 I disconnected everything except the keyboard which is PS2 and the monitor = and rebooted the printer and computer allowing the printer to come up first= . When I did a directory on the /dev/usb folder this is what shows up: =A0 BigDell# ll /dev/usb/ total 0 crw-------=A0 1 root=A0 operator=A0=A0=A0 0,=A0 72 Feb 27 07:40 0.1.0 crw-------=A0 1 root=A0 operator=A0=A0=A0 0,=A0 76 Feb 27 07:40 0.1.1 crw-------=A0 1 root=A0 operator=A0=A0=A0 0,=A0 94 Feb 27 02:40 0.2.0 crw-------=A0 1 root=A0 operator=A0=A0=A0 0,=A0 96 Feb 27 02:40 0.2.1 crw-------=A0 1 root=A0 operator=A0=A0=A0 0,=A0 97 Feb 27 02:40 0.2.2 crw-------=A0 1 root=A0 operator=A0=A0=A0 0,=A0 87 Feb 27 02:40 0.3.0 crw-------=A0 1 root=A0 operator=A0=A0=A0 0,=A0 89 Feb 27 02:40 0.3.1 crw-------=A0 1 root=A0 operator=A0=A0=A0 0, 100 Feb 27 02:40 0.3.2 crw-------=A0 1 root=A0 operator=A0=A0=A0 0,=A0 74 Feb 27 07:40 1.1.0 crw-------=A0 1 root=A0 operator=A0=A0=A0 0,=A0 77 Feb 27 07:40 1.1.1 =A0 I'm not so sure this is what we call a Windows printer. Maybe I'm off base = there but by that if you mean it's not a real printer and relies on Windows= to do most of it's work then I can't say. What I can say is that this prin= ter worked perfect under FreeBSD with the parallel connection and a simple = setup with apsfilter to use the HL-1250 drivers. And it did print a few thi= ngs yesterday from the command line using the parallel connection. I sent s= ome postscript files through the ifhp filter from the /usr/share/examples/p= rinting/ folder and just changed the device from the DJ500 to HL1250. BigDell# find /dev -name '*lp*' -ls =A0=A0=A0 45=A0=A0=A0=A0=A0=A0=A0 0 crw-------=A0=A0=A0 1 root=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0 wheel=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 0,=A0= 45 Feb 27 07:40 /dev/lpt0 =A0=A0=A0 46=A0=A0=A0=A0=A0=A0=A0 0 crw-------=A0=A0=A0 1 root=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0 wheel=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 0,=A0= 46 Feb 27 07:40 /dev/lpt0.ctl =A0=A0=A0 98=A0=A0=A0=A0=A0=A0=A0 0 crw-r--r--=A0=A0=A0 1 root=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0 operator=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 0,=A0 98 Fe= b 27 07:49 /dev/ulpt0 =A0=A0=A0 99=A0=A0=A0=A0=A0=A0=A0 0 crw-r--r--=A0=A0=A0 1 root=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0 operator=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 0,=A0 99 Fe= b 27 02:40 /dev/unlpt0 =A0 No symlinks found in this search. BigDell# /usr/local/libexec/ifhp < /tmp/ntpdate.ps > /dev/lp /dev/lp: Operation not supported. BigDell# /usr/local/libexec/ifhp < /tmp/ntpdate.ps > /dev/ulpt0 =A0 This last one gives me an empty prompt waiting for more input I guess until= I press Ctrl+c to exit. =A0 I wonder how this would play out on a 7.2-STABLE machine. I have one handy = and will test it out next. I've been told that USB was completely rebuilt f= rom 7.x to 8.x. =0A=0A=0A
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?250360.24168.qm>