Print Server Appliances that Spool?
man_ls asks: "I have recently run across the need for a network print server appliance, that can spool the data it is given and send it slower than 10 mbps to the printer. A client of mine has an Intermec label printer, with an internal processor too slow to accept data directly from the network without being buffered. Due to the system the client is running (OpenVMS) it must be connected to the network, it can't be local on one of the servers. Any ideas of a small print server box that can act like a spooler?"
Sounds like he could use a tiny linux/bsd box with enough ram and disk to play printspool.
(Given that the printer supports postscript or has opensource(ish) drivers)
Sheesh, why don't we just rename "AskSlashdot" to "AskGoogle" and be done with it? These things are common as muck; single port D-Link's can be had from as little as #30 in the UK if you shop around, and they even do wireless models. Intel's Netport range is also very good (I even have one at home), they are more expensive than the D-Links, but have much broader protocol support. Since you need to talk to non-Windows systems, you'll need to ensure that your device supports a standard like LPD that you can actually talk too (unless you want to install Samba).
UNIX? They're not even circumcised! Savages!
The question is: how much spooling do you need? If 256k is enough, then any of the little boxes (like this one) will do just fine. If you need a few megs, you can still find little "print boxes" that do what you need, but they'll be "workgroup spoolers", and they'll cost more. If it's absolutely essential that the job leave the client machine ASAP (i.e. it's an old mainframe and there are billing issues), it's time for a real spooler. Set up a machine from the junk pile with a version of unix that IT'll support. Even, gasp, a Windows spooler (they'll talk LPR both in and out, though not by default) if you're at place that's enslaved to Microsoft. Plug the printer into that machine. Move on.
Forward, retransmit, or republish anything I say here. Just don't misquote me.
A client of mine has an Intermec label printer, with an internal processor too slow to accept data directly from the network without being buffered.
I ended up writing a bunch o' custom Intermec Printer Drivers for linux and using one of their prolific Linux boxen to act as a spooling server. Wasn't that bad to work out. The hardest bit was writing the Intermec drivers... I had to reverse engineer those. Fortunately it was a custom app and only printed a half dozen types of documents.
If you're interested I could share the "reverse engineering" technique... more of a quick hack actually. Heck, the whole thing was a clever hack... I hate clever.
[signature]
I've hooked them up to an AS400 via Coax. If memory serves, it supported ethernet, serial, parallel, and several other interfaces as installable options.
A Windows software package could graphically design the label and create fields (merge codes) then you exported that to an EBCDIC or ANSI datafile. Then you pasted the code into a variable in the code. You output the variable text to the printer and it would load into RAM on the printer. Then you just sent data associated with the label fields. The printer would simply print each label. A knowledgeable VMS sysadmin could probably code this up readily. At least on an AS400 it was simple. Suppose you could use Perl or some other scripting language to do the work. Not familiar with VMS though...
It's not that complex, but you will need to get the software from Intermec. You can also get a service manual for the printer and install the NIC of choice.
There are also Windows drivers available so one could spool on a Windows box as well.
I suggest you upgrade the NIC to something that can do 10Mbps ethernet and code the app appropriately.
Fiery makes a nice little box that runs a Linux variant. Has a simple LCD screen on the front, 4 or 5 button controlls, very simple to setup and admin. The better ones have a web Gui to manipulate spooling documents, save them to your own PC, store them on the firey HDD, etc.
:)
Even better, they take standard PC133 RAM, so buy the fiery with the lowest memory config you can get, and stick a few 256 meg DIMM's in there, and you will have an awesome print server.
No I didnt spell check this post...
When it comes to network printers and print servers the authority has always been Hewlett Packard. You'll find what you need (is a 7GB spool enough for labels? ) here but at nearly US$2,000 I would think that you could build a Linux box running CUPS and Samba for a lot less.
Use your normal print server without spooling, and get a cheap, old print spooler from ebay. You'll be all set as long as you aren't printing megabytes of data at a time.
If you are, then you need to use a computer as a print server.
-Adam
I think most of the respondents here are missing the point when they recommend a cheap COTS print spooler - they rarely have the rate limiting feature you need.
... read buffer size ... sleep ... print) out to the printer device. Delete the spooled file when it's done. You'll probably need to set binmode on your filehandles.
Why not just setup a simple print spooler (samba/netatalk) which will deliver files to a queue. Then you can write a little perl script to read the file in at a known data rate (while
My God, it's Full of Source!
OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
This linksys print server has served me well at two locations. It can be a bit difficult to setup but supports netbios, ipx, and bsd spools for remote clients.
Put a 10Mpbs hub between the printer and the network. Free rate-limiting.
Or would that still be too fast?
Just find a 10bT hub and hook one end to your 10/100 switch and the other to your printer. Let TCP handle all your buffering for you.
Those hubs are probably sitting on the trash pile of countless IT departments right now. You might be able to pick one up on e-bay...
Rudy
1. 2.
is intermec printer's with ethernet ports on them allready. However when it comes to an older moddel or any other type of printer besides hp we use
Axis print servers... they can be flakey at times.. so i would recomend whatever you decide on order 3, just for backup purposes
-- botsex is {grep;touch;strip;unzip;head;mount}
the 3400A printer, is too slow to take data from an Ethernet print server that Intermet makes, because of it's processor. It's a serial or parallel interface, data rate for the serial is max 128 kbit/sec.
Thanks for the help everyone.
I would like to be able to use linux to emulate a printer. That is, I would like to be able to take another computer, hook it to my parallel port, and then have that computer think for all practicle purposes that it had a printer on the other end. My computer could simply log what was being printed, or forward it to a different printer, or whatever.
Has anyone here ever done this ?
The purpose is to make a linux box that can emulate an older printer to a legacy computer, take the files to be printed and possibly modify them and send them to a modern printer (such as a network or USB interface).
Check out some Netgear Print Servers that are priced for the home user market. Basically you connect your parallel port printer into the little box and that box connects to the network via WiFi or standard cabling. It runs a standard LPD service (i.e. unix printer daemon) and you can easily print to it from linux, OS X, windows and probably a bunch of others as well. No SMB sharing required.
As to whether or not these will handle your queuing constraint, I'm not really sure. I do know they have some sort of manageable queue, but I'm not familiar with the details of it.
mainframes have been doing this since at least the mid 60s... maybe one day you'll get fully documented error messages and compilers with half decent code generators ...
DIGI ONE SP ~~ $140.00 @ CDW, PCCONNECTION etc... http://www.digi.com/products/externaldeviceservers /digionesp.jsp
GEESH...WHY CAN'T SOMEONE JUST ANSWER THE GUYS QUESTION...
Maybe I'm missing something, but if you're willing to spend the money for a print spooler, whatever that is (linux box, network appliance, etc.), for the same money you could also buy a label printer. They're not that expensive. Is your label printer extra special nice or something?
--Lawrence Lessig for Congress!