[Last Call] Learn how to a build a cloud-first strategyRegister Now


What PCL XL Class/Revision level does LJ M451dw support?

Posted on 2012-08-13
Medium Priority
Last Modified: 2012-09-26
Does anyone know what Class/Revision level is supported by the PCL XL interpreter in the HP LaserJet Pro Colour Printer M451dw (or the HP LaserJet Pro Colour MFP M475dw multi-function equivalent)?
The printer specifications for most LaserJet printers state what Page Description Languages (PDLs) are supported; e.g. for the models in question:
HP postscript level 3 emulation
Note that for PCL5 and PostScript, some indication is given of the version or level of the languages, but not for PCL6 (the marketing/generic name for PCL XL).
I've asked:
- HP via their US 'ask a presales question' web page; I've spent a week sending and receiving emails from various different units, and two long (20 minute plus) telephone conversations (UK numbers), both ending in me being cut-off whilst waiting.
But no-one appears to have much idea what I'm asking the question about.  
- HP via our UK presales number - they say they are unable to answer technical questions unless I already own the printer in question (which rather defeats the object - I want to know the answer before deciding whether or not to purchase!).
- A UK reseller (HP presales suggested I call them); although they were very helpful, they couldn't answer the question with the documentation supplied to them by HP.
Question by:DansDadUK
  • 7
LVL 16

Author Comment

ID: 38287200
If anyone has one of these models, and access to snmpwalk, we could find the information relatively easily.
The command would be something like this one I used with my local LJ1320 printer (IP address 192,168.1.65):
snmpwalk -Os -c public -v 1
which produced this output:

mib- = INTEGER: 37
mib- = INTEGER: 5
mib- = INTEGER: 3
mib- = INTEGER: 6
mib- = INTEGER: 47
mib- = STRING: "Version 2.0"
mib- = STRING: "Version 2.0"
mib- = STRING: "Version 5.00E"
mib- = STRING: "Version 2014.116"
mib- = STRING: "Version 2.0"
mib- = STRING: "19990105"
mib- = STRING: "19990105"
mib- = STRING: "19990105"
mib- = STRING: "19990105"
mib- = STRING: "19990105"
mib- = STRING: "Automatic Language Switching"
mib- = STRING: "PJL"
mib- = STRING: "PCL"
mib- = STRING: "PCLXL"
mib- = STRING: "19990105"
mib- = STRING: "19990105"
mib- = STRING: "19990105"
mib- = STRING: "19990105"
mib- = STRING: "19990105"
...etc. etc.

Open in new window

where the relevant lines (all ending with .5 in this example) are:

mib- = INTEGER: 47
mib- = STRING: "Version 2.0"
mib- = STRING: "19990105"
mib- = STRING: "PCLXL"

Open in new window

which (I think) provides the required PCL XL interpreter data (id, version, datecode, name respectively).
In this example, "Version 2.0" indicates that the supported protocol is Class=2, with Revision=0.
I want the equivalent information from a LJ M451 (or M475).
As an aside, I think that if I had the correct MIBs installed (or perhaps configured snmp differently - it's not something I'm that familiar with), my snmpwalk output would have been something like:

prtInterpreterLangFamily.1.1 = INTEGER: 37
prtInterpreterLangFamily.1.2 = INTEGER: 5
prtInterpreterLangFamily.1.3 = INTEGER: 3
prtInterpreterLangFamily.1.4 = INTEGER: 6
prtInterpreterLangFamily.1.5 = INTEGER: 47
prtInterpreterLangLevel.1.1 = STRING: "Version 2.0"
prtInterpreterLangLevel.1.2 = STRING: "Version 2.0"
prtInterpreterLangLevel.1.3 = STRING: "Version 5.00E"
prtInterpreterLangLevel.1.4 = STRING: "Version 2014.116"
prtInterpreterLangLevel.1.5 = STRING: "Version 2.0"
prtInterpreterLangVersion.1.1 = STRING: "19990105"
prtInterpreterLangVersion.1.2 = STRING: "19990105"
prtInterpreterLangVersion.1.3 = STRING: "19990105"
prtInterpreterLangVersion.1.4 = STRING: "19990105"
prtInterpreterLangVersion.1.5 = STRING: "19990105"
prtInterpreterDescription.1.1 = STRING: "Automatic Language Switching"
prtInterpreterDescription.1.2 = STRING: "PJL"
prtInterpreterDescription.1.3 = STRING: "PCL"
prtInterpreterDescription.1.4 = STRING: "POSTSCRIPT"
prtInterpreterDescription.1.5 = STRING: "PCLXL"
prtInterpreterVersion.1.1 = STRING: "19990105"
prtInterpreterVersion.1.2 = STRING: "19990105"
prtInterpreterVersion.1.3 = STRING: "19990105"
prtInterpreterVersion.1.4 = STRING: "19990105"
prtInterpreterVersion.1.5 = STRING: "19990105"
 ... etc. etc.

Open in new window

which is a bit clearer than what I get.
LVL 16

Author Comment

