Stepper motor

From RepRap
Revision as of 07:14, 4 April 2011 by Nether10 (talk | contribs) (added Thingfarm as NEMA 17 supplier)
Jump to: navigation, search


What is a Stepper Motor ?

Stepper motors are one kind of electric motor used in the robotics industry. Stepper motors move a known interval for each pulse of power. These pulses of power are provided by a stepper driver and is referred to as a step. As each step moves the motor a known distance it makes them handy devices for repeatable positioning.

There are two major types of stepper motor known as bipolar and unipolar. Wikipedia has further information on stepper motors. Please see Wikipedia: stepper motor.


Nema - refers to the size of the motor. It specifies the “face” size of the motor but not it’s length. For example a Nema 23 stepper has a face of 2.3 inches by 2.3 inches with screw holes to match. Note just because a motor is bigger does not mean it is more powerful in terms of torque. It is perfectly possible for a Nema 14 to “out pull” a Nema 17 or a Nema 23.

Bi polar and uni polar- These terms refers to the internals of the motor. Each type has a different stepper driver circuit board to control them. In theory a reprap could use either but in practise most are bipolar.

Bipolar Motors

StepperMotor-bipolar stepper sch.png

These motors are the strongest type of stepper motor. You identify them by counting the leads - there should be four or eight. They are also the type of motors we are using in the RepRap Project's Mendel & Darwin designs. They have two coils inside, and stepping the motor round is achieved by energising the coils and changing the direction of the current within those coils. This requires more complex electronics than a unipolar motor, so we use a special driver chip to take care of all that for us. Some designs (the eight-wire ones) split each coil in the middle so you can wire the motor either as bipolar (short the middles) or unipolar (short the middles and treat the link as the centre tap - see below).

Unipolar Motors

StepperMotor-unipolar stepper sch.png

Unipolar motors have two coils, each one has a centre tap. They are readily recognizable because they have 5, 6 or even 8 leads. It is possible to drive 6 or 8 lead unipolar motors as bipolar motors if you ignore the centre tap wires. 5 lead motors have both center taps connected, so re-wiring them to a 4 lead version requires at least opening the motor, if it can be done at all.

The main beauty of unipolar motors is that you can step them without having to reverse the direction of current in any coil, which makes the electronics simpler. Some early RepRap prototypes used this trick. Because the centre tap is used to energise only half of each coil at a time, unipolar motors generally have less torque than bipolar motors.

Stepping Angle

Most stepper motors used for a Mendel have a step angle of 1.8 Degrees. It is sometimes possible to use motors with larger step angles, however for printing to be accurate, they will need to be geared down to reduce the angle moved per step, which may lead to a slower maximum speed.


Stepper Motor History for repraps Darwin (V1.0 reprap)

The darwin reprap type used a Nema 23 stepper motor. This stepper motor was a unipolar stepper motor which could be configured as a bipolar. This design used 3 stepper motors, one for each axis, and a DC motor for it's extruder. Later many people upgraded their extruders to increase their control of the extruder.

Note the Generation 2 electronics supported the first configuration with 3 stepper driver circuit boards for the steppers and a PWM circuit board to control the DC motor.

The Darwin Stepper Motor Requirements were as follows:

Parameter Specification
Size NEMA 23
Type Bipolar
Shaft dual-output shaft
Torque 100 oz-in or abount 0.71 Nm
Resistance about 10 ohms, or 1 to 30 ohms


If you are using the PIC controller (Note: Generation 1 electronics) you need a motor that will use about 1A per winding at 12v, that is - around 10 ohms. The Arduino circuit can be adjusted to accommodate a wider range of steppers, but remember that if you specify a low-resistance one and the Arduino controller has to chop the voltage to limit the current going through it, that will also limit the torque.

Stepper Motor History for repraps Mendel (V2.0 reprap)

The Mendel reprap type used either a Nema 17 or a Nema 14 Bi polar stepper motor. It uses four stepper motors. One for each axis and one for the extruder.

