Marlin: Babyz not persisted between prints?

Created on 17 Nov 2017  路  13Comments  路  Source: MarlinFirmware/Marlin

Even if I leave my printer on, it seems that the babyz setting is back to 0.000 at the start of each print.

Is this normal?

Question

All 13 comments

Yes.
The idea of babystepping was to just move some steps, bypassing all registration.

Ok. So the best thing to do is to get the value and put it in my slicer for the next prints then.

or edit your height/z offset

Configuration_adv.h, Line #604 (in my Version) //#define BABYSTEP_ZPROBE_OFFSET // Enable to combine M851 and Babystepping.

If I understand this correctly your babystepping will be applied to your z offset permanently.

But it is not persisted.

I haven't used it but a M500 may save it to EEPROM, where it should persist.

In the current bugfix-1.1.x branch:

  • Babystepping with BABYSTEP_Z_OFFSET will allow babystepping which also adjusts the Probe Z Offset. The same value as set by M851.
  • You can use M500 to save the new Probe Z Offset to EEPROM.
  • You must re-probe the bed to benefit from the new Probe Z Offset. It is not applied to your previous bed leveling probe data.

I'm all pretty new to this, so I might need a bit more explaining, but:

I am currently running the bugfix branch on my CR-10S. How do I reprobe the bed so it uses the new probe Z offset? The only things I currently use is 9 point bed levelling and then using the baby z to finetune the distance (which for some reason is always too high after my bed levelling using a sheet of paper, but that's a different discussion) while printing.

How exactly would I persist this baby Z then? Right now I just copied the value in my slicer software in the Z offset field.

@ir-fuel Hopefully I can help

With BABYSTEP_Z_OFFSET enabled, you would do as @thinkyhead said - adjust your offset using babysteps to get the correct height, use M500 to save the offset to EEPROM, and then (re-)issue G29to (re-)probe the bed.

Without BABYSTEP_Z_OFFSET enabled, you can still fine-tune your z-probe offset to avoid having to finetune each time. M851 will print the current probe offset to the terminal; M851 Zx.xx allows you to change it. M500 persists the new value to EEPROM when you're happy with it.

AntCLabs has a pretty good document for BLTouch installation that includes z-offset calibration here - look for the section titled 'calibration.' One note - if you have _SOFTWARE_ENDSTOPS enabled and you need to move outside the z-bounds to calibrate your offset you can do this. You need to issue M211 S0 to disable software endstops before making the necessary Z moves, and then M211 S1 to re-enable the software endstops once you've found your correct z-offset value.

I did another test today.
It seems baby z isn't remembered at all?
Test:
while printing, double click the button and adjust baby z
Click again to quit that screen
double click again
baby z value = 0.000

Is that normal?

Config files included.

Configuration_adv.txt
Configuration.txt

Yes.
The idea of babystepping was to just move some steps, bypassing all registration.

All !

If you are talking about BABYSTEP_Z_OFFSET - that could be different.

Also, is baby Z applied at the next command to be executed, or is it real time?
If for instance I send a command to extrude a line over the entire width of the bed, will baby Z influence that line while I change its value during that extrusion or will it only be applied once the next command starts?

Also, is baby Z applied at the next command to be executed, or is it real time?

Babystepping is accumulated and applied immediately.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ceturan picture ceturan  路  4Comments

Anion-anion picture Anion-anion  路  3Comments

Bobsta6 picture Bobsta6  路  3Comments

W8KDB picture W8KDB  路  4Comments

jerryerry picture jerryerry  路  4Comments