Mega controller

From RepRap
Jump to: navigation, search
Crystal Clear action run.png
Mega controller

Release status: Working

Mega controller.JPG
Single board solution, Remix of Arduino mega and RAMPS
CAD Models
External Link


After using RAMPS for a long time I am still quite fond of it. There are some aspects of the board however that make it unusable for future electronics, which should be reliable and cheap. Also the wiring can we a bit fiddly. I have combined the Arduino MEGA and RAMPS boards into a single board solution. Only the stepper drivers are still modules for easy replacement.

Mega controller is based on many famous open-source products including: Arduino Mega 2560, RAMPS, SD Ramps. Therefor this product is an already proven design. It combines all major features of these board into a single board solution for more reliable 3D-printing.

Mega controller has a powerful Atmega2560 processor with 256 kB memory, running at 16Mhz. The board can be connected to a PC using a normal USB cable. The board is compatible with the Arduino Mega 2560 and will therefor be easily programmed from the Arduino IDE.The only difference is the usb driver,because I use CP2102 as USB to Serial chip( you can find drivers here:

Mega Controller connections.jpg

Schematics for the controller -> File:Mega controller.pdf

Configuring Arduino

The board is supplied with a Marlin firmware. Because of continued development and your specific needs, you may want to upload another firmware.

Testing the board

To test the functionality of the board, a test firmware is available. You can download it from the files section. This firmware will help you test the board. Disconnect everything except the USB cable to your computer. Upload the the test firmware to the board with Arduino, the blue debug LED should blink every second. By using the serial monitor in Arduino the board will provide an output like: T1 1023 T2 1023 T3 1023 TC1 700 TC2 700 These values represent the resistance measured from t1 to t3 and thermo couple 1 & 2. When you connect a thermistor to the pins, the corresponding value in the serial monitor should change to about 890.

By connecting the 12V lines, the MOSFETs should have power and their LEDs will blink in order. This verifies the MOSFETs and 12V power are OK.

Also the stepper motors should turn when connected, with the 12V lines and stepper drivers in place. They will turn a short time and switch direction.

These three tests will verify the basic functionality of the board.

Basic setup

This paragraph will show you how to connect the board. This is just a basic example, your requirements may differ. There is a lot of community support available in the RepRap forums. By placing your questions there other users may benefit of the information too.

First connect your computer with a standard USB cable. The power LED should light up and the blue debug LED should blink once. The rxd and txd LEDs near the USB connector may blink fast for a short period.

Put the stepper drivers in the slots, and connect the stepper motors. You can connect up to 7 stepper motors, 1 for each axis, except for the Z-axis, which allows two stepper motors to be connected.

The power supply should be connected to the power screw terminals. Mind the polarization, the yellow wires should be +. Connect the heated bed to HB, this terminal allows larger currents, up to 14A. The first extruder heater should be connected to E1. A second extruder can be connected to E2. Fans can be connected to the fan1 and fan2 terminals.

You can easily connect end stops to the board. There is support for 6 end stops (3 min, 3 max). For opto end stops you will need the S(ignal), - and + pins. For mechanical end stops the S(ignal) and – pins are sufficient.

The thermistors for reading heated bed and extruder temperature can be connected to the thermistor pins. Polarization is not an issue here.

Dual extruder setup

Hooking up LCD

Refer to Mini panel.

Hooking up the LCD display is pretty easy, just follow the wiring diagram below. Note that the connector is turned 180 degrees in the image. The trimpot on the board sets the contrast of the LCD, if you don't see anything, you probably need to turn this.

Mega controller MiniPanel.JPG

Connecting end stop

You can connect either a opto end stops or a microswitch. Refer to you firmware on how to properly configure the firmware to use the end stop. The board has six headers for end stops, one for each stepper motor (or 2 for each axis). Each header has three pins:

1. + (5v output) 2. - (ground) 3. S (signal)


The USB-to-Serial chip needs drivers, you can get it here:

How to get it