Note this configuration of four stepper motors was supported by the 3rd generation electronics.

The Mendel Stepper Motor Requirements were as follows:

Parameter Specification
Size NEMA 17 or 14 (prototype was Nema 14)
Type Bipolar
Shaft dual-output shaft (need to make knurling the stepper shaft easier, not applicable to recent geared extruders)
Torque 13.7 N-cm (that is 1400 g-cm or 19.4 oz-in)
Resistance Must be over 6 Ohms (not applicable to recent stepper controllers, see "current" below)

Holding Torque

It is recommended that you get approximately 13.7 N-cm (that is 1400 g-cm or 19.4 oz-in) of Holding Torque (or more) to avoid issues, although one stepper with less has been used successfully (see below). If in doubt, higher is better. If you need to convert between different units for the torque you can use the torque unit converter here.


If going for the smaller NEMA 14 motors, aim for the high torque option. NEMA 14s are neater, lighter and smaller, but can be hard to get hold of with the appropriate holding torque. NEMA 17s are quite easy to get in the specification that Mendel needs, but are bulkier and less neat. NEMA 14s are running near the edge of their envelope: they will get warm. NEMA 17s are well inside what they can do, and will run much cooler.

Note that any Mendel part that goes on to a Stepper Motor shaft expects the shaft to be roughly 5mm. If the shaft is a different size, you will need to make allowances for this in the parts you obtain/make.


Steppers motors come in several wiring configurations. 4, 6 and 8 wires are all fairly common and work fine with the standard RepRap electronics. 5 wire stepper motors exist but won't work with the standard RepRap electronics, because the 5th wire connects to both coil centers. See stepper wiring for more details.


Most of the motors specs give the current for two coils that will give an 80C rise. I.e. they can run at 100C! When using them on plastic brackets you need to under-run them to stop the brackets melting. With PLA you have to seriously under-run them! Fortunately temperature rise is proportional to the square of current, but torque is directly proportional so you can lose a lot of temperature without losing too much torque.


All recent stepper controllers use a current-limiting design. Because of this, it doesn't matter what the Ohms of the coils are. As long as they're low enough for the current to rise fast enough for the current-limiting design to come into play. If the Ohms are too high (I.E. 24V steppers) the current doesn't raise fast enough for reliable microstepping.

Designs which use a seperate "extruder controller board" sometimes use H-bridges (which are designed for running a DC motor) instead of a proper current-limiting stepper controller. On these boards, you need to be careful not to turn the current (PWM) too high, especially with low-ohm (low voltage) motors. You run the risk of overheating both the stepper motor and the H-bridge chip.


Below is a list of possible suppliers and motors. Please add to it. If you have built a Mendel successfully with a given motor, remember to put true in the tested field.

Stepper Motors - Nema 14 (Smaller, neater and used on the Mendel prototype)
Vendor (with link) Shipping location Manufacturer Model # Datasheet NEMA (Size) Holding Torque Shaft Tested Additional notes
Motion Control Products  ? Fulling Motor FL35ST36-1004B FL35ST36-1004B Datasheet 14 ~13.7 N-cm Dual true Used in mendel prototype
Active Robots UK Wantai 35BYHG04 35BYHG04 Datasheet 14 ~12.3 N-cm 4.9mm true Less Holding Torque than recommended, but has apparently been used successfully
Pololu Robotics and Electronics US SOYO SY35ST36-1004A  ? 14 ~13.7 N-cm 5mm ? Note: Pololu list this motor as 1400 g-cm AND as 20 oz-in (converts to 19.44 oz-in). According to supplier information, the metric value is correct.
Zapp Automation UK  ? SY35ST36-1004B Datasheet 14 ~14 N-cm Dual  ?

