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

Mesh data not saved after autolevel #14

Closed
ritchiedc opened this issue Oct 10, 2020 · 1 comment
Closed

Mesh data not saved after autolevel #14

ritchiedc opened this issue Oct 10, 2020 · 1 comment

Comments

@ritchiedc
Copy link

Description

The mesh data is not saved to "eeprom" after an autolevel initiated from the screen.

Steps to Reproduce

  1. Reset factory settings
  2. Execute "M420 V" -> invalid mesh
  3. Execute autolevel from screen
  4. Execute "M420 V" -> valid mesh data
  5. Cycle power
  6. Execute "M420 V" -> Invalid mesh

Expected behavior: Mesh data should be saved thru power cycles

Actual behavior: Mesh data is lost after power cycle

Additional Information

As a work around, changing the z offset after an autolevel will cause the equivalent of an M500 resulting in parameters being saved, including any changes to esteps (M92 Exxx) and Fade Height (M420 Zxx).

@ritchiedc
Copy link
Author

ritchiedc commented Oct 10, 2020

In Creality's original code a call to "settings.save()" is made in G29.cpp at line 853. This is missing from G29.cpp at line 768. To avoid having to include "settings.h" in G29.cpp the call to settings.save() can be added to the DWINTouch_bedlevel_finish_callback().

Edit: If you want the screen initiated autolevel to save but the G29 command from something like Octoprint to not save and require an M500 put the settings.save() call inside the check for 3 == waitway in the callback function.

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