Drives and Steppers

These CNC machines require:
  • Steppers
  • Drives
  • Power Supplies
The image below is of two ~300 NEMA 23 steppers, and an 800 NEMA 34 servo motor. The small steppers are ~3.5 inches long, and can be used with the machines in these plans.

Steppers and Servo
NEMA 34 servo and two NEMA 23 steppers.

The servo is used on a bench mill for machining steel, and is shown for comparison. It would overwhelm the Solsylva machines.
The steppers are attached to leadscrews or pinions, which move the machine's axes.

The 25x25 and 24x48 machines work better with steppers that are over 269, though smaller steppers will work. Lower power steppers cannot work as aggressively as larger ones, and cuts have to be slower and/or shallower.

The 269 steppers can push a trim router hard enough for the router to stall, though usually the steppers will stall first.

Steppers in the ~300 range can push a full sized router, but they lack the power to push the router to its limit. The steppers will most certainly stall before the router does.

These steppers can push the axes with enough force to cause the bit to tear rather than cut the stock, but unlike the servo shown above, the steppers lack the power to accidentally break ¼ inch router bits.

The advantage of using a larger router is its ability to run longer, and to use a larger variety of bits. However, a full sized router will not be pushed to its limits on these wood and aluminum machines.

Stepper Documentation

Here is an excellent document on stepper motors.
The detail of the document helps to drive home why many builders buy drive-stepper-power supply packages, rather than buying components from separate sources.


The drives are sometimes called amplifiers because that is largely what they do. They amplify a few milliamp computer signal into a higher current that turns a motor.

Gecko and Xylotex Drives
Three Geckodrives, and a four axis Xylotex drive.

The image above is of drives from Geckodrive and Xylotex.
The Geckos are at the top, and each one of the units drives one axis. They are ~2.5 inches square.

The Xylotex shown above is a four axis drive, which has four drives on one printed circuit board.
Xylotex also sells three axis drives, which can be used with the machines in these plans.
A fourth axis can be used for slaved axes, or for a rotary table or similar.
See the slaving stepper note at the bottom of this page.
The plans for the 24x48 machine have a slaved axis option, which requires a fourth drive, but otherwise all machines in the plans require three drives.

The photo below is a HobbyCNC drive board in a homemade enclosure. It is a kit that requires soldering.

HobbyCNC three axis drive board
Three axis HobbyCNC board in a homemade box.

The Gecko and Xylotex drives have axis disable functions that permit the steppers to freewheel while the drive is still powered. This is very handy for moving the axis by hand, or for doing a test run with the Z disabled, for example. HobbyCNC lacks this function.
Temperature of Stepper
Checking stepper temperature for current settings.
This can be done by touch.
The next image shows the temperature of a stepper. The current for the steppers is set on the drives, which is addressed in the drives' documentation. There is a balance between overheating and higher power.

Generally a stepper is too hot when it is uncomfortable to touch.

Some builders make their own drives and scrounge the steppers from old equipment.
However, buying a package (steppers, drives and power supply) from one supplier will ensure compatibility.

See the matching steppers and drives note at page bottom.

Axis Names

It is up to the builder to decide which axis is given which pair of wires. Therefore, it is possible to alter the axes so, for example, Y is the longer axis and X is the shorter one. The options are wide open and the axes can be defined to match the table's capabilities, the perspective of the user and/or the configuration of the g-code.

Generally the Z moves up and down and the X and Y move horizontally.  X is usually left and right (East West) and Y is North South in the map analogy.
This is not set in stone and the tables can be set up however the builder desires.

Auxiliary Controls

Other wires from the computer's parallel port can be used to control the spindle, vacuum systems, lubrication and cooling systems and most anything that can be controlled with a relay-switch (Controls Page).

These options, like the step and direction signals, are configured in the computer's controlling software.
This information is given by the controlling software's supplier such as Mach3.

Power Supplies

