How to Access a Puppy Printer from a WinXP Machine

How to do things, solutions, recipes, tutorials
Post Reply
Message
Author
User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

How to Access a Puppy Printer from a WinXP Machine

#1 Post by rcrsn51 »

The following procedure requires that you have CUPS installed and your Puppy printer is set up properly as a local device.

You will also need two pieces of information about your Puppy machine - its IP address and the exact CUPS name of the printer.

To get the address, go to a console and type: ifconfig

To get the name, launch the CUPS web interface and open the Printers list. The printer name is shown in blue.

As an example, let's assume that the IP address is 192.168.2.10 and the printer name is Brother. There are two methods.

Method A

Go to the Windows machine and start the Add Printer Wizard.

Select Network Printer.

On the next screen, select URL and type the address:

http://192.168.2.10:631/printers/Brother

(The 631 refers to the port used by CUPS on your Puppy machine)

The next screen is where you choose the printer manufacturer and model.

Select Lexmark and Optra S PS. (Make sure you pick the PS model.)

Finish the setup. Go to your new printer's Properties screen and print a test page.

But how can this work unless you own an actual Lexmark laser printer? The clue is the PS, which indicates that the Optra S is Postscript-capable. So Windows formats its print job using the Postcript printer language and sends it across the network to your Puppy machine. This is exactly what the CUPS server expects to receive from a client, Postscript being the standard printer language for Linux. CUPS then reformats the job using the Brother driver and sends it to the printer.

What if you want to print in colour? Repeat the procedure and choose the HP Color Laserjet PS printer. Before you send the print job, click the Properties button to make sure that it is set on colour.

If you are using DHCP and your Puppy machine changes its IP address, you will need to modify or reinstall your Windows printer.

This method is only as good as the Linux driver for your printer. Since you are printing from Windows, it would be nice to use the "official" Windows printer driver instead.

Method B

From Puppy, run CUPS admin and add a new printer. It will be a duplicate of your current printer, but under a different name, like WinBrother. Use the same device - parallel, USB, etc.

For Model/Driver, select Raw and Raw Queue.

Go to your Windows machine and use Method A to set up your new CUPS printer. This time, use the actual Windows driver for your printer. Because you configured the printer as Raw, CUPS does not need to filter the print job. It accepts the formatted print job from Windows and sends it directly to the printer.

Be aware that some printers are not networkable. They only work properly if they have a direct connection to their host computer.

If you want to print from Puppy to a Windows shared printer, read here.

Credit: http://searchenterpriselinux.techtarget ... 51,00.html
Last edited by rcrsn51 on Sat 16 Aug 2008, 13:59, edited 18 times in total.

User avatar
HairyWill
Posts: 2928
Joined: Fri 26 May 2006, 23:29
Location: Southampton, UK

#2 Post by HairyWill »

Nice concise instructions I didn't realise it was this easy. My printer is networked anyway but I have seen a number of people ask how to use puppy as a print server. You might want to add it to the wiki, somewhere round here http://www.puppylinux.org/wiki/how-tos/easy
Will
contribute: [url=http://www.puppylinux.org]community website[/url], [url=http://tinyurl.com/6c3nm6]screenshots[/url], [url=http://tinyurl.com/6j2gbz]puplets[/url], [url=http://tinyurl.com/57gykn]wiki[/url], [url=http://tinyurl.com/5dgr83]rss[/url]

User avatar
Aitch
Posts: 6518
Joined: Wed 04 Apr 2007, 15:57
Location: Chatham, Kent, UK

#3 Post by Aitch »

rcrsn51 wrote:Nice concise instructions I didn't realise it was this easy
2nd that, & I've seen wrong info posted for this same advice, too

Good stuff, rcrsn51, thanks :)

Aitch

mleschishin
Posts: 54
Joined: Fri 25 Aug 2006, 03:55

#4 Post by mleschishin »

This solution did not work for me. I have a samsung ml-1210 laserjet connected to my puppy pc and it works fine locally with cups. I am trying to access the printer across a network via Windows XP. The windows box seems to recognize the puppy printer being available (it sees the URL) when I attempt to set up the printer. I have tried several different PS drivers but cannot get anything to print, not even a test page. Has anyone else had this same experience or can anyone offer a possible solution? How do I determine if my firewall is blocking port 631?

Mark L.

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#5 Post by rcrsn51 »

Go to Control Panel > Security Center
Scroll down and go to Manage Security Settings for Windows Firewall
Open the Exceptions tab
Put a check beside File and Print Sharing
Send another print job.

[Edit] The above setting doesn't appear to affect the connection to a CUPS printer.

If that doesn't work, take the printer off-line and send a print job. Then check in CUPS to see if the job was received and got queued up.

What version of Puppy are you using?

mleschishin
Posts: 54
Joined: Fri 25 Aug 2006, 03:55

#6 Post by mleschishin »

