Categories
CUPS IPP JetPrint Printing socket

I think I cracked this CUPS thing

In a long ago post I think I complained about CUPS. Well, I’d like to retract some of that complaint.
Previously there were tremendous problems with CUPS. usually it would hang on printer jobs. It would report that a job had completed when it hadn’t. It would report a printer error then stop the queue. Then I discovered a gem on the CUPS website. Most LAN printers support IPP (Internet Printing Protocol) and Socket (aka JetPrint). I had all my LAN printers setup for IPP.
Now IPP should work just fine. But on a hunch I checked my LAN printers to see if they supported socket. The answer was YES! The CUPS documentation recommends that when possible use socket as it is the most reliable communication method (http://www.cups.org/documentation.php/network.html) . So I did just that. I entered the printers.conf file for each of my printers and changed them to use socket.
Wow! what a change. I now have (more) reliable printing. I have to say “more” because with the Windows RAW printing it still is not perfect – certain driver options are not passed through clean. So there is either:

  • A bug in IPP in my CUPS version (1.3.7)
  • A bug in the printers implementation of IPP
  • or both

The problem is more apparent with my MFP (KM Bizhub 250) with it’s special drivers and multitude of options. But I’m sure I’ll still find problems with the other printers. But at least CUPS is no longer dropping and get hung on jobs.

Gosh! how can IPP possibly work. It seems like an unreliable protocol. Can’t wait for Ubuntu 9.10 LTS for an upgrade on CUPS.

Categories
ASP.Net CUPS Printing SAMBA Windows Server

CUPS and SAMBA a match made in h…

In this entry I’ll be going on about the printers setup in the office. Currently there are two network printers, one Samsung and one MFP as Konica-Minolta BizHub 250. The printers are not currently controlled by a print server. Mainly because we don’t want the printers to rely on a single machine, which may be turned off and prevent printing to happen.

So as an experiment I setup a CUPS server on the small Linux box which would serve the Samsung. Getting CUPS going wasn’t hard, but gettin the printer driver on was hard. The printer driver didn’t show up during the setup, eventhough I am sure that there was a driver available. I also downloaded a setup from Samsung which didn’t go through 100%. End result I did get the printer going.

Getting the printing going from the other Linux (CentOS) machine I have. It instantly showed up in the printers listing. Being used to Windows I then attempted to setup the printer drivers. The Samsung install would not work on CentOS, but eventually I determined that a driver was not needed. Linux printing is quite clever!

Next up was getting my small Linux box to server the printer through SAMBA and also support Point’n Print. The printer was automatically exposed by SAMBA the moment I installed the CUPS driver. Point’n Print was a bit tricky to get working. It doesn’t help that I didn’t fully read the manual! I got the driver installed and got the Point’n Print to install the correct driver, but when I did a test page, Windows spooler and window manager crashed! Repeatedly, Because being a idiot I just kept trying it again and again.

I gave up on it and had to uninstall the drivers and files using the rpc interface (not a very well written piece of software BTW). And then after that I learn that I had to setup the printer information by manipulating the printer setting first. Saving the information and then using test page is supposed to work. By this time I had pulled out the Samsung CD and installed the driver from it.

It does seem to work reasonable except for a few niggles. If the printer is off the print queue get hung and jobs never get printed even after I turn the printer on. I have to kill the jobs and re-print, which doesn’t come in hang if I’ve printed off a webpage receipt. I also don’t get the printer queue properly displaying on the status bar. So far I’m only using CUPS as an experiment until I sort these issues.

I’ve got a potential contract who wants a mini e-commerce website built. Just an excuse to learn ASP.Net and try and get a demo working. I does work in the development environment, but attempting to install it onto IIS 5.0 gives a Metabase access error. I’m sorting that out…more next time.