Makerbot Motherboard 2.4

From RepRap
Revision as of 19:24, 26 February 2015 by Phd0 (talk | contribs) (Pinout)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The horrible pages below was taken from a crappy wiki called wikidot which uses completely different formatting than mediawiki


flickr: MakerBot Motherboard v2.4

The MakerBot Motherboard is a shield for the Arduino MEGA. This board is the heart of your MakerBot and controls all the other boards. Its all about connectivity. The Arduino MEGA provides the USB interface, and the motherboard has an SD card slot for storage. For motion control, it has headers for five stepper drivers, so it can drive your XYZ positioning system and have room left over for controlling two extra stepper motors. Along with steppers, it has headers for 6 endstop cables (X+/–, Y+/–, Z+/–) and an e-stop switch. The interface connector is can be connected to an interface board for controlling the machine without a computer. To control the extruders, it comes with 2 rs485 ports and can support up to five RS485 ports. It accepts a standard ATX header for power.

Powerful Arduino MEGA Core

flickr: Arduino MEGA

The motherboard is build on top of the Arduino MEGA from the open source Arduino project. This new board has more IO pins, more memory, and more program space. This translates into a more powerful motherboard with more capabilities and lots of room for modification. It also means bigger print buffers, normal USB to serial support, and better future compatibility.

Control up to Five Stepper Drivers

With all the extra pins available on the motherboard, we decided to add headers for five stepper drivers. That means you can easily control five different stepper drivers. You can easily drive an XYZ cartesian bot and have two steppers left over for extruders, rotary axes, or whatever else you can dream up. The headers are compatible with both v2.x and v3.x stepper drivers.

flickr: Stepper Headers

Full Endstop Support

Endstops are a critical part of a successful 3D printing experience. That's why we integrated the endstop connectors directly onto the motherboard. We switched to a 0.100" pitch, indexed connector that fits perfectly with our endstop cables. There are a total of seven endstop connector headers available: X+, X–, Y+, Y–, Z+, Z–, and an E-Stop header for those who wish to add an emergency stop button to their MakerBot. Most machines will only need three endstops, so the other 4 are available for your modification.


20 Pins to Expand On

We want you to be able to hack your MakerBot easily and simply. That is why we've provided a 20 pin IDC header (2 rows of 10 0.100" spaced pins). None of these pins are currently used for anything else, so you are free to hook up whatever you'd like here. More steppers, an LCD screen, or an interface board with buttons are all easily within your reach.



The motherboard is the heart of the system: It connects to your computer to receive instructions, and it tells the rest of your MakerBot what to do. This board is all about the connectors. Wiring it up can seem intimidating at first, but ultimately it is a very straightforward process.

Stepper Drivers

The motherboard is capable of driving up to five different stepper drivers at the same time. These motors are sometimes referred to as an axis (singular) or axes (plural). The headers for the stepper drivers are labeled X, Y, Z, A, and B.


1 N/C This pin is unused and not connected to anything on the motherboard.
2 GND This pin is connected to ground on the motherboard.
3 STEP This pin is the step pin, and will send a pulse to the stepper driver when it needs to take a step.
4 DIR This pin is the direction pin. HIGH = forward, LOW = reverse. This can be configured in software.
5 ENABLE This pin is the enable pin. LOW = enabled, HIGH = disabled. This pin turns the stepper driver on or off. This can be configured in software.
6 N/C This pin is unused and not connected to anything on the motherboard.


Power Input

This is a standard 20 pin ATX power connector. It is designed to interface with any ATX power supply. A comprehensive pin-out for the ATX standard is available at


Endstop Connectors

The endstops tell your MakerBot when it has reached the minimum or maximum of its movement limits. This header is where they are plugged into. It is polarized which means the connector can only be inserted in the correct orientation.


||~ PIN ||~ NAME ||~ FUNCTION ||
|| 1 || 5V || This pin provides 5V to the endstop switch. ||
|| 2 || GND || This pin is connected to ground on the motherboard.  ||
|| 3 || GND || This pin is connected to ground on the motherboard.  ||
|| 4 || SIGNAL || This pin is connected to a digital input pin on the motherboard.  LOW = endstop activated, HIGH = endstop normal.  The interpretation of this value can be configured in software. ||


