Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft release notes for community release 4 alpha #36

Closed
Sebazzz opened this issue Nov 5, 2020 · 0 comments
Closed

Draft release notes for community release 4 alpha #36

Sebazzz opened this issue Nov 5, 2020 · 0 comments

Comments

@Sebazzz
Copy link
Collaborator

Sebazzz commented Nov 5, 2020

Community firmware release 4 alpha based on Marlin v2.0.7.1 - rewritten from scratch

In this release the interface between Marlin and the touch screen has been rewritten - this release has all Creality code rewritten. Because of this, we will mark this as an alpha and though I have been printing successfully with it, you might not - for you it might not be as stable as the previous release or have small annoyances. There will be also some rough edges, but the added features might make it worth your while. There is also some user interface improvement still to be done - but release can be considered feature complete.

As always, flashing firmware is entirely on your own risk.

Changes compared to Community Release 3 and Creality stock firmware

  • Touch screen interfacing layer between Marlin and Creality touch display has been completely rewritten (issue Clean-up touch screen code #1) - The code of Creality was not maintainable(1000+ line switch statements, more "if" statements than you can count, void of comments, incorrect constants).

  • Full support for folder navigation when starting a print from the SD card - your gcode files no longer need to be in the root directory

  • Loading and unloading of filament changed to Marlin native procedures and speed configurable in FILAMENT_CHANGE_FAST_LOAD_FEEDRATE (by default 6mm/s)

  • Movement tweaking Use a good default for JUNCTION_DEVIATION

  • Implement proper retrieval and save of preheat PLA / ABS settings

  • Improve auto bed leveling (issue [BUG] (Auto Level hangs) #32)

    • More often taring/zeroing the strain gauge probe, reducing possible issues with the bowden tube or cable pulling the strain gauge up and causing false or inaccurate readings (issue [BUG] (Auto Level hangs) #32) - for this reason you may need a lower Z-offset than in previous release. You may also be able to increase your strain gauge sensitivity to allow less flexing of the hot-end while probing.
    • Always pre-heat both bed and nozzle before G29
    • Support M48 probe accuracy test
    • Automatically save mesh after leveling from the touch screen (issue Mesh data not saved after autolevel #14)
  • Filament runout detection has now been enabled by default again. (issue Change in default for runout sensor is a breaking change, makes old slices missing runout detection #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 using M412 S1.
  • Use the native Marlin print timer formatting (so format as 1d 5h 7m instead of 29:7)

  • Support HOST_ACTION_COMMANDS

  • Support G2/G3 arc support - Useful if using Octoprint with the Arc welder plugin (issue [FR] Arc Support #23)

  • Support M355 for controlling the hot-end LED (issue Implement GCODE for Hotend LED #9)

  • Support M300 (play tone / buzzer) (issue [FR] Add M300 (Play Tone) support #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.

  • Support M73 (print progress) (issue #7 and issue [BUG] Support print progress display #27)

  • 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, you will probably want to include this particular gcode.

  • Support M117 LCD message (issue #7) on the print progress screen

  • Support ADVANCED_PAUSE_FEATURE

    • Support M600 filament change
    • Support M701/M702 filament load/unload

Bugs fixed compared to previous release

Changes compared to Community Release 1 and 2, and Creality stock firmware

Changes compared to Creality firmware (in addition to the changes above)

  • Save settings to EEPROM
  • Improve SD card sorting
  • Integrate filament runout feature with Marlin base code allowing it to be disabled using M412 gcode. 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 using M412 S1)
  • Based on recent version of Marlin (as mentioned above) instead of a pre-release version of Marlin 2.0.0
  • Increase reliability of filament runout sensor - allow for false positives to happen
  • Enable linear advance / pressure advance allowing you to do linear advance calibration
  • Fix temperature reporting issues in Octoprint (issue Fix duplicate temperature reporting in Octoprint #3)
  • Drop support for Chinese (consider flashing at least the CR-6 community touch firmware v1.0.0-a1 to remove the Chinese options from the menu also)
  • Implement saving pre-heat PLA and ABS settings (issue Marlin pre-heat settings not saved/retrieved #6)
  • 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)
  • Enable S_CURVE_ACCELERATION
  • 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.

Known issues

  • Auto-homing shows "auto-leveling please wait" instead of "auto-homing please wait" (issue #8)
  • Fonts and font-sizes could be tidied up, especially for M117
  • Print progress for Octoprint / host printing also allows messing with the print from the touch screen. We should probably disable that - for now, don't mess with a running print when running a print from a host.
  • This release cannot be compiled from sources using Arduino IDE - use Visual Studio Code with PlatformIO instead - this is probably an upstream bug (issue [BUG] libmaple/usart.h: No such file or directory #30)
  • When printing from a host like Octoprint, dwin technology might be shown as a print filename

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 download touch screen firmware community release 4 alpha.

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 downloadable from this release page (check the 'assets section' below) onto the 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.
  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 in Octoprint - do this also if you have been running Community Release 3. You need to relevel the bed, reset the z-offset, and reprogram esteps (if you've changed them from defaults).

Release SHA256 hash: 06236286A7917240D14B6399A0A75069D606B33EB338E4766D0CF9CC0468AF00

Rollback instructions

To completely roll back to an earlier release:

  1. Flash the v1.0.0-a1 touch screen firmware
  2. Flash Creality stock firmware or Community release 3

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 ties
  • Verify that the issues are not in your slicer

    • Cura 4.7.x is having issues
    • Cura 4.8 is still in beta and not entirely out of the woods yet either

Reporting issues

Follow the guidelines below for reporting issues - report them on Github because it allows us to watch a single place for issues and workarounds might already be available:

  • Open an issue on the Github repository page if you have found no issue matching your problem.
  • Mention which release you are on, and if you compiled a release yourself (and in that case: what changes you have done).
  • Be specific in reproduction steps. Include pictures or a video if useful. Ensure you have been able to reproduce it.
  • Check if the issue has not been reported in Marlin, nor that you are using a slicer known to have problems (Cura 4.7 or higher).
  • You can collect logging using M111 S247 and M928 log.txt - please collect logging, without it is practically impossible for us to help you. Use Pronterface or Octoprint to capture serial terminal output.

Thank you note

  • Thank you to a few early testers who compiled and flashed firmware before this release
  • Thanks to @Doridian for contributing a few bugfixes and improvements
  • Thanks for the support, love and even cups of coffee

Up for grabs

Feel free to connect with us and take on one of these issues:

Additional notes

  • If you're compiling this release yourself, either take the zip archive or download the extui branch for the latest sources
  • We're active in the CR-6 community discord - come say hello!
  • Remember that this is a community project, we're not paid (definitely not by Creality!), we have a full time job, doing this in our spare time, and we're just 3d printing enthusiasts who like to have a better Creality CR-6 experience for everyone.
@Sebazzz Sebazzz added this to the Community Release 4 alpha milestone Nov 5, 2020
@Sebazzz Sebazzz closed this as completed Nov 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant