SUMMARY: SPARCclassic parallel printing (long)

From: Hisashi T Fujinaka (
Date: Wed Aug 27 1997 - 09:28:47 CDT

I was having trouble printing to an HP 6MP printer through /dev/bpp0 and
suspected a hardware problem. I had no replies from the list but thought
I'd summarize what I found out from Sun. There is an FCO relating to the
printer port on the Classic, SS10, and SS20. Most of the info I have is
related to the Classic.

>From Sun:

The cable fix may not work with the onboard port. Looking at some other
problem reports, the cable fix may only work with a sbus card that
has a parallel port.

If the cable doesn't work for you, call 1-800-USA-4SUN and asked about
FCO-A0052-1 (FCO = field change order). This requires replacing your
mother board with a reworked board.

 Bug Id: 1136132
 Category: sunergy
 Subcategory: parallel_io
 State: verified
 Release summary: 2.0, p1, 1.1
 Synopsis: SPARCstationLX parallel port, don't sense "out of paper' - pin 12
low level
         Integrated in releases: other
 Patch id:

This is the customers report on the problem:

>From Wed Jun 30 16:51:15 1993
Date: Wed, 30 Jun 93 16:47:49 +0200
From: (Anders Israelsson)
Subject: LX parallell port

Problem with Mitsubishi CP200B sublimation colour printer connected to LX


The LX and the CP200B does not work with a standard "PC" style parallel cable.
The symptom is that printing never starts, the software reports "printer not

We use a special program that does open/ioctl/write to the /dev/bppn device,
but a straight UNIX command gives similar symptom:

cat file >! /dev/bpp0

(I think the error returned was "write error", anyway the command failed.

The same output program and printer has been used on SUNOS and the Sparcprinter
card paralell port "for years" with no problem.


Pin 12 on both the 26p D-sub on the LX side and the 36P Centric type on the
printer side is used to report paper status from theprinter to the computer.
It is a TTL signal where low (<0 .3 volt) indicates paper OK, if high (> 3 volt)
it means Paper problem (out of paper).

The CP200B does indeed report that status, but is unable to pull the LX parallel
port pin 12 to logical low voltage.

Measurements showed that to pull the LX pin 12 to ground 22 milliamps were
needed, which is more that the CP200B can sink.

I took a standard voltmeter and measured the current flowing from the LX pin 12
to ground. That is a fair estmate of the current needed to sink a TTL input to

Pin 10 and 11 which also is TTL inputs on the parallel ports only needed 1,5
milli-amps to sink to low voltage, measured the same way as for pin 12.
This a more what I would expect on a TLL input!


The fix we (Nuclear Diagnostics) uses is to modify the cable. On the print
cable open the PE (pin 12) signal and forcefully set the PE signal to the LX

1. On the 36p connector open the connector house and cut the wire that goes
    to pin 12.

2. Re-route and solder the wire coming from the LX side to ground. Pin 16,17
    on the 36p connector is ground. Leave the stub connected to pin 12 on the
    36p connector open.

3. The printer will now run, but the software can not detect paper out


[ Our distributor in Denmark, ICL report same problem at the end customer
 I/C. 4/30 running 4.1.3C.

  ls /etc > /dev/bpp0 return "no such device ...

 It is a HPXL300 printer. The customers fix is to connect pin 12 to ground, and
 they are missing any potential error messages.

 The printer can't put pin 12 low by it self!? Are we not follow TTL-levels?

                                                                 21/12 -93
  alberius@Sweden.Sun.COM ]
This bug is escalated to CTE vide esc# 7816. A similar problem was escalated
previously vide bug 1150484 between an LX and a QMS 410 printer. IT was then
found that the QMS410 printer provided insuffieent current drive
to drive the Paper Empty signal low. - raghu@Corp

The description field as copied from bug report 1150484 follows:

Below are in-house testing with QMS model ps 410 parallel postscript printer:

Connected to a Solaris 2.2 SPARCclassic bpp0 port: (with patch 101025-08

1. cat works fine. (This tells me the cable is fine)

2. lp works fine.

Connected to a Solaris 2.3 SPARCclassic bpp0 port: (with patch 101317-03

1. echo showpage > /dev/bpp0. or cat psfile > /dev/bpp0,
   getting: /dev/bpp0: Device busy

2. using admintool add local printer. (PS printer type, PS content type)

lp psfile, getting lpstat -t error: printer qms waiting for auto-retry.
available. Failed to open the printer port. (Device busy).

The printer receiving light is not blinking.

the error in /etc/lp/logs/lpsched: printer fault. type: write root, status: 14.
msg: (Failed to open the printer port. (Devise busy)

This is the same root cause as not being able to cat to the device.
If you can't access the device, then neither can the lp sw.

Connect an HP LaserJet II ascii printer to the same Solaris 2.3 SPARCclassic
bpp0 port:
cat no problem, printing just fine, which tells me the bpp0 port hardware is ok.

UPDADE: 11/30 by chen2

new testing result:

if I mv /usr/lib/lp/lpsched /usr/lib/lp/lpsched.old, and mv /usr/lib/lpsched
/usr/lp/lpsched, then "POWER CYCLE" the cpu, (simply reboot did not work), I
can then cat a file to the bpp0 port and get the output just fine.

if I power cycled the printer during a cat outputing, I won't be able to cat
anymore, will get error msg: cat: write fail, no such device or address.

the bpp0 port can no longer be recognized after power cycling the printer.

HP printer doesn't have the same problems with power cycling.
[johnston 01-Dec-93]

12/20/93- raghu@Corp
This problem is reported on several customer systems,reproduced at Answer
Center and Sunpics engineering. This could not be reproduced by CTE until
the Answer Center Classic CPU board was btried out at CTE. Installing the
-03 rev of the I/O board had no impact on the problem.
CTE testing has established using the "bpptest" program provided by Sunpics
Engineering that if pin 12 of parallel port connector is grounded then the
bppdriver reports the PE line as OK. Also the PE line at pin13 U806 of the
Classic board reads 0.87V . The marginalty of this voltage explains why the
CTE Classic board might work and that another might not work. CTE has
the failing setup with thw QMS printer.
 Work around:

The work around field as copied from bug report 1150484 follows:

Use the SPC or sbus printer card - these both seem to work.

Also, I spoke with QMS tech support, and was told that most customers
use the serial port, not the parallel port. However, that has not yet
been tested. To move from the parallel port to the serial port:
download option 87 over the parallel port first, then connect the
serial cable. Serial requirements: bidirectional xon/xoff support;
NO dtr support (so you're just basically using pins 2,3, and 7).
8 bit data.

Still unanswered is the issue of whether or not this is even a supported
[johnston 07-Dec-93]


On Mon, 18 Aug 1997, Hisashi T Fujinaka wrote:

> I'm having trouble printing from a SPARCclassic running Solaris 2.5.1 to
> an HP 6MP laserprinter and off-the-shelf printer cable. I set up the
> printer using admintool, as per the usual suggestions, but I get the
> error, "printer powered off or disconnected." Trying to cat to /dev/bpp0
> gives the error, "/dev/bpp0: Device busy."
> The printer and cable appear to work. I can print through the printer port
> using a Compaq Win3.1 laptop and a SS5 running Solaris 2.5.1. Two classics
> running 2.5.1 will not print, however.
> I've only found two solutions on the sun-managers archive and the
> web/internet. I'd rather leave them for later. One involves buying more
> hardware:
> The work around field as copied from bug report 1185275 follows:
> Using the parallel port on the SPARCprinter Printer Card - 501-1910
> and cabel 530-1680 on the SS20 instead of onboard port, does work.
> The other involves some hardware mods:
> From BugID 1201749:
> We replace the motherboard parallel terminating resistor
> network(220/330), R0706 with a 4.7K pull up resistor network, and we
> see that the signals are being driven to TTL logic low. Apparently,
> the parallel terminating resistor network is in violation of the spec
> and it is fixed in SS5 and Sbus Zebra card but it was missed in S10
> and SS20 design.
> Does anyone have any other suggestions?

Hisashi T Fujinaka - - Fuji Landscape Service
BSEE (6/86) + BSChem (3/95) + BAEnglish (8/95) + $3.00 = mocha latte

This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:12:01 CDT