Blocking hardware accessibility through software: a printer's tale

October 6th, 2006 by Bruce Byfield

Your rating: None

What are you getting when you buy a printer to use under GNU/Linux? The LinuxPrinting.org site can tell you how well a printer will work with free software, but often that's only part of the story. I came face to face with this simple fact when I recently bought a Hewlett-Packard PhotoSmart C3100, a low end inkjet printer that includes scanning and copying features. Besides basic features, like many today, the printer includes features that run without a computer, if only with the specific Windows or OS X software that accompanies it. My experience is one data point for measuring the current state of hardware support for GNU/Linux -- as well as how companies, deliberately or otherwise, are withholding it.

As LinuxPrinting.org had led me to expect, basic printing support was painless. The printer is included in the foomatic database used by CUPS (the Common UNIX Printing System), and two minutes in the KDE Control Center had the printer working at 300, 600, and 1200dpi -- and me grateful all over again for the improvements over using lpr and printtool. I chose the hpijs driver, which delivers much higher quality printing than the hplip driver, but at the cost of some functionality (see below). If colors seem a little washed out, and inks sometimes smear when using high-quality photo paper, experiments with the copying features quickly prove that the fault lies with the printer and not with the variants of the hpijs printer driver I tried. Considering the price, I was reasonably satisfied.

Further investigation showed that the stand alone features were equally trouble-free. These features work independently of any computer, which is why they could provide the benchmark for my printing tests. I suspect that I wasn't the only user to install incorrectly the sensor plate for the standalone features at first, but, once I realized that the plates' tabs needed to be inserted into the slots provided, functionality immediately followed.

Using the C3100 as a copier, I can control the paper type, print quality, size, and number of copies without being logged on to a computer. Similarly, I can print a proof sheet from the memory chip in my digital camera, then mark the proof sheet to print up to three copies of each photo selected either individually or by date stamp, and choose how my selections will be oriented on the printed pages. The proof sheet is ingenious, if a little convoluted, but, again, I was largely content with my purchase.

I already have a much higher-quality scanner, so I didn't buy the C3100 for its scanning capabilities. However, if I had, I would have been disappointed. Neither Xsane nor OpenOffice.org Writer could detect the C3100 while using the hpijs driver, for all my checking for loose cables, restarting the programs with the printer on, or even my long shot experiments with rebooting the computer with the printer active.

By contrast, the hplip driver did enable scanning, but with such a lack of speed and such graininess that I consider it unusable. Certainly, it was far below the performance of the machine's copy function, or of the printers' scanning capability under Windows.

Curious about what else GNU/Linux users might be missing with the C3100, I mounted the accompanying CDs and opened the readme files. Sure enough, the software I couldn't use included access to a file sharing site where users can order prints online -- for a price, of course, although the first 20 were free --OCR software for character recognition, a few basic photo editing features such as autocropping, and a faxing service.

My conclusions after investigating my purchase top to bottom? To start with, basic printing support for GNU/Linux has vastly improved since I started using the operating system seven years ago. Although most of that improvement is due to free software developers, some of the credit also goes to Hewlett-Packard for releasing the drivers and continuing to manufacture printers that can use them.

That said, clearly GNU/Linux users are still receiving second class treatment from manufacturers of peripherals. Bare functionality is welcome, but hardly enough. Because of the hundreds of different distributions and their widespread availability, the number of GNU/Linux desktops is impossible to count, but some estimates suggest that it rivals that of OS X desktops. So if OS X is supported out of the box, why not GNU/Linux? Like any long time GNU/Linux user, I am used to being largely ignored by hardware manufacturers and doing my own research, yet the question is still worth asking, if only to remind the manufacturers that token recognition is not enough. The profit margin on hardware is slim enough that ignoring any potential market seems short-sighted.

