Thing-O-Matic Electronics Installation

Before You Begin

Wiring up the electronics is a critical part of the build. There are quite a few wires to connect, but they are all fairly straightforward. To simplify the instructions, we've photographed each connection step. This is to show you clearly what things connect, and where. When you wire up your electronics, each step will build on the last and you will end up with dozens of cables going from board to board. Don't worry, this is normal. Your Thing-O-Matic is a nicely complicated piece of modern technology that you will have built yourself.

Static Safety: these boards, like all electronics, are extremely vulnerable to damage by static electricity. Always ground yourself before handling electronics by touching a plugged-in power supply or another unpainted, conductive, grounded object.

Power & Connections: never, ever "hot-swap" any components, especially stepper motors. Always power down before plugging or un-plugging any electrical connection. A powered, enabled stepper driver will momentarily induce a serious amount of current when unplugged, and almost invariably damage the stepper driver in question. Making or breaking other connections may cause damage as well.

Power Supply Notes: The included Power Supply has protective circuitry that will prevent it from turning on immediately after a power outage. For that reason if you turn it off and it does not power up turn it off and wait five minutes for it to reset.

The included Power Supply has been tested for the US North American Market and though our manufacturer has specified that it will work with 220 50hz power if there are problems we suggest you replace it with a power supply from a local vendor.

Special note: Some kits have been supplied with 4-pin Molex y-splitters for power. It is inadvisable (ie "don't do this") to chain molex y-splitters. We recommend that the Extruder Controller be delivered power directly from one of the original molex plugs off of the power supply rather than being attached to a molex y-splitter.

Below is a nice illustration of the electronics routing you will complete through this process, created by Torsten Lyngaas.


Preparing Your Workspace

As is always the case when handling bare electronics, you should try to keep yourself and your workspace static-free. Touching a sink or large metal object is a good way to make sure that you're not carrying a residual static charge that could damage a board. Working while wearing slippers on a thick pile carpet is not recommended.

Disabling Auto-Reset Functionality

A classic problem with Arduino devices is that they are designed to be reset when certain serial lines are toggled. Unfortunately, the serial drivers for many operating systems toggle these lines by default when a serial port is opened. For many Arduino applications, this isn't a problem; however, if you're in the middle of a multi-hour print, accidentally resetting your machine can be very traumatic. We avoid this problem by cutting the reset trace on the Arduino MEGA, disabling the auto-reset functionality.

Note: If you received your Arduino MEGA as part of a Thing-O-Matic kit or a Generation 4 electronics kit, skip this step. We've already done it for you at our factory! You should only need to cut the reset trace yourself if you've purchased an Arduino MEGA separately from us, or from another source.

Assemble the Motherboard Stack

The motherboard is designed as a "shield" that plugs into the Arduino MEGA. Take your motherboard, line up the pins with the sockets in the Arduino MEGA, and with a slow, steady pressure fit them together. You may have to rock the board back and forth a little bit to get the motherboard seated properly. Take your time and don't put too much pressure on any one edge or corner of the board to avoid bending any pins. Once the boards are tightly plugged together and you can no longer see a significant gap between the headers and the sockets, your board is fully assembled.


Attach Rubber Feet to Bottom

Included in your hardware burrito are four small rubber feet. These are adhesive backed, so peel off the backing and then stick them onto the bottom plate as shown.


Attach Boards to Bottom Plate

The very first step is to get all the boards attached to the Bottom plate. Since going to production, we've managed to come up with a better PCB placement strategy, so now the markings on the plate are obsolete. It is a good idea to cross them out, and re-label them with a marker.


Attach Motherboard to Bottom Plate

Using four 3/4" spacers and four M3x30 bolts, attach the motherboard to the Bottom Plate.


Attach Extruder Controller to Bottom Plate

Using four 1/4" spacers and four M3x16 bolts, attach the Extruder Controller to the bottom plate.


Attach Stepper Motor Drivers to Bottom Plate

Using twelve 1/4" spacers and twelve M3x16 bolts, attach three Stepper Motor Drivers to the locations shown.
Follow the big red labels here, not the locations screened on the board. X and Z are swapped, but the other boards are OK in the screened locations.
Note that this is shown with the extra board for the Stepstruder MK6.


Mounting the Y-Axis Mechanical Endstop

Using two 1/4" spacers and two M3x16 bolts, attach one endstop as shown.


Mounting the Z-Axis Mechanical Endstop

