First layer is going to drive me crazy
I’m dialing in my Vcore 4 500 and I’m having so much trouble with the first layer. These are the steps I’ve been taking.
1. Start print and let nozzle heat soak for 300 seconds via gcode macro
2. Heat bed soaks for 1200 seconds via gcode macro
3. Z calibration and adaptive bed mesh
4. Print blob and begin printing first layer test.
5. Baby step Z offset until good layer. Run the “SAVE_Z_OFFSET” command in the console.
6. Wait for print to finish, then save to config and reset.
Then I start the next print which should theoretically have a perfect first layer without having to baby step right?! Nope, I have to adjust it every single time after the previous print. My z offset is changing I know because I don’t have to adjust as much every time as I did the first time, but why is it so drastically different every time? I’m having to +/- .03 every print.
I do have automated beacon scan compensation on, and even that isn’t helping. Am I doing something wrong? There must be something that I’m missing.
8 Replies
Pretty sure I saw this SAME exact issue over on the Duet Forums and there was a solution there. If I recall correctly, The issue there was related to a macro over riding a Z height value. In a nutshell: User did same thing over there as you described, mesh calibration, Z step until the layer looks good and then save the Z offset. Because babystepping is a manual operation and not a value read from a config, manual adjustments were being automatically over-ridden. Of course over on that forum it is mostly RRF and not Klipper,etc...
The other issue is mesh bed calibration theoretically can be different every print, due to heat/cold expansive print bed materials,etc. For example: When you perform a mesh bed calibration and save it, a subsequent print height maybe different due to the bed being heated up already. This issue to me sounds like an 'order of operations issue'. I think you have the right idea and are trying to get the best possible layer, but something or some step is out of order and interfering with the desired result. Do you have a macro that calls up the stored mesh bed calibration? Because your NEW mesh bed calibration results maybe different than the current, and your new mesh bed calibration is going off of stored values from a previous run. This maybe that interference I was talking about. One way to test: 1. Make sure print bed is heated to the intended operating temperature. 2. perform your mesh bed calibration. Do not save the Z results. 3. Start the print and see how it does. 4. Adjust your first layer by baby steps needed and write that value down. 5. Finish print, inspect and do the WHOLE PROCESS over one more time, immediately. If both print results look very similar in quality, then your stored ZOFFSET value can be manually edited in your cfg. The Duet forum had this figured out I believe...https://forum.duet3d.com/topic/11831/z-offset-increasing-3mm-on-every-subsequent-calibration/22?=1739681260811
Duet3D
z-offset increasing 3mm on every subsequent calibration
Ok, finally getting back to this... I've got it ... I think... If you do a mesh compensation, and afterwards determine the Z-offset with the mesh compensatio...

Ill give that a shot. Thank you!
Having exactly the same problem - @San_Holo did these steps work out for you?
I ended up having to go into the printer.cfg file, scroll to the bottom and set the beacon offset to 0, then re doing the first layer test. When the test begins, baby step and after ideal first layer is achieved, I used the SET_Z_OFFSET command, let the print finish, then save config. For some reason now though, every time I start a print, I have to start it two times. Because the first time, the z offset is way too high. A quick cancel print and re print then it works fine. Kind of a pain in the ass, but i got a 500mm printer for large prints so the long startup doesn't bug me too much since it runs well after that second print start. Strange bug though. Maybe it's my slicer? God speed my friend, these printers take A LOT of tweaking.
had also Z-Offset problems. what worked for me was to reset the nozzle_expansion_coefficient_multiplier in ratos-variables to 1 and nozzle_expansion_coefficient_t0 to 0.06 and after that rerun the BEACON RATOS CALIBRATE after heatsoak the printer
dont know if the calibration was needed but did it anyway
Two new things to try, thank you both. I knew I was buying a kit, but I was not anticipating the tuning process to involve this much trial and error...
My issue was fixed by repeating the babystep values when the printer was idle, and then saving values/save config.