Z offset not saving

Hi, I have a problem with my printer related to the Z offset. Everything was printing fine before, but now I have to adjust the Z offset by 0.15 mm for every print to get a perfect first layer. I’m adjusting the offset using Expert Mode.

However, after the print finishes, the offset resets, and I have to set it again before each new print. I make sure to clean both the bed and the nozzle thoroughly before printing.

Why is my Z offset not saving after a print, and how can I set it so I don’t have to adjust it manually each time?

thanks for help

Normally, the command “SAVE_CONFIG” is supposed to save the Z-offset. For me, on the K2 plus, it does not work because SAVE_CONFIG (from Fluidd) leads to an error.

Solved! I don’t know why, but I think they did this for safety reasons. I went to Fluidd > Configuration Files > gcode_macro.cfg , then found [gcode_macro START_PRINT] . In that section, I found the line:
SET_GCODE_OFFSET Z=0

I believe this line sets the Z offset to 0 before each print starts. I changed it to:
SET_GCODE_OFFSET Z=0.15

It works perfectly for me now. Before printing starts, Fluidd shows the Z offset as 0.150 mm. However, this change doesn’t reflect in Expert Mode on the printer screen. If you manually adjust the Z offset (e.g., by 0.05 mm) in Expert Mode, it updates according to the value you set in gcode_macro.cfg + What you chose on screen

I think that was disabled for safety reasons—just in case something goes wrong when the printer tries to set the Z offset automatically

4 Likes

Thangs for this Tip. Works Perfect!

1 Like

Many thanks!!!

Thank you for this!
I used to set the Z value using Expert mode for each new print.

Find the best z offset using ‘expert mode’ on your CREALITY HI, and write it down (mine is 0,2). Then open CREALITY slicer, on the left corner you’ll find the name of the printer. Go to ‘edit preset’ on the right side of the printer’s name, Under ‘BASIC INFORMATION’ You can set ‘Z OFFSET’. Set the number you’d already get from ‘expert mode’ which is mine is 0.2. Save the preset ( I save it under new name; CREALTY HI 0.4 Z 0.2). And that’s it, every time you print, the z offset is 0.2.

1 Like

Hello.

How to find best z-offset?

Have you problems with autoleveling after update to 50 firmware? I have described my problem here: Nozzle scratch plate after update to V1.1.0.50

Yes, the problem occurs after I updated the firmware.

To find the best z offset is by using the ‘expert mode’ while printing the first layer (the ‘expert mode’ only works while the printer is printing, not while it is in idle state). Since the problem of the z offset is at ‘0’ height on the first layer, you have to adjust the nozzle higher by clicking the ‘up arrow’ in the expert mode, and see the print results of the first layer while doing this. Before you rise the nozzle, you will see the first layer is very bad because it is at ‘0’ height. By raising the nozzle little by little, you will see the layer become better and better, and if you rise it further more, it becomes worse again ( the nozzle becomes to high, check YOUTUBE how the best z offset should be look-liked). So pick the number which is best, write it down, and put it in the printer preset in the CREALITY SLICER software.

The problem while the printer is doing the ‘purging line’, cannot be fixed. Yes it will scratch the bed a little bit, because it will purge at ‘0’ height. I’m not worry too much about this, since the scratch is at the border of the printing area, much worried about the nozzle. The only one who can fix this, is the manufacturer via new firmware. I believe it has to do with how the sensor pick the height while doing the auto level. After the firmware update, it seems the sensor becomes less sensitive or the nozzle move down too fast during the proses, resulting lower number.

One trick you can do to fix this, is by putting 3 or 4 layers of aluminum foil under the metal bed before auto leveling (it will make the bed in higher position during auto leveling–cheat the height using aluminum foil). After it finish, remove the aluminum foil, and do the test print (without adjusting the expert mode). If it still too low, put more aluminum foil, and do the auto leveling again. Be aware, if you do this, you have to disable ‘auto calibration’ while sending the file to the printer, otherwise, the printer will do a calibration again without the aluminum foil prior printing the model, resulting error height again.

I don’t do this, because it needs more works every time I change the metal bed. I have 3 spare beds with different thickness, using only 1 bed is a waste of time, since I have too wait for the bed to cool down before I can remove the model, and start another printing, By having more than 1 bed, I can remove the bed as soon as the printing is done, put it on my desk, and use another bed to start the printer again and let the printer recognize the thickness of the new bed by enabling the auto level every time I send the printing file.

