The Parallel Port – 1284 Protocol


This is a brief and hopefully concise description (not a specification) of the IEEE 1284 protocol and its signal timing as used by computers to communicate with parallel port (Centronics) devices.

The reason for writing this is that I found no such information when I wanted to build a special network device using the parallel port. Information was either not freely available, or was incomplete and wrong. Also, all documentation was unclear in some way or another. I had to use this flawy documentation while reading the source code of the Linux kernel driver in parallel to implement the protocol correctly.

I have only documented what I have tested and implemented myself. There are many other 1284 modes that need to be documented.For reading the Linux kernel parport/lp driver, download the Linux kernel. If you are really serious about this: the standard can be bought from the IEEE.


Although I try to provide useful information, I cannot guarantee that all my findings are correct. You cannot blame me if anything goes wrong.

All disputes shall be settled in Germany at Saarbrücken City Court.



January 14th, 2013
Comments? Suggestions? Corrections? You can drop me a line.