INSERT COIN
PLEASE READ THIS BEFORE USING THE PROGRAM (or if you are not amused)
Can this silliness be used for good? Perhaps...
It is amazing how unaware some people can be. This little perl program allows you to set the "Ready Message" on HP printers to whatever you'd like. (if you want to run it under Windows, and don't know how, read this.) I wrote it after coming across the command in an HPPJL (HP Printer Job Language) reference manual I was reading for some reason that I now forget. Thanks to the flexibility and power of perl, it was a no-brainer to play with the new information. (Maybe you should consider learning perl?)
Well, of course I couldn't ignore such an opportunity, and it turns out to be a lot of fun. You can think up your own funny, confusing or scary messages. My personal favorite is "INSERT COIN" which fits perfectly on the small LCDs. You can even sit in sight of the printer and change the message while watching the reaction of your victim (or reading about it). Don't be surprised, though, if a large fraction don't even notice. I was quite surprised myself but, it appears, some people don't look at what is in front of them.
I wrote a more elaborate version that takes advantage of the HP 4200's larger, four-line display. It sends the current weather conditions which I grab from NOAA using the perl Geo::METAR module. It updates every 10 minutes. Amazingly, while many people noticed the report on the printer display, no one questioned it!
People are endlessly surprising. Isn't it great?
NOTE: There have been many requests for help with this. Non-networked printers, running the script, etc. While I cannot guarantee anything, you might find help on FreeNode's #perl IRC channel, here. In about three days this post has garnered more than 105,000 unique visitors. If a few of you can lurk there and help out it would be great. Apparently many of us share a sense of humor. Maybe there is an "INSERT COIN" community. Who knows?
A Philosophical Comment
The anonymous comment below, accusing me of considering myself "king of the hacker elite" made me re-read this post. I originally thought he was responding to a comment I made, not the post itself. After thinking about it I realized he might not have read any of the comments at all. That being the case, let me be very clear about something: while I definitely enjoy being extremely extroverted in my attention, and noticing all sorts of details and peculiarities in the world around me, I do not believe that such a tendency is exclusively meritorious or inherently superior. I work with many people who do not share this cognitive style but are intelligent, insightful people who have taught me a lot. Please don't take the observations above as belittling people who don't share my natural fascination with the things in the world. That would be much different than my intention.
162 Comments:
Once in my foolish youth working as an intern in the IT department of a local hospital, I discovered the management console for all the printers. I set the ready text to "OUT OF CHEESE". Some poor nurse called the help desk _dreadfully_ confused shortly after. I confessed to my boss and he nearly exploded laughing. I don't know that I'll ever hear the end of it from him and his family. :)
I don't see why you are surprized. Printers work for the most part. If you hit print, go to the printer, and the paper sitting in it is what you printed you walk away.
The display is something you look at only if there is problems. So I might see your insert coin message if the printer is out of paper (assuming the printer doesn't override your message). I may also see your message before hitting setup) I wouldn't read it normally.
In fact some of the printers where I work are situated such that reading the display would take effort. (Printer is lengthwise along a hall and I come from the other direction)
Cool hack though.
I suppose my surprise stems from my own tendency to look at everything around me in detail. Most people I spend time with are similarly disposed. It is part of "hacker genetics", I suspect.
I learned something from seeing people ignore the display, though. These are people that I respect and are by no means "stupid". It reminded me that my cognitive style is not "right", there are other perfectly valid ways to look at the world.
I like learning things like that.
I did this at an old job, only to find that by setting the text every two minutes, I was causing it to queue up. After two hours, you'd have to hit "OK" sixty times to clear the display and let printing happen.
Oops!
Oops is right. Fortunately whatever you might have been doing to make the printer think it had print jobs this script avoids. I run a 10-minute cron job with the weather script I mentioned, 27x7x365 with no side effects.
I suppose it is possible that *some* model doesn't behave well, but I have run this against at least a dozen with no ill effects.
Thanks for the warning to TEST FIRST.
hardly a hack, it's most likely documented in the manual.
Yes, the manual is where I found it. I don't consider it specially clever, and the perl is very basic, but in the classic sense it is exactly a hack. It is too bad the word has lost its meaning. Language changes, though, and there is nothing we can do about it.
The original I found was written by l0pht in C. Subsequently some of my friends have had our way with it:
http://www.trilug.org/~kjotte/progcon/
...and yes, I have set one to "INSERT COIN". The Red Hat IS department enjoyed the laugh.
I don't actually know when I wrote the first version of this. It was probably around 2001. I really like that so many people chose "INSERT COIN". I also had "TWO PLAYER START" but that didn't fit on the smaller displays.
This is even more fun when you combine it with multicast DNS. You can enumerate network printers advertising _pdl-datastream._tcp and change ALL their PJL RDYMSG's in one go. It can be done in a 3 line shell script using avahi-browse and netcat.
#!/bin/sh
for host in `avahi-browse -rt \
_pdl-datastream._tcp | grep address | \
sed -e 's:^.*\[\(.*\)\]:\1:g'`
do echo "@PJL RDYMSG DISPLAY=\"$*\"" | \
nc -q5 $host 9100
done
My entire university (all 3 campuses) were on one wide-open network, and all the HP printers were advertising service over multicast DNS. Needless to say, I left a nice going away present upon my departure.
METARs are only updated once per hour, at 55 minutes past the hour. If you set your script to check for weather at 5 past, you'll save yourself a whole bunch of useless checks, as well as bandwidth for the rest of us using the METAR system.
BBQ SAUCE LOW
Lovely! Would you consider posting your more elaborate version?
Yes, the METAR information doesn't change but the printer display sometimes does. Fortunately I am using NOAA's web page and they only refresh from the system as required. The page is a few KB in length and I am certain that my access isn't having an adverse effect. I had considered caching, but it was a quick hack and didn't bother.
You have a good point, though about shared resources. This used to be a problem for things like network time servers. It is important to be sure we are not unintentionally abusing a public resource.
I am seriously considering doing this to our large HP at work. If the boss doesn't appreciate the joke and I get fired for this; thanks in advance!
It's quite amusing to read this as I did the exact same thing ("INSERT COIN", though not using Perl) on one of the printers here at work a couple of years ago. It was a couple of days until anyone noticed and hilarity ensued.
Well, if someone would fire you for changing a < 50 character printer message than you either have unprecedented rhetorical skills or they are looking for an excuse. If they are looking for an excuse be sure you read your company's Acceptable Use Policy for computing assets before proceeding.
I hope your bosses have a sense of humor.
This idea seems to be perpetually incipient among folks working with the printers. The choice of "INSERT COIN" probably comes to mind because of the focus on arcade games in our youths.
It is fun.
Yaskov, so you are suggesting that you are some king of hacker elite because everytime you go to the printer, you check the little readout? 10 times a day, you check the little readout? And you think this is clever. So I guess reading the exact same thing 1000 times a year makes you... obsessive compulsive at best.
Wow, no. First, I don't "check the the little readout 10 times a day". I just notice the message on it when I am at the printer. I also notice many other things in the environment others miss. I am very interested in the details of things.
I don't consider myself king of anything. I wonder what prompted that invective. I thought I made it clear I was humbled by the fact that other people didn't place the same importance on such details. Sorry I communicated that poorly.
Just tested it on my coworkers. It was fun as hell. First I picked only two people standing at the printer (which I see from my desk), and postet two sort messages. As soon as the called everyone to come, I reverted to default.
So now nobody believed them, until i started a prepared batchfile which made the printer display "i'm a barbie girl, in a barbie world...." and so on. The whole song.
After that everyone was standing at the printer, laughing. People began to fear that this is a hacker, breaking in our network. Until I revealed myself, bevore someone called the IT Departement.
Wonderful!
A friend of mine discovered this some years ago, and took pleasure in setting suitably entertaining messages on printers elsewhere on the company WAN, including some that were 900 kilometres away.
I'm sure that distance record has been beaten many times by now, especially in these days of small business networks connected to the Internet with no firewall.
(I have personally only printed one test page on a Web-enabled printer in Switzerland.)
If the printer allows for a blank message, just change it every 2 seconds or so to blank and back, giving the appearance of a flashing message.
This will sure draw a lot more attention. (If it is not too heavy on the network, of course)
My VP came up with a great message: "PC LOAD LETTER"
It's right outside of my office. Now it's a matter of time. I can't wait.
The anti "hacker elite" commenter is clearly suffering from self esteem issues already if the observation that most people don't notice printer readouts was so offensive to him/her.
If I noticed "insert coin" I would assume the printer had a DIP switch for when there's a coinbox attached (e.g. for libraries) and that there was dirt on the contacts.
On a more serious note, I took the weather display script, deleted the weather part and used it to display whatever I wanted. So now on all of the 4250s at work they have the name of the printer displayed on them.
Oh and one of them now says "Out of Cheese"
A real application! Thanks.
@goninzo - PC LOAD LETTER is ingenious! Sadly, 90% of my coworkers would not get the Office Space reference.
has anyone put "ENTER PASSWORD" yet?
I already have my office thinking the printer is self-aware.
"computers and robots do that sometimes." -- dwight schrute
For non-networked LaserJets (like my LJ4), on Linux, you can make the perl script:
#!/usr/bin/perl
print <<EOJ
\e%-12345X\@PJL JOB
\@PJL RDYMSG DISPLAY="@ARGV"
\@PJL EOJ
\e%-12345X
EOJ
And send the command to the printer with:
$ perl myscript.pl "WHATEVER MESSAGE" | lpr -l
The "-l" means to send the commands raw. This works even if the printer is hosted by a print server, even a Windows print server. It should basically work with any LaserJet that is set as the default printer, regardless of connection or protocol.
The next step - make a HalfLife(TM) laser printer.
Take a junker printer, cut a sweeping slot across the top of the case and melt the edges a bit with a soldering iron. Hide a laser pointer in the case, beaming out from the end of the slot. The screen can warn "CONTAINMENT FAIL", "LASER GUIDE ERR", "BEAMS CROSSED"; let bad scifi be your guide.
"everytime you go to the printer, you check the little readout? 10 times a day, you check the little readout? [...] I guess reading the exact same thing 1000 times a year makes you... obsessive compulsive at best."
Remind me never to be a passenger while the Anon above is driving. He apparently only checks his gas gauge, speedometer, and rear-view mirror once per day.
Finally, a reason to buy HP printers again...
Cool. It was even cool in 1999 when I first created http://www.ancientpond.com/ljshen.html and it had been around years earlier in alt.shenanigans.
Just posting some history :)
Adding surrealism to people's lives is almost always a good thing.
The display is something you look at only if there is problems.
Very strange. I find it completely weird that people could *not* see what's on the display if their eyes go across it.
Nor would it occur to me to associate this somehow with "hacker" mentality/habits. I think of hackers as likely to be inner-directed introvert types, the ones most likely *not* to pay attention to that sort of environmental thing.
This goes back at least ten years. At Netscape, someone wrote a perl script to post the current stock price on all the printer lcds, allowing potential mozillionaires to keep track of their mozillions.
http://www.phenoelit-us.org/fr/tools.html
During the dark of winter I created a similar php script that parsed wunderground.com data and fed it to the IT department's Laserjet. Once the effect wore off on the geeks I fed it out to all of the HPs on the network. Worked great. Then... we had some tempermental activity from certain printers and I sadly turned off the weather update script. Heck, it said "Snow" every day anyway.
I just noticed this on the printer in my office yesterday, and then I saw the boing boing post (where i got here from) this morning.
brilliant.
Our printer now says:
“insert coin
One player 25 cents
Two players 50 cents”
This is great. Ok, so I'm probably just a dummy here, but how do I get this to work when the Printer IP shows as xx.xx.xxx.xx_LPT2?
Yeah, cool. I wrote that back in May, 2001
Upon further inspection, I realized that the printer in question is running off a print server, and the only interface available to the printer is the parallel port to the server. So I guess that fails the "JetDirect equipped" qualification. So sad :^(
Heh, I'd try the old "Help! Trapped inside printer factory!"-joke, but I guess it is too long.
Anybody ever set up a script to update the display to current outside weather conditions or other useful information? Insert Coin seems very funny, but there could be useful applications as well. Even listing the printer name would be useful. The day of the week might be too simplistic. I was thinking that outside weather conditions might be good though.
jeremiah said...
"has anyone put "ENTER PASSWORD" yet?
I already have my office thinking the printer is self-aware."
I don't have any access to HP printers but I really want someone who does to make them say:
"THE SINGULARITY IS NOW"
How do you undo it? I'm a programming novice.
FEED ME A KITTEN
Cool, its ashame all the printers at my school are Lexmarks though :(.
Does Lexmark have a similar command?
re: Lexmark, I don't know. It might emulate HPPJL or you can just look for the documentation and modify the message it sends.
re: Undoing it, the easiest thing is to send "READY" to the printer or you can powecycle. It isn't persistent.
See the link more elaborate version here for a weather conditions program as detailed above.
I'm new to Perl, and I don't know where to enter the printer's IP address and my message. Any help?
Ok so I know nothing about perl but I installed activeperl on my mac and the terminal seems to running it fine.
The only things to change in the script would be the ip address of the printer and the messeage i want displayed?
Right? Wrong?
If so where do I input those. Thanks
My "hacker genetics" come with a label; "ADHD" ;)
PRINTER BECAME SELF-AWARE @ 2:27 PM
-or-
WAITING FOR COMMAND FROM SKYNET
That reminds me of a story Alan Cox once told at Linuxworld 2002 (?) in Dublin.
Apparently someone ported Linux to the HP 8000 Laserprinter, uploaded it via some kind of remote hole and let it do some kinda weird calculation over night (SETI? don't know).
From what was told it was spreading from LJ to LJ like a virus, just to reboot back to the default firmware every morning at 6AM.
Don't know if that's a true story or just an urban myth, it sounds funny nonetheless :)
Alex.
If you run the script with no arguments it should emit a usage message.
Re: porting Linux to printers, I suspect that is not true but there are NFS mountable partitions on the large HP printers and I have considered writing "HPFS" that would do RAID over several printers.
The partitions are tiny so it is just a silly thing but it would be great to do it anyway.
Great! I have a LJ5 and it works nicely :).
Is there a way to set it permanently (without using cron)?
I don't know of any way to make it persistent but perhaps someone has more information.
My 4050N is now displaying:
SOYLENT GREEN IS PAPER
the comments in the program confuse "stdin" with "the command line". you want to put arguments on the command line, not stdin, as in:
./this_command HERE
NOT HERE
^D
nice, changed to:
all your printouts are belong to us
@Case:
It may be funnier to change the "Two players" line to show 49 cents.
:)
Mine says: "Dry - Add Water"
The possibilities are endless.
HUMAN DETECTED.
BACK TO WORK.
BUTT PHOTOCOPIED.
KNEEL BEFORE ME.
MOTHER?
LANE CLOSED.
This is brillant! I can wait to show that to my boss
Thanks, Randal.
Fixed
Mine is set to "Check engine oil!" Also, escape characters such as "\n" work very well indeed on multiline printers!
Thank you cav. I'm in tears laughing. I also like FEED ME A KITTEN, but it's late here in Hawaii and just about anything would be funny now.
P.S. Patrick who forwarded this to me...If I find this on the printers in the morning, I'll know who it was.
Very fun hack, maaybe it'll be a starting point for me to learn perl =)
Any way to send a message in Cyrillic to printer? cause it gets strange symbols on screen if message is cyrillic.
Is there another function to change the message displayed during power save / standby?
How about the old classic of 'I read your email'. You could even change it to 'I read your printouts.'
Not through plain PJL, however, I am researching what else is possible. I know, for example, that HP can read the current message on the display. They do it with some of their tools. I am trying to find out how.
The INQUIRE command returns "?" for the obvious methods of using it to get the information.
I haven't given up, though...
I'M YOUR FATHER!
DO NOT EAT TONER
Uploading to CIA
TAKE ME TO YOUR LEADER...
I have no idea why, but this is not working so happy for me. I have an an HP4250 printer, and when i run the perl script, i get this message
usage: printer.pl 10.1.3.51 "Insert Coin"
but the screen on the printer does not change. Wonder what i'm doing wrong.
Ignore my previous message, i feel so silly, didn't realize that you need to pass the variables in from comand line... duh...
I, in my sadness, also did this trick many years ago.
My favourite message (which did fit into the display on ours printers) was :-
RADIOATION LEAK
It still makes me laugh to this day!
I have now translated this to English!
I, in my sadness, also did this trick many years ago.
My favourite message (which did fit into the display on our printers) was :-
RADIATION LEAK
It still makes me laugh to this day!
[Translation over] ;-)
Some more ideas...
If you want a free printer - "Replace Toner"
If you want a new Printer -"Contact HP support"
If you want to get a coworker in trouble - "Top User: XXX @ 5000 ppw"
If you want to baffle "Please apply reverse
shunting rule"
Enjoy...
TAKE ME TO YOUR LEADER.
this is great......years ago we did this manually to our LJ4mv with the hp laser jet utility--a favorite message of mine was TONER LOW.
Years ago, back at school, a friend and I used to have hours of fun sending beep characters to the line printers, making the communal printers sit there beeping incessently for ages. We then discovered a load of commands in the printer manuals and found we could have the printer shuffle the paper up and down and move the print head back and forth at will.
The only thing we had to be careful of was fitting it all in the printer buffer so we didn't appear on the spool list. All childish pranking but we felt very empowered at the time.
I changed the message to:
CLEAN LINT FILTR
I had to fess up when a coworker asked my boss if she could call IT services to report the problem.
I changed the message on a 4000 Series PCL6 and was expecting the first line on the multi line display to change (The word "READY"), however the whole display changed and all the printer information is gone. Can I reset it back to default?
I tried this on a Kyocera Mita FS-1900.
Works great although it only flashes the message up for about a second and then back to "Ready". Is that what happens to the HP printers too?
Chris62vw on freenode helped by improving the script a bit. He added some functionality so it can draw a random phrase from a text file. I have put together a decent list of random phrases, packaged it up and made it available on my site. (http://duo.digitalarcadia.net/)
Feel free to steal it away, post it here. I am more than sure it could be useful to many here.
I currently have it nicely crontab'd. Every so often it automagically changes the phrase. =)
Enjoy.
I was thinking that this is interesting since I now know how the printers can be switched from a language to another. All HP are showing messages in French in the office. However, the way the text is pushed is permanent...
And about the hacker's perspective, its an interesting debate. I am a programmer but I never tought of inserting Ester Eggs in my code. I never tought of ways of hacking (in the idea of breaking in something) either. The wildest I have done was to change the "Start Menu" font size to something huge for a user who didn't lock its workstation. I guess I never joined the dark force, Luke.
However, that doesn't prevent me from looking at things a bit differently than others. Now that the printers are in French, the "PROCESSING JOB" type message says "TRAITEMENT TACHE". Because it can't display accents (TÂCHE), it means "stain" instead of "job". I keep seeing this as the printer making a dirty job.
Now that this post has been read by many co-workers, I'll be walking by the printer a couple of times a day...
In Russia we love to print out "I PRINT THEREFORE I AM" followed by the relevant extract from Discourse on the Method on printers that are emotely accessible. Works great if you choose the right printer and the right time (not that of IT dept.).
Did this about a decade ago in high school.
My favorite message was
ERROR 10: INTERNAL FIRE
My printer has 3 lines of available space so I made a haiku:
Toner like my hopes
slowly draining of supply
I yearn for repair
To answer my own question you just restart the printer to reset the msg.
Alastair: No the msg stays put on the screen.
Evil Genius!
Just tried it on a LaserJet 2820, no luck.... disappointing end to my lunch!
This is wholesome fun for the whole office. The printers here now read:
"Polly wants a cracker."
"Nice day for a bike ride, isn't it?"
"I am not here to amuse you."
Thanks for posting this. I think I will next go on to some sort of fortune telling scheme.
Someone in my office beat me to it with "INSERT COIN" on the communal printer.
The message resets after a power cycle because you're sending the command down within PJL - settings are at the job level (i.e. temporary). When the printer reinits, it pulls the init data from the onboard NVRAM.
To change it permanently (well, at least beyond a powercycle) within the NVRAM, you need to send a PCL command down without being bookended within the PJL job specification... so instead of applying the command at the job level, it applies the change directly to the attribute within the printer's static memory. It's the same high-level theory that works when you choose 3 copies in landscape mode on a print job, and it defaults back to 1 copy portrait-orientation the next time you bring up your print dialog box within a different application - although that particular scenario happens at the driver, not the printer. Same reasoning behind functionality, in any case.
I'm not going to spell out the actual syntax in non-PJL PCL coding, since it seems you're already getting enough flak for your "hacking". It's in the manual, though. ;)
Keep playing in PCL/PJL... it can do some pretty neat stuff.
POWER FLUID LOW
READ OTHER SIDE
TURN PAPER OVER
I CAN SEE YOU
DON'T PANIC
made a win32 binary for those windows people who just want to mess with some printers: here
(compiled with activestate dev kit)
If you try this (even if it does not read 'Insert Coin', please:
* take a photo
* upload it to flickr
* tag it as "HP Insert Coin" (one hpinsertcoin tag please)
* watch the collection grow!
Share your fun ;)
"..I run a 10-minute cron job with the weather script I mentioned, 27x7x365 with no side effects." I don't know where you live that has a 27 hour day, but I hope my boss never finds it or I am sure I would be shipped there
It would be great to get two next to each other....
Have the left one say, "ALL YOUR BASE ARE "
and the right one say, "BELONG TO US"
It would be cool to take an old hp printer, hack it up into something resembling a little digital clock, and put it on your office desk to display funny messages.
"OUT OF LETTERS"
"BUY A VOWEL"
"WHAT IS THE ANSWER?" (42)
"DOES NOT COMPUTE"
PEN IS STUCK
If anyone can provide a walk through guide on this that would be awesome! Im fairly tech savy, but dont know where to go from installing the perl distro. Thanks! J
Worked great on my LJ 4240. Tried on an old LJ2300 but it wouldn't print after that, had to reboot it. We also have an HP 5035MFP that is used for copies. For that, I used "Steveorama, makin' copies" (from SNL)
Ive downloaded the program, just cant figure out what else to do. Anybody care to help me out?
RAMPANCY FTW
Photo done ;P
http://www.flickr.com/photos/zamber/1623893553/
I feel dumb for having to ask this, but like they say, he who asks a question looks stupid for a minute, he who doesn't is stupid forever, so here goes:
Firstly, where do I put the message and the printer IP? For that matter, how would I go about finding the printer IP?
Secondly, all of the printers that I would use this on I access wirelessly from a laptop. Does that affect how I would use this?
Thanks in advance, everyone.
how about "PAPER JAM"? That'd be good for some laughs.
Variations on this have been floating around almost since the Laserjet 4 days. I think the earliest version of this hack I've discovered dates from 1996; like you said, the basics of how to do it are all in the manual. Still, it's nice to see someone reinvent it.
It's still as fun as ever.
"Replace Flux Capacitor"
"The Door is Ajar"
I think I'm going to do the one near my office during lunch today "Spelling Errors Found"
Mike from
http://www.prankvideoz.com
I did this for my school a year ago. I set all the displays to say "Help! I'm trapped! Open the tray!" and the tech support started getting calls and people would stop them randomly and say "I think there's someone stuck in my printer..." By the end of the year, I used the same thing to send out a note to all the printers once-per-hour from the senior class. To this day, all the screens say "Seniors 2007, We own you"
So I can see the 2600N and print to it. Know the IP. Can sudo in OSX. Have this Perl script. Have installed this OSX perl deal. Now what?
Thanks~
I have a feeling I'd get in a lot of crap for doing this on our HP.
But if I could get away with it, this is what I'd display:
NEEDS MORE COWBELL
Ran this today, had fun with it. Started at 9am on three different printers (used by about 20 people total), changing messages randomly throughout the day, and no-one noticed until 2.30. She guessed it was me (yes I am the office geek/computer genius), laughed about it with me and didn't tell anyone else. Next person noticed and laughed so much everyone knew, that was about 4pm.
Then I put it on the accounting printer (in a separate room). Turns out the person in there was printing at the time, and when she saw the panel change from "READY" to "HELP I AM TRAPPED IN THE PRINTER", she ran out of her office screaming in panic, because she thought someone was hiding in the printer. It's an HP4000, which is not even two feet square, and she thought there was someone in it.
Seriously. You think I'm joking, but I'm not. I only wish I had video, it would have killed on YouTube.
- Steve in Dallas
My favorite text for this prank is "SKYNET ONLINE".
I decided to go along with the trend of fighting global warming, hence the message on printers in my office now read
"-- Save The Earth --
Print on both side."
and another one is
" Print Less
Waste Less"
Cool hack , by the way.
Wow this really works
PAPER JAM - "Why does it say paper jam when there is no paper jam, I swear..one of these days.
how do you change it if you have USB HP Printer and not one with an IP
i have an hp printer that is used USB and it doesnt have an IP address what would you do in htis senario?? thanks
Is this possible todo on a Mac via USB?
Could you update the page to include details of how todo this for people with no clue at all, like me.
I connected via telnet and put in the lines and it just sat there. Is there something I need to put at the end to "activate"? Also, once it timed out it printed the script.
"YOU'RE KILLING TREES"
Could you add a more step by step guide of how to do this using telnet software please for those that have no idea how to run the script, like me.
Also, how can you use more than 1 line where possible? I couldn't work it would from the weather script.
Thanks,
G
This isn't working on my 3550. When I run the script the LCD says "processing TEXT JOB" and keeps spitting out blank paper until I power cycle the printer.
What am I doing wrong?
On my Color Laser Jet in the main copy room:
Replace White Toner
Made a video showing what you can do with this script and some programming knowledge (rly basic stuff :P)
http://video.google.com/videoplay?docid=2699489770160428039&hl=en
Enjoy!
Newer printers have "Powersave Mode" which hides the Ready Message.
Any info on how to get that code too.
Back before the PJL codes were commonly available, I had posted a tool 'hp.c' which would remotely update the code. It has been years since I've looked at the code, but I believe it was published in 1996 or 1997. I remember playing around with this in 1995 though.
Here is a link to the original l0pht code:
http://www.irongeek.com/i.php?page=security/hphack
I'd have it say either "Wake up, Neo", or "I can't do that, Dave. -HAL"
Open the command prompt and type:
hpsetdisp.pl IP ADDRESS "MESSAGE"
...So, my printer's IP address is 10.10.11.172, and the message I want is "INSERT COIN" ... I typed this:
hpsetdisp.pl 10.10.11.172 "INSERT COIN"
Also, the display on our HP printers is 16 characters long with 2 lines. It's all UPPER CASE, too. If you want your message to read:
PLEASE CONTACT
SATAN FOR HELP
You structure the command like this:
hpsetdisp.pl" 10.10.11.172 "PLEASE CONTACT SATAN FOR HELP"
This hack is really fun and easy. Thanks again for posting this and have a great day!
http://pl.youtube.com/watch?v=yGdp0wLzHX0
Posted it to YT too :).
Anyone have any clue how to get it to display multiline messages properly? I am having trouble figuring out how to send it escape sequences.
I've read various accounts about using \ escaped sequences as well as ~ and ^ but all display verbatim instead of sending the display a linefeed.
I can't believe this hasn't been suggested:
All your base are belong to us
!
I made our printer (a newer one with a multi-line display) say "I'm tired of printing, give me a cookie." only to find out that the help desk spent 30 minutes taking the printer apart trying to find out where to insert a cookie.
I looked for inspiration here - some good suggestions, but I eventually went with:
SPELLING ERROR
This is great. It also works on Canon ImageClass 4000 printers with the network card installed. Since it's a 2-line display, the first line reads READY, and the message you set is on the second (normally blank) line.
I just took a 2 week vacation, and left a batch file running on my computer that waits 30 minutes, then sets the message to one of several preset messages for 5 minutes, then clears it and goes back to waiting 30 again. I wonder if anyone will notice... they're not frequently used.
I did tell someone how to kill it just in case though.
The series of messages is...
GAME OVER
INSERT COIN
I LOVE LAMP!
THE COW SAYS MOO.
I CAN HAS CHZPAPER?
Where is Dirk?
I miss Dirk.
umop apisdn w,I (I'm upside down)
You lookin' at me?
[READY] TO ROCK
PC LOAD LETTER
On a black and white printer: "BLUE TONER LOW"
noone is on the irc channel you provided i hope someone goes there soon i want to join in on the fun
I'm using the shortened version someone posted.
works great with a 5100, all caps only. Couldn't do the cent character.
Linefeeds don't work. Use spaces to force text onto the 2nd line.
our 3550 will register the message, but each time you do it, it spits out a sheet of paper.
Nothing happened, that I could tell, with our 7100. Tried both RDYMSG and JOB.
Here is a patch for less complaining and more doing:
unless (@ARGV>=2) { print "usage: $0 <ip address> \"<RDYMSG>\"\n" ; exit }
my $peeraddr = $ARGV[0];
my $rdymsg = join " ",@ARGV[1..$#ARGV];
ERROR ID10T
best one so far:
WAITING FOR COMMAND FROM SKYNET
hilarious
I did this awhile back with a windows service (written in .NET) which rotated the messages on all networked printers in the IT department hourly.
I almost got fired. ;)
All right, this is entirely too much fun. FWIW, it works as written on Xerox Phaser 6120n printers - no changes necessary.
NOT READY
DREG DRAWER FULL
It works on most Lexmarks.
Very cool - unfortunately we don't have any HP printers in our office!
Thanks for this!
If anyone's interested, I ported it to D and built a standalone Windows executable.
I love it. Thanks
DANGER LASER OVERHEAT STAY AWAY
Our Printer sits next to our fax machine -- So i set the ready message to say INCOMING FAX
this is great and will get me started in perl!
Is there some way to send this message to the printer without appearing as a print job in the spool?
"NO MORE PROBLEM"
"DELETING SPAM"
This one is in the corridor near the rest room:
"NO TOILET PAPER"
Guess where this printer is located:
"WAIT, RE-HEATING"
Que loqueras, lo acabo de implementar en las 3 impresoras de la oficina y REALMENTE FUNCIONA, ahora solo espero a que lleguen las victimas...
Post a Comment
Links to this post:
Create a Link
<< Home