Yet even more important than restating these basic facts of using GNU/Linux is the method for denying access: The requirement for specific, technically unnecessary software, not only to achieve maximum printout quality, but also to fully control the hardware and to be aware of all that is available with your purchase. Standards and protocols for scanning are largely standardized on each platform, so it is probably more work, not less, to develop hardware that only completely works with specific software. Yet at least part of the Hewlett-Packard team that developed the C3100 chose to take that extra effort for some reason. The decision may not have been conscious, but the appearance is that, having gone some ways towards making its hardware available to free software users, Hewlett-Packard is making a deliberate effort to keep proprietary control over part of it. The availability of the free but substandard hplip driver is hardly enough.

Or perhaps the scanning software and other features were designed separately from the other features on my new printer -- in which case, I suppose I should be grateful that I received any functionality at all. And if Hewlett-Packard, a relative friend to free software, can create such difficulties, what can we expect from other companies?

Unfortunately, Hewlett-Packard is not alone in enforcing such unnecessary software dependencies. An increasing number of mp3 players, cameras, and even an external DVD drive that recently spent all of two hours in my home because it lacked an open/close button (and was therefore extremely awkward to boot from), do likewise. All too often, purchasers' access to basic functionality is being compromised or denied because of what seems to be a misguided attempt by the manufacturer to keep control. In the case of the DVD drive, even advanced Windows users were affected.

In all these cases, engineering seems compromised by marketing into a design that is both inelegant and unfriendly to consumers. And, for free software users, the result is a kind of poor cousin to digital rights management that locks them out of functionality and quality that they have paid for.

Admittedly, I either don't want or already have the features elsewhere that I can't use via the C3100. But that's beside the point. I would have appreciated the chance to refuse, if only for the illusion that Hewlett-Packard valued my business.


Bruce Byfield is a computer journalist who writes regularly for the NewsForge and Linux Journal web sites.

__________________________
--
Bruce Byfield (nanday)


Special Magazine Offer -- Free Gift with Subscription
Receive a free digital copy of Linux Journal's System Administration Special Edition as well as instant online access to current and past issues. CLICK HERE for offer

Linux Journal: delivering readers the advice and inspiration they need to get the most out of their Linux systems since 1994.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
take's picture

linux is userfriendly

On July 2nd, 2009 take (not verified) says:

Right now linux using user friendly.
it is really nice to using linux and the free license.. :)
linux is great as OS for server

holmes's picture

i never use linux,in fact i

On May 4th, 2009 holmes (not verified) says:

i never use linux,in fact i never heard anyone in my country use linux as a operating system..I really dont know why

timada42's picture

I had similar problems with

On October 31st, 2008 timada42 says:

I had similar problems with my HP all-in-one printer. Even if it was working for my boyfriend, mine wasn’t. I changed it, and still no result. I don’t understand either what’s with all these compatibilities and all these useless features.

Joel Chue's picture

Really Cool

On February 3rd, 2008 Joel Chue (not verified) says:

Does HP have a good reputation for printing. I haven't use a HP printer before.

Braut Kleid's picture

Printer manufacturers ...

On October 14th, 2007 Braut Kleid (not verified) says:

.. are really a pain for all computer users. Especially the all-in-one printers are mostly crap. I had so much trouble with them that I use seperated scanner, fax and printer now :-)

David Newall's picture

Hewlett-Packard deserve respect

On December 27th, 2006 David Newall (not verified) says:

I am very pleased with the operation of the HP Photosmart 3310 under Linux. It is true that no OCR software was provided for Linux, unlike Windows, for which HP have arranged a bulk deal, but the numbers surely stack up to make the Windows licence attractive and the Linux one not so. That's not HP's fault and it doesn't particularly diminish them or their products.

To HP's particular credit, the software for the printer is entirely open source. By contrast with my previous printer, a Canon, it shines; Canon did provide some kind of driver, but only in binary with a small C-based GUI wrapper.

I haven't noticed any difference in features or speed scanning under Windows versus Linux; perhaps I haven't looked very hard. Even though the product is better under Windows, HP deserve respect for improving equality under UNIX.

Chris's picture

Hewlett_packard

On September 21st, 2007 Chris (not verified) says:

I haven't noticed any difference in features or speed scanning under Windows versus Linux; perhaps I haven't looked very hard. Even though the product is better under Windows, HP deserve respect for improving equality under UNIX.

i am completely agreeing with that. i am a worker on HP and may help you about that topics as well..

dick's picture

HP Officejet Pro K550

On October 11th, 2006 dick (not verified) says:

I am able to do most things with this printer. The one lack and the only reason I am still hanging onto Windows is that although the printer is set up do manual double sided printing, I have never been able to get this to work in Linux no matter what I do. It is a standard option with Windows printing to do either auto or manual double sided printing. None of the printing software with Linux seems able to do this. The other missing part is being able to print from back to front so that you don't have to sit there and shuffle the pages to get them into the right order. This is another standard option with Windows and seems to be lacking with Linux.

Everything else I have tried to do with Linux that I used to do with Windows works at least as well and usually better and I don't have to muck about with all the anti-virus, anti-malware, anti-spyware and defrag programs when I use Linux. As soon as Linux gets the printing software in order I will get rid of Windows. Until then I am afraid that I will have to stick with Windows for printing since Linux is missing the best parts of it or at least the functional parts are so screwed up that if you can get them to work somehow you have to jump through all sorts of hoops and then it may work or not - usually not.

Anonymous's picture

you should look at using MPAGE

On October 24th, 2006 Anonymous (not verified) says:

you should look at using "mpage" which can be used to filter the odd numbered pages and then the even numbered paged for the second pass. This will also worl when doing 2-up and 4-up output pages as well. I find the mpage tool a very handly tool (and in my pre-cups days had manually created printer queues that made used of the mpage ptogram as a tool within the print spooler!).

http://rpmfind.net/linux/rpm2html/search.php?query=mpage

In old days, this was part of the distribution installs.

Carla Schroder's picture

Thanks Bruce, as usual your

On October 10th, 2006 Carla Schroder (not verified) says:

Thanks Bruce, as usual your article is excellent. I too wonder why vendors can offer OSX support but not Linux? Of course, us cynical old people have our usual suspicions about the dirty fingers of our favorite illegal monopolist keeping a short rein on hardware vendors. Your comment about the dev team having to take extra steps to create unnecessary software dependencies is right on. It's not about adding value for the end user at all- they don't care about us. It's a dirty business, and if it weren't for the Free Software Foundation, GNU, the GPL, Linux, and all other projects and people that make up the FOSS world we would have no choices at all.

mrc's picture

Insufferable whining! HP

On October 8th, 2006 mrc (not verified) says:

Insufferable whining! HP provides support thats free (beer and freedom) for many of its multifunction devices, including yours. If you'd researched your choices at linuxprinting.org, you would have been led to the HPLIP driver which has a compatability list:

http://hplip.sourceforge.net/supported_devices/inkjet_aio.html

I'd save my complaints for companies that don't support free operating systems, instead of complaining falsely about those that do.

Bruce Byfield's picture

Re: Insufferable whining! HP

On October 8th, 2006 Bruce Byfield says:

If you'd read my post with any attention, you'll see that I did rely on LinuxPrinting.org. Its advice, which I found accurate, was that the hpijs driver delivered superior printing. The hplip driver does give fax capability, but of such poor quality that I didn't consider using it.

However, I should have mentioned the fact originally, and I didn't. I've since altered the entry.

As for picking on HP, I wonder if you've been a second class citizen for so long that you're used to the treatment. Yes, HP's support for GNU/Linux is better than many companies', but even it has some ways to go -- which was basically my point.

Anyway, even if hplip delivered decent quality, that wouldn't change the fact that neither it nor hpijs is included as part of the purchase -- to say nothing of the additional features or offers avaiable for Windows or OS X users.

I don't think it's whining to acknowledge that HP has made some concessions, then to go on to observe that its support still doesn't equal what's offered on other operating systems. I call that being realistic.

--
Bruce Byfield (nanday)

__________________________

--
Bruce Byfield (nanday)

Anthony Cook's picture

HPLIP for scanning

On October 7th, 2006 Anthony Cook (not verified) says:

Part of the problem with scanning may be the use of HPIJS. I had this same problem with my HPOJ 6210 under the IJS driver. Switching to HPLIP (0.9.4) solved this problem immediately. HPLIP is now available in an "experimental" installer as well as tarball form. Now at version 1.6.9, HPLIP is found on SourceForge.

As for not offering Linux support "out of the box", though by many accounts Linux desktop usage likely exceeds Mac/OSX, the problem for many hardware vendors (and commercial software vendors as well), is the overwhelming number of distributions and their diversity. As one prominent hardware vendor was recently quoted as saying, when you come out offering support for a particular distribution, users of other distributions lament, "what about [favorite distro here]?!?" At least with OSX, there is only one "distribution" to support and it, arguably (perhaps), has the largest commercial support.

Vendors then must make a choice: support only the few top commercially backed distros (and anger everyone else), "support" none but offer drivers et al and let users work their own support, or support LSB. IMO, the last option would be best, then it's left to the distribution vendors to make their systems compatible and not the other way around. Unfortunately, at this time very few distributions are certified LSB compliant, so the commercial vendors are left anyway with one of the other choices.

Anonymous's picture

"Many distros" argument not an issue for this

On October 9th, 2006 Anonymous (not verified) says:

Not actually true. We're talking about device drivers now, which is not dependent on the specific distribution. Remember, all distributions use the same kernel (Linux), and for printing, virtually all of them use Ghostscript. There might be a few niche ones out there that use something other than Ghostscript for printing, but in nearly ten years of using GNU/Linux, I haven't yet encountered one.

Craig Ringer's picture

Unrealistic

On October 18th, 2006 Craig Ringer (not verified) says:

That's not realistic. GhostScript versions differ greatly, and even within a given version the variations in applied patches, build-time options etc make manyt distro's gs installs incompatible with others'. CUPS suffers from the same sort of issues.

Vendors have enough trouble with Mac OS "An incompatible version every six months" X. Imagine trying to support, say, Fedora Core, or (gah) Gentoo.

It's not even a closed-source-driver vs open-source-driver issue. Unless drivers go into the mainline only (in which case there's a very significant lead time for deployment) there's still a need to provide add-in drivers for older distros. The same problems resurface. At the very least you'll be recompiling for a bunch of different distros; more realistically you'll be doing some porting work too.

In their position, I would be very reluctant about even bothering with Linux support for printing hardware under the current state of affairs, except for my higher end modules that supported printer languages such as PostScript that only faster printer hardware can really effectively handle.

That, of course, is the real solution. Come up with a standard protocol for communicating with and controlling these devices and STICK TO IT. Alas, it seems unlikely to happen in the current environment - even PostScript support is often an add-on for network printers (!) these days.

--
Craig Ringer

Anonymous's picture

If that's true--and I'm not

On October 18th, 2006 Anonymous (not verified) says:

If that's true--and I'm not saying that it is--then how is it that they can support the multiple Windows versions and multiple Mac OS X versions?

Oh, that's right--it is indeed a support nightmare. I remember having to wrestle with exactly that kind of problem when I was a Windows tech and later a Windows admin; the end-users were *totally* stymied. Makes me glad I don't have to do Windows anymore.

That is the problem with proprietary drivers and proprietary software in general, see. It can indeed become a support nightmare when you try to stay proprietary as these printer manufacturers are. If the source is, say, GPL'd, though, then the distro maintainers do all that work that you're describing. If you've got a way-old distribution (say, Red Hat 7.2 or Slackware 8.0), then, since the source is open,

./configure
make
make install

Not hard. Geez, even a GUI-clicking MCSE like I was can follow those directions. :-)

Anonymous's picture

Many distros are an issue...

On October 12th, 2006 Anonymous (not verified) says:

