Ticket #67 (accepted defect)

Opened 14 years ago

Last modified 13 years ago

PJL hardware accounting not working (halts printing) on LaserJet 5 (fix included)

Reported by: cyrillic Owned by: jerome
Priority: major Milestone: 1.27 final
Component: pykota Version: development
Keywords: pjl laserjet5 Cc:

Description

A LaserJet? 5 printer will return multiple status messages when, for example, pagecount is requested. It will return first return 10023 (printing) twice, then the pagecount and then 10001 (ready).
In this case, 10023 just means "Busy retreiving pagecount", but this is interpreted wrongly by pykota/accounters/pjl.py.
The script does not wait for the last status message, but stops looking after receiving the pagecount and the 10023 status. This causes the script to wait on the printer for eternity.

Suggested fix:
Adding the extra where clause: "or (self.printerStatus == '10023')" to line 146 causes the script to wait until the timeout to see if there are any other incoming status messages. With this fix it picks the first non-10023 status code, or just 10023 after the timeout.
Increasing any of the timeout values was not needed for my printer.

Change History

Changed 13 years ago by jerome

  • status changed from new to accepted
Note: See TracTickets for help on using tickets.