PhotoSmart C8180 hangs when printing duplex

Bug #406074 reported by Till Kamppeter
28
This bug affects 1 person
Affects Status Importance Assigned to Milestone
HPLIP
Fix Released
Undecided
Unassigned

Bug Description

I have HPLIP 3.9.8 (RC) and I have set up the HP PhotoSmart C8180 with the hpcups driver. I select Duplex (long edge) and the A4 Duplex paper size. Then I print the test page from system-config-printer. The test page (it is an original CUPS test page and not a Ubuntu test page as the selected paper size is not simply named "A4") gets printed and in the end it gets pulled in to turn it over and then it sits there inside the duplex unit for several minutes, the job is still marked as "processing" in the job viewer. The printer says "Printing" on its display. After some minutes the sheet gets ejected, the printer still says "Printing" and the job is still in the queue "Processing". The driver seems to have fallen into an infinite loop. After some minutes I cancel the job in the job viewer. The job disappears and the printer says "Printing canceled" but does not return to its main menu screen. I have top turn off the printer and turn it on again. Symptoms are the same as in bug #184409.

visibility: public → private
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

One strange thing is also that with this 1-page job it says "processing page 3" in the Properties dialog of system-config-printer, after the printer has pulled back the paper.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

One small correction: When the printer ejects the paper its display switches to "Print canceled" already. The job still stays in "Processing" state.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

Here is the error_log. hpcups closes without errors. What hangs is the "hp" CUPS backend.

till@till-laptop:~/printing/cpd/common-printing-dialog/gtk-dialog$ ps auxwww | grep hp
[...]
lp 3869 0.9 0.0 42752 1952 ? Sl 01:34 0:02 hp:/usb/Photosmart_C8100_series?serial=MY7B5F70P704YH 1962 till Test Page 1 job-uuid=urn:uuid:4ce68171-3a17-3117-47b1-350f5d900cf4
[...]

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

When the printer ejects the page after some minutes (around 5 minutes) the ḧp"backend keeps running (infinite loop?). error_log of this point attached.

Revision history for this message
David Suffield (david-suffield) wrote :

In the PPD file cupsEvenDuplex is set True. This means CUPS rasterizer is should send a even number of pages when duplex is set. This means 1-page print job should send a extra blank page. This feature worked on my Fedora 9 box using hplip 3.9.6b.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

The additional blank page is correctly created, by the pdftopdf filter.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

I have done

cupsfilter -m application/vnd.cups-pdf -p /etc/cups/ppd/Photosmart-C8100-series.ppd -o PageSize=A4Duplex -o Duplex=DuplexNoTumble /usr/share/system-config-printer/testpage-a4.ps > out.pdf

to see whether the extra blank page is created. It really gets created.

Then I have run

cupsfilter -m application/vnd.cups-raster -p /etc/cups/ppd/Photosmart-C8100-series.ppd -o PageSize=A4Duplex -o Duplex=DuplexNoTumble /usr/share/system-config-printer/testpage-a4.ps > out.raster

to see whether the CUPS Raster which is fed into hpcups is OK. I checked it with rasterview (http://www.easysw.com/~mike/rasterview/index.html) and it is perfect.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

I have captured the driver output via a queue clone printing into a file:

cupsctl FileDevice=yes
lpadmin -p test -E -v file:/tmp/printout -P /etc/cups/ppd/Photosmart-C8100-series.ppd
lpr -P test -o PageSize=A4Duplex -o Duplex=DuplexNoTumble /usr/share/system-config-printer/testpage-a4.ps

The resulting file looks like that it is complete, but I could not see whether hpcups perhaps skipped the second page because it is blank. It should not skip it. This would be a bug.

Then I have sent the result to the printer not using HPLIP:

nc -w1 192.168.2.101 9100 < /tmp/printout

Same behavior as when printing through the regular queue, only difference that "nc" exits after the data transfer. It waits only 1 second for answers from the printer and the printer did not answer in this time frame. the "hp" CUPS backend perhaps waits without timeout.

The printer hangs with message "Now printing..." on its screen. After some minutes the page is ejected and the display shows "Print canceled...". Now the printer needs to be power-cycled.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

Note that my original queue with which I discovered the bug is USB-based:

till@till-laptop:~/printing/cpd/common-printing-dialog/gtk-dialog$ lpstat -v Photosmart-C8100-series
device for Photosmart-C8100-series: hp:/usb/Photosmart_C8100_series?serial=MY7B5F70P704YH
till@till-laptop:~/printing/cpd/common-printing-dialog/gtk-dialog$

The connection type does not seem to matter as sending the job with the "nc" command shows the same problem.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

Another remark: Documents with an even number of pages print perfectly.

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

If found out something more:

It seems that hpcups (or the code which hpcups and hpijs have in common) also adds a blank page to the end of the job. Icame to this conclusion because:

1. When I print a test page (1-page job) with system-config-printer the "Properties" dialog shows the printer state during the job execution and it says "Printing page 3" in the end. It should print only two pages, the test page itself znd 1 extra blank page.

2. When I edit the PPD file to have "*cupsEvenDuplex: False" and restart CUPS everything works fine.

Possibilities to fix this bug:

1. Let the driver not add a blank page as "*cupsEvenDuplex: True" adds a page already. Be careful that after fixing this both hpcups and hpijs work correctly.

2. Set "*cupsEvenDuplex: False" in the PPD as the driver already adds the needed blank page. This method cannot break hpijs. But you should still also test hpijs to have also the correct choice for "*cupsEvenDuplex:" in the hpijs PPDs.

Shoul be easy to fix in 3.9.8.

Revision history for this message
David Suffield (david-suffield) wrote :

The PS C8100 series has a firmware issue with blank pages. The printer will hang. This was fixed in the 3.9.8 public release by removeing cupsEvenDuplex.

visibility: private → public
Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

OK, works for me now with the released 3.9.8. Thank you.

Changed in hplip:
status: New → Fix Released
Revision history for this message
Seb James (sebjames) wrote :

I've been testing with HPLIP 3.9.12 and have found it necessary to modify cupsEvenDuplex to False in order to correctly print single page documents to duplex-enabled printers including an HP P3005x and an HP CM1312NFI. I've done this by modifying the hpcups.drv file as it seems to be common to printers which use the hpcups ljcolor or ljmono driver.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.