This release is a smaller release to implement some feature requests and issues reported in release 6. All the testing and feedback has made this firmware better and better. Thank you for testing and sending your feedback.
TLDR: Added PID tuning, interactive e-steps calibration, overriding slicer retractions, custom ABL probing settings, many more configuration knobs and stability improvements.
VERY IMPORTANT NOTES :
The DWIN_SET firmware and README files bundled with this release are both out of date.
- Flashing the bundled DWIN_SET and Kernel Upgrade Files to your display may cause the screen to go black or the touchscreen to stop responding to touch.
- We strongly recommend that you ignore the bundled display firmware and instead flash the latest ((refactored) DWIN_SET from here: https://github.com/CR6Community/CR-6-touchscreen/releases/tag/Re-Factored_v1.1
- We also strongly recommend that you ignore all YouTube videos that pre-date Dec 2021, when Creality started delivering displays that are incompatible with the DGUS2 v3.5 kernel upgrade files. This video playlist explains the problem, the solution, and how to find and flash the correct firmware for your printer: https://youtube.com/playlist?list=PLfDSKnF0RNcYDkxM5mYtyuvlTfMAMD-Nr
Unfortunately the CR-6 Community Firmware team has been made aware of illegitimate copies of the CR-6 Community Firmware were being sold without any credit by a certain individual. If you find any cases of the Community Firmware being sold, please let us know.
Table of contents
- Hardware Supported
- Previous Community Firmware Release History
- New Features at Release 6.1
- Bug Fixes at Release 6.1
- Comparisons with Creality stock firmware
- Known issues at Release 6.1
- Stock Firmware Features not available in this firmware
- Important Safety Warnings
- Community Firmware Architecture
- Hardware Dependencies and this Community Firmware
- Flashing instructions
- FAQ
- How to Report issues
- Troubleshooting
- Feature requests or other input
- How to Contribute
- Some final notes
- Files listing
Hardware Supported
This release of the CR-6 Community Firmware supports the following hardware configurations:
- Creality CR-6 SE with either a v4.5.2, v4.5.3 or or v1.1-ERA motherboard. See the FAQ section for some tips on how to know which board you have, and what might happen if you flash the wrong firmware version to your board.
- Creality CR-6 SE with BigTreeTech (BTT) SKR CR-6 board and:
- a BTT Thin Film Transistor (TFT) v3.0 touch screen
OR - a Stock Creality TFT touch screen
- a BTT Thin Film Transistor (TFT) v3.0 touch screen
- Creality CR-6 MAX with v4.5.3 motherboard
- Creality CR-6 MAX with BigTreeTech SKR CR-6 board and:
- a BTT TFT v3.0 touch screen
OR - a Stock Creality TFT touch screen
- a BTT TFT v3.0 touch screen
Previous Community Firmware Release History:
For a summary of features added at previous releases of the Community Firmware, please review:
- Release 6 "Tune it, love it" release notes
- Release 5 beta "Happy new year edition" release notes
- Release 4 alpha release notes
- Release 3 release notes
New Features at Release 6.1
This section summarizes the features which were added or modified in the Community Firmware since the "Tune it, love it" version (Release 6.)
For a summary of any bug fixes made, see the section "Bug Fixes at Release 6.1", below.
- Added menu to control RGB LEDs or Neopixels (issue #231)
Check here how to activate this feature
-
Added access to the filament load/unload menu when printing (issue #234 / #219)
-
Added ability to tune leveling mesh during a print. This is especially useful when you somehow can't get a perfect mesh (issue #256)
Issues resolved in Release 6.1
- Improve behavior of filament extrusion after resuming from pause / park / filament changes (issue #236)
- Maximum temperature not enforced from touchscreen or gcode M303 (issue #237 - upstream Marlin bug)
For a full list of added features and bugs fixed at Release 6.1, see the Community Firmware Release 6.1 milestone.
For a full list of added features and bugs fixed at Release 6, see the Community Firmware Release 6 milestone.
Comparison to Creality firmware
See for a full list the Community firmware 4 alpha release notes, but some highlights here:
-
Allow the probe offset to be set in 0.01mm offsets (issue #15)
-
Pre-heat PLA and PETG temperatures are properly shown in the touch screen interface
-
Save power loss recovery settings to the SD card instead of EEPROM, preventing blobs
-
Filament runout detection has now been enabled by default again. (issue #19)
- We use the Marlin native filament runout detection. This is more reliable than the home-brew implementation of Creality because it debounces any possible false readings. Give your filament sensor a chance again.
- If you have previously used the resistor trick to bypass the filament runout sensor, you can undo it. If your filament runout sensor is really defective, you can disable it using
M412 S0
- otherwise you can enable it usingM412 S1
.
-
Support
M300
(play tone / buzzer) (issue #20)- You can now let your printer make some noise! Note that we only support the duration parameter of M300, and only with 8 millisecond precision due to the touch screen limitation.
- This is especially useful because you can add M300 in your end gcode to have an audible notification that your print is done
- When you have a filament change pending, the printer will notify you using an audible alert
- Errors l
-
Support
M73
(print progress) (issue #7 and issue #27)- When printing from Octoprint you can use the detailed progress plugin to update the progress on the printer display
-
Support
M75
/M77
(start/stop print timer) on the touch screen level. This can be useful if printing from a host, because if you issue this gcode, the touch screen changes to the print progress screen. When printing from Octoprint, this will be injected by default in my experience. -
Enable EMERGENCY_PARSER commands
- Enable support for gcode command M0 with resume via M118 via the touch screen (the "power loss recovery" screen is (ab)used for this)
-
Support
M117
LCD message (issue #7) on the print progress screen- If you use Cura, you can inject "time remaining" or the "current layer" and it will show on the display
-
Enable linear advance / pressure advance allowing you to do linear advance calibration
-
Based on recent version of Marlin (as mentioned above) instead of an early version of Marlin 2.0.0
-
Support
ADVANCED_PAUSE_FEATURE
- Support
M600
filament change - please read here how to use it - Support
M701
/M702
filament load/unload
- Support
Some bugs fixed
Some bugs may be fixed in the Creality v2.x firmware too - this list compares to the Creality v1.0.3.7 firmware on which the BTT SKR firmware is also based.
- Fix temperature reporting issues in Octoprint (issue #3)
- Don't execute the SD abort gcode sequence when a print is succesfully finished - you can add
G1 X0 Y{machine_depth} ;Present print
to your end gcode in Cura to put the bed forward after the print completes. - Prevent first layer abort from scratching the bed (issue #12)
- See for a full list the Community firmware 4 alpha release notes
Known issues at this Release
-
Auto-bed leveling might be slower than what you are used to - but this trade off is in favor of accuracy. We recommend leveling once - the printer will remember the leveling settings. Remove
G29
from your start gcode - there is no need to level every time you print. Check this page for a recommended start gcode for your slicer. -
The mesh validation pattern seems slightly overextruded. This is still in an experimental phase (also described above).
When using the Creality stock touch screen:
- M600 does a filament purge and then continues printing - it does not wait for you to confirm enough filament is purged. For this reason I recommend to do the purging manually yourself and set the purging amount in the slicer to a low value like 10mm. This is due to a limitation in Marlin.
- The movement screen is less reliable if you have not homed before using the movement controls. Please home first before attempting to move the axes. We're showing the positioning numbers in red to remind you of that (issue #73)
For the BTT SKR CR6 board with BTT TFT:
- Homing heats up before probing and this is not shown on MarlinUI so it appears not to function if you home from within the Marlin UI menu. If you go to the home/info screen though, you can see it heat up though.
Stock Firmware Features not available in this firmware
- Full localization support. The Creality v2.x firmware offers full support for multiple languages - the CR-6 community team has no manpower to maintain localizations. If you're a bit tech savvy you can fork our touch screen firmware and maintain a set of localized screens as detailed here. Get in touch and we'Il put a link up to your fork!
Important Safety Warnings
The Community Firmware enables the watchdog timer function for STM32F1 processors - if Marlin would freeze from some reason (like due to SD card issues) the printer is automatically reset and the heaters are disabled - this feature is not enabled on the stock Creality or BTT firmware
Included in the downloadable Assets on this page is one pre-compiled version of the Community Firmware with this Watchdog Timer disabled.
CR6Comm-CF6-Final-cr6-se-v4.5.2-mb-no-watchdog-2021-03-27-15-53.zip is provided to support the troubleshooting by owners of printers using the Community Firmware on 4.5.2 motherboards, which appear to be repeatedly rebooting themselves.
This special version of the firmware is designed only to help users confirm or eliminate the possibility that the watchdog timer function is rebooting their machine. It is not intended to be used on unattended printers or to "solve" the rebooting problem.
## Community Firmware Architecture
This Community Firmware is comprised of two firmwares to flash:
- A Community Firmware Motherboard module, based on Marlin bugfix 2.0
- A Community Firmware Display module (for the Creality Stock Displays only).
The Marlin firmware on which this Community Firmware is based is designed to facilitate the customization of the firmware to run on a wide variety of hardware configurations.
Compiled versions of the Motherboard firmware are provided in the Assets section at the bottom of this page, each uniquely configured for one of the motherboards listed under Supported Hardware, above.
The latest version of the Community Firmware Motherboard module is maintained on the CR6Community/Marlin GitHub page.
The Community Firmware Display module is ONLY required on Creality stock (DWIN) TFT displays.
A compiled version of the Display firmware module + the DGUS OS installer program are included as an embedded zip file inside the Motherboard firmware zip files, for each of the supported hardware configurations that include the stock Creality TFT.
The latest version of the Community Firmware Display module is maintained on the CR6Community/CR-6-touchscreen GitHub page.
The Display firmware module and the Motherboard firmware module on printers using both Creality Motherboard hardware and Creality TFT hardware must be a matched-pair.
On printers using both Creality Motherboard hardware and Creality TFT hardware, Community Firmware UI controls and displays are implemented as a collaboration between the Display firmware and the Motherboard firmware.
e.g.: On the Creality TFT: Pressing a "button" on the Creality TFT results in the Community Firmware Display module sending messages to the Community Firmware Motherboard module, sometimes eliciting a response back.
When the Community Firmware Motherboard module needs to display information to the user, it sends a message to the Community Firmware Display module, which then displays the information on the TFT screen.
NOTE: Although it is physically possible to load a Motherboard firmware module from one release and a Display firmware module from another, the printer system will not operate correctly if you do. For this reason, at Release 6 of the Community Firmware we have added "version checking" to alert the user if the two firmwares do not match.
BTT TFT displays do not use the Community Firmware Display firmware module or the DGUS OS.
BigTreeTech (BTT) TFT v3.0 Displays can also be used with the Community Firmware in systems where the printer has a BTT SKR CR6 motherboard installed. In that case, though, the display must be flashed with the BTT Touchscreen Firmware, NOT the Community Firmware Display module.
On printers using the BTT SKR CR6 motherboard hardware with BTT TFT hardware, the Community Firmware Motherboard is designed to work with the BTT Touchscreen Firmware.
- BTT TFT displays running in Touchscreen mode use the BTT Touchscreen Firmware UI to interact with the Community Firmware Motherboard.
- BTT TFT displays running in the LCD mode use the Marlin LCD User Interface (UI) which is included in the Community Firmware Motherboard.
The BTT TFT display Firmware is ONLY required on BTT TFT displays.
The latest version of the BTT Touchscreen Firmware is maintained and released by BigTreeTech on their GitHub page.
Hardware Dependencies and this Community Firmware
Unless otherwise stated, all features documented in these release notes are available on all supported hardware configurations. Any features which are limited to specific hardware configurations are highlighted as such.
Some of the Community Firmware functionality is only available when installed on specific combinations of hardware. This happens because our user community sometimes choose to modify their systems with non-stock components which require firmware configurations that are only compatible with those non-stock components. Some of those components in-turn enable functionality not available from the Creality stock components.
Some hardware differences can be accommodated by making printer setup functions available in the menu system. (e.g. Extruder steps/mm to support the use of non-stock extruders)
Some hardware differences require accommodation through changes to the configuration settings in the Motherboard firmware. (e.g. Pins.h to support hardware differences between Creality 4.5.2 and 4.5.3 motherboards)
Some Community Firmware functionality is only available on the BTT SKR CR6 motherboard because BigTreeTech chose to implement different features on their motherboard. (e.g. Neopixels support)
Since our users are likely most interested in what this firmware can do on their own printer, but may also be curious about the possible impact of making hardware changes, these release notes make it clear whenever the availability or functionality of a feature is hardware-dependent.
Flashing instructions
Note: This release is accompanied by a new firmware for the touch screen. This release and the new touch screen firmware goes hand-in-hand - one cannot be used without the other.
-
It doesn't matter if you flash the touch screen on motherboard firmware first, but it is easier to flash the touch screen first.
-
Make sure you pick the right firmware package for your particular hardware configuration!
-
You can get the files in the "assets" section below.
-
There are also several video's available on how to flash the firmware:
CAUTION: The above videos pre-date the release of this version. Aa of Release 6.1, there is one extra user step required to prepare the display SD card for flashing: the three files in the folder called, "CR-6 kernel upgrade" MJST be copied into the DWIN_SET folder.
Touch screen flashing instructions
The touchscreen flashing instructions are detailed in a README.TXT file embedded in the Touchscreen Firmware folder of the firmware download .zip file. The contents of that file are also viewable here.
This release of the touch screen firmware comes with version 3.5 of the DGUS OS (the underlying operating system of the Creality DWIN touch screen) to fix text rendering issues.
Flashing instructions are also available as a video - this video is for the Ender 3 V2 but the same procedure applies to the CR-6. For instructions, check the README.txt in the touch screen firmware download.
For this release the touch screen firmware and flashing instructions are included in the firmware release package. Be sure to follow the instructions carefully. If you experience issues, try flashing the touch screen a second or even a third time. It doesn't always "take" all the files. Sorry - hardware limitation!
Mainboard / Marlin flashing instructions
- If you like to remember what settings you had, run
M503
in a serial monitor. - Use an empty SD card formatted FAT32 4096KB sector size.
- Put the firmware ".bin" file from the zip file in the root folder of your SD card
- When using Windows - do a "safe removal" to remove your SD card.
- Put the SD card in the printer.
- Either turn the printer off, then on again or issue command
M997
from Octoprint/Pronterface.- BTT SKR boards will flash the hot-end led while the firmware is flashed and rename the
firmware.bin
file tofirmware.cur
. - Creality boards will give no indication of correct flashing - except for the fact that it took a few seconds for the flashing to complete
- BTT SKR boards will flash the hot-end led while the firmware is flashed and rename the
- Verify the firmware is flashed by issuing
M115
or going to "Setup -> Info" on the touch screen. - You can now remove the file from the SD card.
The version should be shown when flashed successfully. If it is not shown, try rebooting your printer, reflash the motherboard by renaming the .bin file, reformatting the SD card, or trying a different SD card
Configuring Your Printer After Flashing
-
Go to the Setup menu.
- Verify that the INFO screen shows the correct build volume and the correct firmware version
- If any of the fields are blank or contain incorrect information, the flashing process has failed. Try again.
- Select Reset to Factory settings and Cycle printer power OFF/ON
OR - issueM502
followed byM500
via the serial interface from a Terminal software like Octoprint. - Review and adjust any of the printer configuration and performance parameters on the Setup menus to your preferred settings
- Verify that the INFO screen shows the correct build volume and the correct firmware version
-
Go to the Calibrate menu
- Select the Level submenu
- Review/adjust the Leveling Settings to your preference
- Relevel the bed
- Recalibrate the z-offset
- Reprogram esteps (if you are not using the stock 93.0 steps/mm)
- Do a PID tune (if you find that the heating is not reliable for you or if you use high temperature plastics like ABS and nylon).
- Select the Level submenu
Your printer is now ready to Prepare and Print, using the latest Community Firmware.
Enjoy!
FAQ
Some frequently asked questions. Your question will most likely be answered here:
https://github.com/CR6Community/Marlin/wiki/Frequently-Asked-Questions-(FAQs)-about-the-CR6-Community-Firmware
Reporting issues
Please follow the instructions here carefully.
Issues not following the issue template will be closed due to insufficient information.
Troubleshooting
-
Verify that the issues are not in your hardware. We've seen issues that were reported as firmware issues, but were actually hardware issues that "just" happened.
- Check you have a good SD card. Do not use the Creality SD card that came with your printer. It will fail sooner or later and result in failures. Try a different SD card.
- Leveling: try it again a second time and try using the stock cable clips.
- If the nozzle is pushing the bed down while doing ABL, check the force required to trigger the detection event. Stock printers may be tuned to use 500g or more. This firmware works best with a value around 160g.
- If the printer does not "Home Z" correctly after replacing the glass bed with something thinner (e.g. a Wham Bam) check whether the optical sensor height needs adjusting.
-
Verify that the issues are not in your slicer
- Cura 4.7.x is having issues
- Cura 4.8 is still giving some issues for some people. Try playing with the maximum resolution and maximum deviation settings in your slicing profile.
Feature requests or other input
Feature requests are welcome! Let us know in the issue tracker!
Contributing
Your contributions are very welcome!
- First, please open an issue in the issue tracker to discuss what you like to contribute. This is especially important if it involves the touch screen because due to technical limitations only one person can work on the touch screen firmware at the same time.
- Issues marked "good first issue" or "help wanted" can are a good issue to start with!
- If you can't code but still like to contribute and can spare a cup of coffee please donate to support this initiative.
- If you like, you can also contribute documentation here, or help your fellow CR-6 users or influencers feature the community firmware
Some final notes
- Remember that this is a community project, we're not paid (definitely not by Creality!). We also have a full time job and are doing this in our spare time. We're just fellow 3d printing enthusiasts who like to have a better Creality CR-6 experience for everyone.
- We're active in the CR-6 community discord - come say hello!
- You can download the pre-compiled files for your printer configuration from the "assets" section below (See File Listing section for details).
- Use the information in the File Listing section to identify which file you need, according to your machine configuration.
- If you prefer to compile the Motherboard firmware yourself, you can download the Source Code zip or tar.gz file or pick the applicable branch from Github instead
Files Listing
The firmware files can be downloaded using the links provided in the assets section at the bottom of this page.
Note that each file name includes the motherboard for which that particular version has been compiled.
In the case of the BTT motherboard, there are also separate files for those using the Creality Stock Thin Film Transistor (TFT) display and for those using a BTT display in LCD mode.
If you are using a BTT TFT v3.0 display in LCD mode, then you only need to flash the motherboard firmware, which includes the Marlin UI.
If you are using the stock Creality TFT touch screen display, then you must also flash the display with a DWIN firmware that matches the motherboard firmware. Detailed flashing instructions and all of the necessary files are provided in the README.TXT file in the Touchscreen Firmware folder of the firmware zip file applicable to your system.
Take care to download the correct version of the firmware according to both the motherboard and the display type in your printer.
You can find descriptions of the files and the file SHA256 hash codes in this section in the table below (scroll right to see it all).
For use with the CR6-SE:
File name Description SHA256 hash
--------- ----------- -----------
File name Description SHA256 hash
--------- ----------- -----------
CF6.1-Final-btt-skr-cr6-with-btt-tft-2021-06-04-16-50.zip CR-6 SE with BigTreeTech SKR CR6 and BTT TFT 71165089A7B16D5436F3C914DA14AABAC0B67DF5E2891E151AAF456A829F0554
CF6.1-Final-btt-skr-cr6-with-stock-creality-tft-2021-06-04-16-50.zip CR-6 SE with BigTreeTech SKR CR6 and stock Creality screen 8776DCD082EB8E9A5B92202160CBB646F43DE32F268CD1248CEB53744C8FD052
CF6.1-Final-cr6-se-v4.5.2-mb-2021-06-04-16-52.zip CR-6 SE (v4.5.2 motherboard) 557EEF720F2224C9FE7F8BDF39AAAB2BDCEBB4CF4E49F5872B9FF69BA8FA446B
CF6.1-Final-cr6-se-v4.5.2-mb-no-watchdog-2021-06-04-16-53.zip CR-6 SE (v4.5.2 motherboard) (no watchdog - caution - thermal runaway possible!) 4F7F81A3575B5C0E1948DE3EE7332EC05D8A47115102146D9FDF48FF2F548B88
CF6.1-Final-cr6-se-v4.5.3-mb-2021-06-04-16-53.zip CR-6 SE (v4.5.3 or v1.1-ERA motherboard) 42EDCB4726A42600555ACE7CBC6DA9A30C5D7135ADBE5E7F3D8EFEE20046D8A7
For use with the CR6-MAX:
File name Description SHA256 hash
--------- ----------- -----------
File name Description SHA256 hash
--------- ----------- -----------
CF6.1-Final-cr6-max-btt-skr-cr6-with-btt-tft-2021-06-04-16-51.zip CR-6 MAX with BigTreeTech SKR CR6 and BTT TFT [experimental] 9639C6DEDEA8AA88C544A5295479BC827CC7A155489D311654ADD6BD54478418
CF6.1-Final-cr6-max-btt-skr-cr6-with-stock-creality-tft-2021-06-04-16-51.zip CR-6 MAX with BigTreeTech SKR CR6 and stock Creality screen [experimental] 8E748CAA8D60BE9AD59447D0AB6276A99FC8A13976B026B146A74659BAACA333
CF6.1-Final-cr6-max-stock-mb-2021-06-04-16-52.zip CR-6 MAX (stock motherboard) 71F01640EE8EA958EFD49F63A02CEE4F3BEC5B6304AAB4F684C797611424E653
Source Files:
File name Description
--------- -----------
Source Files (zip) The source files for the motherboard firmware in this release (.zip file)
Source File (tar.gz) The source files for the motherboard firmware in this release, (.tar.gz file)
Downloads below - find the correct download for your printer(s) in the file listing above