• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

Printer Port Information

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.

Son1990

Member
Joined
Jun 11, 2005
Location
NPPL
Much thanks goes to Tomi Engdahl who wrote and has the following information copywritted. If you would like to contact him a link to his site has been posted below.

Introduction:
PC parallel port was never designed to provide any output power to divices connected to it. it was only designed for connecting printer to your PC. But in this weird PC business everything changes. Suddenly the parallel port have become a port where you can connect very wide selection of devices like software protection dongles, removable disks, modems, network adapters, printer sharing units, parallel port extenders,

Code:
<= in   DB25    Cent    Name of        
=> out  pin     pin     Signal          
------  ----    ----    --------     
=>       1       1      -Strobe         
=>       2       2      Data 0          
=>       3       3      Data 1         
=>       4       4      Data 2          
=>       5       5      Data 3         
=>       6       6      Data 4         
=>       7       7      Data 5         
=>       8       8      Data 6          
=>       9       9      Data 7          
<=      10      10      -Ack           
<=      11      11      +Busy           
<=      12      12      +PaperEnd       
<=      13      13      +SelectIn       
=>      14      14      -AutoFd        
<=      15      32      -Error         
=>      16      31      -Init          
=>      17      36      -Select         
==      18-25   19-30,  Ground
               33,17,16

Powering low voltage logic:
If you design your circuit to reliably operate at voltages from 3 to 4.5V you have no problem in getting right voltage from the parallel port. You have plenty of marginal for voltage drops in diodes.

Generating +5V from power available from parallel port:
If your circuit absolutely needs stable +5V power source, you have no other choice than to use a DC/DC converter to generate stable +5V voltage from the power it can take from the parallel port. Usually ready-made DC/DC converter modules are not suitable for this because they are designed mostly for bigger loads. What you are looking for is a very small current switching power supply which can supply +5V output from input voltage range of 2.4-4.5V and uses the power economically. Suitable components are those small single-chip miniature switches designed for small battery powered devices.

Directly taking the power from parallel port to power 5V logic
One method often used for powering small circuits is to use the power from data output pins directly to power the external IC. If you have one IC which takes less than 1 mA current, you can easily power it directly from one data output pin. You get around 4.5-5V to the IC very easily in this way just by using one data output pin. You can expect reliably draw about 0.5 mA from each data line which take total of 4 mA current.

If you need a little more power, you have to take the power from many data pins of the parallel port. Directly connecting all data output pins you wish to use to the +5V power rail of the circuit is not a good idea because this will cause problems. If you accidentally pull down one of those data pins you use for supplying the power, it will short the other outputs to ground which will overload the parallel port output chip. Also if you have parallel port datapins directly tied together, the port will likely fail in power-on shelf-test done every time the computer is started.

The more sophisticated way of getting the port from many data pins is to use diodes which enable only the current from the parallel port to come to the circuit, not in the other way. Those diodes will cause voltage drop (around 0.5V in silicon diodes at those current), which is what you want because you have already a slightly low voltage for your circuit. The voltage drop in the diodes can be minimized using schottky type diodes (voltage drop of around 0.2-0.3V). You might also consider using germanium diodes, but those have higher internal resistance and they are getting rare.

Very typical circuit which takes power from PC parallel port data lines through diodes is the telecard reader circuit presented in What you need to know about electronics telecards document. If you parallel the 8 data lines, you can reliably draw about 0.5 mA each. Due to the diode voltage drop in power paralleling circuit, you would be lucky to get 4-5 mA at 4.5V. There are 5 control outputs from which you can reliably draw 1 mA each. That comes to around 9 mA. If you can hold all outputs high, up to 50mA seems possible but the voltage would sag a lot. If you use switcher for generating the operation voltage for your circuit, then you can take out the maximum amount of power from printer port in this way.

In general, the more current and the higher the voltage your circuit requires the less likely it is to work on a variety of different parallel ports. Taking power directly form parallel port work well to fire up a few CMOS ICs that will work down to 3V (or less) and draw only a few mA.

How to use the power available from parallel port:
Because the power capabilities of the parallel port is very limited, the circuit you vant to connect to parallel port must be designed so that they take as little as possible power. This is possible by using small number of low power logic chips and running then at low clock frequencies.

Link to Site:
http://www.tkk.fi/Misc/Electronics/circuits/lptpower.html
 
Last edited:
Stuck temporarily - Alt Modding mods feel free to unstick if you want.
 
Benvanz said:
What kind of speed can you expect to go through a printer port?

Traditional parallel port communcation with printers usually happens at tens to hundred kilobytes per second. Modern parallel ports on special modes can work faster, I think theoretical maximum is around 1 megabyte per secons, practical speeds maybe hundreds of kilobytes per second maximum.
 
Nice writeup(summary?), I use the parallel port myself for a specific use, rather than transfering regular data, I use it to send out pulses up to 45KHZ to controll a CNC machine.
From these pins, I hook up a drive of step and direction which then takes that information and moves the motor. I also controll stuff such as relays for coolant or spindle on and have inputs such as home and limit switches.
I use parallel port breakout boards that are optically isolated, so basicly you can't hurt the parallel port quite so easily.

You can do much more with a parallel port such as controll inputs and outputs which could even be controlling your lights, power to an external hard drive, or a coffee maker:)

Jon
 
Powering a CNC machine is very impressive. Some people just let the port sit there....PUT THOSE PORTS TO USE! Thanks for the good info and showing us/me how you use your port:p

~Ken
 
Last edited:
Here is a scematic for hooking up a servo setup after the breakout board:
http://www.homecnc.info/servo box.pdf
thats with gecko drives and a homemade power supply using 2 24v transformers, overall voltage output is around 36v after rectified and filtered.
one of the breakout boards I have and how I have my drives hooked up:
http://members.shaw.ca/axxus/201_210small.jpg
heres how the outputs and inputs are hooked up to it:
http://members.shaw.ca/axxus/aux_small.jpg
http://members.shaw.ca/axxus/inputs_small.jpg
If your hooking directly into the port(and some cheap breakout boards), you need pullup resistors, basicly so you dont burn out the port.

Here is a cheaper breakout board:
http://www.winfordeng.com/products/brk25.php
I believe you need 1k resistors inline with the input switches, check the table above for inputs and output directions. I believe with just visual basic you can gain controll of the parallel port, but in windows its difficult to take over it. The software I run completely takes over it. it is from artofcnc.ca, its meant for CNC machines but you could use it to do what you want, design a new screen for it without a problem. Its got a 1000 line limit but you wont be writing G-Code unless you want to automate your inputs and outputs.
otherwize in dos you can take over the port easily, another program I have used is turbocnc which is dos based and cannot be run in the command prompt and take over the port.

I only use it for cnc machines right now, it would be cool to use the computer to control the lights and stuff like that but I am no longer in a permanent setup with a desktop computer.

If you want more info on this stuff, take a look around cnczone.com but be careful not to become an addict;)

Jon
 
Back