Making A Test-ECP Parallel Cable

Home | Introduction | Pictures (Page 1) (Page 2) | Parts
Disassembly | Wiring | Soldering | Testing | References

Please read the entire document before attempting anything.
Test for the existence of ECP parallel ports before making your cable.


This document on making a test-ECP Parallel Cable is based on Microsoft's Extended Capabilities Port : Specifications Revision document. A proper ECP cable has correct electrical specifications (connections, impedance, shielding, etc.) with added protection mechanisms for the bidirectional data lines. If you are not one to take undue risks and can easily afford a proper ECP cable, consider getting a proper ECP cable instead.

There is a simple test program in my program distribution archive. Use it first before buying or doing anything. If the test program cannot detect your ECP port (but you know it exists) then you will have to modify the sources, either:

The ECP port testing method is very generic (based on information in the Microsoft document,) so it should work for most machines. If you find an error or if you have an improvement to contribute, drop me a line.

The narrative below describes how to build an ECP test cable as documented in the Microsoft document. Mr Denis Kondakov has kindly clarified this (my apologies to Mr Denis for misinterpreting his work); please check other hardware sources if you want to build an ECP cable for normal ECP connections.


Pictures have been put on separate pages so that you can save and print this document without having to deal with pictures. The total size of each page with the pictures is around 130KB.


One way is to get individual parts from an electronics catalogue or shop (such as RS.) However, such parts may be hard to find or expensive. The easiest route is to use mass-market parts. I got my DB-25 connectors from a cheap standard null modem cable, and used ribbon cable as the conductor.

First, buy a (1) null modem cable (or Lap Link cable). It is a PC-to-PC parallel transfer cable with female DB-25 connectors at both ends. The data bus is 4 bits; there are no bidirectional lines. Such a cable is fairly cheap and commonly available. The connectors at each end should be the type which can be prised open (with care!)

Next, get (2) some ribbon cable a little longer than the length you require. Buy ribbon cable with at least 25 conductors. I used a colour-coded 26-way ribbon cable (I believe it was for IDE connections.) Colour-coded cables make the job much easier.

Null modem cables usually go for less than RM15. I got 2m of 26-way ribbon cable for RM25. The total is less than RM40 (or about USD10). You will also need the usual tools; multimeter, wire cutter, wire stripper, soldering, solder, solder flux, insulation tape, etc.


A short note on null modem cable disassembly. Be careful when you try to prise open the DB-25 connector housing; if damaged, you might not be able to use it again. Look carefully before attacking the plastic housing. Prise apart one side first, then do the other side.

If you are using a sharp instrument, do take extra care. Usually one would use small screwdrivers. Watch out! If a screwdriver slips, you can end up with a nasty gash.

Leave the plastic housings on one side. Examine the DB-25 connectors with the attached wires. Null modem cables commonly have 12 conductors. Use a soldering iron to detach both connectors from each of the conductors.


Take a look at the DB-25 connectors. Looking from the connector pin side, you should see two rows. Usually there are number guides. The top row goes from 1 (leftmost) to 13 (rightmost). The bottom row goes from 14 (leftmost) to 25 (rightmost).

DB25 male connector pin number arrangement (connector pin side):
Top Row    : Left \  1   2   3   4   5   6   7   8   9  10  11  12  13 / Right
Bottom Row : Left  \  14  15  16  17  18  19  20  21  22  23  24  25  /  Right
DB25 male connector pin number arrangement (solder pin side):
Top Row    : Left \ 13  12  11  10   9   8   7   6   5   4   3   2   1 / Right
Bottom Row : Left  \  25  24  23  22  21  20  19  18  17  16  15  14  /  Right

Split both the ends of the ribbon cable into alternate top-row, bottom-row wires. Expose some copper on each ribbon. 2mm of exposed copper should be adequate. On one side of the cable you are making, you will connect ribbon conductors alternately, one to the top row and one to the bottom row.

Connect the other end using the wiring arrangement for the ECP test cable. Make sure the split conductors are long enough on one side for maneuvering in order to meet the correct pin.