RS485 Connectors

Communications between the motherboard and the extruder controller occurs over a serial protocol called RS485.
RS485 is a differential signalling protocol that helps reduce noise problems and communication errors.

This connector provides optional +12V power to a board which can simplify connections.


Do not plug this board into your router. Bad things might happen.

1 RS485A This is channel A of the RS485 serial communications protocol.
2 RS485A This is channel B of the RS485 serial communications protocol.
3 +12V This pin is connected to the +12V power supply.
4 +12V This pin is connected to the +12V power supply.
5 +12V This pin is connected to the +12V power supply.
6 GND This pin is connected to ground on the motherboard.
7 GND This pin is connected to ground on the motherboard.
8 GND This pin is connected to ground on the motherboard.

Photo on flickr

Reset Button

The reset button on the front of the board will reset the connected Arduino MEGA when it is pressed.


Interface Connector


The Arduino MEGA has a number of unused pins that are available for hacking and general awesomeness. We've made them available in a standard .100" pitch 20 pin header. You can wire all sorts of cool stuff up to it, and modify the software to your heart's content.

|| 1 || 5V || This pin is connected to +5V from the power supply. || - ||
|| 2 || GND || This pin is connected to ground on the motherboard. || - ||
|| 3 || D33 || Digital I/O || Port C, 4 ||
|| 4 || D34 || Digital I/O || Port C, 3 ||
|| 5 || D35 || Digital I/O || Port C, 2 ||
|| 6 || D36 || Digital I/O || Port C, 1 ||
|| 7 || D37 || Digital I/O || Port C, 0 ||
|| 8 || D38 || Digital I/O || Port D, 7 ||
|| 9 || D39  || Digital I/O || Port G, 2 ||
|| 10 || D40 || Digital I/O || Port G, 1 ||
|| 11 || D41 || Digital I/O || Port G, 0 ||
|| 12 || D42 || Digital I/O || Port L, 7 ||
|| 13 || D43 || Digital I/O || Port L, 6 ||
|| 14 || D44 || Digital I/O || Port L, 5 ||
|| 15 || D45 || Digital I/O || Port L, 4 ||
|| 16 || D46 || Digital I/O || Port L, 3 ||
|| 17 || D47 || Digital I/O || Port L, 2 ||
|| 18 || D48 || Digital I/O || Port L, 1 ||
|| 19 || D49 || Digital I/O || Port L, 0 ||
|| 20 || D13 || Arduino Debug Pin ||  Port B, 7 ||

Arduino Connector

The motherboard is a shield for the Arduino MEGA. As such, it has a bunch of downward facing pins that connect it to the Arduino. The Arduino and the motherboard are essentially one single unit. Once you plug them together, its a good idea to keep them plugged together.



The motherboard has the option to attach a piezo buzzer. Since having a beeping, blinking MakerBot might be annoying to some, we've decided to make it optional. If you'd like to enable your piezo, simply solder a piezo buzzer like this one to the footprint shown below. If your piezo has a positive and negative, the positive pin is marked on the PCB.


SD Card

The motherboard has a standard SD card socket. It supports cards up to 2GB in size, and they must be formatted at FAT16. The motherboard can read files from the SD card and it can write files to it. Printing from SD card can significantly improve the build quality.

This is because the USB to Serial link is relatively slow, so high resolution prints that have many small line segments tend to print badly as the stepper motors can stop for some microseconds between line segments. This is completely eliminated when printing from the SD Card directly.

Another nice benefit of printing from SD card is that your MakerBot can be disconnected from the computer once the print has been started.





Partlist at Thingverse



The MakerBot Motherboard v2.4 is Open Source Hardware and is licensed under the GNU GPLv3.



MakerBot and the community provide firmware to drive the MakerBot Motherboard v2.4.


The motherboard is a derivative of the RepRap Motherboard v1.2 which was originally designed by Zach Hoeken of MakerBot Industries.