Stepper Motors - Nema 17 (larger and generally heavier but with more room to put a higher torque than a Nema 14)
Vendor (with link) Shipping location Manufacturer Model # Datasheet NEMA (Size) Holding Torque Shaft Tested Additional notes
Zapp Automation UK SOYO SY42STH47-1206A SY42STH47-1206A Datasheet 17 ~31.1 N-cm Single true None
Pololu Robotics and Electronics US SOYO SY42STH47-1206A SY42STH47-1206A 17 ~31.1 N-cm Single true None
Zapp Automation UK SOYO SY42STH47-1684B SY42STH47-1684B Datasheet 17 ~43.1 N-cm Dual true Round Ø5mm Shafts
Zapp Automation UK SOYO SY42STH47-1684A SY42STH47-1684A Datasheet 17 ~43.1 N-cm Single ? D-Shape 5mm shaft with 4.5mm flat NL SOYO SY42STH47-1684B SY42STH47-1684B Datasheet 17 ~43.1 N-cm Dual true Round Ø5mm Shafts, our motors are factory custom made with 80cm cables and we have an option to include Molex connectors for our GEN6 electronics
Cool Components UK Mercury Motor SM-42BYGH011-25 SM-42BYG011 Datasheet 17 23 N-cm 5mm  ? None
Interinar Electronics, LLC US Oriental Motors Vexta PX243M-01AA PX243M-01AA Datasheet 17 15 N-cm Single ? Not strong enough for direct drive extruder, Uses Imperial #4-40 TPI mounting holes instead of M3 metric US Lin Engineering 4218L-01-10 4218L-01-10 Datasheet 17 ~53 N-cm 3/16 inch = 4.7625 mm 5 mm (Round) * true None US Lin Engineering 4218L-01-11 4218L-01-11 Datasheet 17 (?) ~53 N-cm ~5 mm = 0.1968 inches (D-Shape) true None US Wantai 42BYGHW811 42BYGHW811 Datasheet 17 ~47.1 N-cm 4.9mm ? None
Thingfarm North America US Wantai 42BYGHW811 17 47.1 N-cm 5mm ? None
SparkFun US Mercury Motor SM-42BYG011 SM-42BYG011 Datasheet 17 23 N-cm 5mm true None
Robot Gear AU Mercury Motor SM-42BYG011-25 SM-42BYG011 Datasheet 17 23 N-cm 5mm true None
Mindkits NZ Mercury Motor SM-42BYG011 SM-42BYG011 Datasheet 17 23 N-cm 5mm true None
AusXMods AU Rugao Xinhe 17H185H-04A [1] 17 ~43.8 N-cm  ? ? 2.8v,1.68A/phase,1.65ohm/phase, the -04B variant is dual-shaft
Kysan China Kysan 42BYGH4803 Datasheet 17 49 N-cm 5mm true Successfully tested with Wade's Geared Nema 17 extruder - high flow rates. According to datasheet, 5mm round shaft.
MakerBot US Kysan 1123029 Datasheet 17 26 N-cm 4.78mm (3/16") ? 24mm long shaft
erbyers on ebay US Applied Motion 4017-871 see photos 17 ~8.47 N-cm Dual 5mm ? One side of shaft is splined ~4.3mm 0.5in from face, other shaft is 5mm; wires 95mm long terminating in 0.1" header; date code from 1984
Reichelt DE Trinamic QSH4218-51-049 Datasheet 17 49 N-cm 5.00mm true Tested on MakerBot Cupcake CNC

* Three separate 4218L-01-10 Lin motors from Alltronics all had shafts that measured exactly 5 mm - Jkeegan 20:27, 30 August 2010 (UTC)

Unscientific rules of thumb for motor purchases

1) The longer the motor body generally the more torque the motor has.

2) If a motor is rated 2.5A and your stepper driver produces only 2A your motor will not produce the manufactures rated torque.

3) If a motor is rated 35 volts and your stepper produces only 12 volts your motor will not produce the manufactures rated torque.