Using two 1/8" spacers and two M3x16 bolts, attach one endstop as shown.


Route the Wires

Routing the wires can be fairly tricky, so here are the recommendations for doing it right. The wires are to be run down on side of the machine to allow easy access to the electronics. The wires are separated into groups to avoid electrical noise.

Wire Type Routing Hole
Thermocouple Back Left
Fan Back Left
X-Stage Stepper Back Left
Filament Tube (opt.) Back Left
DC Extruder Motor Back Right
Extruder Heater Back Right
Z-Stage Stepper Back Right
Z Endstop Back Right
Platform Wire Harness Front Right
Y Endstop Back Right
X-Stage Endstop Front Right


NOTE: The fan has been discontinued, and the fan mount has been removed in favor of an open left side; these instructions are here for historical reference only.

In testing, we've found that running the fan during builds can cool the object and increase cracks in the model. More testing is needed so consider the fan experimental at this time. If you have installed it, consider plugging it in optional and experimental.

The fan should already be mounted to the left side of the body, so make sure it's lead routes through the back left cable routing slot. Note that the molex connector is a very tight fit through the slot. (Connector should be turned on its side and inserted at right angle to the stage.) The fan power cable must be routed before any other cables through this slot.


Z Motor + Z Endstop

The Z motor cable should go through the top back right top cable routing slot and fall straight down to the back right slot of the acrylic platform. The Z endstop (Z-max) cable joins the motor cable tracing along the top of the case and dropping down through the back right slot of the acrylic platform.


Extruder Wires

The extruder heater and motor wires should go through both the top and bottom holes of the back right corner. If there isn't enough wire to take the heater wires through the top, you can just go through the bottom and a ziptie part of the way up the side.


Plastruder MK5 DC Filament Drive and Thermocouple

The wire for the DC motor is a powerful emitter, and should be kept as far from the thermocouple wire as possible. Route the thermocouple through the back left and the DC motor through the back right.


Automated Build Platform Cables

Zip tie all Automated Build Platform cables to the front right corner of the ABP.


Route the wires through the front right cable slot.


Y Motor + Y Endstop

The Y Motor hangs down from the acrylic base platform and can be routed directly to the boards. The Y-axis endstop (Y-min) is mounted on the back center top of the acrylic platform and its cable may be routed through the back right cable slot.


X Motor + X Endstop

The X motor cable comes out the back left corner of the Y-stage and routes through the back left slot of the acrylic stage.


The X-axis endstop (X-min) is seated on top of the right edge of the Y-stage and its cable dangles forward for routing through the front right cable slot.


Stepper Motor Drivers

Set Stepping Modes

Ensure both switches on the stepper driver are set to "ON" as shown. This puts the drivers into "microstepping" mode, which makes your Thing-O-Matic perform smoothly.


Separate the Wires

The stepper drivers are connected to the motherboard via a 6-pin IDC cable. You must make these cables yourself, which is a fairly simple task. Once that is complete, you just plug and play.

The stepper motor drivers ship with a 10-wire IDC cable in order to be compatible with the Generation 3 Electronics. You're going to be using all Gen4 stuff, so let's turn the 10-wire IDC cable into a 6-wire IDC cable.

All you really need to do is remove 4 wires from the cable. We've used rainbow cable for clarity, but yours may be either rainbow colored or grey. If you have a rainbow cable, we highly recommend removing the one brown wire from the left, and the three gray/black/white wires from the right to leave you with six pins of bright rainbowy goodness. If you have a grey cable, remove the four wires on the side without the red stripe.


Attach IDC Connectors

IDC connectors are an awesome connection technique for making mass connections. The idea is pretty simple: the connector has metal "teeth" that "bite" through the wire insulation and make an electrical connection when the connector is clamped onto the cable. If you look into the IDC connector, you can see the individual teeth in two offset rows.


Making the connectors is pretty simple, if you follow these rules:

  1. The cable color order must match on both ends of the IDC connector.
  2. Have someone double check your work before you clamp it down.
  3. Only apply force straight down into the top of the IDC connector.

To actually make the cables, take one cable and two IDC connectors (one for each end). Insert the cable into the gap in the IDC connector, and make sure everything is lined up nicely. Make sure the color order (when viewed from the same side) is identical for every single connector you make.


Once you have it right, gently press down on the connector with your fingers. This will make the connector grip the cable and keep it from slipping out when you go to clamp it.


Vise Based Clamping

