Cool trick! How to do nozzle checks as a scheduled task

crenedecotret

Print Addict
Joined
Oct 5, 2006
Messages
161
Reaction score
52
Points
163
I was looking for a way to do scheduled nozzle checks on my printers. (every 3 days for me)
I know MIS autoprint exists, but it sends a purge page without actually telling me the nozzles are clean.

I've found a way!!! The trick is to capture the data sent to the printer for a nozzle check, and keep the spool
file to use in whatever way we wish.

1. First share the printer from the printers folder in the control panel. Give it a simple name because we will need to create a batch file later on.
I shared mine as "IP4500".

2. Pause the print queue for that printer. To do this, double click on the printer in the printers section of the control
panel. Then click on the "PRINTER" menu and on the "PAUSE PRINTING"

3. Run the nozzle check utility from your printer driver software. You will see the data go from the driver to the
print spooler, but it will stay stuck in the spooler

4. Create a folder to contain your homemade auto-nozzle check app. I created mine in C:\AUTONOZZLE

5. When a job is sent to the printer, on most versions of windows two files are created in
C:\Windows\System32\spool\PRINTERS. There is an .SPL and a .SHD file. Copy (don't delete) the SPL file to C:\AUTONOZZLE
rename it to something easy. I called mine IP4500.SPL since this is model specific data.

6. Un-pause the printer. a Nozzle check will print.

7. in C:\AUTONOZZLE create a file with notepad. I called mine AUTONOZZLE.BAT
the file should contain this (adapt to your system)

NET USE LPT3: \\LOCALHOST\IP4500
COPY /B IP4500.SPL LPT3
NET USE LPT3: /DELETE

7. now whenever you run AUTONOZZLE.BAT. you will get a nozzle check from your printer.
You can run this where you want... startup, scheduled task, icon where you want (like on the
desktop)

*edit*
Troubleshooting:
If this fails you can try to replace "LOCALHOST" by your PC's hostname or your IP address
also make sure you have the right share name on the first line of the batch file
 

embguy

Printer Guru
Joined
Mar 9, 2009
Messages
331
Reaction score
3
Points
141
Thank you for sharing this tip. This will save lots of printhead from clogging if we schedule it to run once every week.

My system consists of 3 network printers and a printer connect to PC using USB port.
Network Printers
- MX850 has a built-in network print server
- i550 connected to D-Link DI-704P wired router - print server with an old printer parallel port
- iP4500 connected to ASUS WL-520GU wireless router - print server with an USB port

Local Printer
- MP730 connected to a desktop using USB port and is not shared with any PC in my system.

I need help on setting up the first line in the batch file.

According to the help:
\\COMPUTER\SHARE : Specifies the name of the server and the shared resource. If COMPUTER contains spaces, use quotation marks around the entire computer name from the double backslash (\\) to the end of the computer name (for example, "\\Computer Name\Share Name"). The computer name can be from 1 to 15 characters long.
1. For the networked printers, the \\COMPUTER is easy to setup. I can update my hosts file or just use the IP address of the print server. Please correct me if I am wrong. I have trouble of finding the \SHARE shared resource name for my print servers.

2. How I go about to set up the USB printer connected locally to a PC? The batch file will be scheduled to run locally at that PC. My guess is to use \\LOCALHOST for the server name. How to setup the \SHARE in this case?
 

crenedecotret

Print Addict
Joined
Oct 5, 2006
Messages
161
Reaction score
52
Points
163
Hello embguy,
If the printer shows up in the "printers" panel, this trick will work, regardless if the printer is really on a network directly or via a router or locally connected via USB (my ip4500 is local to the computer). Even if a router is sharing the printer, try to follow the steps i've decribed EXACTLY, sharing the printer from your computer from the PRINTERS panel.

Basically, I'm telling the computer to map port LPT3 to a printer that is shared on my computer. The localhost name is just a trick to make the computer talk to itself on a network. Since there really is no other way to talk to a usb or network printer from a dos COPY command, I need to use the NET USE command to map a LPT port (in the old days, all printers used parallel ports.. LPT). I can copy a file from the command line (or batch file) to an LPT port, but not to a USB or network printer.

If this sounds complicated, I wanted to create a .DOC or .PDF with screenshots, but i'm not quite sure how I can upload it here.
 

embguy

Printer Guru
Joined
Mar 9, 2009
Messages
331
Reaction score
3
Points
141
I create a printer sharing resource called i550. When I manually run the "NET USE LPT3: \\localhost\i550" command on the cmd window, I got the network path was not found. What I did wrong?

D:\NozzleCheck>NET USE LPT3: \\localhost\i550
System error 53 has occurred.

The network path was not found.
 

ghwellsjr

Printer Master
Platinum Printer Member
Joined
Jun 16, 2006
Messages
3,645
Reaction score
85
Points
233
Location
La Verne, California
Printer Model
Epson WP-4530
crenedecotret said:
If this sounds complicated, I wanted to create a .DOC or .PDF with screenshots, but i'm not quite sure how I can upload it here.
I'm not sure if what you mean is you want to upload text, but if that is what you want, as I did on this post:

http://www.nifty-stuff.com/forum/viewtopic.php?pid=9079#p9079

you can do it using {code} at that beginning and {/code} at the end except you have to change the braces into square brackets (the unshifted version of the braces). You don't really upload it, you just paste it into the normal message edit window.
 

crenedecotret

Print Addict
Joined
Oct 5, 2006
Messages
161
Reaction score
52
Points
163
embguy, you could maybe try NET USE LPT3: \\{your computer name or IP here}\i550
But they error says what it says, there is no printer shared at the location you entered.
Are you sure about the name you entered?

ghwellsjr, thanks for the tip. I'll try, but i'm not 100% sure this would work with images
 

embguy

Printer Guru
Joined
Mar 9, 2009
Messages
331
Reaction score
3
Points
141
crenedecotret,
Using the IP address of my PC instead of the localhost made it works.

Please add a step in your first post. "Open Printers folder. Add printer sharing to the IP4500 printer and use IP4500 as shared name."

Thanks
 

jackson

Printer Guru
Joined
Dec 14, 2005
Messages
357
Reaction score
2
Points
141
Location
Ontario, Canada
embguy said:
I create a printer sharing resource called i550. When I manually run the "NET USE LPT3: \\localhost\i550" command on the cmd window, I got the network path was not found. What I did wrong?

D:\NozzleCheck>NET USE LPT3: \\localhost\i550
System error 53 has occurred.

The network path was not found.
From the command prompt;
C:\net view \\localhost
gives a message ".....a duplicate name exists on the network...", whereas using the computer name (or ip) doesn't.
It seems that it not an error, but is by design.
There is an explanation here.

http://support.microsoft.com/kb/254210

Also like to say that this is a great find by "crenedecotret" - I also used it to print the XP test page on my hp deskjet.
 

jackson

Printer Guru
Joined
Dec 14, 2005
Messages
357
Reaction score
2
Points
141
Location
Ontario, Canada
@ crenedecotret

If you have access to the HP 'Toolbox', you can also use the HP test printout.
It isn't colour specific like the Canon nozzle test - but since the print head is built into the ink tank (on my 940c) it is easy to compare to the original, initial print.
 
Top