Marlin (firmware)

Marlin is an open source firmware primarily designed for RepRap project based FDM (fused deposition modelling) 3D-printers using the Arduino platform.
The firmware runs G-code formatted coded commands and instruction sets as a robot software on the 3D printer's control board which manages all of the machine's real-time activities including sending movement coordinates to stepper motors through the stepper drivers, controlling heater elements, sensors, lights, tracking bed levelling, LC displays and buttons. Marlin supports many different boards and many designs of 3D printer robot platforms, including Cartesian (including Core XY), Delta and SCARA printers, as well as some other less conventional designs like Hangprinter.
Other than for 3D printing, Marlin is also used for many other kinds of machine including SLA and SLS 3D printers, CNC mills, laser engravers (or laser beam machining), laser cutters, vinyl cutters, pick-and-place machines, and egg painting robots.
History.
Marlin was first created in 2011 for the RepRap and Ultimaker printers; it is today used by many if not most relatively inexpensive 3D-printers for plastic-based Fused filament fabrication (also known as fused deposition modelling) and claims to be the most widely used 3D printing firmware in the world. With perhaps the most famous or infamous products/brands using the Marlin firmware (or forks of the Marlin firmware) being; Ultimaker, LulzBot by Aleph Objects, Original Prusa i3 by Prusa Research, plus the various Ender and CR series by Creality.
Marlin 2.0 (version 2.0.0) was released on the 2nd of December 2019 as the first official version or the Marlin firmware to support 32-bit based controller boards.
Development.
The firmware is created by a community of contributors, with Scott Lahteine (aka Thinkyhead) as the main developer.
License.
Marlin uses a GPL license which requires that organisations and individuals share their source code when modifying or expanding the code, some users have not been compliant with the license which has led to distributors removing their products.
Usage and license compliance.
Marlin firmware is used by many different manufacturers, most of which comply with its open source license, but some do not. 