4) A motor can safely exceed it's rated voltage with a chopping stepper driver, which is all the reprap stepper drivers, save only the gen3 electronics extruder board hack. It cannot exceed its rated amps without severely overheating and dieing a quick death.

5) Stepper Motors are generally rated for a 50C temperature rise at rated current/torque.

6) ABS melts at 120C but softens at 80C. Therefore you probably can't run your steppers at their full rated torque without melting your plastic motor mounts.

7) Power is measured in Watts and is calculated at Volts X Current.

8) Power made available to a motor will be turned into heat and motion.

9) The more power made available to the motor the higher the amount of heat and motion. Heat is proportionoal to current squared while motion is proportional to current, so losing a little motion (torque) can lose a lot of heat.

10) Power and torque are related. The more power the more torque.

11) A motor's actual rated amps (if missing from the spec sheet) can be calculated by dividing the specified volts supplied to it by the ohms of resistance it has.

Driving those motors

Open Source Stepper Motor Drivers

RepRap Stepper Motor Driver v1.x

Cache-2950488044 8ba115bd24 m.jpg

The first generation of RepRap stepper motor drivers. (Note: These boards were used in the generation 2 collection of electronics.) Uses the L297/L298 stepper motor driver combo. Half-stepping. Handles up to 2A. All through hole. A nice, solid driver. It uses some old technology, so its not as fancy as the newer stepper drivers, but it gets the job done. Read the documentation page here.

RepRap Stepper Motor Driver v2.x

Cache-3218206144 6461b3e2c0 m.jpg

The second generation of RepRap stepper motor drivers. (Note: These boards were used in the generation 3 collection of electronics but could be retrograded to generation 2)

Uses the Allegro A3982 chip which does a bunch of nice things and makes the board much simpler. It also drops the price by $10 compared to the v1.x series. It can handle up to 2A, does half-stepping. The only downside is that its SMT, which can be a bit scary for people. Its all large SMT parts, so its pretty simple to solder it, especially with the solder paste / hotplate method. Read the documentation page here.


AVRSTMD - An open source microstepping driver that uses an atmega168 and current limited h-bridges. Very rad circuit.


The infomation below is given for reference purposes only and was taken from a previous wiki page. The specs of stepper motors can change. Always check with the supplier's specification. This data could well be out of date.

Wiring Your Stepper

Pretty much all of our RepRap electronics are designed for Bipolar stepper motors. Every bipolar stepper motor has 4 wires that need to be wired to the driver board. These are labeled A, B, C, and D for lack of better terms. A and B are connected, as well as C and D. You can generally find out which wires are connected using a multimeter to measure the resistance. If you measure a small resistance (1-30 ohm) then they are connected. Generally, they are color coded and we have datasheets available, so things are easy.

NEMA 17 Motors

Lin Engineering / 4118S-62-07


This is an awesome little NEMA17 stepper motor. It is the primary motor used on the Cupcake CNC. It has good torque and a small size. Here are some of the specs:

  • 200 steps per revolution (1.8 deg/step)
  • 2.5A / phase
  • Phase Resistance: 0.6ohm
  • Phase inductance: .93mH
  • Holding torque: 3240g-cm or about 0.31 Nm
  • Shaft diameter: 0.190"
  • Shaft length: 0.50"
  • Motor depth: 1.34"

NEMA-17 is a standard motor mounting geometry. The outside of the motor housing is 1.7"x1.7".

Name Pololu pin Color
A 2B Red
B 2A Blue
C 1A Green
D 1B Black


Technical Information

Zapp Automation / SY42STH47-1684B

  • 200 steps per revolution (1.8 deg/step)
  • Rated Current 1.68A
  • Phase Resistance: 1.65ohm
  • Phase inductance: 2.8mH
  • Holding torque: 4.4Kg-cm
  • Shaft diameter: 5mm
  • Shaft length: 22mm
  • Motor depth: 47mm
Name Color
A Black
B Red (actually is Green - see datasheet)
C Green (actually is Red - see datasheet)
D Blue


