This document contains information on configuring *LAN 3812 IPP printer device descriptions for Internet-attached ASCII printers that use the Internet Print Protocol (IPP).
Resolving The Problem
This document contains information on configuring a *LAN 3812 IPP printer device description. A *LAN 3812 IPP device description is a type of IBM OS/400 or IBM i5/OS printer device description that uses the IPP Print Driver and, therefore, uses the Internet Print Protocol (IPP). Support for the IPP Print Driver is available in the base code for R520 OS/400.
This is an alternative to using Remote Output Queues and an alternative to using *LAN 3812 printer device descriptions that use the PJL and SNMP Print Drivers. As with other *LAN printer device descriptions, *LAN 3812 IPP device descriptions fully support the page range function.
This document was last updated on 29 September 2011.
Hardware Requirements for *LAN 3812 IPP Device Descriptions
There is no guarantee that printers that support Remote Output Queues will also support IPP (or vice versa). For a *LAN IPP device description to work, the following hardware requirements must be met:
1. The internal network interface card (NIC) or external print server must support the Internet Print Protocol (IPP). 2. The internal network interface card (NIC) or external print server must be at a firmware or microcode level that supports IPP printing. 3. If the printer is connected to an external network adapter, it must be connected using an IEEE 1284, bidirectional printer cable, and the print server must be in BITRONICS, BI-DIRECTIONAL or ECP/MLC mode. 4. The printer must support IPP chunking, which means that the printer can accept a single spooled file in one or more "chunks" of data rather than as a single stream of data.
N1019376: Recommended Remote Location (RMTLOCNAME) Values for *LAN 3812 IPP Device Descriptions
Note: If it is unclear whether the network interface card (NIC) or print server supports IPP, contact the manufacturer.
Required PTF Levels
There are no required PTFs in order to print using a *LAN 3812 IPP device description, but getting the latest Print Group PTF will typically help you avoid problems:
PTF Number Licensed Program Version Description SF99366 5770SS1 V7R1M0 710 Print Group PTF for V7R1M0 SF99356 5761SS1 V6R1M0 610 Print Group PTF for V6R1M0 SF99347 5722SS1 V5R4M0 540 Print Group PTF for V5R4M0 SF99346 5722SS1 V5R3M0 530 Print Group PTF for V5R3M0 SF99345 5722SS1 V5R2M0 520 Print Group PTF for V5R2M0
Otherwise for a list of the latest PTFs, including PTFs that are not yet included in the latest Print Group PTF, contact the Rochester Support Center or refer to the Recommended Fixes data base at the following Web site:
To take advantage of this new function, the printer connected via this print driver must have a dedicated port that accepts Internet Print Protocol (IPP) communications.
To configure such devices, use the CRTDEVPRT command. The following parameters should be specified:
Device Class (DEVCLS)
This needs to be set to *LAN.
Device Type (TYPE)
This needs to be set to 3812.
Device Model (MODEL)
This needs to be set to 1.
LAN Attachment (LANATTACH)
This needs to be set to *IP.
Port number (PORT)
This specifies the port number that the LAN-attached printer or LAN print server is expecting for Internet Print Protocol (IPP) data. The port number should always be set to well-known port 631 for a non-secure connection. For a secured connection, this parameter can be set to 631, 6310, or any unused port.
Font (FONT) = 011
This is typically set to 011, which is the default 10 CPI font. A font ID is required to create the device description. Unless special requirement in your operation dictate something different, this should suffice.
Form Feed (FORMFEED)
This defaults to *TYPE, but should be set to *AUTOCUT to indicate that the printer automatically feeds cut sheet paper. Leaving this set at *TYPE or setting it to *CONT or *CUT can cause problems with both drawer selection and paper size.
Printer Error Message (PRTERRMSG)
This defaults to *INQ. For R410 OS/400 and above, this should be set to *INFO so the printer's message queue will receive informational messages whenever possible. If this is set to *INQ and a problem occurs on the printer (such as out of forms or a paper jam) a message will be sent to the printer's message queue that must be answered before printing can continue. Often, this can also cause the writer to end while in the middle of a spooled file.
Message queue (MSGQ)
This defaults to *CTLD, which indicates the message queue defined in the attached controller. There is no attached controller for *LAN printer device descriptions, so leaving the Message queue (MSGQ) parameter set to *CTLD will in affect set it to the QSYSOPR message queue in library QSYS. If another message queue is to be used for this particular printer device, verify that the message queue exists before entering the message queue and library in the MSGQ parameter. Otherwise, the CRTDEVPRT command will fail with message CPF2799 - Message queue &1 in library &2 not found.
Activation Timer (ACTTMR)
This defaults to 170 (seconds), but can be set to any value from 1 to 2550 seconds (or 42.5 minutes). The activation timer refers to the amount of time to wait for the LAN-attached printer device to respond. The printer device is considered not available, and an error message is posted if there is no connection before this timer expires.
Inactivity Timer (INACTTMR)
This defaults to *ATTACH, but can be set to any value from 1 to 30 (minutes), as well as *SEC15 (15 seconds), *SEC30 (30 seconds) or *NOMAX (no maximum). This value determines when the print driver closes the connection to the printer (freeing it up to received spooled output from another source) when there are no operating system spooled files left in RDY (ready) status. It is recommended that this be set to *SEC15 so the operating system will free up the printer 15 seconds after all RDY spooled files have been processed. Setting it to *NOMAX will cause the operating system to maintain the connection until the writer is ended. Therefore, the printer device will not be shared with other systems. For *LAN printer device descriptions, *ATTACH maps to the recommended value of *SEC15.
Host Print Transform (TRANSFORM)
This needs to be set to *YES so the operating system's Host Print Transform (HPT) function will convert both SCS and AFPDS spooled files to the printer's data stream.
Manufacturer Type and Model (MFRTYPMDL)
This indicates the type of ASCII printer being used. This value is used by HPT to determine what ASCII controls to use when converting the spooled file from SCS or AFPDS to ASCII.
For recommendations on the value to use for certain known printers, please refer to the following document:
N1019605: Information on Printers from Various Manufacturers
Paper source 1 (PPRSRC1) and Paper source 2 (PPRSRC2)
These parameters indicate the paper size used in paper source 1 and paper source 2 in the printer hardware. The default value is *MFRTYPMDL, which indicates that the paper size will be determined based on the default paper size for the Manufacturer type and model (MFRTYPMDL) setting selected. Other choices for the PPRSRC1 and PPRSRC2 parameters include the following:
*LETTER Letter sized (8.5 x 11 inch) paper *LEGAL Legal sized (8.5 x 14 inch) paper *LEDGER Ledger sized (11 x 17 inch) paper *EXECUTIVE Executive sized (7.25 x 10.5 inch) paper *A3 A3 sized 297mm x 420mm (11.7 x 16.5 inch) paper *A4 A4 sized 210mm x 297mm (8.3 x 11.7 inch) paper *A5 A5 sized 148mm x 210mm (5.85 x 8.3 inch) paper *B4 B4 sized 250mm x 353mm (10.1 x 14.3 inch) paper *B5 B5 sized 176mm x 250mm (7.2 x 10.1 inch) paper *CONT80 Continuous form (8.0 inches) *CONT132 Continuous form (13.2 inches) *NONE No paper source specified
Note: If the *LAN 3812 IPP device description is being configured for a continuous form printer, such as an IBM 6400 line matrix printer, set the PPRSRC1 parameter to *CONT80 or *CONT132. Using *CONT132 rather than *CONT80 can ensure that spooled files will not be printed in a condensed or compressed font because of Computer Output Reduction (COR) processing. Also, the PPRSRC2 should typically be set to *NONE, unless the continuous form printer has a second tractor feed path.
Remote Location (RMTLOCNAME)
This should be set to the URL needed to access the printer, print server, or host system. The URL starts with http:// or ipp:// followed by the host name or TCP/IP address. Port 631 and a port name or path might also need to be specified, depending on the target printer, print server or host system. If a TCP/IP address is used, verify that the operating system can reach the printer by using the PING or Verify TCP/IP Connection (VFYTCPCNN) command with that TCP/IP address. If a host name is used, verify that the operating system can reach the printer by using the PING or Verify TCP/IP Connection (VFYTCPCNN) command with that host name. Examples of RMTLOCNAME settings include the following:
Network Interface or System Type Remote location (RMTLOCNAME) IBM Infoprint Color 8
'http://<host-name or ip-address>:631/' IBM Infoprint 21 (IBM 4322)
IBM Infoprint 70 (IBM 2770)
IBM Infoprint 2085 (IBM 2785)
IBM Infoprint 2105 (IBM 2705)
'http://<host-name or ip-address>:631/' IBM Infoprint 1000 Family Unknown at this Time IBM® System i™ products running IBM® IPP Server for iSeries™ (printer attached to another System i) 'http://<host-name>:631/ipp/printers/ipp-queue'
Note: The iSeries must be at R510 OS/400 or above, the IPP Server for iSeries must be configured, and one or more Internet printers must be created.
For a complete list of values for the RMTLOCNAME parameter for various print servers, refer to the following document:
N1019376: Recommended Remote Location (RMTLOCNAME) Values for *LAN 3812 IPP Device Descriptions
User-defined options (USRDFNOPT)
There are currently no user-defined options for *LAN 3812 IPP device descriptions, so this parameter should be set to the default setting of *NONE.
System Driver Program (SYSDRVPGM)
Specifies the name of a system-defined driver program, which provides the capability to send operating system printer output to a printer attached over a TCP/IP network. This should be set to *IBMIPPDRV when configuring a *LAN 3812 IPP device description for a printer that is directly attached to the LAN.
Workstation Customizing Object (WSCST)
This is typically set to *NONE, but can be used to specify a modified workstation customer object.
All other parameters should be specified like any other printer.
Secure Connection (SECURECNN)
Specifies if a secure connection is to be established with the printer. A secure connection provides an encrypted communications session to ensure print data passes over the connection remains private. This defaults to *NO, but can be set to *YES to use a secure connection to the printer.
Note: This parameter is valid only when the System driver program (SYSDRVPGM) parameter is set to *IBMIPPDRV. It is not valid for the *LAN 3812 PJL or SNMP device descriptions.
Validation List (VLDL)
Specifies a validation list that is used if the printer requests authentication. The default value of *NONE means that no validation list is specified. If a validation list is specified, it will be checked for the name of the user who created the spooled file, the name of the printer device, or the name of the system.
Note: This parameter is only valid when the System driver program (SYSDRVPGM) parameter is set to *IBMIPPDRV. It is not valid for the *LAN 3812 PJL or SNMP device descriptions.
To configure a *LAN 3812 IPP device description for an IBM Infoprint 21 printer, type CRTDEVPRT and press the F4 (Prompt) key. The following is an example of using the Create Device Printer (CRTDEVPRT) command to create a *LAN 3812 IPP device description:
Create Device Desc (Printer) (CRTDEVPRT)
Type choices, press Enter.
Device description . . . . . . . > IP21IPP Name
Device class . . . . . . . . . . > *LAN *LCL, *RMT, *VRT, *SNPT, *LAN
Device type . . . . . . . . . . > 3812 3287, 3812, 4019, 4201...
Device model . . . . . . . . . . > 1 0, 1, 2, 3, 4, 10, 13, 301...
LAN attachment . . . . . . . . . > *IP *LEXLINK, *IP, *USRDFN
Port number . . . . . . . . . . > 631 0-65535
Online at IPL . . . . . . . . . *YES *YES, *NO
Identifier . . . . . . . . . . > 11 3, 5, 11, 12, 13, 18, 19...
Point size . . . . . . . . . . *NONE 000.1-999.9, *NONE
Form feed . . . . . . . . . . . > *AUTOCUT *TYPE, *CONT, *CONT2, *CUT...
Separator drawer . . . . . . . . *FILE 1-255, *FILE
Separator program . . . . . . . *NONE Name, *NONE
Library . . . . . . . . . . . Name, *LIBL, *CURLIB
Printer error message . . . . . > *INFO *INQ, *INFO
Message queue . . . . . . . . . *CTLD Name, *CTLD, *SYSOPR, QSYSOPR
Library . . . . . . . . . . . Name, *LIBL, *CURLIB
Activation timer . . . . . . . . 170 1-2550, *NOMAX
Inactivity timer . . . . . . . . *ATTACH 1-30, *ATTACH, *NOMAX...
Host print transform . . . . . . *YES *NO, *YES
Manufacturer type and model . . > *INFOPRINT21
Paper source 1 . . . . . . . . . > *LETTER *MFRTYPMDL, *LETTER...
Paper source 2 . . . . . . . . . > *LETTER *MFRTYPMDL, *LETTER...
Envelope source . . . . . . . . *MFRTYPMDL *MFRTYPMDL, *MONARCH...
ASCII code page 899 support . . *NO *NO, *YES
Image configuration . . . . . . *NONE *NONE, *IMGA01, *IMGA02...
Graphic character set . . . . *SYSVAL 1-32767, *SYSVAL
Code page . . . . . . . . . . 1-32767
Name or address . . . . . . . > 'http://188.8.131.52:631/'
User-defined options . . . . . . > *NONE Character value, *NONE
+ for more values
Object . . . . . . . . . . . . *NONE Name, *NONE
Library . . . . . . . . . . Name, *LIBL, *CURLIB
Object type . . . . . . . . . *DTAARA, *DTAQ, *FILE...
Data transform program . . . . . *NONE Name, *NONE
Library . . . . . . . . . . . Name, *LIBL, *CURLIB
System driver program . . . . . > *IBMIPPDRV
Secure connection . . . . . . . *NO
Validation list . . . . . . . . *NONE
Library . . . . . . . . . . .
Text 'description' . . . . . . . > '*LAN 3812 IPP DEVD for IBM Infoprint 21'
After you have created the printer device description, you must vary on the printer device description using the Vary Configuration (VRYCFG) or Work with Configuration Status (WRKCFGSTS) command and then start the printer writer using the Start Printer Writer (STRPRTWTR) or Work with Writers (WRKWTR) command.
Problem Areas for Consideration
Testing the *LAN 3812 IPP Device Description
If you then place a spooled file in the printer's output queue and it goes to MSGW (message wait) status with message CPA3394 - Load form type '&4' device &5 writer &1. (G B I H R C), then chances are good that the spooled file will print after you answer this message with a G.
Displaying the Writer Job Log
If the spooled file stays in RDY (ready) status or goes to PND (pending) status without printing, look in the writer job log for messages that indicate why the spooled file is not printing. If the writer ends, look in the writer job log for messages that indicate why the writer ended.
Use the following Work with Writers (WRKWTR) command to see if the writer is still active:
WRKWTR WTR(*PRT) DSPFMT(*NORMAL) ASTLVL(*INTERMED)
If the writer job is still active, do the following:
1. Select Option 5 (Work with) on the writer to get to the Work with Printer Writer panel. 2. Press the F17 (Writer job) key to get to the Work with Job panel. 3. Select Option 10 (Display job log, if active or on job queue) on the Work with Job panel. 4. Press the F10 key and the Page Up and Page Down keys to view the messages in the writer job log. 1. Use the following Work with Job (WRKJOB) command:
2a. If the WRKJOB command brings up the Select Job panel, the most current failed writer job will be at the top of the list. Select Option 1 on this job, and press the Enter key. 2b. If the WRKJOB command brings up the Work with Job panel, then only one job is still in the system. Continue with Step 3. 3. Select Option 4 (Work with spooled files) to get to the Work with Job Spooled Files panel. The list should contain a spooled file called QPJOBLOG, which contains the job log of the failed writer.
Note: If the result is (No spooled output files), the writer is most likely still active. Go back to the top of these instructions and follow the steps for when the writer job is still active.
4. Select Option 5 (Display) on the QPJOBLOG spooled file. Press the Page Up and Page Down keys to view the messages in the QPJOBLOG spooled file.
Looking Up the Messages in the Writer Job Log
For information on the most common messages dealing with *LAN 3812 IPP device descriptions, refer to the following document:
N1019374: Configuration Settings and Error Messages for *LAN 3812 IPP Device Descriptions
Getting Message CPD337F, Remote Device Rejected an Attempt by the Writer to Open a Connection
This message can be issued for one of the following reasons:
o The STRPRTWTR command is run and the printer is not in a ready state, like power save mode. o The printer or adapter cannot accept Internet Print Protocol (IPP) communications. Check with the product vendors.
Getting Message CPD338D, An Error Occurred While Receiving Data
This message is issued and the writer ends if the Idle Timeout value in the printer expires during the printing of a spooled file. This could happen during complex transforms. The Idle Timeout is in the jetdirect HP printers, and End-of-Job Timeout are in the Lexmark printers. To alleviate this problem if it occurs, maximize or disable these timers.
Configuring the Printer and Print Server Hardware
The success of *LAN 3812 IPP device descriptions is dependent on the configuration settings in the operating system and on the printer and print server hardware. For more information about configuring the timeout values on the printer and print server hardware and common error messages that you can receive when printing through a *LAN 3812 IPP device description, refer to the following document:
New, Configuration Settings and Error Messages for *LAN 3812 IPP Device Descriptions:
Setting Up a Secure IPP Connection
The IPP print driver code provides a method for using a secure IPP connection, but that method often causes printers to fail even when those printers supposedly support secure IPP connection. However, another method for establishing a secure connection to an Internet Print Protocol (IPP) capable printer should work if the following conditions are met:
1. The latest IPP PTFs must be applied. 2. The printer must support the Internet Print Protocol (IPP). 3. The printer must support IPP chunking, which means that the printer can accept a single spooled file in one or more "chunks" of data rather than as a single stream of data.
Note: A microcode update supporting IPP chunking is available for the IBM Infoprint 15xx. Contact the IBM Printing Systems for this microcode update.
4. The printer must have a self-signed digital certificate or a certificate that has been purchased from a certificate signing authority such as Verisign. (Either certificate is secure). 5. The digital certificate must be loaded into the iSeries Digital Certificate Manager (DCM) on the System i. 6. The printer device must be configured with the following modifications to the typical IPP configuration:
The Port number (PORT) parameter should be set to PORT(443), which is the established port for encrypted HTTPS transmissions.
The Remote location (RMTLOCNAME) parameter should be set to RMTLOCNAME('https://printer-ip-address') or RMTLOCNAME('https://printer-host-name'), which will cause the printer writer to communicate using the HTTPS (Secure HTTP) protocol rather than the non-secure version of the Internet Print Protocol (IPP).
The Secure connection (SECURECNN) parameter should be set to SECURECNN(*NO), which will bypass the secure IPP method built into the IPP print driver code. Configuring the *LAN 3812 IPP device description with PORT(443) and a RMTLOCNAME value starting with https: is sufficient to establish a secure IPP connection without having to set the SECURECNN parameter to *YES (which often fails with IPP-capable printers).
18 December 2019