usbtb - status update
2004-06-15 16:19 CDT
usbtb - the high performance usb backend
2004-06-07 17:06 CDT
So, last time I went on and on about the modular natu re of CUPS drivers, discussing the critical importance of the CUPS backendCUPS backend n. : the software component used for transfering filtered print jobs from a host computer to a hardware device that produces printed output.. This time I'll be considerably more brief.
Today I am pleased to announce that my new USB CUPS backend for Mac OS X is now available for widespread use. I'll be talking it up some more a little bit later, but I'm short on time right now so I'll leave it at this: if you use any CUPS driver (such as Gimp-Print, HPIJS, my driver for the DesignJet 500, etc...) for printing via USB from Mac OS X (any version since 10.2) download usbtb today and give it a try!
For anyone who might be hesitant to install the driver I will offer this assurance: there is an uninstaller included with the package. Additionally, I am aware that many OS X users are somewhat leary of software that uses Apple's Installer application, due to the notion that it installing it might requring a 'repairing of disk priviliges'. While that may be true for some installer packages it is not case for this one. So try it! If anyone thinks that the software proves me wrong, by all means please let me know (my contact information can be found within the ReadMe file included in the package).
Status update for the DesignJet driver
2004-01-27 16:23 CST to 2004-04-06 16:48 CDT
Over the past several months I have received several reports of problems using this driver when printing over USB from Mac OS X version 10.3, a.k.a. Panther. I must admit that although I had been using Panther for many months I was, until recently, unaware of any incompatibilities for two reasons:
- Owing to a hardware transition, and subsequent misconfiguration of my email client, I did not receive many several email messages sent after the 31st of October 2003 until the 10th of January 2004, at which point I received then all en mass.
- I had never tested printing with the driver over USB from Panther.
It turns out that there is indeed an incompatibility with certain versions of Mac OS X 10.3, when printing over USB. Before continuing I feel compelled to clarify somewhat the nature of how this printer driver operates in OS X.
Beginning with Mac OS X 10.2, Apple began using a print spooler called CUPSCUPS n. : Common Unix Printing System, the open-source software component (developed by Easy Software Products, Inc.) licensed by Apple for use as the print spooler in Mac OS X (versions 10.2 and later). . Drivers written using the CUPS system, like this designjet driver, do not actually perform the action of communicating with the printer hardware; that part is done by the CUPS system by means of an appropriate backendCUPS backend n. : the software component used for transfering filtered print jobs from a host computer to a hardware device that produces printed output., which can be thought of as a data transfer agent. The primary purpose of the CUPS driver is to convert the format of output data provided by the OS into the peculiar format that a particular piece of printing hardware can understand.
This "modular" approach to creating printer drivers is different from the traditional "monolithic" printer driver and has the advantage of providing the means for a single, simplified driver to communicate with a printer over various protocols, such as USB, Appletalk, and HP's JetDirect, just to name a few. The disadvantage to this approach is that the driver becomes dependent on other software components that are, in general, outside of the driver developer's control. When a critical OS component breaks, like the USB component in 10.3, it appears to the user that the driver is broken, when in reality the driver is functioning normally, but the data it is producing is simply not reaching its destination.
Versions of Mac OS X 10.3 prior to 10.3.3 suffered a problem with the OS component called the "CUPS usb backend". In 10.3.3, an updated usb backend was provided which solves some of the USB problems, not just for the DesignJet driver, but also for any other CUPS driver such as Gimp-Print. If you are using Mac OS X version 10.3 please update to at least 10.3.3 before attempting to use the driver.
Some printing questions answered
Here are my answers to some Mac OS X printing-related questions that I recently saw posted on the popular Macintouch website. These answers represent my current state of mind on the question topics, and as such may be subject to revision (so read them with that caveat in mind...)
Date: Thu, 20 Feb 2003 02:23:06 -0500
From: "Paul J. Tetreault, Jr."
Subject: Printing Final Draft Courier Font
This mail is in response to Robert Bruce's problems printing italicized text in the Final Draft Courier Font posted on February 19 in the reader reports about the 10.2.4 update Robert, the symptoms you describe sound like you may have font file corruption. You can print text using the font as long as the text does not use the italicized face. The fact that you can print using your C-60 does not rule out font file corruption since inkjets don't use the same method of formatting what is printed as laser printers.
Actually, the distinction is not laser vs. inkjet, but PostScriptPostScript n. : an interpreted, stack-based page-description language (by Adobe Systems, Inc.) used to describe the appearance of text, graphical shapes, and sampled images. vs. non-PostScript.
In Mac OS X 10.2 and later, every print job that is not PostScript is rasterizedRasterize v. : the process of converting an image into successive, parallel, bit-mapped scan lines, suitable for output to a display or printer., which means that all print jobs are basically sent as images to the printer and fonts are never sent to non-PostScript printers.
The main drawback to rasterizingRasterize v. : the process of converting an image into successive, parallel, bit-mapped scan lines, suitable for output to a display or printer. all print jobs is that certain drivers may require more time to print, but the enormous benefit of rasterizingRasterize v. : the process of converting an image into successive, parallel, bit-mapped scan lines, suitable for output to a display or printer. in Quartz is the beautiful and accurate output that it produces on even the most inexpensive printers. Banished forever are the days of jaggedy rotated QuickDrawQuickDraw n. : the software system used to create and display graphics in the "classic" Macintosh operating system. text (at least for all applications that use Quartz!).
Since Robert Bruce was able to see the italic font on the Quartz-rastered screen he was also able to print it successfully to his raster inkjet. As both Paul and David have already noted, Robert's problem is most likely a corrupted font being downloaded to the PostScript printer.
If Robert's Laserjet 1200 has a JetDirect print server then one possible solution would be for him to print using a PCL raster driver such as HPIJS or Gimp-Print, which both support this printer, although the output may look slightly different from the PostScriptPostScript n. : an interpreted, stack-based page-description language (by Adobe Systems, Inc.) used to describe the appearance of text, graphical shapes, and sampled images. job.
Robert may also be able to print with these drivers over USB, but many HP devices have been reported as problematic when used with the standard CUPSCUPS n. : Common Unix Printing System, the open-source software component (developed by Easy Software Products, Inc.) licensed by Apple for use as the print spooler in Mac OS X Jaguar. USB backendCUPS backend n. : the software component used for transfering filtered print jobs from a host computer to a hardware device that produces printed output. in Mac OS X.
Speed is another potential advantage of printing with a raster driver to a printer that natively supports PostScriptPostScript n. : an interpreted, stack-based page-description language (by Adobe Systems, Inc.) used to describe the appearance of text, graphical shapes, and sampled images.. If a printed document has many complex images and the processor in the Mac is significantly faster than than the processor in the printer then the user will likely see a (possibly significant) decrease in output time using the raster driver.
Date: Thu, 20 Feb 2003 18:07:52 -0900
From: Michael Johnston
Subject: New HP Photosmart Printer Drivers
I see HP has listed version 2.1 printer drivers available on their web site as a CD purchase but they still only have version 2.0.5 available for download. I did a search on versiontracker and they only list v. 2.0.5 also. I wish they would get with the program as my 1218 is sooooo slooooooww it is almost unusable. OSX 10.2.3
Date: Thu, 20 Feb 2003 19:05:24 +0000
From: Andy Finney
Subject: Serial Printing and OS X
My migration to OS X has been quite painless apart from printing which is exactly the opposite. I've had a fair amount of trouble printing to my Ethernetted HP LaserJet 4M what with AppleTalk mysteriously turning itself on on every available port and the printer and driver not always seeing eye-to-eye. But this is as naught compared to my attempts to talk to my Epson Color Stylus 800 through a KeySpan USB-to-Serial adapter (USA28X) with which my trust Quicksilver communicated with the Epson under OS9.
Serial printing is not supported by Apple in OS X. That's not to say that it can't be done in 10.2 and later (Jaguar), although the currently available methods all require the use of a CUPSCUPS n. : Common Unix Printing System, the open-source software component (developed by Easy Software Products, Inc.) licensed by Apple for use as the print spooler in Mac OS X Jaguar. driver such as Gimp-Print.
In fact, there is an imperfect Jaguar driver for the venerable Apple ImageWriter line of printers that provides a measure of support for printing over the serial port (including Keyspan USB-to-Serial adpaters), and full support for printing over appletalk. This ImageWriter driver is available at the Mac OS X printing page hosted at linuxprinting.org.
I don't have access to an Epson SC 800 so I have not personally tested Andy's configuration, but it may be possible to print over the serial port using the serial backendCUPS backend n. : the software component used for transfering filtered print jobs from a host computer to a hardware device that produces printed output. that's included with the imagewriter driver (see the installer's internal readme for details).
If there were enough demand, this serial backend would likely be made available stand-alone. A much more reliable method than serial printing would be to print using an ethernet-to-parallel print server, or a USB-to-parallel converter cable (both solutions would require using a CUPSCUPS n. : Common Unix Printing System, the open-source software component (developed by Easy Software Products, Inc.) licensed by Apple for use as the print spooler in Mac OS X Jaguar. driver such as Gimp-Print).
One caveat regarding USB converters: some of them work much better than others in OS X, and some that work perfectly in OS 9 are reported to not work at all in OS X (the Keyspan USB-to-parallel cable is one that fails to work in OS X for most users). There is a Gimp-Print FAQ entry on this topic.
Date: Thu, 20 Feb 2003 13:01:59 -0500
From: Scott Frederick
Subject: Using Personal Laserwriter 300 with OS X
I just purchased a new 17" iMac and it appears that I can no longer use my Personal Laserwriter 300 in OS X (I had a Rev B iMac w/OS 9.1). Is there some type of work around to get it ot work with OS X (without using the Classic OS route)? Thanks in advance for any help.
The personal laserwriter 300 is a serial raster (QuickDrawQuickDraw n. : the software system used to create and display graphics in the "classic" Macintosh operating system.) printer.
In theory it should be possible to create an OS X driver, but I know nothing about this printer's command set and serial port characteristics, and I am unaware of any source for that information. Perhaps Apple could dig this information out of some old dusty filing cabinet and make it available (they have certainly demonstrated a recent penchantpenchant n. : a strong liking; inclination. for open source lately) if none of the technology was licensed from third parties.
Even if the information was made available it would probably require a very dedicated owner of one of these printers to make a driver happen. I'm sorry to say that the odds of a working OS X driver appearing for this printer are currently almost negligiblenegligible adj. : insignificantly small; nearly zero..
And with vastly superior inkjets and lasers going for a few hundred dollars (or a few tens of dollars) these days it hardly seems worth all the effort.
From: matthew wall
Subject: seemingly spurious thrashing of disk
Since upgrading to 10.2.4 I have experienced serious disk thrashing, to the extent that my mac is unusable for 15-30 minutes at a time (until the disk stops thrashing). At first I thought it was just vm swapping pounding the disk, but this thrashing is different. My configuration: macosx 10.2.4, Pismo powerbook g3, 512MB RAM, 40GB disk, over 800MB free space on root partition. I have installed the gimp print packages (espgs-7.05.5-0.Ppc.Dmg and gimp-print-4.2.4-1.Ppc.Dmg)
This issue has nothing specifically to do with Gimp-Print. Although I am far from an expert in disk thrashingDisk thrashing:a situation where the read and write heads of a disk drive move rapidly back and forth over the data platter for an extended period of time.
I would suggest that OS X users should endeavor to keep available at least twice as much free hard drive space as they have physical memory (this is a minimum value, and highly fragmentedFragmented hard drive:a data storage device containing many logical files stored in discontinuous fragments throughout the physical storage medium. drives may require more free space).
Matthew should try to free up some drive space and possibly defragment his drive, or simply upgrade to a larger drive.
DesignJet 500 driver for Jaguar
Today I have posted a Mac OS X driver for a previously unsupported printer. If you are the owner of a both a Mac and an HP DesignJet 500 then you might find it interesting. Otherwise, not.