Problem with z offset and SAVE_CONFIG

Basic Information:

Printer Model: Custom
MCU / Printerboard: Manta M8P
Host / SBC CB1
klippy.log
logs-20250227-120412.zip (857.2 KB)

Fill out above information and in all cases attach your klippy.log file (use zip to compress it, if too big). Pasting your printer.cfg is not needed
Be sure to check our “Knowledge Base” Category first. Most relevant items, e.g. error messages, are covered there

Describe your issue:

I have a problem with the Z offset adjustment and the SAVE_CONFIG command.

I have been printing without issues for a long time and was able to change the Z offset using SAVE_CONFIG, as this value was defined in the printer.cfg file.

While everything was working correctly, I noticed that when executing SAVE_CONFIG, the system would add a # in front of the previous value and then save the new value (although I don’t know exactly where it stores it).

At some point, I decided to run some tests and manually write the value in the printer.cfg file (meaning I entered it directly into the file). However, since then, SAVE_CONFIG has stopped working correctly. Now, if I adjust the Z offset during a print and then run SAVE_CONFIG to save the change, the printer.cfg file is not updated automatically as it was before. Instead, the original value remains unchanged.

Any ideas on how to fix this?

That should be at the end of the active printer.cfg

Can you attach that active printer.cfg to your next post please?

I think the log shows all the config, that’s why i just didn’t upload it.
Anyways, here is my printer.cfg:

#######################################################
#                                                     #
# File Name: printer.cfg                              #
# Author: Juan Ignacio Muñoz Sánchez                  #
# Creation Date: 2024-10-04                           #
# Firmware Version: Klipper v0.12.0-316-g96cceed2     #
#                                                     #
# Description:                                        #
# This configuration file sets the main parameters and#
# includes the necessary settings for the printer. It #
# defines the kinematics and max speed and acceleration 
# The file also includes                              #   
# references to other configuration files and macros  #
# that enhance the printer's capabilities.            #
#                                                     #
#######################################################

# INCLUDE CFGs
# HARDWARE CONFIGURATION
[include HARDWARE/devices.cfg] # Includes devices UIDs
[include HARDWARE/board_pins.cfg] # Includes alias for board pins
[include HARDWARE/manta_m8p_v2.cfg] # Hardware connected to the Manta M8P V2.0
[include HARDWARE/ebb42_canbus.cfg] #  Hardware connected to the CAN devices


# PRINT MACROS
[include SOFTWARE/MACROS/print_macros.cfg]
[include SOFTWARE/MACROS/idex_macros.cfg] # Includes macros for IDEX printers, toolchanges, copy modes...

# GENERAL MACROS
[include SOFTWARE/MACROS/macros.cfg] # Includes general macros
[include SOFTWARE/MACROS/prompt_macros.cfg] # Includes command macros
[include SOFTWARE/MACROS/resonances.cfg] # Includes the measuring resonances commands and input shaper configuration
[include SOFTWARE/MACROS/bed_measuring.cfg]
[include SOFTWARE/MACROS/refrigeration.cfg]
[include SOFTWARE/MACROS/filament_management.cfg]



##################################################################
# PRINTER CONFIGURATION - CARTESIAN TYPE
##################################################################
[printer]
kinematics: cartesian # Kinematics type
max_velocity: 1000  ;1000  # Maximum speed in mm/s
max_accel: 1500  # Maximum acceleration for printing, the real one for long travels is aprox 4000 (short movements can do aprox 10000)
max_z_velocity: 30  # Maximum speed of the Z axis
max_z_accel: 100  # Acceleration of the Z axis
square_corner_velocity: 5.0  # Corner speed at 90º (Jerk in Klipper i think)




#################################################################
# VALUES MODIFIABLE VIA SAVE COMMAND
#################################################################
# Sections here defined only have the parameters wich can be modified via save command.
# The other parameters have been defined in their respective section and config file
# Sections preceded by # have been saved and do not have the specified value.

# Adjust Z sensor
[probe]
z_offset: -0.2 


# PID values for each controller should also be specified here

[heater_bed]
#control: pid # Control method for the bed heater
#pid_Kp: 20  # Ensure to change to the correct value based on auto-tuning results.
#pid_Ki: 20  # Ensure to change to the correct value based on auto-tuning results.
#pid_Kd: 20  # Ensure to change to the correct value based on auto-tuning results.

[extruder]
#control: pid # Control method for the extruder
#pid_Kp: 23.745 
#pid_Ki: 2.595
#pid_Kd: 54.316

[extruder1]
#control: pid 
#pid_Kp: 25.354
#pid_Ki: 1.818
#pid_Kd: 88.420

#*# <---------------------- SAVE_CONFIG ---------------------->
#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
#*#
#*# [probe]
#*#
#*# [bed_mesh default]
#*# version = 1
#*# points =
#*# 	  -0.015625, 0.026562, -0.028438, -0.017813
#*# 	  -0.022813, 0.025937, -0.049063, -0.002188
#*# 	  0.017187, 0.036562, -0.025625, -0.005313
#*# x_count = 4
#*# y_count = 3
#*# mesh_x_pps = 2
#*# mesh_y_pps = 2
#*# algo = lagrange
#*# tension = 0.2
#*# min_x = 95.0
#*# max_x = 1025.0
#*# min_y = 45.0
#*# max_y = 715.0
#*#
#*# [extruder]
#*# control = pid
#*# pid_kp = 26.232
#*# pid_ki = 1.880
#*# pid_kd = 91.484
#*#
#*# [extruder1]
#*# control = pid
#*# pid_kp = 21.499
#*# pid_ki = 1.463
#*# pid_kd = 79.008
#*#
#*# [heater_bed]
#*# pid_kp = 60.174
#*# pid_ki = 2.016
#*# pid_kd = 449.045
#*#
#*# [bed_mesh METAL]
#*# version = 1
#*# points =
#*# 	  -0.015625, 0.026562, -0.028438, -0.017813
#*# 	  -0.022813, 0.025937, -0.049063, -0.002188
#*# 	  0.017187, 0.036562, -0.025625, -0.005313
#*# x_count = 4
#*# y_count = 3
#*# mesh_x_pps = 2
#*# mesh_y_pps = 2
#*# algo = lagrange
#*# tension = 0.2
#*# min_x = 95.0
#*# max_x = 1025.0
#*# min_y = 45.0
#*# max_y = 715.0

Yes, but not the config block.

After SAVE_CONFIG, this value

# Adjust Z sensor
[probe]
z_offset: -0.2 

should appearer here:

#*# [probe]
#*#

Well, yes, it should, but it doesn’t, and i dunno how to solve it

Your provided log does not show any attempt to perform a SAVE_CONFIG.

Please create one that shows it and attach the log together with the printer.cfg.

My fault :sweat_smile:
I’ll be by the office tomorrow and generate the new log.
Thanks!

Hi! It seems that the problem was on my side.
I was trying to save the offset after a cancel print and fogot that i had placed this in my cancel print macro:

        # After that, park the printer:
        # Ensure to reset gcode_offset before any movement
        SET_GCODE_OFFSET X=0 Y=0 Z=0

Obviously, I was trying to save a z offset of 0 always :sweat_smile:
see log:

Nothing to do: Z Offset is 0
SAVE_CONFIG to '/home/biqu/printer_data/config/printer.cfg' (backup in '/home/biqu/printer_data/config/printer-20250228_115411.cfg')

Sorry guys, and thanks as always !

3 Likes