Technical Information

NEMA 23 Motors

Nanotec ST5709S1208-B

This was the original standard RepRap stepper motor. It has 400 steps to one revolution (0.9o per step). It actually has 4 coils (which means it can be wired as both a bipolar and unipolar), but we join up the wires to turn it into a bipolar motor.

Bipolar - Serial

This configuration is suited for our driver boards. It has higher impedance and higher ohms which means it draws less current. In this mode its ideally matched to our L298 based boards. In this wiring setup it can handle 0.85 amps, which is just right. We recommend wiring it in this configuration.

Name Color
A Red
B Black
C Green
D Yellow

You will also need to splice the following wires together:

  • Red/White and Black/White
  • Green/White and Yellow/White


Bipolar - Parallel

This configuration offers higher performance. It has lower impedance, and lower resistance. That means you can push more electrons through, at a faster rate. That basically means it will operate much better. However, it will draw about 1.7 amps, which at the upper end of what the L298 is capable of delivering. We do not recommend wiring it like this.

Keep in mind that two wires make up the start and end of each coil.

Name Color
A Red and Black/White
B Black and Red/White
C Green and Yellow/White
D Yellow and Green/White


Technical Information

Keling KL23H51-24-08B

Cache-2122608287 2c91e1ae6e m.jpg

This is the RepRap stepper motor for the Arduino controller. It has 200 steps to one revolution (1.8o per step). It actually has 4 coils (which means it can be wired as both a bipolar and unipolar), but we join up the wires to turn it into a bipolar motor. It is much cheaper than the Nanotec, and with half-stepping it is almost as accurate. (The Keling KL23H51-24-08B is also used in the Eiffel prototype).

Bipolar - Serial

This configuration is suited for our driver boards. It has higher impedance and higher ohms which means it draws less current. In this mode its ideally matched to our L298 based boards. In this wiring setup it can handle 1.5 amps, which is just right. We recommend wiring it in this configuration.

Name Color
A Blue
B Green
C Brown
D White

You will also need to splice the following wires together:

  • Red and Yellow
  • Black and Orange

Bipolar - Parallel

This configuration offers higher performance. It has lower impedance, and lower resistance. That means you can push more electrons through, at a faster rate. That basically means it will operate much better. However, it will draw about 3 amps, which our L298 is just not capable of delivering. We do not recommend wiring it like this.

Keep in mind that two wires make up the start and end of each coil.

Name Color
A Blue and Yellow
B Red and Green
C Brown and Orange
D Black and White


Technical Information

FL57STH51-2808A (axis extending 1 way) and FL57STH51-3008B (axis 2 ways like the picture)


The stepper motors are provided by Bits From Bytes. They come in two variations. Bought three from Bits From Bytes and I got one with the axis through and extending from both ends, and two with the axis extending one side. Their weight is slightly above 0.6 kg (I measured 619 gram).

To make the unipolar stepper a bipolar one, connect these wires together:

  • Blue and Red/White
  • Green and Black/white
Name Color
A Blue/white
B Red
C Green/white
D Black

Datasheets: FL57STH51-3008B. FL57STH56-2008B

Lin Engineering 5718X-05S

StepperMotor-motor 5704.jpg

The 5718X-05S has the right specification to drive RepRap from the PIC controllers but we haven't tested it yet. It should work with the Arduino electronics too. It has 200 steps per revolution, so you need to set the controller to half-step it to get the resolution needed. Take care to get the model where the output shaft comes out front and back, not just at the front.

Stepper Motors

There is a good article on wikipedia explaining the technology behind stepper motors. The physical size of stepper motors are usually described via a US based standard called Nema, which describes the bolt-up pattern and shaft diameter, the reprap site has an article explaining the standard. In addition to the Nema size rating, stepper motors also also rated by the depth of the motor in mm, the longer the motor typically the more powerful. Stepper motors also have a step size rating, 4 steps within each cycle. The step size, divided into 360 degrees gives the number of steps per revolution. For example, "1.8 degrees per full step" is a common step size rating, equivalent to "200 steps per revolution".