Clamping the connector is easiest when you use a benchtop vise. If you have a vise, put your connector into it and then clamp it until the connector is closed like the pictures above. Do not clamp it any farther as you will crush the connector.


Alternative Clamping

Making these connectors has been achieved with pliers, C-clamps, or even a piece of wood. We don't recommend doing it this way, but if you absolutely have to improvise, then make sure that you are applying even pressure straight down into the connector from the top. Any other direction and you risk breaking the connector.


Wire up Steppers Controls

Once the IDC cables have been made, it's very simple to wire things up. Simply plug each cable into the appropriate stepper and appropriate header on the motherboard as shown.


Connect ATX Power to Steppers and Extruder

The stepper drivers and extruder controller are powered by the large four-pin Molex connectors. Should your PSU not already provide adequate number of 4-pin Molex ports, a Molex Y-splitter cable will be provided with your kit which will allow the power cables to reach all the boards.

Do not plug the extruder controller into the Y-splitter cable!

The extruder controller draws more current than the stepper boards. If your power supply doesn't provide enough molex connectors for everything, plug one of the Molex connectors from the power supply directly into the extruder controller, and use the Y-splitters to hook up the stepper motors.

Connect Stepper Motors

Now connect the stepper motors to the drivers. The "ramps" on the stepper connectors should face the inside of the stepper board. They will keep the connector from vibrating loose and force you to insert them in the right orientation.

You probably won't be able to attach the connector for the extruder stepper ("Stepstruder motor") to the A-axis stepper motor driver board until you're closing up the bottom of the bot, so just leave it in position to connect later.


Extruder Controller


The thermocouple is the temperature measurement device for the extruder controller. This wire has a positive and a negative. Its important to hook them up right. The yellow should be positive, and the red negative. Wire them up as shown.

Do not hook this up backwards: If you do, the temperature will read zero regardless of actual temperature. This will continually run the heater coil, and will damage your extruder controller and/or Plastruder's hot end.


Extruder DC Motor (MK5) / Stepper Motor Cooling Fan (MK6)

If you're building a Thing-O-Matic with a MK5, the DC motor for the Plastruder MK5 has a red and black wire. Connect the red wire to 1A and the black wire to 1B.

If you're building a Thing-O-Matic with a Stepstruder MK6, this terminal will be used for the stepper motor cooling fan. Connect the red and black the same way for the MK6, but make sure they lead to the cooling fan's red and black leads.


Extruder Heater

The extruder heater does not have polarity. It should be wired up to the terminal marked "HEATER" as shown.


Heated Build Platform Heater

The heated build platform heater should be wired into the terminals marked "EXTRA". The heated build platform heater does have polarity, so make sure you hook up the wires exactly as shown, with the red wire in the terminal closer to the "HEATER" terminals, and the black wire in the terminal closer to the "FAN" terminals.


Automated Build Platform Motor

The automated build platform motor should be wired into the right-hand terminal of the two marked "FAN". Do not wire it into the left-hand "FAN" terminal; this will cause strange behavior.


Build Platform Temperature Sensor

The temperature sensor should plug directly into the extruder controller as shown. Make note of the orientation, and make sure yours matches the picture.

Do NOT plug it into the port with the word "QUADRATURE" marked below it on the board. Even though it fits perfectly, that's not where it's supposed to go!



The RS485 connection is how the motherboard and extruder controller communicate. We've provided an Ethernet cable that connects the two boards. Neither of the boards supports Ethernet, we are simply re-using low-cost, off-the-shelf components.

Do not plug either of these components into the network port of a router, home computer, etc. Bad things may happen if you do.



ATX Power

The motherboard is powered by the big, 20-pin ATX connector. If yours seems to be four pins too big, that is because there is an optional 4-pin connector that piggybacks on the 20-pin connector. It should simply slide off the 20-pin connector. Remove it and then plug the 20-pin connector in as shown.

Note 3/2011: If you have received a newer Sparkle or Coolermaster power supply, please make sure that the modification on this page has already been done to your MakerBot Motherboard: CoolerMaster Power Supply Fix



The endstops are a critical part of your Thing-O-Matic. The very first thing it does when starting a build is to "home" for the X, Y, and Z axes.

X Minimum Endstop

The endstop for the X axis is at the minimum. Plug it in as shown.


Y Minimum Endstop

The endstop for the Y axis is at the minimum. Plug it in as shown.


Z Maximum Endstop

