NETGEAR is aware of a growing number of phone and online scams. To learn how to stay safe click here.
Forum Discussion
penguinny
Oct 26, 2009Aspirant
HP printers firmware uploader
Someone suggested to re-post this here as a request for community add-on.
Several inexpensive (=very common) laser printers from HP do not have firmware on board, these include HP LaserJet 1000, 1005, 1018, 1020, P1005, P1006, P1007, P1008 and P1505. These printers are correctly recognised by ReadyNAS software, so, in principle, it is possible to share on the Windows network a printer connected to a ReadyNAS unit. The Windows computer can use standard HP drivers and send the information in raw mode, so this is not an issue. However, nothing can be printed before firmware has been uploaded to the printer itself. This needs to be done every time the printer is switched on.
This situation can be demonstrated by a simple experiment:
(Step 1) A printer is connected to ReadyNas unit and switched on. My LaserJet 1020 printer is recognised at x.x.x.x:631/printers as HP_LaserJet_. The printer can be added as a network printer on my Windows computer, but sending documents to it results in nothing being printed out. The only indicator that printer jobs are being sent is the message at x.x.x.x:631/printers saying "Sending print file, 71356 bytes...", the file size changing depending on what particular job was sent to the printer.
(Step 2) The printer usb cable is disconnected from ReadyNas unit and connected to a Windows box with the appropriate drivers installed. The printer is successfully recognised by Windows. A test page can be successfully printed. The firmware was uploaded to the printer somewhere in the process of this operation.
(Step 3) The printer usb cable is disconnected from Windows computer and connected to a ReadyNAS unit. It is important to keep the printer switched on in the process of doing this. All of the earlier created network shares become alive. Windows computers can now successfully print documents on the printer connected to ReadyNAS for as long as printer stays switched on.
Obviously, this is not a reasonable solution for using these printers. Fortunately, there is a linux driver that is capable of automatically uploading the firmware to the printer: http://foo2zjs.rkkda.com/ . Hence, on the surface at least, it appears that a port of this driver to ReadyNAS unit would enable compatibility with several fairly common HP printers. Unfortunately, I know nothing about either linux or ReadyNAS programming. Would it be possible for anyone with these skills to assess the complexity of such a port? This could become a very useful plugin for many ReadyNAS users.
I had a look at foo2zjs distribution. As far as my limited understanding goes, bin/sh script "hplj1000" is responsible for firmware uploading (does "hotplug script" mean anything to you?). Of course, this also requires having ready all relevant printer firmware files. I cannot see anything else really necessary for the printers to be initialised in raw mode. I do not think the actual driver even needs compiling!
Several inexpensive (=very common) laser printers from HP do not have firmware on board, these include HP LaserJet 1000, 1005, 1018, 1020, P1005, P1006, P1007, P1008 and P1505. These printers are correctly recognised by ReadyNAS software, so, in principle, it is possible to share on the Windows network a printer connected to a ReadyNAS unit. The Windows computer can use standard HP drivers and send the information in raw mode, so this is not an issue. However, nothing can be printed before firmware has been uploaded to the printer itself. This needs to be done every time the printer is switched on.
This situation can be demonstrated by a simple experiment:
(Step 1) A printer is connected to ReadyNas unit and switched on. My LaserJet 1020 printer is recognised at x.x.x.x:631/printers as HP_LaserJet_. The printer can be added as a network printer on my Windows computer, but sending documents to it results in nothing being printed out. The only indicator that printer jobs are being sent is the message at x.x.x.x:631/printers saying "Sending print file, 71356 bytes...", the file size changing depending on what particular job was sent to the printer.
(Step 2) The printer usb cable is disconnected from ReadyNas unit and connected to a Windows box with the appropriate drivers installed. The printer is successfully recognised by Windows. A test page can be successfully printed. The firmware was uploaded to the printer somewhere in the process of this operation.
(Step 3) The printer usb cable is disconnected from Windows computer and connected to a ReadyNAS unit. It is important to keep the printer switched on in the process of doing this. All of the earlier created network shares become alive. Windows computers can now successfully print documents on the printer connected to ReadyNAS for as long as printer stays switched on.
Obviously, this is not a reasonable solution for using these printers. Fortunately, there is a linux driver that is capable of automatically uploading the firmware to the printer: http://foo2zjs.rkkda.com/ . Hence, on the surface at least, it appears that a port of this driver to ReadyNAS unit would enable compatibility with several fairly common HP printers. Unfortunately, I know nothing about either linux or ReadyNAS programming. Would it be possible for anyone with these skills to assess the complexity of such a port? This could become a very useful plugin for many ReadyNAS users.
I had a look at foo2zjs distribution. As far as my limited understanding goes, bin/sh script "hplj1000" is responsible for firmware uploading (does "hotplug script" mean anything to you?). Of course, this also requires having ready all relevant printer firmware files. I cannot see anything else really necessary for the printers to be initialised in raw mode. I do not think the actual driver even needs compiling!
35 Replies
Replies have been turned off for this discussion
- stamburroAspirantHi guys,
very interesting topic since i have the same problem, but it's not clear to me what are the steps to make the system work (and yes, i know nothing about linux and the Readynas box)
So far i have:
1. Plugged the printer in to the Readynas Duo via USB. It recognizes correctly the P1005 and shows it as "shared"
2. Installed the proper drivers on the notebook (XP based) and connected to the Readynas queue
3. Installed successfully on the Readynas the add-on firmware suggested by Whocares and now it shows in the list as activated.
What are the missing steps to make it work?
I read about "adding correct folder tree for foo2zjs firmwares" (in the Smask post) but i have no idea how to do it. It's something that i should do at this point or before installing the add-on? - smaskAspirant
What are the missing steps to make it work?
I've progressed a bit further. Now I can make the printer hotpluggable.
What you need to do: (I assume you have the foo2zjs add-on installed)
1. Install EnableRootSSH add-on so you can open a SSH shell on your NAS (login:root Password:your admin PW)
2. Install Apt add-on so you can install additional Debian packages
3. Reboot
4. Login to the NAS via SSH. (If you need a SSH-client for Windows: use Putty)
5. Run apt-get update to build package databaseapt-get update
6. Install ed and vim (text editors). The hotplug script needs those to work.apt-get install ed
apt-get install vim
Apt-get might not install the packages until some extra libraries are installed. It will prompt you if needed.apt-get -f install
7. Jump to the root and download my tarball with updated firmwares: You must stand in the root, because the files are stored with full path.cd /
wget http://www4.tripnet.se/~fredrik/HPfirmware.tar.gz
tar tvfz /HPfirmware.tar.gz
The tarball should contain these files:-rw-r--r-- root/root 222443 2009-12-29 18:42:21 usr/share/foo2xqx/firmware/sihpP1005.dl
-rw-r--r-- root/root 222571 2009-12-29 21:49:02 usr/share/foo2xqx/firmware/sihpP1006.dl
-rw-r--r-- root/root 248683 2009-12-29 21:49:15 usr/share/foo2xqx/firmware/sihpP1505.dl
-rw-r--r-- root/root 114233 2009-12-29 21:43:53 usr/share/foo2zjs/firmware/sihp1000.dl
-rw-r--r-- root/root 116925 2009-12-29 22:10:35 usr/share/foo2zjs/firmware/sihp1005.dl
-rw-r--r-- root/root 129143 2009-12-29 18:41:33 usr/share/foo2zjs/firmware/sihp1018.dl
-rw-r--r-- root/root 128431 2009-12-29 18:41:40 usr/share/foo2zjs/firmware/sihp1020.dl
If contents is OK (P1007 uses the same FW as P1005 and P1008 uses same as P1006), extract the file.tar xvfz /HPfirmware.tar.gz
8. Jump to the /etc/hotplug/usb folder.cd /etc/hotplug/usb
Run the hotplug script hpljXXXX (replace XXXX with your model) to see if the firmware loads. LEDs should be blinking../hpljP1005
If the script got stuck while copying the FW, then your FW might be broken. Press Ctrl-C to abort. Let me know if you need a new firmware.
If the script ran without a hitch, print a test page.
Notice! The FW for P1006, P1008 and P1505 may still be broken (possible bug in the retrieval tool, getweb, that I used to download the FW) Let me know.
9. When the printer prints OK, you have to make it hotpluggable../hpljP1005 install-usermap
If the script complains that the commands ed or ex can't be found, then ed or vim didn't install properly. Repeat #6.
And you're done!
--
Edit: typo
Edit2: Rewrote #7 completely and edited #8 - stamburroAspirantThank you very much, Smask
I was able to follow your step by step guide without any problem.
The firmware downloads successfully into the printer as the ./hpljP1005 output shows:
READYNAS:/etc/hotplug/usb# ./hpljP1005
./hpljP1005: foo2zjs: loading HP LaserJet P1005 firmware /usr/share/foo2xqx/firmware/sihpP1005.dl to /dev/usb/lp0 ...
./hpljP1005: foo2zjs: ... download successful.
READYNAS:/etc/hotplug/usb#
(if the printer is unplugged i don't get the "download successful" message)
But, when I try to print a test page from XP, no luck. the printer stays quiet as nothing had happened.
Any idea?
Thanx again - smaskAspirant
stamburro wrote: Thank you very much, Smask
I was able to follow your step by step guide without any problem.
The firmware downloads successfully into the printer as the ./hpljP1005 output shows:
READYNAS:/etc/hotplug/usb# ./hpljP1005
./hpljP1005: foo2zjs: loading HP LaserJet P1005 firmware /usr/share/foo2xqx/firmware/sihpP1005.dl to /dev/usb/lp0 ...
./hpljP1005: foo2zjs: ... download successful.
READYNAS:/etc/hotplug/usb#
(if the printer is unplugged i don't get the "download successful" message)
But, when I try to print a test page from XP, no luck. the printer stays quiet as nothing had happened.
Any idea?
Thanx again
Did the led on the printer blink when you ran the script the first time? If so, unplug the printer and powercycle it before you plug it back in. If everything is ok, the printer will blink (and whirr) when connected.
You will only get text output when you run the script manually.
When the loading part of the script runs, it will check the printer if the firmware is loaded. The script will prompt:./hpljP1005: foo2zjs: HP LaserJet P1005 firmware already loaded into /dev/usb/lp0
Test if you can run the script again and again. If you don't get the already loaded message, then your firmware is borked.
Meanwhile I will download the firmwares from HP and make a tarball or zip or something. - stamburroAspirantgood point Smask,
everytime i run the script i get always the same message "download successful" and not the one you mentioned "fiemware already loaded".
I guess then you are right about the firmware being broken ;) - stamburroAspiranta little followup:
i found (i think) the P1005 firmware in the driver package available from the Hp web site, the file is called P1005.img and the size is very similar to the one that i have installed on the readynas through Whocares add-on.
I copied the new firmware on the readynas using psftp, to replace the existing one, but i am stuck at the same point as before. the script tells me everytime "download successful" - smaskAspirant
stamburro wrote: the P1005 firmware in the driver package available from the Hp web site, the file is called P1005.img and the size is very similar to the one that i have installed on the readynas through Whocares add-on.
I downloaded mine using the getweb tool (comes with the full version of the foo2zjs package).
What getweb does is adding HP headers (and footers) to the ELF binary you downloaded.
The one I got is 222443 bytes and I suppose yours is 222392 bytes?
I updated my long post. See #7 for installing corrected firmwares.
--
Edit: More info on FW - stamburroAspiranthey Smask, it rocks!
the firmware you posted - and your very detailed instructions - made my day (yes, the printer finally works, so does the hotplug system!)
In the process i also learned a couple of things about the readynas duo box. Very nice machine indeed ;)
Thank you very much for your support :) - PiddePAspirantHi everyone,
Thanks everyone for your help on this, finally I could get my HP Laserjet 1020 to work with my Duo!
Cheers,
Peter - crizz187AspirantHi!
I found this post because I was looking for a way to get my LaserJet 1020 print through my ReadyNas Duo.
Just a few questions before I start the installation following Smask detailed guide:
Is the printer supposed to be able to print with just the Add-on, or do I have to go through the whole process explained by Smask?
What does the Add-on do? Do I need the Add-on for the Smask guide to work?
Thanks, and I really appreciate the work you guys have put together here.
/C
Related Content
- Jan 27, 2023Retired_Member
NETGEAR Academy

Boost your skills with the Netgear Academy - Get trained, certified and stay ahead with the latest Netgear technology!
Join Us!