Electronics & Motors Subset

Obsolete Page

The subsets have been replaced by kits.
The equivalent replacement kit for Electronics & Motors subset is coming soon.


This subset includes NEMA23 stepper motors + Makerbot/Reprap driver boards for 3 axes, one Arduino, plastic pads serving as limit switches, connectors and wiring.



  • DIY: Arduino, 3 SMD 1.2 Kits, 3 stepper motors are $140 + shipping/taxes. Other parts/components are not included (todo).
  • Shipping weight: 5 lbs


  • ATX PSU power supply for driver boards
  • Power for Arduino (typically USB connection)


components/parts qty
Arduino Duemilanove 1
NEMA23 stepper motor 3
Reprap Stepper Motor Driver v1.2 Kit 3
limit switch header 6
limit switch connector 6
limit switch UHMWPE angle 6
22k resistor 6
black hookup wire 6 ft
red hookup wire 6 ft
green hookup wire 6 ft
0.1" header 16 pins
6 pin ribbon cable 6 ft
screw 6-32 3/8" 3
nut 6-32 3
washer 8 3
washer 10 6

Wiring diagram


The diagram shows how to wire an axis with Electronics & motors subset. Since I/O pins are mapped to stepper boards in the firmware, it's not important which specific pins the boards are connected to. Just remember the sequence on the connections - STEP, DIR, ENABLE, MIN, MAX for Stepper Motor Driver v1.2. This might be different for other versions.


L298 chip MUST be heatsinked when powered on with the stepper motor connected, otherwise it will quickly fry.

When 2 LEDs near the motor connector are on but the stepper is not rotating, the current through the stepper coils maxes out and reaches about 2.1A (measured on v1.1 of the board). The stepper is rated for 2.3V, 2.3A while the chip is rated for 2A. The chip (and small heatsink) get really hot when the motor holds the same position for a while.

Don't touch the heatsink/chip or you'll burn your fingers.

To deal with this, the chip is heatsinked with a 3" angle connected to the frame, which dissipates the heat really well, allowing the chip to work slightly outside of its rated envelope. In addition, the firmware disables the steppers after each move.

If the steppers have to stay on (for example with belt drive), then heatsinking + active cooling with a PC fan is recommended - both for the board and the motor.


The boards as well as several connectors need to be soldered by hand.
Check detailed build instructions if the info below is insufficient.

Stepper driver board v1.2

With several exceptions, follow the build instructions here: http://www.reprap.org/bin/view/Main/Stepper_Motor_Driver_1_2

The exceptions are:

  • 3 pin headers are used for limit switch connection instead of RJ45 jacks
  • Contraptor uses angle for heatsinking which allows to connect the heatsinks to the frame
  • IDC connector goes only on one side of the ribbon cable. A 5-pin 0.1" header is soldered to the other side of the cable (see the wiring diagram).

Connection to stepper motor

The stepper motor supplied in the kit should be connected as follows:

  • A - black/gray wire
  • B - green wire
  • C - blue wire
  • D - red wire

The white and yellow wires are not used; they should be isolated from the rest (and each other).

To reverse the default motor direction, you can swap wires A and B in the connector.

Other motors may use different color coding.

Connection to Arduino

On the stepper board end, the ribbon cable should be connected to IDC plug so that the red stripe corresponds to pin 1 (triangle). In this case the pinout at the Arduino end of the ribbon cable will be:

  • pin 1 (red)
  • pin 2 - GROUND
  • pin 3 - STEP
  • pin 4 - DIR
  • pin 5 - ENABLE
  • pin 6 - MIN
  • pin 7 - MAX
  • pin 8
  • pin 9
  • pin 10

FIXME: The wiring diagram shows 6-pin ribbon cable with pin 1 = STEP which is incorrect

GROUND connection can be ignored if:

  1. Boards are mounted via heatsink to the frame
  2. Arduino GROUND is connected to the frame

Wires 3-7 of the ribbon cable need to be soldered to 5-pin 0.1" header which will connect the board to Arduino.

Connection to limit switch

See: http://www.contraptor.org/make-limit-switch
Need to merge


A generic PC power supply is used to power the stepper boards. Arduino is typically powered by USB bus.
To use the PSU switch to turn it on/off, the green wire should be connected to any black wire on the PSU motherboard connector.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License