MKS Gen V1.4 3D Printer MainBoard Controller

Updated on:

We participate in the Amazon affiliate program and may earn a commission if you make a purchase through links on our site. We also participate in other affiliate programs.

MKS Gen V1.4 is made by a Chinese manufacturer Makerbase. MKS (Makerbase) are manufacturers of 3D Printer controller boards (also known as mainboards) that run MarlinRepetier, and other firmware.

MKS Gen V1.4 Overview

This is an 8-bit control board for your 3d printer with an Atmel Mega 2560 microcontroller.

MKS Gen Board Wiring

This board was designed from the RAMPS 1.4 Schematic so many of the pins are the same when configuring your Firmware of choice.

MKS Gen Stepper Compatibility

The board supports Stepper Drivers up to 1/16 microsteps such as A4988, DRV8825 and TMC2100 drivers.

MKS Gen 1.4 Fan Wiring Connection

The MKS Gen 1.4 comes with limited connections for your 3d printer’s extruder fans, board cooling fans, and part cooling fans. This connection is for your 3d printer’s cooling fan as it kicks on after your first layer has been completed during the print.

But what about the Extruder Fans?

You might be asking yourself how to connect the extruder fans, at least that is what happened to me. I reached out to King at makerbase and he suggested connecting them to the secondary input voltage connector. But then I thought well that would mean the fans would always be on which is not ideal or power friendly.

So I searched for a better way and I found that you can use a relay or even better a MOSFET Driver Module!

mks fan wiring mosfet
MOSFET Driver Module

These little guys make it easy to add low-amp hardware and control them with the signal pin. Simply wire these to the secondary power input on the board, wire up the fans, and then connect the signal pin to a free digital pin. Then modify your firmware configuration to activate the pin for the extruder fan power.

These support up to 24v which makes them a great and affordable choice.

Smart Controllers (Screens)

MKS Gen 1.4 supports many Smart Controllers and Touch Screens. They have their own line of touch screens which are pretty nice.

MKS touch 3d printer
MKS 2.8″ Screen
mks touch screen 3d printer
MKS 3.2″ Screen

USB and SD Card Compatibility

The MKS Gen 1.4 board does not come onboard SD or USB KEY connectors. What’s pretty awesome about the MKS TFT Touch Screens is that they come with integrated SD and USB Key connectors!!!

mks sd card module

Most other TFT Screens and Smart controllers come with an SD Card Slot Standard, just be sure whatever you are choosing has that feature should you want to use it.


Makerbase’s Gen 1.4 is a great cheap 3d printer controller. I really like how easy it was to set up and is directly compatible with Marlin Firmware (the best!).

You can find the datasheet for this board here: MKS Gen Datasheet

Makerbase has also come out with a 32-bit ARM microcontroller board line, MKS SBase. Be sure to check it out with Marlin 2.0.

mks 32 bit board marlin
MKS SBase 1.3 – 32-Bit Controller

Also if you need help setting up Marlin Firmware check out this great guide for beginners.

Photo of author

Garrett Dunham

A trained Mechanical Engineer and lifelong tinker, Garrett chose to attend Cal Poly San Luis Obispo's engineering proram because they had a 3D printer... back when they were called "rapid prototypers". "The first time I held something I designed and 3D printed, my mind exploded. Just hours earlier my idea was just a thought - and now it's a thing I'm holding." Now, years later, Garrett brings his love of tinkering, inventing, engineering, and 3D printing to the Makershop community.

6 thoughts on “MKS Gen V1.4 3D Printer MainBoard Controller”

  1. So you put the solution in the write up but never laid it out. What pins do i need to connect to what do i need to change in marlin. How do i wire this thing up ect… Any help would be apreciated.

  2. Hi, I am making a project for school with the MKS Gen 1.4 microcontroller board.
    I need a digital output signal to take out of the microcontroller.
    The code I wrote in the Marlin Firmware trying to set put a the digital pin 1 from digital TRUE to digital FALSE with a 1 second delay is as follows:

    void loop() {

    MYSERIAL.print(“Pin_Salida LOW = “);


    MYSERIAL.print(“Pin_Salida HIGH= “);


    What I am trying to do is just to put the pin D1 of the board in 1 and then to 0.
    What I get when I uplode it to the board is that the pin 1 is always in 1 (2.6 V).
    I tried using the pins D40 and D44 but none of them worked, in this case the digital output was always in logic 0 (1 V).

    The question is regarding which pin of the microcontroller I can use to get a digital output signal and how I can address it from the Marlin Firmware code.
    Thank you very much.

Comments are closed.