Parallel printer interface

The most common standard for parallel printer interfaces from the 1970s to the early 2000s was the "Centronics interface" originally defined by printer manufacturer Centronics, and widely employed throughout the industry.

It has a parallel, originally unidirectional, 8-bit data path, with a /Strobe signal indicating new data, an /ACK signal indicating data acceptance (often ignored), and a Ready signal indicating the printer can accept data.

A minimum implementation would simply monitor BUSY for low status, apply data, pulse /Strobe low to transmit, and repeat. (Minimum width of the strobe pulse is 0.5 μs, data setup and hold times should also be ≥0.5 μs. SelectIn would need to be tied low.)

Signal levels are 5 V TTL.

36-pin micro ribbon connector

The original connector - almost always used on on the printer side - was a 36-pin micro-ribbon connector. On the computer side, a 25-pin D-sub connector was the de-facto standard established with the IBM PC.

25-pin D-Sub connector for parallel printer port on a PC

The IEEE-1284 standard later defined a bidirectional bus that is backwards compatible with the original Centronics parallel port and achieves 2 MByte/s transfer speeds.

Pinout

DB25 pin MR36 pin Signal name Direction Active
1 1 /Strobe C→P Low
2 2 Data0 (LSB) C→P
3 3 Data1 C→P
4 4 Data2 C→P
5 5 Data3 C→P
6 6 Data4 C→P
7 7 Data5 C→P
8 8 Data6 C→P
9 9 Data7 (MSB) C→P
10 10 /Ack P→C Low
11 11 Busy P→C
12 12 PaperOut P→C
13 13 Select Out P→C
14 14 /Autofeed C→P Low
15 32 /Error P→C Low
16 31 /Reset C→P Low
17 36 /Select In C→P
18-25 16,19-30,33 Ground    
Shell 17 Chassis Ground    
Sometimes printers provide +5 V on MR pin 35 and/or MR pin 18.
Direction: P→C Printer to computer, C→P computer to printer