Charge Pump / Watchdog Timer

Charge pump is a term used in CNC to refer to a watchdog timer. A watchdog timer is a computer software or hardware timer that is used as a trigger to cause a reset or error condition should it loose contact with whatever it was communicating with. This is a very useful thing to have built into CNC electronics as it will keep a constant connection between the computer and the CNC machine, should this connection fail the computer will go into an emergency stop mode and the CNC will also be put into a disabled/emergency stop mode to prevent the CNC machine from doing any accidental damage to itself or you!

Parallel Port

Many CNC machines communicate with the computer via the computers parallel port. This port is a very old connector, not found on most recent computers. The reason it is used and favoured is because it allows very basic TTL logic level signals to be sent and received. Every other port on the PC such as RS232 or USB send serial data and don’t allow basic logic like the parallel port.

A problem with the parallel port is on computer start-up, the computer may decide to randomly power up the parallel port and set its various pins to different states. This is extremely dangerous if a CNC machine is connected and turned on. Many CNC machines allow their powerful spindles to be turned on and off via a certain pin on the parallel port.

If during start-up the computer decided to set that particular pin high (active) then the spindle would start spinning. You could imagine the danger involved with this, if someone turned on the computer and walked over to change tools in the spindle and it started up it could cause serious harm to the operator.

Charge Pump

So now we have a problem with safety and it needs to be addressed. This is where the watchdog timer comes in, some breakout boards include a watchdog timer or charge pump circuit. This circuit will listen for a continuous signal pulse at a certain defined frequency. The CNC controller software is then programmed to send out this continuous signal pulse. Should the breakout board’s charge pump circuit fail to detect this signal it will go into a disabled mode until it can detect the frequency. This disabled mode will set all outputs low and ensure that everything on the CNC machine is turned off.

The CNC controller software’s watchdog timer function is basically saying over and over “Hello”, “Hello”, “Hello” to the breakout board’s watchdog circuit, this makes the circuit very happy and it will continue to operate. However should the stream of “Hello” stop, the breakout board will immediately disable and effectively kill power to the CNC machine.


We now have a very safe CNC machine that is immune to whatever weird happenings could occur on the parallel port when our CNC controller software isn’t running. This includes if the CNC controller software crashes or freezes.