About this project

Marlin is GPL-licensed firmware for RepRap and compatible 3D printers, supporting both 8-bit AVR and 32-bit ARM microcontrollers from one code base. The documented Marlin 2.1 bugfix branch supports up to nine coordinated axes and eight extruders, but is marked as not for production use. Its Hardware Abstraction Layer provides a common API across platforms. Listed targets include Arduino AVR, STM32, ESP32, LPC1768/1769, GD32, HC32, SAMD, Teensy, Arduino Due, beta RP2040 support, Linux native, and a simulator for Windows, macOS, and Linux. Machine-specific configuration files are maintained in the separate MarlinFirmware/Configurations repository, with hundreds of community-tested configurations. Marlin can be built and uploaded using Visual Studio Code with Auto Build Marlin and PlatformIO, a VS Code devcontainer, or the Arduino IDE; PlatformIO is described as the preferred option. The project provides official documentation, a Discord server, forums, social groups, and a GitHub issue queue for bug reports and feature requests. Contributors use pull requests to the bugfix-2.1.x branch, follow coding standards, and can add build and unit tests. The GPL license requires vendors and other users distributing Marlin-based firmware to make corresponding source code available.