Some stepper motor controllers generate 'microsteps' by generating a sine cosine waveform for the stepper coils. The microsteps become less accurate then the full size steps, but allow finer control and smother operation. Also check the motor torque and the current draw to compare stepper motor strengths.

The pages related to building a Mendel has a list of suppliers of stepping motors.

The power of a motor is usually proportional to the physical size of the motor, The Darwin version of Reprap primarily used NEMA 24 motors, whereas the Mendel version is designed to use either NEMA 14 or NEMA 17 motors. The more commonly used size is NEMA 17 as it is easier to find NEMA 17 motors with sufficient torque compared to NEMA 14.

The StepperMotor page has even more details about the most common motor used in a RepRap/RepStrap.


The Mendel officially requires 0.137Nm torque (1400 g-cm or 1.215 lb-in) for the X, Y and Z axis. Recent designs for extruders (ExtruderController) almost exclusively require stepper motors as well, but no requirements for torque has been given in those designs.

Stepper motor's do not offer as much torque or holding force as comparable DC Servo motors or DC Gear motors. Their advantage over these motors is one of positional control. Whereas: DC motors require a closed loop feedback mechanism, as well as support circuitry to drive them, a stepper motor has positional control by it's nature of rotation via fractional increments.

Power and current

All stepper motors will have a certain specifications for voltage and current, typically 2.8V and 1.68A, as long as the stepper driver/controller does current control you can use any supply voltage greater than the motor's rated voltage. In fact, a large difference is advantageous to the top speed of the motor. If the motor dirver/controller does not do current control, you must use a supply voltage fairly close to the motor voltage (no more than 2x the voltage specified by the manufacturer) or the motor will overheat and burn out its winding insulation or demagnetize its rotor.

The 2.3 version of the Reprap axis controllers do have current control.

Stepper drivers vs Stepper Controllers

To run a stepper motor, two things are normally required: a controller to create step and direction signals(at +-5V normally) and driver circuit which can generate the necessary current/amperage to drive the motor. In some cases: a very small stepper may be driven directly from the controller, or the controller and driver circuits may be combined on to one board.

The stepper controller drives 3 wires -- traditionally labeled "step", "dir", "GND" -- which carry motion information to the stepper driver. (Often these 3 lines are opto-islated at the front end of a stepper driver). The stepper controller is typically a pure digital logic device, and requires relatively little power.

The stepper driver drives 4 thick wires of the stepper motor. The stepper driver contains the big power transistors, and requires a thick power cable to a DC power supply, because all the power to drive the motors runs through it.

PWM and Stepper Drivers

From Wikipedia:[[2]]: Pulse-width modulation (PWM) is a very efficient way of providing intermediate amounts of electrical power between fully on and fully off. A simple power switch with a typical power source provides full power only, when switched on. PWM is a comparatively recent technique, made practical by modern electronic power switches.

Stepper Drivers normally work by chopping up a supply voltage using an embedded PWM chip. These chips do require minor support circuitry which is the primary thing you pay for when you buy a stepper driver. The PWM chips themselves usually have a unit price below $10USD depending mostly on their rated current.

