A Hig Level Overview of the CR6 Community FIrmware - CR6Community/Marlin GitHub Wiki

A Tailored Fork of the Open-Source Marlin Firmware, with a DWIN Touchscreen User Interface

Ok, what now?

What is Marlin?

Marlin is an Open-Source firmware, specifically designed to be used in 3D Printer and CNC machines.

Their site provides a very thorough overview of Marlin, what it is and how it is used.

image

The CR6 Community Firmware (CF) 6.1-Final is based on version 2.0.8.1 of Marlin.

How does the CF differ from Marlin?

That's kind of a "trick" question. Marlin is specifically designed to be tailored in a variety of ways, to accommodate the wide variety of printers on which it is used. One of those provisions in Marlin's architecture is the ability to either use the Marlin-defined user interface OR to define and integrate a customized User Interface with the Marlin (under the cover) functionality.

When Creality designed the CR6 series of printers, they chose to use Marlin as the main functional engine of their firmware, but they defined and integrated a TouchScreen from DWIN with modified Marlin code that did not follow the Marlin coding standards.

The CR6 Community Firmware developers were motivated to re-factor that code, so that CR6 Community users could continue to benefit from the ongoing Marlin firmware updates and bug-fixes. At the same time, the developers determined to improve the functionality and the maintainability of the DWIN Touchscreen firmware.

As per the Mission Statement on the CR6Community/Marlin GitHub site: "This Marlin fork has the goal of cleaning-up the source code changes for the CR-6 so it can be merged upstream. We also want to extend the functionality to make it fully functional"

At the time of writing this overview (26 May 2022), this is the active Pull Request tracking the upstream activity re-integrating the CR6 Community Firmware fork into the upstream Marlin firmware: Creality CR-6 SE #19958