It is best to use current-limiting resistors for the bidirectional data lines. Try 1KOhm (or lower) resistors. This is because there is a chance both sides will try to drive the lines at the same time. It is not good to have two low impedance output tied together. Although most new parallel port driver chips should have protection circuits built in (or have driver circuits compatible with direct output connection,) the resistors are an added insurance policy. However, with added resistors, one of the computer in my configuration could not receive bits. I'm not sure which computer is at fault (driver or receiver) but my cable works without any resistors. So if you remove the resistors, it is at your own risk.

It helps to make a table noting the colour and the pin number. Data0 to Data7 need the resistors, optionally. Note that the *Select line has two connections. You will need a jumper wire for that.

Note that this follows the ECP test cable connections in the Microsoft document, which is slightly different from a normal ECP cable connection.

Colour Bottom
Colour Signal Target Target
    1 Blue nStrobe 10 nAck
Green 14     nAutoFd 11 Busy
    2 Yellow Data0 2 Bidirectional
Orange 15     *nFault 17 *nSelectIn
    3 Red Data1 3 Bidirectional
Brown 16     *nInit 12 *Perror
    4 Black Data2 4 Bidirectional
White 17     *nSelectIn 15 *nFault
    5 Gray Data3 5 Bidirectional
Purple 18     Gnd 18  
    6 Blue Data4 6 Bidirectional
Green 19     Gnd 19  
    7 Yellow Data5 7 Bidirectional
Orange 20     Gnd 20  
    8 Red Data6 8 Bidirectional
Brown 21     Gnd 21  
    9 Black Data7 9 Bidirectional
White 22     Gnd 22  
    10 Gray nAck 1 nStrobe
Purple 23     Gnd 23  
    11 Blue Busy 14 nAutoFd
Green 24     Gnd 24  
    12 Yellow *Perror 16 *nInit
Orange 25     Gnd 25  
    13 Red *Select 13,17  
Brown - -   Unused - Keep as a spare

Thus, the connection on one side is regular and the connection on the other side is not. This makes checking easier. On one side you check for regularity, on the other you check for the ECP cable wiring combinations.


Here are some tips for soldering, if you are new to using an iron:

Put a little bit of solder on each wire and on each pin, separately. Only a little bit of solder is needed for each pin, so that the solder forms a concave pool within the hollow of the pin. The soldering iron must heat the pin long enough for solder to flow smoothly, otherwise you will not get a nice connection. A little bit of solder flux helps.

Make sure the above step is complete before attempting to join anything. Visualizing the joins or rehearsing can also help to eliminate mistakes.

Make your own chart and check the connection chart before and after making a connection.

Connecting the pins and wires should not require any extra solder. Bring the two elements together and heat them together. Push the wire into the pin's hollow when the solder melts within the hollow, then remove the iron. Hold for a few seconds while the solder cools.

Try not to leave a lot of exposed conductor beyond the pin. If there is a danger of shorting, add insulation tape after all the connections are made. Still, avoidance is better than cure.

Try not to heat the pin or the wires for too long. The insulation might melt. If you are using a low power soldering iron, avoid using a fan if you suspect the iron is not heating the parts quickly enough.


First, inspect the soldering job under a strong lamp. Look for shorts, broken connections.

Next, test the cable wiring correctness with a multimeter. Use your connection chart.

Finally, use the test program. Cable testing requires two machines, just as you would connect them in order to transfer data. Check the handshake lines first.

Lastly, do a simple communications test using the other main option of the test program. If it works, you will get an indication of your setup's data transfer performance. Your cable should now work with the data transfer program with no problems.


Do a Google search or use Parallel Port Central to get these documents if you need them. I have not put links because they might become obsolete quickly. I am indebted to everyone who have put their material online. Thanks to everyone out there.

Parallel Port Central. This is the one-stop site for parallel port related material. I used, Beyond Logic's documents, pinout diagrams, FAQs, and the following very useful files:, Denis Kondakov, ECP-DCC v.0.2, 1999. This describes the arrangement for proper ECP cable connection, which is slightly different from the Microsoft document (below).

ecp_reg.pdf, Microsoft Corporation, Extended Capabilities Port : Specifications Revision 1.06, July 14, 1993. Apparently, the connections in this document is for a test cable, which is surprising considering it is a specification document. I am no longer working on this project, so the reader is invited to check other sources.

NFPT Program and Site Copyright 2002,2003,2005 K.H. Man all rights reserved
Hosted by