Skip to content

[BUG] Incorrect offset applied to Bed level mesh when using a fixed Home Switch/Z stop and seperate level probe. #27680

Open
@Maker-Paul

Description

@Maker-Paul

Did you test the latest bugfix-2.1.x code?

Yes, and the problem still exists.

Bug Description

When using a fixed stop for homing connected to default Z min and a probe connected to the default separate probe connector.

The bed level mesh is created relative to the fixed Z0 and therefore an unwanted offset between the fixed Z0 and the probe Z0 is added to the mesh values. This offset can be compensated for by setting a probe Z offset, but this offset is then inappropriately applied to the fixed Z stop/Homing switch when homing and therefore has to be removed for subsequent homing. Z values on the status screen are therefore very confusing.

I have included modified files in the upload section below as a possible fix. The readme file details the line numbers in the files where code has been added or changed. Hope this helps. Last upload of updated files 20th Feb 2025.

Bug Timeline

Not sure

Expected behavior

The probe should be used to establish the Probe Z0 reference for the purpose of creating the mesh points (the same as when only a probe exists and has been used to home)
Optional When a fixed Z stop/Home switch is used a probe offset is not needed as the nozzle offset is actually relative to the fixed stop so the menu option setting a probe Z offset could be removed and it would be more logical to enable the Z bed offset that is present in the menu when only a fixed stop is used.

Please note using just a Z stop or just using a probe both work as expected.

Actual behavior

I have to find the offset between the fixed Z Stop/Home switch and the Probe Z0. Then enter that value as a Z probe offset before I run a bed level. store the mesh and set the probe Z offset back to 0, then home the machine as a workaround way to set it up. I have enable bed leveling after homing enabled.
Because a Fixed Z stop/Home switch to probe Z0 is not a recognized offset the numbers can get very confusing.

Steps to Reproduce

  1. Fit a fixed Z Stop and separate Level probe each connected to their respective default connectors
  2. // #define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN and // #define USE_PROBE_FOR_Z_HOMING are both disabled
  3. set the fixed Z stop switch physically to match the nozzle to bed paper pinch test. (this will mean the Fixed Z stop 0 to Probe Z 0 offset will be the same as the Z probe to nozzle offset or as near as)
  4. If you run a bed level at this point and inspect the values you will see they are large.
  5. run a Z offset wizard or enter the Z offset and then run a bed level.
  6. save the results
  7. set the probe Z offset back to 0 and save settings (No offset is needed with a fixed Home Z0 switch)
  8. Home the machine. Enable the stored bed level mesh if not set to automatically restore it.

Version of Marlin Firmware

Latest Bugfix 2.1.x

Printer model

Tronxy XY2 Pro

Electronics

Stock

LCD/Controller

Stock

Other add-ons

No response

Bed Leveling

ABL Bilinear mesh

Your Slicer

Prusa Slicer

Host Software

None

Don't forget to include

  • A ZIP file containing your Configuration.h and Configuration_adv.h.

Additional information & file uploads

Configuration.zip

PaulsBugfix.zip

Readme.txt

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions