Officejet_Pro_8000_A809.ppd error on Fedora 10: -dDuplex=falseFromPrintoutMode,PS:MediaPosition=7

Asked by Scott McMahan

I bought an Officejet Pro 8000 A809 this weekend at Office Depot. I connected it to my Linux box (Linux therru 2.6.27.21-170.2.56.fc10.i686 #1 SMP Mon Mar 23 23:37:54 EDT 2009 i686 i686 i386 GNU/Linux) as a network printer. I downloaded and installed the latest hplip drivers (HP Linux Imaging and Printing System (ver. 3.9.4b)).

The printer goes through its self-test and will print test pages. I can even print from a Windows 2000 client machine. But I can't print from applications that use ghostscript and cups.

After many hours of digging (I know nothing about cups, foomatic, or gs) I found that the options passed to gs from the PPD file Officejet_Pro_8000_A809.ppd.

The gs command that's being generated has:

'-dDuplex=falseFromPrintoutMode,PS:MediaPosition=7'

and gs chokes saying "-dvar=name requires name=null, true, or false" - it does not like the bytes on the end of the parm string.

I did a lot of searching with google and can find absolutely nothing about what to do. I guess there is some sort of error in the PPD file?

Apparently it should look something like this:

'-dDuplex=false' '-r300'
  '-sIjsParams=Quality:Quality=0,Quality:ColorMode=2,
  Quality:MediaType=0,Quality:PenSet=2,PS:MediaPosition=7'

Somehow, the bytes between -dDuplex and the -sIjsParams are being deleted somehow. I don't know how to debug this further.

What do I do next to debug this? Is there a more recent PPD file for this printer available?

Question information

Language:
English Edit question
Status:
Solved
For:
HPLIP Edit question
Assignee:
No assignee Edit question
Solved by:
Scott McMahan
Solved:
Last query:
Last reply:
Revision history for this message
Aaron Albright (albrigha-deactivatedaccount) said :
#1

Please run hp-check -t and post the output.

Thanks.

Aaron

Revision history for this message
Scott McMahan (scott-skwc) said :
#2

[Note the HP970C that appears is my old printer.]

hp-check[5408]: info: :
Initializing. Please wait...
Fedora

10

scheduler is running

1.3.10

Linux therru 2.6.27.21-170.2.56.fc10.i686 #1 SMP Mon Mar 23 23:37:54 EDT 2009 i686 i686 i386 GNU/Linux

hp-check[5408]: info: :
hp-check[5408]: info: :---------------
hp-check[5408]: info: :| SYSTEM INFO |
hp-check[5408]: info: :---------------
hp-check[5408]: info: :
hp-check[5408]: info: :Basic system information:
hp-check[5408]: info: :Linux therru 2.6.27.21-170.2.56.fc10.i686 #1 SMP Mon Mar 23 23:37:54 EDT 2009 i686 i686 i386 GNU/Linux

hp-check[5408]: info: :
hp-check[5408]: info: :Distribution:
hp-check[5408]: info: :fedora 10
hp-check[5408]: info: :
HPOJ running?
hp-check[5408]: info: :No, HPOJ is not running (OK).
hp-check[5408]: info: :
hp-check[5408]: info: :Checking Python version...
hp-check[5408]: info: :OK, version 2.5.2 installed
hp-check[5408]: info: :
hp-check[5408]: info: :Checking PyQt 4.x version...
hp-check[5408]: info: :OK, version 4.4.4 installed.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for CUPS...
hp-check[5408]: info: :Status: scheduler is running
hp-check[5408]: info: :Version: 1.3.10
hp-check[5408]: info: :error_log is set to level: debug
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dbus/python-dbus...
hp-check[5408]: info: :dbus daemon is running.
hp-check[5408]: info: :python-dbus version: 0.83.0
hp-check[5408]: info: :
hp-check[5408]: info: :
hp-check[5408]: info: :------------------------------------
hp-check[5408]: info: :| COMPILE AND RUNTIME DEPENDENCIES |
hp-check[5408]: info: :------------------------------------
hp-check[5408]: info: :
note: To check for compile-time only dependencies, re-run hp-check with the -c parameter (ie, hp-check -c).
note: To check for run-time only dependencies, re-run hp-check with the -r parameter (ie, hp-check -r).
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: CUPS - Common Unix Printing System...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: CUPS DDK - CUPS driver development kit...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: CUPS devel- Common Unix Printing System development files...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: CUPS image - CUPS image development files...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: DBus - Message bus system...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: gcc - GNU Project C and C++ Compiler...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: GhostScript - PostScript and PDF language interpreter and previewer...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: libcrypto - OpenSSL cryptographic library...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: libjpeg - JPEG library...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: libnetsnmp-devel - SNMP networking library development files...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: libpthread - POSIX threads library...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: libtool - Library building support services...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: libusb - USB library...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: make - GNU make utility to maintain groups of programs...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: PIL - Python Imaging Library (required for commandline scanning with hp-scan)...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: PolicyKit - Administrative policy framework...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: ppdev - Parallel port support kernel module....
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: PyQt 4 DBus - DBus Support for PyQt4...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: Python ctypes - A foreign function library for Python...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: Python DBus - Python bindings for DBus...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: Python devel - Python development files...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: Python XML libraries...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: Python 2.3 or greater - Required for fax functionality...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: Python 2.2 or greater - Python programming language...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: Reportlab - PDF library for Python...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: SANE - Scanning library...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: SANE - Scanning library development files...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: scanimage - Shell scanning program...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :Checking for dependency: xsane - Graphical scanner frontend for SANE...
hp-check[5408]: info: :OK, found.
hp-check[5408]: info: :
hp-check[5408]: info: :
hp-check[5408]: info: :----------------------
hp-check[5408]: info: :| HPLIP INSTALLATION |
hp-check[5408]: info: :----------------------
hp-check[5408]: info: :
hp-check[5408]: info: :
hp-check[5408]: info: :Currently installed HPLIP version...
hp-check[5408]: info: :HPLIP 3.9.4b currently installed in '/usr/share/hplip'.
hp-check[5408]: info: :
hp-check[5408]: info: :Current contents of '/etc/hp/hplip.conf' file:
hp-check[5408]: info: :# hplip.conf. Generated from hplip.conf.in by configure.

[hplip]
version=3.9.4b

[dirs]
home=/usr/share/hplip
run=/var/run
ppd=/usr/share/cups/model/HP
ppdbase=/usr/share/cups/model
doc=/usr/share/doc/hplip-3.9.4b
icon=/usr/share/applications
cupsbackend=/usr/lib/cups/backend
cupsfilter=/usr/lib/cups/filter
drv=/usr/share/cups/drv/hp/

# Following values are determined at configure time and cannot be changed.
[configure]
network-build=yes
pp-build=no
gui-build=yes
scanner-build=yes
fax-build=yes
dbus-build=yes
cups11-build=no
doc-build=yes
shadow-build=no
foomatic-drv-install=yes
foomatic-ppd-install=no
foomatic-rip-hplip-install=no
cups-ppd-install=no
cups-drv-install=no
internal-tag=3.9.4b.10
restricted-build=no
ui-toolkit=qt4
qt3=no
qt4=yes
policy-kit=yes

hp-check[5408]: info: :
hp-check[5408]: info: :Current contents of '/var/lib/hp/hplip.state' file:
hp-check[5408]: info: :# hplip.state - HPLIP runtime persistent variables.

[plugin]
installed=0
eula=0

hp-check[5408]: info: :
hp-check[5408]: info: :Current contents of '~/.hplip/hplip.conf' file:
error: Could not access file: No such file or directory
hp-check[5408]: info: :
hp-check[5408]: info: :--------------------------
hp-check[5408]: info: :| DISCOVERED USB DEVICES |
hp-check[5408]: info: :--------------------------
hp-check[5408]: info: :
hp-check[5408]: info: : Device URI Model
hp-check[5408]: info: : -----------------

  Device URI Model
  ----------------------------------------------- --------------------------
  hp:/usb/Officejet_Pro_8000_A809?serial=MY8CA140 HP Officejet Pro 8000 A809
  PY

---------------------------------
| INSTALLED CUPS PRINTER QUEUES |
---------------------------------

HP970c
------
Type: Printer
Device URI: hp:/par/DESKJET_970C?device=/dev/parport0
PPD: /etc/cups/ppd/HP970c.ppd
PPD Description: HP DeskJet 970C Foomatic/hpijs (recommended)
Printer status: printer HP970c is idle. enabled since Sun 10 May 2009 01:45:30 PM EDT
Segmentation fault

Revision history for this message
Aaron Albright (albrigha-deactivatedaccount) said :
#3

Make sure that SELinux is in permissive mode.

Then to configure the printer run:

su -c "hp-setup"

Hope this helps.

Aaron

Revision history for this message
Aaron Albright (albrigha-deactivatedaccount) said :
#4

Also please run:

hp-check -g

and post the last 30 or so lines of output.

Thanks!

Aaron

Revision history for this message
Scott McMahan (scott-skwc) said :
#5

To answer both questions at once...

SELinux is disabled:

  # /usr/sbin/setenforce 0
  /usr/sbin/setenforce: SELinux is disabled

hp-check -g output (note "windows" is a class I created to allow a Win2K client to print to the server's shared printer)

  Current contents of '~/.hplip/hplip.conf' file:
  error: Could not access file: No such file or directory

  --------------------------
  | DISCOVERED USB DEVICES |
  --------------------------

  hp-check[6275]: debug: Probing bus: usb
  hp-check[6275]: debug: hp:/usb/Officejet_Pro_8000_A809?serial=MY8CA140PY
  hp-check[6275]: debug: Cache miss: officejet_pro_8000_a809
  hp-check[6275]: debug: Reading file: /usr/share/hplip/data/models/models.dat
  hp-check[6275]: debug: Searching for section [officejet_pro_8000_a809] in file /usr/share/hplip/data/models/models.dat
  hp-check[6275]: debug: Found section [officejet_pro_8000_a809] in file /usr/share/hplip/data/models/models.dat
    Device URI Model
    ----------------------------------------------- --------------------------
    hp:/usb/Officejet_Pro_8000_A809?serial=MY8CA140 HP Officejet Pro 8000 A809
    PY

  ---------------------------------
  | INSTALLED CUPS PRINTER QUEUES |
  ---------------------------------

  hp-check[6275]: debug: device for HP970c: hp:/par/DESKJET_970C?device=/dev/parport0
  device for Officejet_Pro_8000_A809: hp:/usb/Officejet_Pro_8000_A809?serial=MY8CA140PY
  device for windows: ///dev/null

  hp-check[6275]: debug: [('HP970c', 'hp:/par/DESKJET_970C?device=/dev/parport0'), ('Officejet_Pro_8000_A809', 'hp:/usb/Officejet_Pro_8000_A809?serial=MY8CA140PY'), ('windows', '///dev/null')]
  HP970c
  ------
  Type: Printer
  Device URI: hp:/par/DESKJET_970C?device=/dev/parport0
  PPD: /etc/cups/ppd/HP970c.ppd
  PPD Description: HP DeskJet 970C Foomatic/hpijs (recommended)
  hp-check[6275]: debug: printer HP970c is idle. enabled since Sun 10 May 2009 01:45:30 PM EDT

  Printer status: printer HP970c is idle. enabled since Sun 10 May 2009 01:45:30 PM EDT
  hp-check[6275]: debug: Device URI: hp:/par/DESKJET_970C?device=/dev/parport0
  hp-check[6275]: debug: Printer: None
  hp-check[6275]: debug: Not starting dbus: running as root.
  hp-check[6275]: debug: URI: backend=hp, is_hp=True, bus=par, model=DESKJET_970C, serial=, dev=/dev/parport0, host=, port=1
  hp-check[6275]: debug: Model/UI model: DESKJET_970C/HP Deskjet 970c
  hp-check[6275]: debug: Cache miss: deskjet_970c
  hp-check[6275]: debug: Reading file: /usr/share/hplip/data/models/models.dat
  hp-check[6275]: debug: Searching for section [deskjet_970c] in file /usr/share/hplip/data/models/models.dat
  hp-check[6275]: debug: Found section [deskjet_970c] in file /usr/share/hplip/data/models/models.dat
  hp-check[6275]: debug: Opening device: hp:/par/DESKJET_970C?device=/dev/parport0 (not for printing)
  hp-check[6275]: debug: I/O mode=6
  Segmentation fault

  (I don't know why it segfaults - there is no message or core dump)

Revision history for this message
Aaron Albright (albrigha-deactivatedaccount) said :
#6

Are you running hp-check as root or user? Only run hp-check as user.

I don't see a printer queue for your A809--did you run hp-setup to configure the printer?

Aaron

Revision history for this message
Scott McMahan (scott-skwc) said :
#7

I ran hp-check either way - regular user or root - still segfaults. The output up to that point is the same.

There is a queue:

lpstat -a
HP970c accepting requests since Sun 10 May 2009 01:45:30 PM EDT
Officejet_Pro_8000_A809 accepting requests since Tue 12 May 2009 08:46:32 AM EDT
windows accepting requests since Sat 09 May 2009 03:39:24 PM EDT

I'm not sure how to explain this.

The A809 is defined and works fine if I am not using the PostScript printing system. Evince, for example, apparently doesn't because I can print PDFs to it.

When I print from GIMP, InkScape, or any other program that uses the PostScript system (CUPS + foomatic + gs), the print job runs but nothing prints.

That's when I started digging. I already had CUPS in debug mode from trying to connect a Mac to print to this server, so I looked at /var/log/cups/error_log to see what was going on. That's when I saw the "-dvar=name requires name=null, true, or false" and saw the option "-dDuplex=falseFromPrintoutMode,PS:MediaPosition=7" listed in the gs command line.

Here is the complete log of a print job that did not work. The problem is the foomatic-gswrapper command, which is created with -dDuplex=falseFromPrintoutMode,PS:MediaPosition=7.

foomatic-rip version $Revision=3.0.2.138$ running...
Parsing PPD file ...
Added option ColorSpace
Added option Resolution
Added option PageSize
Added option Model
Added option PrintoutMode
Added option InputSlot
Added option Duplex
Added option Quality
*cupsFilter: "application/vnd.cups-postscript 100 foomatic-rip"
*cupsFilter: "application/vnd.cups-pdf 0 foomatic-rip"
Added option PageRegion
Added option ImageableArea
Added option PaperDimension
Added option Font

Parameter Summary
-----------------

Spooler: cups
Printer: Officejet_Pro_8000_A809
Shell: /bin/sh
PPD file: /etc/cups/ppd/Officejet_Pro_8000_A809.ppd
ATTR file:
Printer model: HP Officejet Pro 8000 a809 hpijs, 3.9.4b
Job title: 00001.jpg
File(s) to be printed:
<STDIN>

GhostScript extra search path ('GS_LIB'): /usr/share/cups/fonts
Pondering option 'PrintoutMode=PhotoBest'
Pondering option 'PageSize=Letter'
Pondering option 'Quality=FromPrintoutMode'
Pondering option 'Duplex=None'
Pondering option 'InputSlot=Default'
Pondering option 'number-up=1'
Unknown option number-up=1.
Pondering option 'job-uuid=urn:uuid:26276d71-5f1d-3e2f-4557-c031d5be6063'
Unknown option job-uuid=urn:uuid:26276d71-5f1d-3e2f-4557-c031d5be6063.
Pondering option 'scaling=100'
Unknown option scaling=100.
Pondering option 'orientation-requested=3'
Unknown option orientation-requested=3.

================================================

File: <STDIN>

================================================

Reading PostScript input ...
--> This document is DSC-conforming!
Found: %RBINumCopies: 1

-----------
Found: %%BeginProlog
Found: %%EndProlog

-----------
Found: %%BeginSetup
Found: %%BeginFeature: *PageRegion Letter
Option: PageRegion=Letter --> Option will be set by PostScript interpreter
Found: %% FoomaticRIPOptionSetting: PageSize=Letter
Option: PageSize=Letter --> Setting option
Found: %%BeginFeature: *PrintoutMode PhotoBest
Option: PrintoutMode=PhotoBest --> Setting option
Found: %% FoomaticRIPOptionSetting: PrintoutMode=PhotoBest
Option: PrintoutMode=PhotoBest --> Setting option
Found: %%BeginFeature: *InputSlot Default
Option: InputSlot=Default --> Setting option
Found: %% FoomaticRIPOptionSetting: InputSlot=Default
Option: InputSlot=Default --> Setting option
Found: %%BeginFeature: *Quality FromPrintoutMode
Option: Quality=FromPrintoutMode --> Setting option
Found: %% FoomaticRIPOptionSetting: Quality=@PrintoutMode
Option: Quality=FromPrintoutMode --> Setting option
Found: %%BeginFeature: *Duplex None
Option: Duplex=None --> Setting option
Found: %% FoomaticRIPOptionSetting: Duplex=None
Option: Duplex=None --> Setting option
Found: %%EndSetup
Inserting PostScript code for CUPS' page accounting

-----------
New page: 1 1

Found: %%BeginPageSetup
Inserting option code into "PageSetup" section.
Found: %%EndPageSetup
End of page header
Stopping search for page header options
Found: +bAhjJ`n,*+<5sR&:rITJLDUl+".1N]`L_AJljB$Qm`#T)M4V1!LPDKGV$Tlo`<u%JqtEK^
--> Output goes directly to the renderer now.

Starting renderer
JCL: <job data>

renderer PID kid4=31441
renderer command: gs -q -dBATCH -dPARANOIDSAFER -dQUIET -dNOPAUSE -sDEVICE=ijs -sIjsServer=hpijs -dDEVICEWIDTHPOINTS=612 -dDEVICEHEIGHTPOINTS=792 -sDeviceManufacturer="HEWLETT-PACKARD" -sDeviceModel="Officejet Pro K5400" -dDuplex=falseFromPrintoutMode,PS:MediaPosition=7 -dIjsUseOutputFD -sOutputFile=- -
Starting process 31442: "foomatic-gswrapper -q -dBATCH -dPARANOIDSAFER -dQUIET -dNOPAUSE -sDEVICE=ijs -sIjsServer=hpijs -dDEV..."
foomatic-gswrapper: gs '-sstdout=%stderr' '-dBATCH' '-dPARANOIDSAFER' '-dQUIET' '-dNOPAUSE' '-sDEVICE=ijs' '-sIjsServer=hpijs' '-dDEVICEWIDTHPOINTS=612' '-dDEVICEHEIGHTPOINTS=792' '-sDeviceManufacturer=HEWLETT-PACKARD' '-sDeviceModel=Officejet Pro K5400' '-dDuplex=falseFromPrintoutMode,PS:MediaPosition=7' '-dIjsUseOutputFD' '-sOutputFile=%stdout' '-_'
-dvar=name requires name=null, true, or false
Process 31442 ending: "foomatic-gswrapper -q -dBATCH -dPARANOIDSAFER -dQUIET -dNOPAUSE -sDEVICE=ijs -sIjsServer=hpijs -dDEV..."
renderer return value: 1
renderer received signal: 1
tail process done writing data to STDOUT
KID4 finished
Process dying with "Caught termination signal: Job canceled", exit stat: 0
error: Broken pipe (32)
Cleaning up ...
Killing process 31440 (KID3) with signal 15
Process dying with "Caught termination signal: Job canceled", exit stat: 0
error: Illegal seek (29)
Cleaning up ...
Killing process 31441 (KID4) with signal 15
Process dying with "Caught termination signal: Job canceled", exit stat: 0
error: Illegal seek (29)
Cleaning up ...
Closing foomatic-rip.
Killing process 31441 (KID4) with signal 9
Closing foomatic-rip.
Killing process 31440 (KID3) with signal 9
Caught termination signal: Job canceled
Closing foomatic-rip.
Saving subscriptions.conf...
Discarding unused job-progress event...
PID 31436 (/usr/lib/cups/backend/hp) exited with no errors.
PID 31435 (/usr/lib/cups/filter/foomatic-rip) exited with no errors.

The options passed to gs are being "eaten" somehow, with options missing between the -dDuplex=false and the middle of the -sIjsParams string.

How do I debug what is going on to build this command line that's passed to gs?

Revision history for this message
Scott McMahan (scott-skwc) said :
#8

I did some testing this morning with various programs, to see what
kind of log output would appear in /var/log/cups/error_log. Evince
worked. OpenOffice worked. So I went back to The GIMP, and it
worked. All the programs can now print. And I did not change
anything. Yesterday, they didn't print, and today they do. I'm glad I
already posted the debug log output with the error into this report,
because otherwise this would seem crazy. I have not done a yum update
to pull any new updates since I bought the printer on Sat. I have not
upgraded or changed software, or deleted and reinstalled the
printer. It just started working. I can't explain this at all. The
foomatic wrapper command is correct with the correct -d options. I
will close this problem report, since the problem has mysteriously
gone away, but I sure don't understand what happened.

Actually I think I'm losing my mind! :)