thinkyhead bob-the-kuhn

Installing Marlin

To install Marlin on your printer you’ll need to Download, Configure, Compile, and finally Upload the compiled firmware to your board. This process may seem a bit daunting at first, but it quickly becomes second-nature.

Marlin only needs to be re-flashed when options are changed in the configuration files. Several settings can be changed and saved to EEPROM while the printer is running.


Start by downloading the Marlin source code. There are a few codebases to choose from.

Download 2.0.x Current release
Download 1.1.x Previous release
Download 1.0.x Older release
Download bugfix-1.1.x “Nightly” build. Proceed with Caution!
Download bugfix-2.0.x “Nightly” build. Proceed with Caution!
Download dev-2.1.x “Nightly” build. Proceed with Caution!
  • Marlin 1.0 does not support PlatformIO. For older versions of Marlin use Arduino IDE.
  • Marlin 1.1 fully supports PlatformIO, and Marlin 1.1.9 even provides an automated build process.
  • Marlin 2.0 and up include 32-bit ARM support. PlatformIO is not required for AVR boards.


To configure Marlin you can use the Arduino IDE or your favorite text editor to edit the Configuration.h and Configuration_adv.h files. See Configuring Marlin for full details.

Build and Install

Follow one of these links to install Marlin:

Example configurations for supported machines can be found in the ‘/config/examples’ folder


Troubleshooting a complex piece of software with a minimal interface can sometimes be challenging, even for the most experienced 3D printing enthusiast. Please use our Troubleshooting Guide for workthroughs of the most common problems.