...on the tech support side of things anyway.
Yes, the drivers use the Kernal, but which version of the kernal? Distro A might still be using kernal 2.4.x while Distro B uses kernal 2.6.x and then there is the whole issue of Gnome, KDE and how to navigate both of those desktops - not to mention all the little differences that each distro adds to these (can we say Yast? Control Panel? or whatever method they force you to use to configure things on GUI side?).
I know there is the command line, but honestly, if you are trying to get Linux on the Desktop you better not ask people to go there to configure anything. I speak as one who does Tech support.
So what does one do? Pick a Distro? Sounds easy but once you do, then you face the wrath of the zealots from all the other Distro camps....
This is why Dell doesn't offer Linux and why no one else will offer linux.
Personally I think that all manufacturers should just support Red Hat and SuSE and leave the rest to fend for themselves since these are the two biggest and best supported distros.
I am aware of Debian, Slack, [your choice distro here]... but let's understand something, the cost of tech support is high, and until you can simplify things Linux will always remain a red-headed step-child.

Anonymous's picture

"I know there is the command

On October 18th, 2006 Anonymous (not verified) says:

"I know there is the command line, but honestly, if you are trying to get Linux on the Desktop you better not ask people to go there to configure anything. I speak as one who does Tech support."

Actually, as someone myself who still does tech support, even though that's not really my job anymore (my job title is network engineer these days), I can't agree with the notion of *never* showing users the command line for basic config operations.

For example, over the last eleven years or so that I've been doing tech support, I have repeatedly heard users call and say, "the network's down." Virtually all of them have used some form of Microsoft Windows. One of the first things I have a user do is open a "DOS box" and run the "ipconfig" utility. Sometimes, they don't get a DHCP address. First, I have them plug the "phone line" (read: network cable) that they unplugged back into the wall and the PC. :-) I then have them do the following:

ipconfig /release
ipconfig /renew

I then hear "oh, the network's back! Thank you, thank you!"

Well, running ipconfig /release and ipconfig /renew, and plugging the network cable back in, is no more difficult than issuing the following three commands to install a printer driver:

./configure
make
make install

And it is certainly no more difficult than issuing the following:

dhclient eth0

to renew your IP address. All you (the vendor) have got to do is include this sort of stuff in the directions when you sell your printer/computer/whatever, just like they do these days for Windows and Macintosh customers.

Anonymous's picture

None of those are issues for

On October 12th, 2006 Anonymous (not verified) says:

None of those are issues for printing, except maybe kernel differences (spell it right, please), and anyone running a Linux desktop on a 2.4 kernel is going to have an uphill battle running a modern system. CUPS is self-contained and provides its own Web-based administration interface, so you don't need to hassle with whatever desktop-specific tweaks are larding up your chosen environment.

Even so, the best solution (as always) is to open up the driver and management software code, and let the community and the distribution maintainers take care of the rest.

And don't forget all the different Windows versions: 95/98/98SE/ME/NT3.5/NT4/2000/XP Pro/XP Home/2003/Vista. Mass incompatibilities there.

And don't forget that it's a very short step from supporting Mac OSX to supporting Linux.

Bruce Byfield's picture

My apologies

On October 8th, 2006 Bruce Byfield says:

My apologies. I should have mentioned my experience with the hplip driver. I've added it now, but, basically I found it only technically usable, so I didn't originally mention it.

As for the differences in distros, that can be a problem in some cases, but I don't know that it's so much a case when you get down to the level of hardware drivers.

Even if there is, then LSB compliance might help, as you say. There's been some interesting moves in that direction recently that I hope to be reporting on soon.

-
Bruce Byfield (nanday)

__________________________

--
Bruce Byfield (nanday)

Nicholas Petreley's picture

Wait for GPLv3

On October 7th, 2006 Nicholas Petreley says:

I think GPLv3 solves this. There's a new provision that says if anyone in your company is using GNU software in binary or source form, the entire company is required to provide open source free software drivers for all of its products.

Sorry, I just couldn't resist.

Andrew's picture

I vote for new editor of LJ.

On October 10th, 2006 Andrew (not verified) says:

I vote for new editor of LJ. Mr. Petreley, your smart-aleckiness and general "yes-but" attitudes towards FOSS make me wonder how you got the job in the first place. It certainly isn't your journalistic skills or professionalism. I hate to see LJ turning into Jerry Springer.

lost's picture

hate to see LJ turning into

On October 18th, 2006 lost (not verified) says:

hate to see LJ turning into Jerry Springer.
Then you and all like you that have tunnel vision should go away

