CR6Community / Marlin

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
GNU General Public License v3.0
470 stars 83 forks source link

Community Firmware v6 provisional release notes #159

Closed Sebazzz closed 3 years ago

Sebazzz commented 3 years ago

First of all I want to thank everyone for the support and positive reactions we got on the 5 beta release of the community firmware. All the testing and feedback has made this firmware better and better. Thank you for testing and sending your feedback. Months of work have come to an end with release 6 of the community firmware.

TLDR: Added PID tuning, interactive e-steps calibration, overriding slicer retractions, custom ABL probing settings, many more configuration knobs and stability improvements.

Hardware support

The CR-6 Community Firmware supports the following hardware configurations:

Table of contents

News

New features added in Release 6

All hardware configurations

Allow you to configure if you want to trade better bed leveling and Z-offset accuracy for speed, and allow you to set the preheat nozzle and bed temperature (issue #106 )

image On the CR-6 stock display. The second from bottom option is used to skip waiting for temperatures to stabilize if you are using the recommended start gcode for this firmware.

20210127_210250714_iOS On MarlinUI (1)

20210127_210256872_iOS On MarlinUI (2)

Allow overriding slicer retractions and real-time retraction tuning (issue #157)

image

image

CR-6 stock touch screen

Add linear advance tuning (issue #158)

Tuning_CF6Pre5

Add hot-end PID tuning (issue #60)

20210126_215538886_iOS

Add interactive e-step calibration (issue #57)

image

20210126_204206126_iOS

20210126_204343672_iOS

Add bed leveling point visualization (issue #148)

image

In addition, some people, regardless of firmware, still experience issues. For those people, you can now manually level your bed (issue #209):

image Tap a point, enter a new mesh value, and it will automatically save. CR-6 SE users only.

Add built-in experimental mesh validation pattern print (issue #196)

image Circles on every probe point

image Screen to run the calibration pattern

Add inputs to completely control the motion parameters of the printer (issue #189)

image Movement settings can be changed per axis

image There are also advanced settings available, you can tweak them if you like

Add some additional misc settings for the filament sensor or controlling PLR (issue #193)

image Some of you don't have a working filament sensor, so... disable it here (thanks to @ztakis for doing the graphics)

Add M73 R support which supporting Octoprint plugins or slicers like PrusaSlicer can use to emit a time estimate (issue #208) - check here for a full guide on how to activate this feature

image Time remaining shown - you now have your M117 status line available for other information, like layer height

image Corresponding setting in PrusaSlicer - it will also be possible in Cura 4.9 when it releases

@ztakis gave the printing screen a refresh, by reorganizing the status variables and adding the Z-offset back (issue #115)

PrintFromSD_CF6Pre5

New features added in previous releases

Safety

Important safety feature: We now enabled the watchdog 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

User interface

This release features an entirely refreshed user interface by @grobux! Improved font spacing, improved graphics. JPEG artifacts be gone!

image

In addition we implemented toggles allowing you to decide if you want to hear sounds from the touch screen (or not), and if you like the touch screen display to dim to 10% on idle (30 seconds currently).

Control_CF6Pre5

We've also implemented that you can tune the flow rate (the amount of filament extruded) during the print from the "tuning" screen. Very useful when tuning in new filaments. You can also control and review the fan speed percentage from the tuning screen.

flow-rate-tuning

You can also now quickly set the bed and hot-end temperature by tapping the temperature in the footer.

On the print screen we've added displays for the fan speed, flow rate, and X/Y/Z axis positions:

image

On this screen you can also set the hotend and bed temperature by directly tapping the numbers.

SD card folder support

We support navigation through folders on your SD card. No longer are you limited to 5 pages of gcode files. You can organise your SD card in folders.

folder-support

Hardware support

Octoprint

We have improved Octoprint support. We show the printer status messages also on the home screen.

image

The filament sensor is working and Octoprint acts on it - it pauses the print. Make sure you have the correct gcode in Octoprint so it parks the nozzle.

image

In addition when an Octoprint print starts we automatically show the "printing" screen with full access to all details and tuning options. You can also set the print progress using the the detailed progress plugin.

Reliability

Enhancements

CR-6 stock touch screen only

Detailed changes of the previous release

Changes specific when using Creality v4.5.2 and v4.5.3 motherboards

Changes specific when using the Creality stock display

Changes specific to BTT SKR CR6 boards

image

Changes specific to BTT SKR CR6 firmware with BTT TFT

Comparison to Creality firmware

See for a full list the Community firmware 4 alpha release notes, but some highlights here:

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.

Issues resolved

BTT SKR CR-6 board in combination with CR-6 stock touchscreen only

BTT SKR CR-6 board

For a full list of added features and bugs fixed - see the Community Firmware Release 6 milestone.

Known issues

For a full list of things found and fixed for the next release - please check the Community Firmware 7 milestone

When using the Creality stock touch screen:

For the BTT SKR CR6 board with BTT TFT:

Features not available in this firmware

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.

Touch screen flashing instructions

This release of the touch screen firmware comes with a new version of DGUS OS (the underlying operating system of the 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 is 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

  1. If you like to remember what settings you had, run M503 in a serial monitor.
  2. Use an empty SD card formatted FAT32 4096KB sector size.
  3. Put the firmware ".bin" file from the zip file in the root folder of your SD card
  4. When using Windows - do a "safe removal" to remove your SD card.
  5. Put the SD card in the printer.
  6. 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 to firmware.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
  7. Verify the firmware is flashed by issuing M115 or going to "Control -> Info" on the touch screen.
  8. You can now remove the file from the SD card.
  9. After flashing go to the menu and reset to factory settings or issue M502 followed by M500 in Octoprint - do this also if you have been running an earlier release. You need to relevel the bed, recalibrate the z-offset, reprogram esteps (if you've changed them from defaults), and 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).

image The version should be shown when flashed successfully. If it is not shown, try rebooting your printer, reflashing it by renaming the .bin file, reformatting the SD card, or trying a different SD card

FAQ

Some frequently asked questions. Your question will most likely be answered here!

I have a CR-6 MAX with a BTT SKR CR-6 board

You need to compile the firmware yourself, we currently don't have an example configuration. If you have an example configuration, let us know and it will be included in the next release!

How do I know if I have a Creality v4.5.2 or v4.5.3 motherboard?

I have a v1.1-ERA motherboard. What firmware do I flash?

According to Creality the v1.1-ERA motherboard is electrically compatible with the v4.5.3 motherboard, so you can probably flash the v4.5.3 firmware.

I don't want to open my printer. What happens if I install the firmware for the v4.5.3 motherboard on my v4.5.2 motherboard

No smoke - or at least, not due to the firmware. However, during homing the printer won't be able to read the optical sensor on the gantry. So it won't know when to listen to the strain gauge and drive the nozzle into the print bed.

Does it matter if I flash the touch screen or motherboard firmware first?

No - you can do it in either order. Though, I advise to flash the touch screen first.

I'm having trouble flashing the touch screen firmware / things aren't working / I'm seeing garbled or missing text

Try reflashing your touch screen firmware. Read the flashing instructions carefully. The DWIN stock touch screen is very picky when it comes to SD cards. Sorry, we nor Creality can't change this.

After flashing the touch screen it only shows a black display

This has occurred to some users while upgrading to either official or community firmware, but it is unclear why this happens.

Make sure you haven't accidentally shorted the PCB of the touch screen when you attempted to flash it. Because the DWIN touch screen uses SRAM, it takes a while for the error condition to clear. Turn off the printer for 5 minutes or more and try reflashing the touch screen.

I have leveling issues / my prints don't stick to the bed

Your Z-offset isn't the same as with a previous firmware due to leveling accuracy improvements. Also try cleaning your bed, you may have touched it when flashing the touch screen.

My nozzle is driven into the bed

Ensure the optical sensor is properly connected. You can verify this by running command M119 from a serial monitor, blocking the optical sensor, and running the command again. You should see a difference in the output.

A previous release of the community firmware was (incorrectly) tolerant to this sensor being connected incorrectly. If your sensor is broken, build the firmware yourself with the option '#define PROBE_ACTIVATION_SWITCH` commented out.

My printer reboots when printing (Creality v4.5.2 boards)

Make sure your SD card isn't corrupt. Also some v4.5.2 boards do not like some types of SD cards.

A small number of v4.5.2 boards also get overloaded by the more features that are enabled by the firmware. For most boards it isn't an issue, but some particular v4.5.2 boards are unstable. Nothing you can do, stock firmware for you only - or upgrade to a v4.5.3 or a BigTreeTech SKR CR6 board.

You can also try CF[version]-cr6-se-v4.5.2-mb-no-watchdog-[date].zip firmware, but be aware: if the firmware would freeze then there is nothing that prevents the printer from overheating. Use with caution!

The temperatures go up/down/up/down while bed leveling

That is by design to improve bed leveling accuracy. Turn it off by disabling "Better accuracy" in the leveling settings (not recommended).

Reporting issues

Please follow the instructions here carefully. Issues not following the issue template will be closed due to insufficient information.

Troubleshooting

Feature requests or other input

Feature requests are welcome! Let us know in the issue tracker!

Contributing

Your contributions are very welcome!

Some final notes

File listing

The files can be downloaded from the assets section at the bottom of the page. You can find the description of the files below.

File name                                                                          Description                                                                      SHA256 hash
---------                                                                          -----------                                                                      -----------
CR6Comm-CF6-Final-btt-skr-cr6-with-btt-tft-2021-03-27-15-50.zip                    CR-6 SE with BigTreeTech SKR CR6 and BTT TFT                                     D93197F196432635FAF20648410CE9ECB20DE7737BF54E97C5B663A55139541F
CR6Comm-CF6-Final-btt-skr-cr6-with-stock-creality-tft-2021-03-27-15-50.zip         CR-6 SE with BigTreeTech SKR CR6 and stock Creality screen                       AA67A30BB7045F8B5C8C1C7C276B2258B746AE2C49237C9255447DFFDFE47FBF
CR6Comm-CF6-Final-cr6-max-btt-skr-cr6-with-btt-tft-2021-03-27-15-51.zip            CR-6 MAX with BigTreeTech SKR CR6 and BTT TFT [experimental]                     09A2ABFDAA1D75BAA7D38170646E9021FAAE5F12AD04843F223A3D65E35B41FA
CR6Comm-CF6-Final-cr6-max-btt-skr-cr6-with-stock-creality-tft-2021-03-27-15-51.zip CR-6 MAX with BigTreeTech SKR CR6 and stock Creality screen [experimental]       31B56C0217AA6B730D82704D20A464FF307A4922EF8BD51685E4841EC5B48199
CR6Comm-CF6-Final-cr6-max-stock-mb-2021-03-27-15-52.zip                            CR-6 MAX (stock motherboard)                                                     3F55931A9D6907E204EA8864645E2E6B11E442F1DE5837E8627E519AFE981698
CR6Comm-CF6-Final-cr6-se-v4.5.2-mb-2021-03-27-15-52.zip                            CR-6 SE (v4.5.2 motherboard)                                                     D656E2A53A62EFAC52308210E1D4466CF0B966A7E748A36A6151D9DA51C6D2B7
CR6Comm-CF6-Final-cr6-se-v4.5.2-mb-no-watchdog-2021-03-27-15-53.zip                CR-6 SE (v4.5.2 motherboard) (no watchdog - caution - thermal runaway possible!) AD4122A8EC477D48D713D84BC2C24CCED92F17079FC65712918101C0F89C6779
CR6Comm-CF6-Final-cr6-se-v4.5.3-mb-2021-03-27-15-53.zip                            CR-6 SE (v4.5.3 or v1.1-ERA motherboard)                                         1F713C01A02D6380B16EE64D877B40068F18166BA554B4A36FD0CD450652A185

Downloads below - find the correct download in the file listing above

Thinkersbluff commented 3 years ago

@Sebazzz - If it is now possible to make “Probe with Heaters Off” configurable from the new ABL settings menu, could this be an option on the Control menu, impacting all probe operations? Or is this a neat trick that only affects ABL?

Sebazzz commented 3 years ago

It involves all probe operations, so homing too, but there is no space in the control menu until we take a serious look at #121

Thinkersbluff commented 3 years ago

there is no space in the control menu until we take a serious look at #121

Understood. I have some ideas on that score, too.

Sebazzz commented 3 years ago

Updated the release notes. Included a part of the beta 5 release notes as well.

Thinkersbluff commented 3 years ago

Some users may appreciate a pointer to this CNC Kitchen Youtube video, to help them make sense of the advice, "Try playing with the maximum resolution and maximum deviation settings in your slicing profile."

https://youtu.be/Hvw3DrVAeTA

Thinkersbluff commented 3 years ago

"This release of the touch screen firmware comes with a new version of DGUS OS (the underlying operating system of the touch screen) to fix text rendering issues."

Did this get rolled back? I don't see any change to the OS filenames. Ref https://github.com/CR6Community/CR-6-touchscreen/issues/30

Sebazzz commented 3 years ago

"This release of the touch screen firmware comes with a new version of DGUS OS (the underlying operating system of the touch screen) to fix text rendering issues."

Did this get rolled back? I don't see any change to the OS filenames.

Ref https://github.com/CR6Community/CR-6-touchscreen/issues/30

Compared to the stock Creality firmware. I shall clarify it.

Thinkersbluff commented 3 years ago

I find the "Restore" defaults a bit confusing on the retraction override screen.

Sebazzz commented 3 years ago

makes the head pause each time it comes back down to the print, while the nozzle pressure is restored

Sorry, that is a feature (Marlin feature that is).

Makes it impossible to set a matching speed

Why?

I hesitate each time I see Restore distance of 0mm, thinking, "if the Restore speed controls bringing the filament back into the nozzle, might the filament stay retracted if I have a value of zero here?"

What do you propose? It is the same settings as these slicer settings:

image

image

Thinkersbluff commented 3 years ago

Makes it impossible to set a matching speed

Why?

On my system, these speeds only change in increments of 5mm/sec. With an initial difference of 8mm/sec between the two, I can not make them match each other. I don’t understand why a default value is a “feature”.
It would make more sense to me if the “Restore speed” was labelled “Prime Speed” and if it was defaulted to the same value as the Retraction speed, because I only use Cura.

What do you propose? It is the same settings as these slicer settings:

It is unfortunate that all slicers do not standardize on the same terminology. If the label was “Extra Prime Amount” I think it would be more clear what will happen with a non-zero value.

Selfishly, perhaps, I recommend standardizing on Cura terminology and default settings when implementing “slicer override” settings. At least that way, users who use Cura are better able to correctly guess what each control does, the release notes can explain the equivalent settings in other popular slicers, like S3D, PrusaSlicer, Slic3r, SuperSlicer, etc..

Sebazzz commented 3 years ago

@Thinkersbluff Please open a separate issue for clarifying the terminology. This needs some graphics work.

Thinkersbluff commented 3 years ago

@Thinkersbluff Please open a separate issue for clarifying the terminology. This needs some graphics work.

Done https://github.com/CR6Community/Marlin/issues/213

Thinkersbluff commented 3 years ago

Here are some updated screenshots, from CF6Pre5. Screenshots.zip

I have reported the "Printing From Hostio" bug under issue#216 and removed that pair of photos from the zip file here.

simboel commented 3 years ago

Just a small hint regarding #208

Would you mind to add a note, that this feature will be usable with Cura Release 4.9, too? This seems to be implemented in https://github.com/Ultimaker/Cura/pull/8403

This may help people like me to not start on implementing this for Cura because it will be available soon 😆

Sebazzz commented 3 years ago

Check, I've added a note!