Opinions and expertise on control boards


So I’d like to build a 3d printer know that I know I enjoy it as a hobby. I can kinda work around figuring the rest of the hardware but the control board is a daunting task for me. I currently have an Anet A8 and don’t really have many complaints other than the precision of the printer. It doesnt print very good small circles and the tolerance isn’t that great either. I’d like the printer I’m building to be much more precise and I originally thought it had everything to do with the precision in the stepper motors, but it seems like the board has a part in the precise control of the motors. So the question is which board should I go with? I’m not electronically smart so plug and play would be great. Simple programming would be nice, I’d like to use marlin. I would like the ability to run a heated bed, dual extruder, auto bed, and an lcd. Maybe some room for leds would be cool too. For the power source I wasn’t planning anything too fancy.


Hi JL,

Welcome to the forum. Two of the best first time control board solutions are:
[]MKS GEN 1.4 - a single board solution
]Arduino Mega 2650 + RAMPS 1.4

These are straight-forward systems that are well documented and well supported. Both will also require motor drivers (small boards afixed to the main board) which DO have an impact on precision of the steppers.

Keep in mind that the mechanical build is also very important to the quality of prints. Choose your parts wisely and take your time. We’ll be here to help!

:edit by Moorviper: MKS RAMPS 1.4 -> MKS GEN 1.4 :wink:


i have now switched from ramps to mks gen 1.4 because the placement of the stepper motor socket are better.
I still have to check the datasheet of the connectors.

What is nice with the mks gen boards:
They do a little quality control. the ramps boards from china have mostly no qc and some are dangerous because of bridged traces, bridged stepper jumpers ^^ …
On one of my 2 ordered mks gen 1.4 was a test firmware installed.

here a picture with the old and new version


I personally run a few different combinatons of boards
Ramps 1.4 with Arduino Atmega 2560
Ramps 1.5 with Re-Arm (32 bit)
Popprint KFB 2.0 which might be compared to the MKS Gen
Anet A8 sanguino as slave Controller board with an Rpi and Klipper Firmware.

I personally do a lot if Firmware development myself. The Thing I don’t like on the MKS is the lack of propper documentation. Even so the Boards are quite obious based on the Reprap open Hardware Projects MKS and all their cloners are violating GPL not releasing their sources. As soon as someone whant’s do do some more advanced stuff it might get more dificult to get a proper pinout schematics as on the real open source boards.

Concerning Ramps Chinese clones, due to the pricing I usuall order in batches of at least 2 and inspect them with USB microscope, sometimes even repairing cold solder Points, but that all depend on your skills.

The fuctionality you describe is what I run on my converted Anet AM8, with Dual Extruder (currently switching to quad) controllable LED, Controller fan, temp controlled Hotendfan, TMC Drivers. The System is running of a the Ramps1.4 + Arduino Atmega2560 inan combined 12/28V mode.
28V for the TMC stepper Driver only Rest of the System at 12V


The pinout is not a problem their docs are good enough:

but if the board schematics were open source it would be cool.

A good ramps ist the:

it is expensive but with good components

btw the ramps 1.5 and 1.6 are also closed source


I have looked further into the Mega and ramps setup and think I can do that. The plan would be to add the TMC2130 stepper drivers to it for the performance I want. It seems as though I can also run a dual extruder, but how many fans can I run off of it? I planned on three (two for part cooling and one for hotend cooling). I also couldn’t find a whole lot of information that I could understand on power supplies so I went with a 12v 30ah supply. Do you think that’s enough?


A 20A is enough the fuses are 5 and 11A. :wink:

Normally you put the hotend fans directly on the power supply
and the part cooling fan on D9


ootb you can run 2 extruders with the ramps, but with mods you can run a lot more


By using either the RDD Fan Extender or a sperate IRF520 you can control addidional fans from Marlin.
I personally run

 * Controller Fan
 * To cool down the stepper drivers and MOSFETs.
 * The fan will turn on automatically whenever any stepper is enabled
 * and turn off after a set period after all steppers are turned off.
  #define CONTROLLER_FAN_PIN 5        // Set a custom pin for the controller fan
  #define CONTROLLERFAN_SECS 60          // Duration in seconds for the fan to run after all motors are disabled
  #define CONTROLLERFAN_SPEED 255        // 255 == full speed


 * Extruder cooling fans
 * Extruder auto fans automatically turn on when their extruders'
 * temperatures go above EXTRUDER_AUTO_FAN_TEMPERATURE.
 * Your board's pins file specifies the recommended pins. Override those here
 * or set to -1 to disable completely.
 * Multiple extruders can be assigned to the same pin in which case
 * the fan will turn on when any selected extruder is above the threshold.
#define E0_AUTO_FAN_PIN 6
#define E1_AUTO_FAN_PIN -1
#define E2_AUTO_FAN_PIN -1
#define E3_AUTO_FAN_PIN -1
#define E4_AUTO_FAN_PIN -1
#define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed

Both powered from 12V from the PSU and controlled from one of the D4,5,6,11 signal PWM capable pins of the Servo Header to the IRF520

Tom made a video on how to use IRF for LED but this applies to any 12V device

Concerning PSU and TMC2130 I would recommend to go with a 30A, to have some “spare” resources. Even so your not running max all the time with a 20A. Second I drive all my TMC either 2100, 2208 and 2130 through an additional regulated 12-35V stepup converter at 28V VM


Okay this is all making a little more sense. The plan is to build a frame that is just over 600 mm, so I’m going to try and squeeze a 550*550mm heated bed. To heat it I’ll use a silicone pad and run that off the wall socket with a ssr between the wall and the board. There’s a video for that which is detailed so I think I can do that. The axis will be moved via threaded rod (for precision and I have terrible luck with belts). I chose two Titan extruders feeding an e3d V6 dual hotend. The setup will be a Bowden setup to keep the carriage light. Those are all the big details I can think of. Any opinions, tips?


600 x 600 mm I wouldn’t even think of an carthesian printer. And threaded rods for Y axis? If then maybe ball screw but then you a have to print slow, very slow and Nema17 for that size of bed, I don’t think you’ll get that running properly


I should have mentioned I am doing an h bot setup. With the Bowden setup and minimal weight on the carriage I wouldn’t see the nema17 having an issue with that. The bed will be stationary and the carriage will move for all axis. The threaded rod will be square or acme rod with graphite guides just like in a lathe setup so i think that would be fine. If not I would prefer to have more teeth on the drive gears but I don’t know how to adjust the firmware for that.