/Marlin

Optimized firmware for RepRap 3D printers based on the Arduino platform.

Primary LanguageCGNU General Public License v3.0GPL-3.0

Marlin 3D Printer Firmware

Marlin 1.1

Marlin 1.1 represents an evolutionary leap over Marlin 1.0.2. It is the result of over two years of effort by several volunteers around the world who have paid meticulous and sometimes obsessive attention to every detail. For this release we focused on code quality, performance, stability, and overall user experience. Several new features have also been added, many of which require no extra hardware.

For complete Marlin documentation click over to the Marlin Homepage <marlinfw.org>, where you will find in-depth articles, how-to videos, and tutorials on every aspect of Marlin, as the site develops. For release notes, see the Releases page.

The 1.1.x branch is home to all tagged releases of Marlin 1.1 (final version 1.1.9 – August 2018).

This branch will receive no further updates. All future development —including all bug fixes— will take place in the bugfix-2.0.x branch, which will also serve as the root for all future Marlin development. Be sure to test bugfix-2.0.x before reporting any bugs you find in 1.1.9.

Marlin 1.1.9 is the final release of the 8-bit flat version of Marlin Firmware. A monumental amount of talent and effort has gone into its production, and thanks are due to many people around the world. Throughout Marlin 1.1 development we worked closely with the community, contributors, vendors, host developers, library developers, etc. to improve the quality, configurability, and compatibility of Marlin Firmware, all while continuing to support a wide variety of Arduino-based boards.

Marlin 1.0.x

Previous releases of Marlin include 1.0.2-2 (December 2016) and 1.0.1 (December 2014). Any version of Marlin prior to 1.0.1 (when we started tagging versions) can be collectively referred to as Marlin 1.0.0.

Contributing to Marlin

Click on the Issue Queue and Pull Requests links above at any time to see what we're currently working on.

To submit patches and new features for Marlin 1.1 check out the bugfix-1.1.x branch, add your commits, and submit a Pull Request back to the bugfix-1.1.x branch. Periodically that branch will form the basis for the next minor release.

Note that our "bugfix" branch will always contain the latest patches to the current release version. These patches may not be widely tested. As always, when using "nightly" builds of Marlin, proceed with full caution.

Current Status: In Development

Marlin development has reached an important milestone with its first stable release in over 2 years. During this period we focused on cleaning up the code and making it more modern, consistent, readable, and sensible.

Future Development

Marlin 1.1 is the last "flat" version of Marlin!

Arduino IDE now has support for folder hierarchies, so Marlin 1.2 will have a hierarchical file structure. Marlin's newly reorganized code will be easier to work with and form a stronger starting-point as we get into 32-bit CPU support and the Hardware Access Layer (HAL).

Coverity Scan Build Status Travis Build Status

Marlin Resources

Credits

The current Marlin dev team consists of:

Notable contributors include:

License

Marlin is published under the GPL license because we believe in open development. The GPL comes with both rights and obligations. Whether you use Marlin firmware as the driver for your open or closed-source product, you must keep Marlin open, and you must provide your compatible Marlin source code to end users upon request. The most straightforward way to comply with the Marlin license is to make a fork of Marlin on Github, perform your modifications, and direct users to your modified fork.

While we can't prevent the use of this code in products (3D printers, CNC, etc.) that are closed source or crippled by a patent, we would prefer that you choose another firmware or, better yet, make your own.

Flattr this git repo