This document applies to AIX 4.1 and above.
Microplex's current print server models support multiple environments simultaneously, including:
All printers containing a serial port or a standard Centronics interface will be supported by the Microplex print server line. This means 10-year old printers to the latest high-speed printers on the market today are supported as long as they have a serial or Centronics interface. This is the only compatibility requirement.
The type and size of a print job never matters to the Microplex print servers. The print server takes a few bytes at a time, passing them off to the attached printer, and never cares what type of data it is or how big the overall file is. However, the print server can be told to look at the type of data if something like ASCII to PostScript conversion or automatic emulation switching (for example, PCL to PostScript) is turned on.
The key parts of a Microplex print server's physical design are:
When a print job comes through the print server, there's a certain logical print path it follows before it gets to the attached printer. It's not as simple as saying the job goes directly to the I/O port; it must first go through a sequence of logical steps in case there's any extra processing to be done to the data.
The overall print path for a print job going to a Microplex print server is:
Note:
Most print methods direct print jobs to the destination/queue in the
initial print setup, but in some cases, the print job can be sent directly to the
I/O port. However, every single job that comes to the print server (no matter
whether it's directed to a destination/queue or an I/O port) will still find its
way through the associated models and logpaths.
For every I/O port on the print server, there is at least one pre-defined logical print queue or destination to accept print jobs destined for it. This is where print jobs get sent to with most print methods offered. For example, if there was a printer attached to the COM1 port, the print jobs might be sent to a pre-defined destination called "d3com1" in the print setup rather than to the I/O port, COM1, directly. These logical queues or destinations are pre-defined by Microplex but the names can be changed.
For every pre-defined destination/queue on the print server, there is a pre-defined associated model which defines how the print job will be processed as it passes through to the printer. Models are like a set of mini filters that add something to the data to change or help the printer output. In most cases, the print server will not touch the data, but there are special circumstances when extra processing may be desired. For example, maybe the printer needs to output the data in two-sided landscape form or maybe the ASCII data coming through needs to be converted to PostScript for the attached PostScript printer. It is within the models that these options get set. Once again, the models are pre-defined by Microplex but can be changed.
With every destination comes a pre-defined logpath as well which determines what type of print job and printer logging will be done by the print server for a given I/O port. These too are pre-defined by Microplex but can be changed.
Within each Microplex print server, a command shell is built in to the firmware. It's called "npsh" and allows manipulation of objects like destinations, models, and logpaths. It also provides some viewing capabilities for monitoring print queues and I/O ports.
These methods can be used to access "npsh":
When commands are referred to within this document or within the product manual, these are commands executed once logged into "npsh". The four main command prefixes within "npsh" are:
Note:
If the "store" command is used, the print server
must be repowered to make the changes take effect. If the "set"
command is used, a "save" command must be done so the settings are
retained after power cycles. However, a reset is not necessary since the
changes take effect immediately.
Microplex print servers can support up to four printers simultaneously while supporting multiple hosts and network protocols. They are smart enough to queue up jobs for every I/O port based on a first come, first serve algorithm and they have the ability to manage all of this queueing for every I/O port.
At any given time, the print servers will only hold approximately 3000 to 4000 bytes per I/O port. This means the majority of the print job's data will reside on the host, and through standard flow control methods, the data will quickly pass over to the print server's buffers on to the printer's. Though the print server only holds a few kilobytes per I/O port, it is not the bottleneck in the print path. The printer is always the bottleneck and comes down to its I/O port speed and its buffer size.
The following tools are available for Microplex print server configuration:
To use a Microplex print server, the basic configuration steps are:
These steps are necessary to attach Microplex print servers to the network:
Environment Description - AIX at any level will work. AIX 4.1 and above provide local data formatting.
Requirements for Use - IP address and subnet mask configured on the print server at the minimum and a print setup on Unix host saying where to print to on the print server
Configuration Methods - Manual "arp -s" command, RARP, and BOOTP
Print Method Options - LPD, RSHD (that is, remote shell command for System V printing), FTP, and direct socket printing through a proprietary Microplex binary like NPD or NPWRITE or through a custom application The AIX JetDirect support backend should also work for the socket printing, but has not been tested at this time.
The steps to do this are:
arp -s printserverIPaddress printserverEthernetaddress ping printserverIPaddressExample:
arp -s 192.1.1.12 00:80:72:00:1c:1a temp ping 192.1.1.12
west4247:ht=tr:ha=000231C80061:ip=192.36.253.96:sm=255.255.255.0:gw=192.36.353.254
telnet printserverIPaddress
store net ifnum addr IPaddress store net ifnum mask subnetmaskor:
store net ip IPaddress store net mask subnetmaskNote: ifnum is the index to a network interface on the print server. With all print server models except the M204, this will always be the number "1". On the M204, however, this number will depend on which slot is used for the PCMCIA card. The slot numbers are labeled on the print server for easy identification.
list stored net
telnet printserverIPaddressAt this point, the print server can be seen on the network. Now a print setup must be configured on this PC to print to a printer off of the print server.
When asked for a "remote queue", choose one of the pre-defined destinations/queues on the print server. For example, some default M202/M212 destinations include "d1prn1", "d2prn2", "d3com1", and "d4com2". The product manual lists all default destinations possible.
A remote queue with local formatting can be used when you want control of the printer trays, pitch size, page orientation, and other factors determined by an AIX virtual printer and the qprt print command including header pages.
To add a remote queue with local formatting follow these steps:
smitty mkpq
---------------------------------------------------------------- Add a Print Queue Move cursor to desired item and press Enter. Use arrow keys to scroll. # ATTACHMENT TYPE DESCRIPTION local Printer Attached to Local Host remote Printer Attached to Remote Host ascii Printer Attached to ASCII Terminal hpJetDirect Network Printer (HP JetDirect) file File (in /dev directory) ibmNetPrinter IBM Network Printer\ other User Defined Backend F1=Help F2=Refresh F3=Cancel 8=Image F10=Exit Enter=Do /=Find n=Find Next ----------------------------------------------------------------
Type of Remote Printing Move cursor to desired item and press Enter. Standard processing Standard with NFS access to server print queue attributes Local filtering before sending to print server
The HOSTNAME of remote server is the host name or ip address that you added to /etc/hosts.
The Name of QUEUE on remote server is
d1prn1 Parallel port 1 d2prn2 Parallel port 2 d3com1 Serial port 1 d4com2 Serial port 2The product manual lists all default destinations possible.
The TYPE of print spooler on remote server is BSD
In AIX 4.3 set the Backend TIME OUT period to 50
For example:
Add a Remote Print Queue with Local Filtering
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
Description Lexmark Optra E laser p>
* Name of new PRINT QUEUE to add [laser4+B]
Remote server characteristics
* HOSTNAME of remote server [netport1]
* Name of QUEUE on remote server [c1prn1]
TYPE of print spooler on remote server BSD
Send PASS-THROUGH FLAG to queue yes +
on remote server?
Backend TIME OUT period (minutes) [50] #
Send control file first? no +
To turn on debugging, specify output []
file pathname
typeset piorlfb_rbflags="" # rembak flags to typeset piorlfb_rbflags="-T50" # rembak flags
To add a remote queue with no formatting follow these steps:
smitty mkpq
---------------------------------------------------------------- Add a Print Queue Move cursor to desired item and press Enter. Use arrow keys to scroll. # ATTACHMENT TYPE DESCRIPTION local Printer Attached to Local Host remote Printer Attached to Remote Host ascii Printer Attached to ASCII Terminal hpJetDirect Network Printer (HP JetDirect) file File (in /dev directory) ibmNetPrinter IBM Network Printer\ other User Defined Backend F1=Help F2=Refresh F3=Cancel 8=Image F10=Exit Enter=Do /=Find n=Find Next ----------------------------------------------------------------
The HOSTNAME of remote server is the host name or ip address that you added to /etc/hosts.
The Name of QUEUE on remote server is
d1prn1 Parallel port 1 d2prn2 Parallel port 2 d3com1 Serial port 1 d4com2 Serial port 2The product manual lists all default destinations possible.
The TYPE of print spooler on remote server is BSD
In AIX 4.3, set the Backend TIME OUT period to 50.
Add a Standard Remote Print Queue
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
[Entry Fields]
* Name of QUEUE to add [laser5]
* HOSTNAME of remote server [netprt2]
* Name of QUEUE on remote server [d1prn2]
TYPE of print spooler on remote server BSD
Backend TIME OUT period (minutes) [50] in AIX 4.3
Send control file first? no +
To turn on debugging, specify output []
file pathname
DESCRIPTION of printer on remote server []
This is most easily done by adding a -T50 flag to rembak in the queue device stanza for the queue in /etc/qconfig
backend = /usr/lib/lpd/rembak -T50
Microplex print servers offer the following management tools:
Within TCP/IP environments, all Microplex print servers support Telnet sessions from anywhere on the network. By telnetting into the print server and logging in as a root or guest user, you can monitor job status and printer status. For example, the command "lpstat" shows activity on the I/O ports at a given time and displays the status of the printer at that moment. Back to back "lpstat" commands will show a print job as it passes through the print server to the printer.
Microplex print servers are all MIB II compliant but they also have their own custom MIB support. This custom MIB includes all possible configuration settings on the print server (for example, destinations, ports, models) and supports traps. For example, when the printer status changes on a specified I/O port, a trap can be sent back to the SNMP Manager or when the print server is reset for some reason, a trap can be sent.
This information can then be sent to:
These are some of the most common problems reported with Microplex print servers. For each problem, a description is given along with steps to solve the problem.
Sometimes the print server won't communicate over the network from the beginning or it will suddenly stop communicating after working for a while. In these cases, customers most often think something has gone wrong with the device, meaning an RMA is needed, but 75% of the time the problem is related to configuration or network problems. Therefore, the things to check when this happens are:
Most often when nothing prints, the problem is with the configuration, whether it be the host configuration or the print server configuration. Rarely is it a problem with the hardware (for example, I/O port interface) unless it's the printer cable or printer itself having troubles.
What's important to find out with this problem is where exactly the print job is faltering. Therefore, start with the basics (that is, take the network right out of the picture) and work backwards towards the host end. The steps to consider when this happens are:
This refers to any Unix output that starts on the top left of the page but, in every line thereafter, starts a little more over to the right rather than coming back properly to the left margin. It also refers to Unix jobs that print one line at the top of the page but then follow that with blank pages rather than the rest of the job.
The reason for this odd output is the lack of carriage returns in the job. The printer may be told to do a linefeed, but this may not be followed by a carriage return to start the next line at the left margin. Therefore, the printer does a linefeed but then starts the next line where the previous line left off.
This should only happen with Unix text jobs and to avoid this, some type of carriage return insertion must be added in the print path. The easiest and most common location is on the print server itself within the appropriate model. The feature is called "onlcr", and to see the correct command on the device to set this on or off, enter "set model" once logged in. Then pick the command referring to "onlcr".
AIX: The easiest way to solve this problem in AIX is to add a remote queue with local formatting.
Note:
Be careful not to double up on this carriage return
insertion or else the output will be double-spaced.
Unix text jobs may also have problems kicking the last page of the print job out of the printer, especially if the LPD print method is used. This means the formfeed button has to be pressed right on the printer to get this last page out.
To make this process automatic, tell the print server to handle the manual formfeed by setting this feature on in the appropriate model. The command structure on the print server is "set model modelname trailer $FF" (for example, "set model m1 trailer $FF"). The "$FF" is a pre-defined variable on the print server which equals the proper hexadecimal code for a formfeed.
AIX: If you are getting an extra formfeed when using local formatting, set the _Z attribute in the virtual printer to "!".
Note:
Be careful not to double up on the formfeed or else the
job will eject properly but with an extra blank page at the very end.
Garbled data means any output that does not look as it should. This can range from missing or overlapping characters to odd spacing. Most often it is caused by some extra unwanted processing done to the job as it passes through its print path or else it may be related to the hardware involved. No matter what, 99% of the time it is fixable without having to bring a print server back for repair. Therefore, the things to consider if this happens are:
AIX: The equivalent to the FOX test in AIX is to send a test string with
lptest 10 10 | qprt -P queue_name This gives a test pattern line: !"#$%&'()* "#$%&'()*+ #$%&'()*+, $%&'()*+,- %&'()*+,-. &'()*+,-./ '()*+,-./0 ()*+,-./01 )*+,-./012 *+,-./0123
Note:
The most common extra processing that causes garbling is
onlcr which provides carriage return insertion for Unix text jobs. This tends
to garble any jobs coming from non-Unix hosts so be sure to have this off with
any non-Unix printing. If printing from both PCs and Unix hosts is needed, two
separate setups are recommended: one with onlcr on and one with it off.