Motor driver and controller boards

An Arduino board can produce about 40mA at one of its outputs. Even the smallest stepper motor needs several times that. The NEMA motors need at least one amp. So the tiny current produced by the Arduino must be boosted with a driver board.

Here is an example. The data goes in to the pins on the left labelled IN1 to IN4. A much higher current comes out of the white socket labelled A, B, C, D. The letters are slightly out of line to match the LEDs.


This shows how the board connects to a small stepper motor. The pair cost about £6.


This driver board uses the L298 chip mounted on the heat sink. This can produce up to 2A so could power a NEMA17 motor. It costs only about £5.


All of the above only pass on the digital codes from the Arduino board, so are only driver boards. The following two also act as controllers. They allow us to microstep the motor and can set a maximum current to limit heating. Finally they only require two signals, one to set the direction and the other to step the motor. This simplifies the code on the Arduino.

This is a much more sophisticated device. It provides several amps for the motor from the terminals marked A and B. To move the motor only two signals are needed. The direction of rotation is set by 0 or 5 volts at the DIR terminals and the motor steps once when a 5 volt pulse is put into the PLS terminals.

Better still it produces the additional current levels for microstepping. You can select up to 25600 steps per revolution with tiny switches. In the same bank of switches you can choose the maximum current and so limit torque and heat.

However the device is largish, costs about £30 and can only run one motor.


The most recent controller that I am trying.

This device is a slight compromise. It has more limited microstepping and current selection than the 2M542 but it can control four NEMA motors and again only needs DIR and PLS signals. It uses Toshiba TB6560 chips and costs about £60.

It can be controlled 'manually', using physical switches, through the 15 pin D plug, and by a computer or Arduino through the 25 pin plug. For the PC, Mach3 CNC software is supplied with the device. You can also connect a position display.


I bought the above controller from savebase on eBay. They are a Hong Kong company but they despatch speedily from a base in the UK. The company is very helpful over technical queries, giving speedy, clear and complete answers. This is quite rare with email help systems.


(C) Peter Scott 2012

Last edit 23 December 2015