See the Power Supply page.
The power supply has to be sized to match the stepper(s) and drive(s).
One power supply can power all axes when it is sized to accommodate the load.
Alternatively, a separate power supply can be used for each drive and stepper.
This is done for a variety of reasons, from cost and availability of parts, to the loads on the axes.
All of the axes do not have to be moved by identical motors and drives.

Power Supplies
Power supplies.

Complete Systems

Drives Steppers and Power Supply
HobbyCNC system

Xylotex drive and power supply
Xylotex system with power supply and drives.
The steppers are not shown.

Here are pictures of the HobbyCNC and Xylotex systems.
There are systems from other suppliers that will also serve well.
In the top image, the power supply is on the far left. It is plugged into the wall outlet, and is attached to the drive board.
The drive board is in the middle of the image.

The drives are attached to the computer's parallel (printer) port, and each drive is attached to an individual stepper.

A pair of wires connects from the computer's printer port, via the parallel port cable, to the drive of each stepper.
One wire of the pair controls the Step signal, and the other wire controls the Direction signal for each drive.

With drive packages, the parallel port cable plugs into the drive and the computer. It is similar to hooking up a printer, but the software is not plug and play.

5v for Geckodrives

Inline fuse from power supply
In-line fuse for Geckos.

The Geckodrives used in this shop require 5vdc from the controlling computer. This was taken directly off of one of the stray power supply leads. (Red is 5v, Yellow is 12v, on the ones I have dealt with).

An in-line ½ amp fuse was soldered into the wire, and the wire was run with the printer cable to the the three Geckodrives.

People have mistakenly used wall wart transformers to supply this 5v for the Geckos; this is not the source Geckos require. It should come from the controlling computer.

The 5vdc can also be taken from the computer's USB port.

Note: Slaving Steppers

Axes that are moved by two leadscrews can be powered by two drives and steppers. A pair of leadscrews is often used with a long gantry so the gantry will not rack under heavier loads. In this setup one stepper is attached to each leadscrew. Each stepper requires its own drive.

Slaved steppers are used frequently, but I am not fond of the practice for a number of reasons as explained below.

Should one of the slaved steppers stall, and it will at some point, the axis will be pulled out of true by the still active stepper. This is an inconvenience at least, and it can severely damage the machine.
Even when there is no damage, the axis still has to be re-trued, which takes time and patience.

The second drawback is the axis cannot be positioned by hand-turning a leadscrew. I find this limitation to be extremely annoying.
Since the two leadscrews are not coupled by a belt, it is virtually impossible to hand move each end of the axis the same amount at the same time. A slaved axis has to be positioned by using the controlling software's jog function. This requires the re-zeroing of the software, and it can require that offsets be reset.

It is often simpler to set up the cut in the software, and to then manually move the end of the router bit to the necessary position.
I use this method with the bench mill as well. Many times a blemish in the stock, or an inconveniently placed tie down will be noticed after things are ready to go. The ability to realign the control point (the end of the end-mill or router bit), without the software knowing about it, can remove yet another chance for error.

Another reason I am not fond of slaved steppers is the two steppers generally do not permit faster speeds. The top speed of the axis is still determined by the slower stepper, so there is no performance advantage. Slaved steppers seem to work against each other as much as they work with each other.

Slaved motors are often used on commercially built machines. Most of these machines are closed loop, which means they include position feedback encoders or resolvers that will trigger the machine to stop when position is lost. These systems add significant cost and complexity.
The low cost steppers and drives used in most DIY machines are open loop; they do not include position feedback systems.

Note: Matching Steppers and Drives

Steppers can be powered well beyond their nameplate voltages.
Therefore, smaller drives such as HobbyCNC and Xylotex will not always be able to power steppers to the steppers' potential. These smaller drives cannot handle higher voltages; the excess power will cook their electronics.
Gecko's drives are capable of handling higher power, and can push smaller steppers beyond the steppers' potential. This can damage the steppers by overheating them.

The Geckodrive document listed on the links page gives details on sizing/matching steppers with power supplies, and on building power supplies.