• ×
    Information
    Windows update impacting certain printer icons and names. Microsoft is working on a solution.
    Click here to learn more
    Information
    Need Windows 11 help?
    Check documents on compatibility, FAQs, upgrade information and available fixes.
    Windows 11 Support Center.
  • post a message
  • ×
    Information
    Windows update impacting certain printer icons and names. Microsoft is working on a solution.
    Click here to learn more
    Information
    Need Windows 11 help?
    Check documents on compatibility, FAQs, upgrade information and available fixes.
    Windows 11 Support Center.
  • post a message
Guidelines
Do you need the WPS PIN to connect your printer? Click here for tips and tricks!
HP Recommended
LaserJet M608
Linux

Hi Everyone,
We have around 7 HP LaserJet M605 printers, and a process breaks pdf files into one page .ps files. While the .ps files are created, the following code is added to the .ps file:

 

currentpagedevice /InputAttributes get 2 get
dup null eq
{ pop }
{ dup length 1 add dict copy
dup /InputAttributes
1 dict dup /Priority [0 1 2 3] put
put setpagedevice
} ifelse

 

Depending on digit/number in the "get 2 get" line these .ps files are sent to the printer and it correctly prints each paper type from the correct tray -- envelope, letterhead, plain.

We just bought new printers LaserJet M608. The same post script code additions mentioned above, does not print the envelope from the correct tray. It wants to print it from the manual tray. I kept changing the "get 2 get" line from 0-4  (4 trays) and  still the envelope keeps printing from the manual feed tray. Does anyone know if the attributes for selection of trays are different in M608 printers compared to M605? Do you have any recommendation of what I should do next to troubleshoot this issue.

I appreciate any help,

Thank you,

-Ned

1 ACCEPTED SOLUTION

Accepted Solutions
HP Recommended

After a ton of research and trial and error, I finally figured it out. In case someone else runs into the same issue, here is how I resolved it:

Since M605 has an envelope feeder and M608 doesn't, I tried to lookup the code for each tray. How you can do this is by looking at the PPD file for that exact printer. For some reason I was unable to find the ppd file in the driver files of M608 that I installed on a windows machine. So I decided to install HPLIP package on Ubuntu Linux, and get the PPD file for M608 from that package. HP website will has a list of drivers for all printers that the HPLIP includes.

In case you don't have a Linux environment:

-install VirtualBox

-install Ubuntu Linux on VirtualBox

-download the HPLIP package from the HP website

-Change permissions on the package: chmod 777 package_name

run it by typing ./package_name  and then you should see a folder created in the same directory in which you will find a ppd folder and then just do a search in that folder for the printer name you want and you should be able to see the ppd file, or a zip/archive .gz folder that contains the ppd file.

 

I changed the code I had above to the following, removing '2' from the code because M608 printer doesn't have an envelope feeder and '2' is not assigned to any other tray.

 

currentpagedevice /InputAttributes get 4 get
dup null eq
{ pop }
{ dup length 1 add dict copy
dup /InputAttributes
1 dict dup /Priority [0 1 3 4] put
put setpagedevice
} ifelse

 

 

View solution in original post

4 REPLIES 4
HP Recommended

The 608 is definitely different as it is a new design and as you have found out, tray addressing appears to have changed. The biggest change on this product is the fact that there is no longer a dedicated envelope feeder that plugs in above the MP tray, rather they now use a special drawer for envelopes. I am not sure if HP has released a programming manual for this product as this question has not come up from any of our clients. If the unit is new and under warranty I would contact technical support as that might be the fastest way to get access to the programming information you need.

If you find the information provided useful or solves your problems, help other users find the solution easier by giving kudos and marking my post as an accepted solution.
I am a volunteer, offering my knowledge to support fellow users, I do not work for HP nor speak for HP.



HP Recommended

I would like to add that some users were able to resolve this issue with changing the PCL settings and change the Media Source Mapping from "Standard" to "Classic". I tried the same but it did not work. 
I also get the "ERROR undefined OFFENDING COMMAND: get" for the envelope when the "get 2 get" line has the number '2' in it, and when I change the number to 1, 3 or 0, it defaults to the manual feed tray. So basically it doesn't print from any other tray other than the manual feed tray. 

HP Recommended

Yes, I believe the fact that this printer doesn't have a dedicated envelope tray is causing issues with how the code in the post script files are interpreted. I tried to get the .ppd file from the drivers installed for this printer. I read .ppd file can show you the attributes of the new printer for selecting trays, if these attributes are changed. So I am still looking and testing different things. I have not been able to figure this out yet.  

HP Recommended

After a ton of research and trial and error, I finally figured it out. In case someone else runs into the same issue, here is how I resolved it:

Since M605 has an envelope feeder and M608 doesn't, I tried to lookup the code for each tray. How you can do this is by looking at the PPD file for that exact printer. For some reason I was unable to find the ppd file in the driver files of M608 that I installed on a windows machine. So I decided to install HPLIP package on Ubuntu Linux, and get the PPD file for M608 from that package. HP website will has a list of drivers for all printers that the HPLIP includes.

In case you don't have a Linux environment:

-install VirtualBox

-install Ubuntu Linux on VirtualBox

-download the HPLIP package from the HP website

-Change permissions on the package: chmod 777 package_name

run it by typing ./package_name  and then you should see a folder created in the same directory in which you will find a ppd folder and then just do a search in that folder for the printer name you want and you should be able to see the ppd file, or a zip/archive .gz folder that contains the ppd file.

 

I changed the code I had above to the following, removing '2' from the code because M608 printer doesn't have an envelope feeder and '2' is not assigned to any other tray.

 

currentpagedevice /InputAttributes get 4 get
dup null eq
{ pop }
{ dup length 1 add dict copy
dup /InputAttributes
1 dict dup /Priority [0 1 3 4] put
put setpagedevice
} ifelse

 

 

† The opinions expressed above are the personal opinions of the authors, not of HP. By using this site, you accept the <a href="https://www8.hp.com/us/en/terms-of-use.html" class="udrlinesmall">Terms of Use</a> and <a href="/t5/custom/page/page-id/hp.rulespage" class="udrlinesmall"> Rules of Participation</a>.