I want to be able to adjust my z-offset with software,

I want to be able to adjust my z-offset with software, but I can’t get my machine to descend below the endstop. I have min_software_endstops=true in my Marlin configuration for safety, but according to the docs it should be possible to disable that in software using M211. Unfortunately I still can’t move to negative Z, even with this off. Am I missing something?

; disable software endstops
M211 S0
Recv: echo:Soft endstops: Off Min: X0.00 Y0.00 Z0.50 Max: X190.00 Y200.00 Z115.50
; Set Offset
M206 Z0.5
Recv: X:0.00 Y:0.00 Z:1.50 E:0.00 Count X: 0 Y:0 Z:3840
; Home Z
G28 Z
Recv: X:0.00 Y:0.00 Z:0.50 E:0.00 Count X: 0 Y:0 Z:1280
; Go to bed; doesn’t actually move
G1 Z0
; Check current pos
M114
Recv: X:0.00 Y:0.00 Z:0.50 E:0.00 Count X: 0 Y:0 Z:1280

#marlinfw

Maybe you need to reset the position after you set the offset? Just a hunch.

@Nathan_Walkner The point of an endstop isn’t to set it to 0, it’s to provide the machine a way of knowing where the physical limits of the machine are. Don’t confuse limits with the origin. Limit switches can result in negative values relative to the build area, or if a machine homes to maximum the limit switches will result in a positive number.

Nah, Nathan is right. If you want to go below the software endstops you need to disable them.

I used to use an adjustable endstop position but it’s currently broken. Having a negative offset is useless with a min z endstop, since it would cause a head crash when homing. A positive offset lets me home to a known safe location and still adjust the level precisely.

I wasn’t able to get this to work without changing my marlin config and reflashing. I’m a little worried about running without any software endstops, but I’ll just have to be careful about not printing things that push my build capacity until I can add an adjustable endstop.

Z offset will always be negative value to get nozzle closer to bed. Positive value moves it away.
I do this.
G28 Z (z home)
M114 to see values.
G1 Z0 to move nozzle to 0 pos.
Then check clearance. If I need it closer, using LCD I increase the negative value of z offset

M500 to save Eeprom
G28 Z
G1 Z0
Check clearance again.
Repeat until satisfied.