Hope these will help.

Yes, but this affects all G-code files on your printer — both the ones you’ve already sliced and any you slice in the future. If you change your Z-offset later, you’ll need to re-slice all your previous G-code files to match the new Z-offset.

I explained earlier how you can change the Z-offset directly in the macro file in Fluidd. After a printer update, it will reset to 0.0.

If you want to be 100% safe after a printer update, just set your Z-offset to 0.20 in gcode_macro.cfg, then use Expert Mode to fine-tune it and find the perfect Z-offset.

Correct if you understand coding and familiar with fluidd, but I just don’t want to change any coding on my printer, just in case something goes wrong. That’s why I’d said, it’ll be fix if the creality had a new firmware. I’m kind of stupid in coding and never use fluidd :sweat_smile:. Besides, I just share what works for me and hope it will help anybody who don’t use fluidd and too afraid messing around with factory firmware……..like me :grinning_face: .

I look on my “flat plane” in fluidd (4408), and it looks like almost all points below the surface (I don’t have a perfectly flat table), but before update I had only a small hole.

For the experiment, I’ll raise the z-offset, and maybe play with the foil. But, in reality, a new good firmware is needed. Today I rolled back to “Factory settings” - did not help. Downgraded to the 44th firmware - did not help.

Maybe reason in “5. Update step-servo motor system firmware and parameters.“ (from description of 50th firmware). Because sounds of motors had changed after update. And interesting, that they don’t returned back after downgrade of firmware.

I have two Hi printers, and I updated both of them to the newest version. Everything is working perfectly.

For my first printer, the bed mesh range is 0.4940 with a Z-offset of 0.10.

For my second printer, the bed mesh range is 0.5870 with a Z-offset of 0.10.

After updating, I ran a new auto bed leveling

Previously, almost the entire surface was higher than the base surface (except for the hole at the back), and now almost everything is lower. Maybe something happened with the definition of the Z limit switches, or with the definition of the z-height. That is, it used to work perfectly without z-offset, but now it scrapes.

New one on 1.0.0.44 (now no only on 1.0.0.50):

Old one on 1.0.0.48 (unfortunately only this screenshot):

Grate! I downgraded to 1.0.0.38 (first firmware, January). And it looks like before (base level on current place):

Now a question for me. Should I update 38->44->45->47->48 (remember, I had no problems with 48), or straight to 38->48… Or try my luck again and get to 50…

As a result of all my experiments, I came to the conclusion that only on the 1.0.0.38 version does it autocalibrate normally, reset to factory settings normally, etc.

I have solved my problem with autoleveling!

I used 1.1.0.38. Yesterday I have updated to 1.1.0.56. Bed leveling was good, but model fan doesn’t works. Then I have reseted to factory defaults. Fan started works but leveling not correct again.

I compared configs. Problem with leveling was in gcode_macro.cfg in “[gcode_macro G29]“

Old (which works):

  SET_ADJUSTMENTS_FLAG VALUE=1

  G28 Z
  BED_MESH_CLEAR
  Z_TILT_ADJUST
  SET_PIN PIN=fan0 VALUE=127
  M109 S45
  SET_PIN PIN=fan0 VALUE=0
  ZDOWN_SWITCH ENABLE=0
  G28 Z

  SET_ADJUSTMENTS_FLAG VALUE=0

New (with bad offset):

  SET_ADJUSTMENTS_FLAG VALUE=1

  G28 Z
  BED_MESH_CLEAR
  Z_TILT_ADJUST

  SET_ADJUSTMENTS_FLAG VALUE=0

It seems to me, that problem was because of absent: ZDOWN_SWITCH ENABLE=0

Thanks for the tip, I would up having to 0.05 but I am pleased with how well this works.

Glad I found this thread. Got my Hi a few days ago and the firmware is 1.1.0.50 and printed off an item in the printers memory. The poop deflector. That stuck like glue! Then printed off a small square with a different coloured circle on top. The purge tower was in the top lef5t corner and the brim around it was awful. All lumpy. Found a 1 layer 75x75 test print and was playing with the z offset and thought that 0.025 was OK. Then ran a calibration and all went pear shaped. Re-ran the 1 layer job and then settled on 0.25 - big difference. But my 2 colour print purge tower brim looks ok now.