Brother MFC9840CDW pxlcolor driver fails to intialize for bitmap printing

Bug #1377177 reported by estellnb
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
foomatic-db (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

printer driver: Brother MFC9840CDW Foomatic/pxlcolor (color, 2-sided printing)
Result when trying to print sth. with it:
" PCL XL error
  Subsystem: TEXT
  Error: IllegalBitmapResolutionSegment
  Position: 9 "
reproducible: always

ProblemType: Bug
DistroRelease: Ubuntu 14.04
Package: cups 1.7.2-0ubuntu1.2
ProcVersionSignature: Ubuntu 3.13.0-36.63-generic 3.13.11.6
Uname: Linux 3.13.0-36-generic x86_64
ApportVersion: 2.14.1-0ubuntu3.4
Architecture: amd64
CurrentDesktop: KDE
Date: Fri Oct 3 16:08:17 2014
Lpstat:
 device for MFC9840CDW: socket://10.0.0.20:9100
 device for MFC9840CDW_pxlcolor: socket://10.0.0.20:9100
MachineType: Packard Bell DOTS E2
Papersize: a4
PpdFiles:
 MFC9840CDW: Brother MFC9840CDW Foomatic/Postscript
 MFC9840CDW_pxlcolor: Brother MFC9840CDW Foomatic/pxlcolor
ProcKernelCmdLine: BOOT_IMAGE=/@/boot/vmlinuz-3.13.0-36-generic root=UUID=16250f8e-725d-430c-8ccc-95387d8f9ba7 ro rootflags=subvol=@ quiet splash vt.handoff=7
SourcePackage: cups
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 04/22/2011
dmi.bios.vendor: Packard Bell
dmi.bios.version: V3.16(DDR3)
dmi.board.asset.tag: Base Board Asset Tag
dmi.board.name: SJE02_PT_E
dmi.board.vendor: Packard Bell
dmi.board.version: V3.16(DDR3)
dmi.chassis.type: 10
dmi.chassis.vendor: Packard Bell
dmi.chassis.version: V3.16(DDR3)
dmi.modalias: dmi:bvnPackardBell:bvrV3.16(DDR3):bd04/22/2011:svnPackardBell:pnDOTSE2:pvrV3.16(DDR3):rvnPackardBell:rnSJE02_PT_E:rvrV3.16(DDR3):cvnPackardBell:ct10:cvrV3.16(DDR3):
dmi.product.name: DOTS E2
dmi.product.version: V3.16(DDR3)
dmi.sys.vendor: Packard Bell

Revision history for this message
estellnb (estellnb) wrote :
Revision history for this message
estellnb (estellnb) wrote :

oops; forgot about the third line:

PCL XL error
Subsystem: TEXT
Error: IllegalBitmapResolutionSegment
Operator: ReadFontHeader
Position: 9

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

Your printer probably does not support 1200x1200dpi resolution listed in the pxlcolor driver.
According to the MFC9840CDW specifications the max resolution is 2400x600dpi. I have modified the ppd to list that and default to 600dpi, can you try whether that works for all Print Quality/Resolution settings?

Changed in cups (Ubuntu):
status: New → Incomplete
affects: cups (Ubuntu) → foomatic-db (Ubuntu)
Revision history for this message
estellnb (estellnb) wrote :

By making direct use of the given ppd (new printer created) it displays the printer driver as 'Brother MFC9840CDW Foomatic/pxlcolor (color, 2-sided printing)'.
By testing all three offered resolutions I get the following results:
* Draft: prints the test page well
* Normal: prints the test page well
* High Quality: same error as before; however at Position 29.

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

Can you test whether is works with 1200x600dpi High Quality Resolution with PPD in attachment then, otherwise the High Quality setting makes no sense.

Thanks in advance,
Pascal

Revision history for this message
estellnb (estellnb) wrote :

Now using that %-1200.ppd the position index of the error has just increased:

PCL XL error
 Subsystem: TEXT
 Error: IllegalBitmapResolutionSegment
 Operator: ReadFontHeader
 Position: 26

Pl. excuse my late reply; I must have overlooked your last message in my inbox.

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

The High Quality setting makes no sense and should be removed.

Changed in foomatic-db (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
estellnb (estellnb) wrote :

I don`t see why the setting should not make sense. I believe you just did not get it right yet. Is there any reason why it works with the BR-Script3 but not with the pxlcolor driver?

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

First of all I'm just a longtime Ubuntu user trying to contribute a bit to Ubuntu...
The pxlcolor driver is an free generic PCL6 driver provided by ghostscript.
Your printer supports hardware resolution of 600x600 dpi (according to its specifications), the higher resolution 2400x600 dpi support uses Brother Color Advanced Photoscale Technology (CAPT) especially for images, this probably requires some extra PJL initialization specific for this printer (probably something like @PJL SET APT = ON but the exact command is only known by Brother). For this one would have to look at the output sent to the printer by the Windows PCL driver (reserve engineering), since I don't have this printer that will be difficult to test. Limiting the pxlcolor driver for your printer to 600x600 dpi is the easiest and is sufficient for text printing. And if you want the higher resolution you can use the free Brother BR3 Script driver.

Revision history for this message
estellnb (estellnb) wrote :

Is there really no easy way to grab the output of the BR3 Script driver? via CUPS, USB or LAN? LAN would be the last way to go but I could capture the traffic with wireshark, tcpdump or so. Would you be up to have a look at it? Anway, thanks for your commitment, Pascal.

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

I did some reverse engineering with Windows driver (the PJL command seems to be @PJL SET APTMODE=ON4), can you test whether the PPD in attachment does High Quality / 2400x600dpi printing. Do you get crisper and slower output with this setting compared to Normal Quality / 600x600dpi ? I also changed Draft Quality to 300x300dpi, does it gives lower output than Normal / 600x600dpi setting?

Revision history for this message
estellnb (estellnb) wrote :

oopsla:

PCL XL error
  Subsystem: TEXT
  Error: IllegalBitmapResolutionSegment
  Operator: ReadFontHeader
  Position: 29

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

Not sure if PCL XL can handle a different x and y resolution. Final attempt with PPD in attachment (since it's difficult to test without the actual printer as it remains reverse engineering), can you try High Quality / 2400x2400dpi and 1200x1200dpi setting. Do you get any output with these settings and which setting gives the crispiest and slowest output? I also changed Draft Quality to 300x300dpi, does it gives lower output than Normal / 600x600dpi setting?

Revision history for this message
estellnb (estellnb) wrote :

The squirrel earns its aliments just gradually and hard:
While we are making progress towards a higher error position things still do not work yet (high resolution option of apt2.ppd):

PCL XL error
   Subsystem: TEXT
   Error: IllegalBitmapResolutionSegment
   Operator: ReadFontHeader
   Position: 77

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

Did you also try manual Print Mode settings Color Mode: Monochrome and Resolution: 1200x1200DPI of apt2.ppd instead of Controlled by 'Print Quality'?

Revision history for this message
estellnb (estellnb) wrote :

I don`t see any 'manual printing mode' at localhost:631 via cups. There is just print quality(draft/normal/high, color/monochrom), page size: A4, media source: printer default, double side printing: off; printed via printing a 'test page'.
High quality gray scale yields exactly the same result: Error Position 77.

printing a self-test instead of a test page yields the following:
%!
  userdict dup(\004)cvn{}put (\004\004)cvn{}put
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% If you can read this, you are using the wrong driver for your printer. %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Revision history for this message
estellnb (estellnb) wrote :

normal mode printing still works fine.

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

In cups webinterface localhost:631 switch to Printout Mode tab page, there you can select Color Mode: Monochrome and Resolution: 1200x1200DPI instead of Controlled by 'Print Quality'.

Revision history for this message
estellnb (estellnb) wrote :

Sorry, there are only the following tabs: start page, admin, classes, online help, jobs, printers.

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

See the screenshot for setting Printout Mode, does it work with Color Mode: Monochrome and Resolution: 1200x1200DPI instead of Controlled by 'Print Quality'.

Revision history for this message
estellnb (estellnb) wrote :

Sorry there is nowhere something like a "Printout Mode tab page" under administration. I can not even list printers there. It simply does not work. My only access path is via the "printer" (Drucker) tab page. Can not find this. I could not even switch the language to "en" as it ignores DefaultLanguage in cupsd.conf. Even worse since yesterday my monitor started to display everything red in red so that it is quite hard to see something. I will get a VGA-HDMI adapter for my Ubuntu-book at last next week.

Revision history for this message
estellnb (estellnb) wrote :

cupsd.conf; perhaps some access rights are missing here.

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

Under Administration click > Manage Printers (Drucker verwalten in your screenshot) > click your printer queue name and select "Default Options" in the "Administration" combo list. Then follow comment #18 + #20.

Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

You should be able to select the resolution in the print dialog of e.g. LibreOffice or KDE's PDF viewer (Okular?) too before printing a document.

Revision history for this message
estellnb (estellnb) wrote :

Unfortunately it turned out that this is just another way to access the same printing dialogue.

Revision history for this message
estellnb (estellnb) wrote :
Revision history for this message
Pascal De Vuyst (pascal-devuyst) wrote :

Does printing work with Color Mode: Monochrome and Resolution: 1200x1200DPI instead of Controlled by 'Print Quality'?

Revision history for this message
estellnb (estellnb) wrote :

If I do it this way all four settings work without a problem:
color 2400x2400
monochrom 2400x2400
color 1200x1200
monochrom 1200x1200

Only the 'controlled by print quality settings' seem malicious.

Revision history for this message
estellnb (estellnb) wrote :

Hi Pascal! Unfortunately I have again discovered issues with the Brother MFC9840CDW drivers. However this time I do not have a proprietary driver which I could use as replacement. See for Bug #1529687 and Bug #1529690.

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.