Suse 11.2 and parallel printer HP4L

Hi whych,

thanks for the effort. But did it print a complete testpage correctly? Yast and Cups detects my HP 4L but HPLIP doesnot. Nevertheless no driver prints the the testpage correctly, just garbage, page after page. So it is not the problem of finding the printer or sending data, but some problem with the header or the characterset… Could it be a Problem???

Other than the page settings being wrong (the last few lines printed on a new page, probably because it thought it was letter and not A4 paper) the test page was fine using only cups with the default gutenprint driver.
With a bit of fine tuning, printing should be fine.
I don’t think hplip will support the printer unless you have it connected to an hp print server. (You can pick one up quite cheaply on the auction sites and it will allow you to share the printer over the network.)

Try checking your parallel cable and your pc bios settings to allow bi-directional communication.
I have always found the hp4l very reliable.

Looking at your reply in this thread:
Parallel port in opensuse 11.2 64-bit does not work. - openSUSE Forums
You never mentioned that you were using a usb to parallel converter.
At a rough guess, I would say the problem is not in the printer or openSuse, but in the converter setup.
Check the coverter is set up correctly and try copying a text file directly to the printer using something like:
cp file.txt /dev/lp0 or whatever the printer port is called.

I am using a NetMos pci parallel Port adapter, see last lines of lspci

00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller (rev 02)
00:01.0 PCI bridge: Intel Corporation 82G33/G31/P35/P31 Express PCI Express Root Port (rev 02)
00:1a.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 (rev 02)
00:1a.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 (rev 02)
00:1a.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 (rev 02)
00:1a.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 (rev 02)
00:1b.0 Audio device: Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 (rev 02)
00:1c.4 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 5 (rev 02)
00:1c.5 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 6 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 92)
00:1f.0 ISA bridge: Intel Corporation 82801IB (ICH9) LPC Interface Controller (rev 02)
00:1f.2 IDE interface: Intel Corporation 82801IB (ICH9) 2 port SATA IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02)
00:1f.5 IDE interface: Intel Corporation 82801I (ICH9 Family) 2 port SATA IDE Controller (rev 02)
01:00.0 VGA compatible controller: nVidia Corporation G98 [GeForce 8400 GS] (rev a1)
02:00.0 Ethernet controller: Attansic Technology Corp. L1 Gigabit Ethernet Adapter (rev b0)
03:00.0 SATA controller: JMicron Technology Corp. JMB362/JMB363 AHCI Controller (rev 03)
03:00.1 IDE interface: JMicron Technology Corp. JMB362/JMB363 AHCI Controller (rev 03)
05:01.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01)
05:02.0 Communication controller: NetMos Technology PCI 1 port parallel adapter (rev 01)
05:03.0 FireWire (IEEE 1394): VIA Technologies, Inc. VT6306 Fire II IEEE 1394 OHCI Link Layer Controller (rev c0)

modinfo on involved modules gives not much information to mee either:

filename: /lib/modules/2.6.31.12-0.2-desktop/kernel/drivers/parport/parport_pc.ko
license: GPL
description: PC-style parallel port driver
author: Phil Blundell, Tim Waugh, others
srcversion: 35C1F6752D1A5CB194916E8
alias: acpi*:PNP0401:*
alias: pnp:dPNP0401*
alias: acpi*:PNP0400:*
alias: pnp:dPNP0400*
alias: pci:v0000135Cd00000278svsdbcsci*
alias: pci:v00009710d00009901sv0000A000sd00002000bcsci*
alias: pci:v00009710d00009815svsdbcsci*
alias: pci:v00009710d00009805svsdbcsci*
alias: pci:v00009710d00009755svsdbcsci*
alias: pci:v00009710d00009715svsdbcsci*
alias: pci:v00009710d00009705svsdbcsci*
alias: pci:v000014F2d00000121svsdbcsci*
alias: pci:v0000416Cd00000100svsdbcsci*
alias: pci:v00001415d0000C11Csvsdbcsci*
alias: pci:v00001415d0000C118svsdbcsci*
alias: pci:v00001415d0000C114svsdbcsci*
alias: pci:v00001415d0000C110svsdbcsci*
alias: pci:v00001415d0000C104svsdbcsci*
alias: pci:v00001415d0000C100svsdbcsci*
alias: pci:v00001415d0000C004svsdbcsci*
alias: pci:v00001415d0000C000svsdbcsci*
alias: pci:v00001415d00008403svsdbcsci*
alias: pci:v00001415d00009513svsdbcsci*
alias: pci:v00001415d00009523svsdbcsci*
alias: pci:v000014DBd00002121svsdbcsci*
alias: pci:v000014DBd00002120svsdbcsci*
alias: pci:v00009710d00009815sv00001000sd00000020bcsci*
alias: pci:v00009710d00009805sv00001000sd00000010bcsci*
alias: pci:v000014D2d00008001svsdbcsci*
alias: pci:v00001592d00000783svsdbcsci*
alias: pci:v00001592d00000782svsdbcsci*
alias: pci:v00001409d00007268sv00001409sd00009018bcsci*
alias: pci:v00001409d00007268sv00001409sd00000104bcsci*
alias: pci:v00001409d00007268sv00001409sd00000103bcsci*
alias: pci:v00001409d00007268sv00001409sd00000102bcsci*
alias: pci:v00001409d00007268sv00001409sd00000101bcsci*
alias: pci:v00001409d00007168sv00001409sd0000D079bcsci*
alias: pci:v00001409d00007168sv00001409sd0000C079bcsci*
alias: pci:v00001409d00007168sv00001409sd0000B079bcsci*
alias: pci:v00001409d00007168sv00001409sd0000A079bcsci*
alias: pci:v00001409d00007168sv00001409sd00009079bcsci*
alias: pci:v00001409d00007168sv00001409sd00008079bcsci*
alias: pci:v00001409d00007168sv00001409sd00007079bcsci*
alias: pci:v00001409d00007168sv00001409sd00006079bcsci*
alias: pci:v00001409d00007168sv00001409sd00005085bcsci*
alias: pci:v00001409d00007168sv00001409sd00005079bcsci*
alias: pci:v00001409d00007168sv00001409sd00005078bcsci*
alias: pci:v00001409d00007168sv00001409sd00004096bcsci*
alias: pci:v00001409d00007168sv00001409sd00004095bcsci*
alias: pci:v00001409d00007168sv00001409sd00004089bcsci*
alias: pci:v00001409d00007168sv00001409sd00004088bcsci*
alias: pci:v00001409d00007168sv00001409sd00004085bcsci*
alias: pci:v00001409d00007168sv00001409sd00004079bcsci*
alias: pci:v00001409d00007168sv00001409sd00004078bcsci*
alias: pci:v000010B5d00009050sv0000D84Dsd00004014bcsci*
alias: pci:v00001407d00008800svsdbcsci*
alias: pci:v00001407d00008003svsdbcsci*
alias: pci:v00001407d00008002svsdbcsci*
alias: pci:v00001407d00008000svsdbcsci*
alias: pci:v0000131Fd00002021svsdbcsci*
alias: pci:v0000131Fd00002020svsdbcsci*
alias: pci:v0000131Fd00001021svsdbcsci*
alias: pci:v0000131Fd00001020svsdbcsci*
alias: pci:v00001283d00008872svsdbcsci*
alias: pci:v00001106d00008231svsdbcsci*
alias: pci:v00001106d00000686svsdbcsci*
depends: parport
vermagic: 2.6.31.12-0.2-desktop SMP preempt mod_unload modversions 686
parm: io:Base I/O address (SPP regs) (array of int)
parm: io_hi:Base I/O address (ECR) (array of int)
parm: irq:IRQ line (array of charp)
parm: dma:DMA channel (array of charp)
parm: verbose_probing:Log chit-chat during initialisation (int)
parm: init_mode:Initialise mode for VIA VT8231 port (spp, ps2, epp, ecp or ecpepp) (charp)