Well, I've got things partially working......

I can get pdf files to print from the windows box to the puppy pc, but can't get a document file like Word to print. When attempting to print a document file, the cups manager shows a job being cued up, but nothing happens at the printer end.

I am using Puppy v2.17

Any thoughts or suggestions?

Mark L.

User avatar
Aitch
Posts: 6518
Joined: Wed 04 Apr 2007, 15:57
Location: Chatham, Kent, UK

#7 Post by Aitch »

Any thoughts or suggestions?
maybe ghostscript is needed?

http://www.puppylinux.org/wiki/how-tos/ ... ronwindows

Aitch

tbuff2
Posts: 8
Joined: Wed 31 Dec 2008, 17:52
Location: Georgia, USA

#8 Post by tbuff2 »

I've tried the instructions, both method A and Method B and each time the Windows machine says it cannot connect. Any Idea why?

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#9 Post by rcrsn51 »

Are you running a firewall in Puppy?

Do you get the error when you try to set up the printer or when you send a print job to Puppy?

Do you have File and Print Sharing properly enabled in Vista? Read here.

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#10 Post by rcrsn51 »

I don't know much about the cupsd.conf file, but you have

Code: Select all

<Location />
# Allow shared printing and remote administration.
Order Deny,Allow
Deny from All
#Allow from 127.0.0.1
#Allow from 10.0.0.*
Allow @LOCAL
</Location> 
The "Deny from All" sounds suspicious. My version is

Code: Select all

<Location />
# Allow shared printing and remote administration.
Order allow,deny
Allow @LOCAL
</Location>
[Edit] Your version is probably OK.

tbuff2
Posts: 8
Joined: Wed 31 Dec 2008, 17:52
Location: Georgia, USA

#11 Post by tbuff2 »

I don't think I have a firewall running. Is there a way to check? I get the error when trying to add the printer. I type the address as such:

http://puppypc:631/printers/canon-raw

and I get the message "Windows cannot connect to the printer".

I have file and print sharing enabled in Vista. I've also opened port 631 in Vista. I can also ping the Puppy box.

I also have the same problem when using Samba. I can see the Puppy machine but I can't get to it. I get the message "Can't access puppypc". Going from Puppy to Vista is no problem as I can mount shares O.K.

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#12 Post by rcrsn51 »

Replace "puppypc" with the IP address of the Puppy machine.

tbuff2
Posts: 8
Joined: Wed 31 Dec 2008, 17:52
Location: Georgia, USA

#13 Post by tbuff2 »

I've tried the IP address and it still didn't work.

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#14 Post by rcrsn51 »

Read this thread. He seems to have solved his Vista connection problem with this section in cupsd.conf

Code: Select all

<Location /printers>
Order Deny,Allow
Allow From aaa.bbb.cc.d   (the IP address of the Vista machine)
</Location> 
The method described here
sounds like a good fix for connecting Vista to a networked XP printer. Maybe it would also connect to CUPS.

For your Samba problems, there may be something here. Or here.

tbuff2
Posts: 8
Joined: Wed 31 Dec 2008, 17:52
Location: Georgia, USA

#15 Post by tbuff2 »

Thanks for all of the great help. The threads referenced point toward security in Vista, but this shouldn't be a problem since my Samaba server is 3.0.26. However, I added a line to Samba telling it to use NTLVM2 which seems to be the protocol in question. Still didn't work.

I've decided to quit beating my head against the wall on this one. I can share files on the Vista machine from Puppy, so I'll tell the kids if they want to print something to open the file on the Puppy machine and print locally.

Maybe it will be one of those problems that just goes away one day. :wink:

Thanks again for your help.

User avatar
vtpup
Posts: 1420
Joined: Thu 16 Oct 2008, 01:42
Location: Republic of Vermont
Contact:

#16 Post by vtpup »

I've tried using the above method, but am not able to get it to work yet.

Just trying to print from one puppy 4.3.2 to another puppy machine on my home network with cups parallel printer. The above is windows oriented.

Printer address on the puppy printer machine is tp1@192.168.1.12

I'm thinking the Puppy firewall(s) may be blocking it.

What should be changed (if anything ) in the firewall settings to allow another local Puppy access to the printer?

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#17 Post by rcrsn51 »

If you are going from Puppy to Puppy, CUPS automatically handles the print sharing. But it depends on the version of CUPS. If it's v1.3.x, you need to read here.

If you have a firewall running, you need to open port 631.

User avatar
vtpup
Posts: 1420
Joined: Thu 16 Oct 2008, 01:42
Location: Republic of Vermont
Contact:

#18 Post by vtpup »

Sorry, meant to reply for resolution. I have CUPS 1.1. Yes the problem was puppy firewall, and opening 631 fixed it.

Note: I also needed to use the CUPS url format for printer network location when setting up the printer in Turboprint (which I use).

Thanks for your help rc.

Post Reply