HP PCL/PJL reference - Printer Job Language Technical Reference Manual

11-28 Programming Tips for Using PJL EN
Given the above structure for sending queries and processing
responses, applications should adhere to the following guidelines:
1 If the application sends data to the printer in blocks, followed by
long pauses between blocks (i.e., greater than five seconds), then
it should cause the printer to use a larger I/O interface idle time
value by using the PJL JOB command as described in the
“Printer Status Readback and Printer I/O Switching” section.
2 Check status readback availability as described in the
“Determining if Printer Status Readback is Available” section.
3 Synchronize with the printer-to-host data stream as described in
the “Old Printer Status Readback Responses” section.
4 Do not have more than five outstanding queries before accepting
printer status readback responses. This prevents response data
loss as described in the “Response Data Buffer Overflow”
section.
5 Before quitting, turn off all unsolicited status enabled by the
application. Also, accept all responses from the printer that were
generated because of actions performed by the application.
6 Do not be dependent on the timing characteristics of a single
printer model. For example, the response time of the
HP LaserJet 4 printer's built-in IEEE-1284-compatible I/O
interface will be different than the timing characteristics of a
IEEE-1284- compatible interface in an I/O card installed into the
printer.