The Centronics Interface Details

The Centronics interface is also called Extended Capability Port (ECP) or Enhanced Parallel Port (EPP). This is an interface that simultaneously transfers bits of binary data (sets of 1 and 0) in parallel using pins and cables. The Centronics interface was extremely mainstream in the 1970s along with dial-up modems, bulky CRT monitors, 10-kilogram computers, and dot matrix printers. Today, the Centronics interface is massively superseded by USB (Universal Serial Bus) standard which is easier, faster, and smaller.

The term “Centronics” comes from the first printer manufacturer that uses this parallel port type. Centronics mainly manufactures dot matrix printers, which have eight inputs to control its operating states. Imagine having eight road lanes on a busy highway. To properly toll all lanes, you’d need to build eight toll gates plus some backup lanes for emergencies, right? That’s exactly how the Centronics interface works. The printer receives eight digits of binary data, processes the data into mechanical movements, and then prints the characters into the printing paper.

The Centronics interface has a maximum voltage of 5 Volts of direct current. It typically has 25 pins, although some manufacturers add extra pins for grounding, shielding, or extra functions. The data transfer rate for the early Centronics interface was only 150Kb/s, but it was quickly upgraded to EPP, which has a 2 MB/s transfer rate. Due to its success and popularity, The Institute of Electrical and Electronics Engineers created a standard called IEEE 1284 to normalize the Centronics interface usage across the world.

Example of The Centronics Interface

Centronics need to add more functions to the Centronics interface, such as strobe, busy, or ack to make sure everything works correctly. The earliest type of the mainstream Centronics interface is called DB-25 (which was adopted by IBM). It has 25 pins in total, and this is what it consists of:

  • 1pin - Strobe, to represent the readiness of the computer to send more data
  • 8pins - Data out, sending binary data to the printer
  • 1pin - Busy, to tell the computer that the printer is currently working, processing binary data into mechanical action
  • 1pin - Ack (short for acknowledge), to tell the host that the data is valid and well-received
  • 1pin - PaperEnd, to tell the computer that the paper on the printer has reached its end or there’s no paper.
  • 1pin - Select, to indicate that the printer is selected and is ready for data transfer.
  • 1pin - AutoFeed, to indicate the host when the printer is starting to process a new line of data.
  • 1pin - Init, the printer’s reset button
  • 1pin - Error, to indicate that the printer encounters an error condition, like a jammed mechanism.
  • 1pin - SelectIn, to indicate that the host is choosing the printer
  • 8pins - Ground, unused pins, usually grounded.

Another type of parallel ports is a Micro-ribbon 36-pin connector (also called the mini-Centronics 36pin) for heavy industrial machines. All types of parallel ports have relatively bulky heads and very wide or thick cables, making it harder to install the ports in tight spaces.

Parallel Port vs Serial Port

Back in the early 1970s, parallel ports and serial ports existed in every computer around the world, existing peacefully, side by side. But now, parallel ports like the Centronics interface and d-sub are almost extinct, while serial ports such as USB-C, USB-A reign supreme. The primary reason is that parallel ports simply couldn’t keep up with serial ports, resulting in them being cast aside in favor of serial ports.

While the toll booth analogy from earlier helps explain data width (or data bits), there’s a catch. The printer needs synchronized binary data to process that data into mechanical action. So the toll booth will only open the gate when all cars are perfectly lined up, which is horribly impractical since each car has different speeds. This results in time lost waiting for the data to be synchronized at the end of the port (the printer side).

Furthermore, the Centronics interface is prone to crosstalk. Binary data is made of electrical signals, and electric current creates a tiny amount of magnetic field. Crosstalk occurs because the Centronics interface has multiple tiny cables carrying different signals. The magnetic fields interfere with each other, causing some binary data to be unintentionally converted to its opposite. As a result, the Centronics interface is not as reliable compared to the USB standard.

The serial port only transfers data with one data width. Using our analogy, the serial port only has one toll booth and a one-road lane. However, the car and the toll booth gate can operate reliably at a blazing-fast speed. In the end, USB wins over the Centronics interface because of its fast data transfer rate, small physical size, and consistent reliability.