The endstop for the Z axis is different: it is at the maximum of the Z axis. Make sure it makes it into the correct header. It might be hard to plug this one in until you are closing up the bottom of the machine; if that's the case, it's OK to hold off until then. But don't forget, or your Z-axis homing won't work.


All Endstops Plugged

Here is what all the endstops look like when fully plugged. Make sure yours match this photo.


(MK6+ Only) Connect E-STOP

If your bot is equipped with a Safety Cutoff Kit then you should also attach the cutoff's e-stop cable to the port labeled "E-STOP" on your motherboard.


Adjust your stepper motor drivers!

Now's a good time to take care of something extremely important: adjusting the voltages on your Stepper Motor Drivers. There are several different types of stepper motors used in the Thing-O-Matic, and they each work best with slightly different settings.

Set your voltage

Make sure that the red voltage selector switch on the back of your power supply is in the correct position. The switch should be pushed to the right, with the text "115V" visible, in areas with 120V power mains (USA and Canada). The switch should be set to the left, with the text "230V" visible, in areas with 230V power mains (EU, China). Make sure you don't have the power supply set to "115V" when plugging it into a 230V outlet!


Plug in the power and turn it on

Find the black power cord provided in the kit. Plug one end into the power supply on the left side of your machine and the other end into a wall socket. Flip the switch on the power supply to ON. The fan on the power supply should start up.

Now that you've got the power flowing to your bot, you can adjust the stepper motor drivers!

Adjusting Stepper Driver Potentiometers

The Generation 4 stepper drivers have four adjustable potentiometers labeled PFD, RC1, REF, and RC2. This allows modularity in the electronics so that stepper motors of all different specs and sizes can be controlled with the same driver. A brief description of what each potentiometer controls can be found on the page about the Stepper Driver v3.3

The pot labeled REF controls current supplied to the motor. This is the most commonly adjusted pot. Do not adjust the others unless you know what you are doing. Conveniently, each pot has a test point for measuring with a multimeter. Put the positive probe on the test point, and the negative probe to ground.


Note that these values are with the steppers DISABLED, not enabled. 'DISABLED' means that you have not activated your stepper motors in ReplicatorG

If you do not have a multimeter, counter clockwise rotation will decrease the value, and clockwise will increase for REF and PFD — but it's the opposite for RC1 and RC2. There are small indications of the total range for each potentiometer engraved in its case. Suggested values for the stock Thing-O-Matic steppers are:

Stepper Motor REF Voltage (V) Rotation between Max and Min
X & Y 0.600 Between 1/8 - 1/4
Z 0.617 Between 1/8 - 1/4

Note: If you set the current too high, the motor will be eventually get too hot to touch.

If your Z axis stepper motor is making high pitched noises while set to the above REF value, then you will need to change the other potentiometers as well.

Since the motor suppliers have changed over the course of the Thing-O-Matic's lifetime, you first need to identify which motors you have from the image below, and then adjust their respective potentiometers accordingly.


The suggested pot values for the Z-axis stepper motors ONLY:

Stepper Motor PFD (V) RC1 (V) REF (V) RC2 (V)
Makerbot Leadscrew Nema17 2.311 0.952 0.617 0.963
Moons Leadscrew Nema17 2.311 0.952 0.617 0.963

The suggested pot values for the X&Y-axis stepper motors ONLY:

Stepper Motor PFD (V) RC1 (V) REF (V) RC2 (V)
Makerbot Nema17 1.952 0.953 0.600 0.955
Moons Nema17 1.952 0.953 1.68 0.955

The suggested pot values for the Stepstruder MK7 stepper motor ONLY:

Stepper Motor PFD (V) RC1 (V) REF (V) RC2 (V)
Stepstruder MK7 1.952 0.953 1.68 0.955

The suggested pot values for the Stepstruder MK6 stepper motor ONLY:

Stepper Motor PFD (V) RC1 (V) REF (V) RC2 (V)
Stepstruder MK6 2.31 0.94 1.56 0.94

Attach Bottom to Body

It's time to close it up! Connect any cables that wouldn't reach with the bottom open. Then attach the bottom plate to the body.


Fully Assembled



You've successfully completed the mechanical build of your Thing-O-Matic!

If you're building a Thing-O-Matic with a Stepstruder MK6, make sure you complete the Stepstruder MK6 Electronics Assembly before continuing.

Next Step: Properly Tension Your Timing Belts

Unless otherwise stated, the content of this page is licensed under GNU Free Documentation License.