ID: 38287215
... or test the capabilty of the printer, by sending the contents of the attached sample print file direct to the printer port.
The file is disguised with an additional .txt extension, because I don't think that the forum accepts .prn attachments.
If the printer supports Class/Revision 3.0, the printer should print a single page (A4 Portait), containing several lines with the text:
Line generated using PCL XL
and other lines with the text:
Line generated using PCL5

If it doesnt support this C/R level, it will probably print an error page indicating an UnsupportedProtocol error.
LVL 16

Author Comment

ID: 38287227
For reference, attached is an analysis of the sample print file.
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

LVL 16

Author Comment

ID: 38291284
... and to 'send' the contents of the sample file to the printer, from a Windows command-prompt session, use the lpr command, as per the following example:

lpr  -S  -P any  Embed_PCL5Snippet.prn

Open in new window

which would send the contents of the nominated file to the printer with IP-address 192.168.1 65.
The lpr command may only be available if a certain Windows feature (Print and Document Services | LPR Port Monitor) is enabled.
LVL 39

Expert Comment

ID: 38404803
The question has either no comments or not enough useful information to be called an "answer".
LVL 16

Author Comment

ID: 38409623
Some-one in a different forum has successfully printed some test files for me, which indicates that the M475 device (the MFP variant of the M451 printer) supports Class/Revision 3.0 of the PCL XL protocol.

So this question does have a (belated) answer.

On this basis, I've ordered one, and I'll update this topic when I get the device and run some further tests.
LVL 16

Accepted Solution

DansDadUK earned 0 total points
ID: 38421109
It's actually not quite that straight-forward!
An snmpwalk on a LJ Pro 400 M475dn shows these items (I've  edited out entries which are not referring to the PCL XL language):

prtInterpreterLangFamily.1.3 = INTEGER: langPCLXL(47)
prtInterpreterLangLevel.1.3 = STRING: "Version 2.1.Grafit"
prtInterpreterLangVersion.1.3 = STRING: "20040201"
prtInterpreterDescription.1.3 = STRING: "PCLXL"
prtInterpreterVersion.1.3 = STRING: "20040201"
prtInterpreterDefaultOrientation.1.3 = INTEGER: portrait(3)
prtInterpreterFeedAddressability.1.3 = INTEGER: -1
prtInterpreterXFeedAddressability.1.3 = INTEGER: -1
prtInterpreterDefaultCharSetIn.1.3 = INTEGER: CSHPRoman8(2004)
prtInterpreterDefaultCharSetOut..1.3 = INTEGER: CSHPRoman8(2004)
prtInterpreterTwoWay.1.3 = INTEGER: yes(3)

Open in new window

which indicates that the PCL XL Class/Revision level  is 2.1.Grafit (whatever that is), which implies that it doesn't support C/R 3.0.
... and as the Embed_PCL5_Snippet.prn file (which uses a specific C/R 3.0 operator) generates an error (indicating IllegalTag), this would seem to support the fact.
But other test print files, including one which specifies C/R 3.0 in the stream header, do print OK.
Also, the default driver installed (on Windows Professional 7 64-bit) generates a C/R 3.0 stream, which uses several C/R 3.0 operators (although not the 'Passthrough' operator used in the Embed_PCL5_Snippet.prn file).
So the conclusion would appear to be that the device partially supports Class/Revision 3.0 in that:

It supports the 3;0; setting in the stream header.
It supports some Class/Revision 3.0 operators, such as SetHalfToneMethod, SetAdaptiveHalftoning, SetColorTrapping.
It does not appear to support the Class/Revision 3.0 operator PassThrough.

HP yesterday (via their forum's (annual?) 'Ask an Expert Day'):

State that the 2.1.Grafit value "is not related to the version of XL, rather it is a (proprietary) algorithm that is used in (some of) their devices".
Confirm that the M475 supports Class/Revision 3.0.
Claim that the PassThrough operator 'is not a PCL-XL standard command', although this appears to contradict the details published in the (publicly-available) document PCL XL Feature Reference Protocol Class 3.0 Supplement.
LVL 16

Author Closing Comment

ID: 38435838
Eventually got an answer (although this raises other questions!) via a combination of responses/tests from an M475 owner, my own purchase (and tests) of one of these devices, and some responses from HP's 'Ask an Expert Day' on their support forums.

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

If you use a Brother DCP 130C or similar Brother printer, at some point you might encounter the following problem: after you change the ink cartridge, the printer displays an "ink empty" message. Sometimes you just need to follow the instructions…
This article shows how to get a list of available printers for display in a drop-down list, and then to use the selected printer to print an Access report or a Word document filled with Access data, using different syntax as needed for working with …
In an interesting question (https://www.experts-exchange.com/questions/29008360/) here at Experts Exchange, a member asked how to split a single image into multiple images. The primary usage for this is to place many photographs on a flatbed scanner…
This video Micro Tutorial shows how to password-protect PDF files with free software. Many software products can do this, such as Adobe Acrobat (but not Adobe Reader), Nuance PaperPort, and Nuance Power PDF, but they are not free products. This vide…
Suggested Courses

834 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question