github.com/MarlinFirmware/Marlin

Marlin is a firmware for RepRap 3D printers optimized for both 8 and 32 bit microcontrollers. Marlin supports all common platforms. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.

Open this visualization on its own page →

Contributors

1082

Lines of Code

127,735

From

2011-08-12

To

2022-04-20

About MarlinFirmware/Marlin

Marlin is the dominant open-source firmware for RepRap 3D printers, powering both hobbyist machines and many commercial 3D printer models. Written in C++, it provides a unified codebase that runs across numerous microcontroller platforms, from older 8-bit AVR boards like those used in Arduino-based RAMPS controllers to modern 32-bit ARM processors including STM32, ESP32, and Teensy boards. This hardware abstraction layer approach allows the same firmware to serve everything from vintage machines to cutting-edge printers with minimal platform-specific code.

The current 2.1 release significantly expands capabilities by supporting up to nine coordinated axes and eight extruders simultaneously, making it suitable for complex multi-tool and multi-axis printing systems. Marlin handles all core 3D printer functions including motion control, temperature management, filament extrusion, and user interface logic, with development focused on maintaining backwards compatibility with older hardware while incorporating modern features. The project maintains extensive documentation, provides hundreds of community-contributed hardware configurations, and supports building through Visual Studio Code with PlatformIO, the Arduino IDE, or Docker containers.

Development is community-driven with a large team of maintainers overseeing contributions, bug fixes, and feature requests. Users can access help through official documentation, Discord community, Facebook groups, forums, and YouTube resources. The project is licensed under GPL, requiring that any commercial or modified versions remain open-source and that vendors provide source code to end users upon request.

Share this video