Some example chips include:
Chip Verified Max Amperage Comments
[L293D Yes .6amp(s) Multiples can be stacked on top of each other to divide up amperage.
[A3967] No .75amp(s) Slightly underpowered, at only 750mA/Phase
[A4983] Yes 2amp(s) Can get very warm, active cooling is needed
[Allegro 3977] No 2.5amp(s)
[TB6560] No 2.5-3amp(s)

Stepper drivers

Sourcing stepper motor drivers can be a bit difficult, the 2.3 stepper drivers for the Reprap is very hard to purchase pre-assembled, sourcing the individual parts and assembling the controllers can be done with just a little bit of skill, for those without skills or materials to assemble the boards, generic stepper drivers purchased from the web. In Europe it will usually be more cost-effective to purchase pre-assembled boards compared to purchasing the individual parts and perform a DIY assembly.

Alternative sources for stepper drivers
Manufacturer Verified Location Max Amperage Microstepping Comments
Stepper Motor Driver 2.3 (A3982) Yes US 2amp(s) Half Listed for comparison.
EasyDriver (A3967) Yes US .75amp(s) 1/8 Slightly underpowered compared to other drivers, at only 750mA/Phase. bothacker uses EasyDriver[3], and reports that it has plenty sufficient power for Mendel. Recommended.
Pololu (A4983) Yes US 2amp(s) 1/16 Can get very warm, active fan cooling or passive small heatsink is needed above ~.5A. Recommended.
4 Axis Stepper Motor Driver Controller (A3977) Yes US 2.5amp(s) 1/8 4 stepper drivers on a single board.
DIY CNC No GB 2.5amp(s) 1/8 Can drive 1 stepper, discount when buying several.
Arduino Motor Shield No US .6amp(s) ? Requires Arduino as controller. Can drive 2 servos, 4 DC, or 2 (bipolar or unipolar)steppers, Website notes that you can increase the Amperage max by piggy-backing (soldering a chip onto a chip) another L293D chip on top of the first (and another one on top of that)
TB6560AHQ based No GB/PRC 1.5-3amp(s) 1, 1/2, 1/8, 1/16 can drive 3 to 5 steppers depending on model Read More
Stepper Driver 2.3 Clone by kymberlyaandrus Yes US 2amp(s) Half Same schematic but physically smaller than the original version. The trimpot doesn't have a start/end point so adjusting the current can be more difficult than other boards. The terminal blocks are nice because they don't require making special connectors.
Gecko Drive Yes US 3.5amp(s) 1/10 (only) Can drive 4 steppers
Nanotec SMC11 Yes GER 1.4amp(s) 1/16 with cooling until 2.5amps
LiniStepper by Roman Black no US 3 A 1/18 and "stepless" Open Source: Circuit Diagram, PCB (Board) Layout, and PIC Software all available.
Tri Duino Stepper ??? ??? ??? ??? Open Source
A3979breakout ??? ??? ??? ??? ???

PMinMo stepper motor driver comparison.

Micro stepping

Microstepping between the pole-positions is made with lower torque than with full-stepping, but has much lower tendency for mechanical oscillation around the step-positions and you can drive with much higher frequencies.

If your motors are near to mechanical limitations and you have high friction or dynamics, microsteps don't give you much more accuracy over half-stepping. When your motors are 'overpowered' and/or you don't have much friction, then microstepping can give you much higher accuracy over half-stepping. You can transfer the higher positioning accuracy to moving accuracy too.

Mid-Band Resonance Compensation

Gecko drivers have a feature called mid-band resonance compensation which keeps stepper motors from stalling due to resonance issues that can occur when the motor is turning in the range of 5-15 RPMs. This can be very useful when controlling the steppers on a Tiag mill, for example. However, the stepper motors in a Mendel never run anywhere near that range, so mid-band resonance compensation provides no benefit to a Mendel build.

Further reading

  • Alternative electronics has some design considerations for people designing stepper motor controllers and other reprap electronics.
  • The PMinMO wiki: "Motors" article gives some recommendations for CNC motor selection.
  • The Open Circuits wiki "motor driver" article has a long list of open-source stepper motor drivers, and related information.
  • Some Wikipedia: linear actuator#Electro-mechanical actuators, rather than the motor spinning the lead screw as in most CNC designs, instead the motor spins an internal lead nut, pulling the motor up and down a (non-spinning) lead screw that passes all the way through the motor. The electronics works identically to other stepper motors -- standard stepper motor electronics can drive it. One RepRap researcher points out that this makes the mechanics simpler and, with a few changes to the design, could potentially lower total cost of a RepRap.[4][5][6]