Anonymous's picture

Scanning

On October 7th, 2006 Anonymous (not verified) says:

I suggest you have a look at VueScan to get the scanner part of your hardware working. It also does OCR.

Bruce Byfield's picture

Scanning

On October 7th, 2006 Bruce Byfield says:

Yes, according to VueScan's site, I could get the scanning capacity working. But I was talking about out of the box support, or, at the very least, cooperation with free software to provide support -- and not, in the end, about just one piece of hardware.

Besides, I'm not going to pay $50 to get a $100 piece of hardware working, especially when I have a much better scanner than already works.

__________________________

--
Bruce Byfield (nanday)

Anonymous's picture

VueScan is a one man

On October 9th, 2006 Anonymous (not verified) says:

VueScan is a one man operation. If he can manage to get all those scanners working on his Jack Todd why can't the dozens of people working on SANE and XScanImage, Kooka etc?

Anonymous's picture

Easy, Simple ... that's why.

On October 10th, 2006 Anonymous (not verified) says:

The answer is as simple as obvious.

ONE-man. No coordination (except logically being slightly self-organized). No featuritis or feeping creaturism.

The SW is in _one_ repository. Etc.

Not wanting to put down the guys doing XSane, etc.

But it's a general flaw in OSS, that work-force and energy actually _can_ dissipate instead of becoming more concentrated.

German knows a famous saying: "Zuviele Köche verderben den Brei." meaning something like: "Too many cooks stirring the stew."

I'm an OSS evangelist since the 1980ies, and that's the whole issue ever since.

JoeZ's picture

Linux and Hardware

On December 6th, 2006 JoeZ (not verified) says:

After recently recommending a friend purchase a notebook running Linux instead of Windows, I have encountered the difficulties that appear to stop more from moving to Linux. Hardware is difficult if not impossible to get to work, and even when possible often performs poorly in comparison to how it performs on a Windows OS.

I'm wondering why hardware manufacturers do not provide information on their products that would enable those who are not running windows the possibility of creating their own drivers. As I understand they are selling a hardware product, and would benefit from allowing their product to be installed on other than systems running an MS OS. As I see it they are selling only a piece of hardware, and I have not had to purchase updates to drivers so it would appear to me that they are not making additional income from their software drivers.

Am I to believe this is to protect them from users downloading their drivers at no cost and then construct the hardware themselves? Or is there a possibilty that MS is providing some type of financial aid in order to eliminate or reduce the usability of many hardware products in conjunction with non MS operating systems?

Many years ago when we purchased hardware we received a booklet containing enough information to allow us to write our own drivers.

As for the Tech support problems of supporting multiple OS's, I would be pleased if the information was made available to allow one to write their own drivers with the knowledge that no tech support would be given in such a case.

So bottom line, what are hardware manufacturers actually selling? Hardware or Microsoft Hardware?

Post new comment

Please note that comments may not appear immediately, so there is no need to repost your comment.
The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <pre> <ul> <ol> <li> <dl> <dt> <dd> <i> <b>
  • Lines and paragraphs break automatically.

More information about formatting options

Newsletter

Each week Linux Journal editors will tell you what's hot in the world of Linux. You will receive late breaking news, technical tips and tricks, and links to in-depth stories featured on www.linuxjournal.com.
Sign up for our Email Newsletter

Tech Tip Videos

From the Magazine

July 2009, #183

News Flash: Linux Kernel 3.0 to include an on-the-go Expresso machine interface! Ok, maybe not, but Linux is definitely going mobile, from phones to e-readers. Find out more inside about Android, the Kindle 2, the Western Digital MyBook II, The Bug, and Indamixx (a portable recording studio). And if you've gone mobile and you been wanting more Emacs in your life then check out Conkeror.


To compliment the mobile we've got the stationary: parsing command line options with getopt, checking your Ruby code with metric_fu, and building a secure Squid proxy. How is this stationary you ask? What can we say? It's not. We just wanted to see if anybody actually read this part of the page :) .


All this and more, and all you have to do is get your hot sweaty hands on the latest copy of Linux Journal.





Read this issue