Printer-HP-Display is a project mainly written in Perl, it's free.
Change the ready message on HP laser printer
Printer-HP-Display
This module allows you to change the value of the ready message (usually Ready') on the tiny LCD display that practically all HP laser printers have. You can also retrieve the value of the currently set message. The module communicates with the printer using Printer Job Language (PJL). See: http://en.wikipedia.org/wiki/Printer_Job_Language
At the moment this module is just a fun project; somewhat on the lines of ACME::LOLCAT. For example, at Cricinfo we use it to show cricket scores on our printer screen (http://twitpic.com/26yt2d). You should be careful with what you do to the printers at your office - not all IT managers have a funny bone :-).
Here's how you'd use it in you code:
use Printer::HP::Display;
my $printer_ip = "192.168.0.1";
my $printer = Printer::HP::Display->new($printer_ip);
my $message = "I am ready. Are you?";
$printer->set_display($message);
print $printer->get_display; #currently set message
print $printer->get_status; #complete dump of PJL INFO STATUS command
INSTALLATION
To install this module, run the following commands:
perl Makefile.PL
make
make test
make install
SUPPORT AND DOCUMENTATION
After installing, you can find documentation for this module with the perldoc command.
perldoc Printer::HP::Display
You can also look for information at:
RT, CPAN's request tracker
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Printer-HP-Display
AnnoCPAN, Annotated CPAN documentation
http://annocpan.org/dist/Printer-HP-Display
CPAN Ratings
http://cpanratings.perl.org/d/Printer-HP-Display
Search CPAN
http://search.cpan.org/dist/Printer-HP-Display/
LICENSE AND COPYRIGHT
Copyright (C) 2010 Deepak Gulati
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.