The majority of FDM (Fused Deposition Modeling sometimes called FFF, for Fused
Filament Fabrication) 3D printers run Marlin Firmware. But why is that? And what does it do?
Marlin is the software that is embedded on your 3D printers control board. It controls the hardware of your 3D printer and is used to turn the G-code into the movements needed for your configuration. Marlin can run while connected to a host like OctoPrint or read G-code directly from an SD card.
Firmware and its configuration settings are what runs a 3D printer. Firmware is what connects software and hardware.
The firmware runs on a microcontroller that is on the mainboard of the 3D printer, controlling everything from heaters, motors, LCD screen, SD card readers and abstract concepts such as exploration, speed limits, thermal regulation, and safety.
Plus, it has the ability to understand complex calculations that include X, Y and Z movements. There is a good reason that Marlin Firmware is utilized in the majority of 3D printers.
It is reliable, open source, and constantly improving making it the preferred firmware available for 3D printers.
In this article, we will discuss the pros and cons of marlin as well as some of the recent updates and news surrounding Marlin. Hopefully, you can learn more about Marlin, and how it works.
Marlin is an open source firmware with strong community support. That strong community support is one of the many keys that have boosted Marlin’s popularity.
Another key to Marlin’s popularity is that it runs on multiple 8-bit Atmel AVR inexpensive micro-controllers.
You can find these chips at the center of the popular open source Genuino/Arduino platforms. Marlin’s reference platform is an Arduino Mega2560 with RAMPS 1.4.
Marlin was created to be adaptable to as many configurations and boards as possible especially since it is a community product.
In other words, it is customizable, expandable, configurable, and free for vendors and hobbyists as well.
A Marlin build does not need to take up much space. Marlin can be used on a headless printer with some of the more basic hardware.
Here is a list of some of the main features of Marlin:
- Smart motion system with lookahead, interrupt-based movement, linear acceleration
- Support for Cartesian, SCARA, Delta, and Core/H-Bot kinematics
- Closed-loop PID heater control with thermal protection, auto-tuning, safety cutoff
- Print Job Timer and Print Counter
- Full-featured G-code with over 250 commands
- Support for up to 5 extruders plus a heated print bed
- LCD Controller UI with more than 20 language translations
- Host-based and SD Card printing with autostart
- Bed Leveling Compensation — with or without a bed probe
- Linear Advance for pressure-based extrusion
- Support for Volumetric extrusion
- Support for multi-extruders and mixing (Chimera, Cyclops, Diamond)
- Support for Filament Runout/Width Sensors
- Complete G-code movement suite (this includes: arcs, lines, and Bézier curves)
Since Marlin is open sourced and well documented, it makes user upgrades easy. You can easily make updates to your own printer and quickly configure Marlin to work with those updates.
Interestingly, companies like Prusa customize Marlin for their own use and then share useful information with the community. This is fortunate as this allows the main program to leverage the work of companies like Prusa.
Printing comes easy with Marlin as a standalone SD print can be started from a host. This means that your computer does not need to be tethered to the printer.
Keep in mind that Marlin only prints G-code, and most slicers only slice STL files. Make sure you choose a slicer that is compatible with Marlin. Cura, Simplify3D, Slic3r, and Skeinforge are some options.
Marlin’s negative news
There has been some negative blowback on companies for using Marlin firmware and not sharing their code like they are required to.
The GPL license that Marlin is using, GNU GPL v3 (or later), guarantees end users the liberty to run, study, share and modify the software.
Some deviant users have not been compliant with the GPL license, which has led to distributors no longer supporting their products.
Second, some claim a similar firmware called Repetier is smoother than Marlin. This may be due to the perception of people.
In reality, there is not much difference between the two firmwares when it comes to smoothness.
Marlin has its fair share of problems like any other firmware. At least there is a very helpful community online.
Github.com, Reddit.com, and other sites have many forums that cover the various Marlin-related topics.
What is the biggest knock on Marlin?
The project has primarily been targeted for older 8-bit hardware, which limits the more processor-heavy features such as Wi-Fi connections.
Core xy, delta and other machines with more complicated movements can also tax 8-bit boards at higher print speeds.
Fortunately, the project is evolving and beginning to support 32-bit hardware.
Recent Updates of Marlin
Marlin was first created in 2011 for the Ultimaker and RepRap printers. It has gone through many updates since then.
According to Marlin Firmware, Countless bugs and the overhauling of the motion planner were addressed with recent updates.
The motion system is now sturdier and smarter. Consumers realize this through reduced print job times and enhanced print results.
Does Marlin only support FDM (Fused Deposition Modeling) printers?
No, it supports other types too like SLA (stereolithography) and SLS (Selective Laser Sintering), but FDM is by far the mainstream application.
Marlin also supports many different boards and designs of 3D printers including delta printers, Cartesian printers, SCARA printers and unorthodox designs like Hangprinter.
3D printing is taking the world by storm thanks to innovators who are able to make 3D printing a little easier to use every year.
Marlin is a firmware that is used more than any other firmware for 3D printers. There are many communities and forums that can help a Marlin user solve their issues.
Updates are constantly being released so that the experience of Marlin users can become less stressful and more productive.
Some firmwares that are trying to rival Marlin are: Repetier, RepRap, and Smoothieware.