Printing to Microplex Print Servers

Contents

About This Document
Compatibility Issues
Architecture and Design
Configuration and Printing
Configuring the Print Server For Use
Adding an AIX Queue
Management
Common Troubleshooting Tips

About This Document

This document describes how to set up a Microplex print server from AIX and how to add AIX print queues to print to the attached printers.

This document applies to AIX 4.1 and above.


Compatibility Issues

Network Protocols

Microplex's current print server models support multiple environments simultaneously, including:

Printers

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.

Job Types and Sizes

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.


Architecture and Design

Physical Design

The key parts of a Microplex print server's physical design are:

Logical Design

Print path

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.

Destinations/Queues

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.

Models

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.

Logpaths

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.

Built-in Command Shell (npsh)

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.

Print Job Spooling and Queueing

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.


Configuration and Printing

Configuration Tools

The following tools are available for Microplex print server configuration:

Configuration Steps

To use a Microplex print server, the basic configuration steps are:

  1. Attach the print server to the network, attach printers, and power up the devices.
  2. Configure the print server with its network settings if needed.
  3. Configure AIX remote queue to print to the print server.

Attaching to the Network

These steps are necessary to attach Microplex print servers to the network:

  1. Plug in the network connection.
  2. Attach peripherals to the appropriate I/O ports and power them up.
  3. Plug in the print server's power supply and watch the power-on self test cycle through. When this test is complete, the POWER LED should be on and STAT should be flashing.

Configuring the Print Server For Use

TCP/IP - AIX Setup

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:

  1. Log in as root or superuser on a AIX host.
  2. Add the Microplex unit's host name and IP address to the DNS or /etc/hosts.

  3. Find the Ethernet address for the Microplex print server on the bottom of the device. It must be entered as part of this process.
  4. Adding the Microplex unit and IP address

  5. telnet to the print server's IP address
    telnet printserverIPaddress
    
  6. Log in to the print server as root.
  7. At the password prompt, press ENTER since there is no password set by default.
  8. At the prompt that displays (that is, "ipaddress:root"), store the IP address and subnet mask into EEPROM on the print server so that it can remember its IP settings after power cycles. The possible commands are:
    store net ifnum addr IPaddress
    store net ifnum mask subnetmask
    
    or:
    store net ip IPaddress
    store net mask subnetmask
    
    Note: 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.

  9. Verify the IP address and subnet mask stored in EEPROM on the print server.
    list stored net
    
  10. Exit the Telnet session with "quit" and repower the print server by unplugging and plugging in the power supply.
  11. Wait 30 seconds and then try to telnet back to the print server's IP address from this PC.
    telnet printserverIPaddress
    

    At 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.

Adding an AIX Queue

You will add a remote queue with local formatting when you do not want to change the settings on the printer, or when the data has already been formatted such as when AIX is acting as a print server for a PC.  These instructions assume AIX 4, but similar queues can be setup at AIX 3.  Set up the remote queue as follow:

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.

Setting up an AIX remote queue with local formatting.

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:

  1. Start smitty with the mkpq fast path.
      smitty mkpq
    
  2. For attachment type choose remote.
       ----------------------------------------------------------------
                             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
       ----------------------------------------------------------------
    
  3. For type of remote printing choose local formatting.
                               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                 
    
    
  4. Choose the manufacturer and printer type

  5. Fill in the new print queue name and remote server characteristics.

    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 2  
    
    The 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                                                           
    
  6. Press the enter key to add the print queue.

  7. Change the timeout value for the remote connection.
    This is necessary because the AIX connection will time out if some other server is printing to the NetportExpress while AIX attempts to print. This will cause the queue to go down. To set this value for a remote queue with local formatting, edit the file /usr/lib/lpd/pio/etc/piorlfb and change the line:
    typeset         piorlfb_rbflags=""              # rembak flags
    to
    typeset         piorlfb_rbflags="-T50"              # rembak flags
    

Setting up an AIX remote queue with no formatting

To add a remote queue with no formatting follow these steps:

  1. Start smitty with the mkpq fast path.
      smitty mkpq
    
  2. For attachment type choose remote.
       ----------------------------------------------------------------
                             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
       ----------------------------------------------------------------
    
  3. Select Standard processing

  4. Fill in the form with the following information

    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 2  
    
    The 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            []
    

  5. Lengthen the timeout for the remote queue.

    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
    


Management

Microplex print servers offer the following management tools:


Common Troubleshooting Tips

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.

For TCP/IP

AIX queues keep going down

This usually happens with multiple protocols. Some of the things to try are:

Print Server Won't Talk on Network

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:

Nothing Prints

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:

Stair-Stepped Output

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.

No Formfeed or Extra Page Comes Out

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 Output

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:

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.




[ Doc Ref: 92031909613832     Publish Date: Mar. 29, 2001]