I tried to send text or ascii files and signs directly and see that the data led is flashing so the HP4L receives something, but the actual print command seems to be missing. It starts printing when I send a page from cups or Openoffice but the printout is garbage and could only be stopped by brute force.

I used:
Lpr -Plaserjetname file.txt
or
testtext > /dev/lp0

The reason I was looking in desparation at the other Thread is that my windows system with NetMos Drivers sees LPrt3 instead of LPRT1

It is not depending on the Bios, because then Suse 11.1 woud not work!

Which parallel port drivers would I have to look at, to see if there is a difference between what 11.1 and 11.2 does to the same hardware differently? Again the same applies to ubuntu versions in live mode, so I doubt that there is anything wrong with the installation of Suse 11.2.

Have a look at this thread and see if it helps.
http://ubuntuforums.org/showthread.php?t=459515

Also the netmos site: http://www.moschip.com/pepc.php

I have parallel ports on my pcs so don’t need adaptor cards, so can’t be more help… but the fault must be in the setup of the card.

Maybe the NetMos is the reason for all this but I am not sure yet.

I used
dmesg | grep parport and got the following response

Suse 11.1

parport_pc 0000:05:02.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
parport0: PC-style at 0xec00 (0xe880) [PCSPP,TRISTATE]
parport0: Legacy device
lp0: using parport0 (polling).

Suse 11.2
5.270030] parport_pc 0000:05:02.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
5.270089] parport0: PC-style at 0xec00 (0xe880), irq 18, using FIFO [PCSPP,TRISTATE,COMPAT,ECP]
5.279743] parport0: Legacy device
62.013408] lp0: using parport0 (interrupt-driven).

So it is interruptdriven on 11.2 and in polling mode in 11.1

I would love to set the parameters but don’t know how. The netmos doc is not very helpful to me.

Perhaps it would be easier to find out how opensuse sets the parameters.
Perhaps the old days when the card was configured manually with jumpers was better - at least you didn’t need to rely on manufacturer’s support.

If you look on fleabay, you will find that parallel hp jetdirect print servers are pretty cheap and guaranteed to work with not only hp but most parallel printers. Once you have used one for networked printers, you’ll wonder why you never used one before. Probably also be less trouble in the long run.

Sorry I can’t be more help.

partly solved:

The main difference between both dmesg outputs is one is polling (printing) and the other is irq driven (garbage)

I found in some threat where parameters for parport could be changed. For Suse it is in

/etc/modprobe.d/00-system.conf

I added the bold line:


end of common part for modprobe.conf

begin of i386 part for modprobe.conf

alias parport_lowlevel parport_pc

disable DMA for parallel port (bnc#180390)

options parport_pc dma=none
options parport_pc io=0xec00 irq=none

options parport_pc io=0x378 irq=none

If you have multiple parallel ports, specify them this way:

options parport_pc io=0x378,0x278 irq=none,none


rebooted and it prints slowly but at least it prints.

If anybody has an idea on how to invoke irqs correctly and what to change please advise!!!

A slightly puzzeld but happy pinguin