When I got my new HP PSC(printer,scanner,copier)1510 device the other day, I was not at all surprised find that the box it came in completely ignored the linux community. I don't mean it said "is not supported", just totally ignored. It was quite clear in stating no win95, no NT, no DOS. It was also happily announcing it's compatibility with XP, 98, 98se and even Mac(amazingly still not quite dead yet).
Why is all this important? It's not really, but it does show something that I love about linux, which is the fact that although very few companies openly support us, noone is willing to say they DON'T support us. Setting up your hp device to work with your linux system is really quite simple compared to other setups. The trouble I had was finding the information to do so. Hopefully this document will make it easier for someone else to accomplish what took me about half a day to research and implement.
The HPlip project(http://hplip.sourceforge.net) is what we'll be using to get things up and running. They have tarballs on the site if you prefer to roll your own. Usually I like compiling but with this particular project I decided to go with rpms. I will be using fedora core 5 for our example but it shouldn't be to hard to tailor this info for other distros. It's important to note that HPlip does not make or distribute the binaries available for the hplip project.
HPlip grew out of the HPoj project. Unfortunately they don't play nice together. If you have the old HPoj libs, you are going to have to make sure they are not used. To do this at the line type:
Code:
ptal-init setup
and follow the directions. It's very easy.
The first thing we need are the rpms. At this time the newest version of hplip is 9.10. I tried yum first and was surprised to find that it did not have the most recent versions. A little searching though and I found what we need. These are the most recent versions of the rpms we need:
-------------------------------------------------------------------------------
hplip-0.9.10-4.i386.rpm (This is the actual project, it is required)
libsane-hpaio-0.9.10-4.i386.rpm (This is to get your PSC's scanner features working with sane, xsane, etc. It is required if you want your scanner to work, and why wouldn't you want that?)
hpijs-0.9.10-4.i386.rpm (might not need this one, I didn't, but it is required by some PSC's, check the chart at the hplip site.)
--------------------------------------------------------------------------------
To get them:
Code:
cd ~
wget http://download.fedora.redhat.com/pub/fedora/linux/core/development/i386/Fedora/RPMS/hplip-0.9.10-4.i386.rpm
wget http://download.fedora.redhat.com/pub/fedora/linux/core/development/i386/Fedora/RPMS/libsane-hpaio-0.9.10-4.i386.rpm
rpm -ivh hplip-0.9.10-4.i386 libsane-hpaio-0.9.10-4.i386
and optionally
Code:
wget http://download.fedora.redhat.com/pub/fedora/linux/core/development/i386/Fedora/RPMS/hpijs-0.9.10-4.i386.rpm
rpm -ivh hpijs-0.9.10-4.i386.rpm
Ok rpms are all installed. Make sure your PSC is plugged in, turned on, and connected to your box(you'd be surprised how often this step fails). Next thing we do is simply a double check:
Code:
vim /etc/hosts
Make sure that in that file you have a line that says:
127.0.0.1 localhost
I didn't and it was a real pain in the ass. It has to have the numeric and the localhost part or it WILL NOT WORK. hpssd simply can't bind without it.
Next check /etc/sane.d/dll.conf for the existence of a single line that says:
hpaio
If it doesn't exist add it. If it's there make sure it's uncommented(no # at the begining of the line). Once that's confirmed it's time to start up services:
Code:
service hplip start
This will attempt to start up the hplip and hpssd daemons. If anything fails or doesn't work check /var/log/messages. This can be tricky with hpssd because even if it fails to startup, it acts like it did. Because of this you might want to:
Code:
ps aux | grep hpssd
just to make sure it's running.
To test out the printer type the following:
Code:
/usr/lib/cups/backend/hp
You should get something like:
Code:
direct hp:/usb/PSC_1500_series?serial=MY61JD11NC0498 "HP PSC_1500_series" "hp:/usb/PSC_1500_series?serial=MY61JD11NC0498" "MFG:HP;MDL:PSC 1500 series;CMD:MLC,PCL,PML,DW-PCL,DESKJET,DYN;1284.4DL:4d,4e,1;CLS:PRINTER;DES:
6543;SN:MY61JD11NC0498;S:038000C480001021002c178005ec2880059;J: ;Z:0102,0503cbe9015cc9,0600;"
If it doesn't work, make sure the cups service is running:
Code:
ps aux | grep cups
If its not:
Code:
service cups start
To test out the scanner type the following:
Code:
scanimage -L
You should get something like:
Code:
device `hpaio:/usb/PSC_1500_series?serial=MY61JD11NC0498' is a hp PSC_1500_series multi-function peripheral
That's it you should be all set to use your HP PSC device. Have fun and don't forget to scan your ass and email it to all your friends!