Klipper: always emit EXCLUDE_OBJECT_DEFINE and include wipe tower for adaptive bed mesh #906

Open
opened 2026-04-05 16:34:41 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @Argolein on 2/2/2026

Fixes adaptive bed mesh probing in Klipper when a wipe/prime tower is used.

When BED_MESH_CALIBRATE ADAPTIVE=1 is used, Klipper relies on EXCLUDE_OBJECT_DEFINE regions to determine the probing area.
Previously, with exclude_object = 0, OrcaSlicer did not emit object definitions, and the wipe tower region could be missing from adaptive probing logic.

Changes

  • For Klipper G-code flavor, always emit EXCLUDE_OBJECT_DEFINE entries (even if exclude_object is disabled).
  • Add a virtual EXCLUDE_OBJECT_DEFINE NAME=WipeTower polygon derived from first-layer wipe tower geometry.

Result
Klipper adaptive bed mesh (ADAPTIVE=1) now considers both.

image
*Originally created by @Argolein on 2/2/2026* Fixes adaptive bed mesh probing in Klipper when a wipe/prime tower is used. When BED_MESH_CALIBRATE ADAPTIVE=1 is used, Klipper relies on EXCLUDE_OBJECT_DEFINE regions to determine the probing area. Previously, with exclude_object = 0, OrcaSlicer did not emit object definitions, and the wipe tower region could be missing from adaptive probing logic. **Changes** - For Klipper G-code flavor, always emit EXCLUDE_OBJECT_DEFINE entries (even if exclude_object is disabled). - Add a virtual EXCLUDE_OBJECT_DEFINE NAME=WipeTower polygon derived from first-layer wipe tower geometry. **Result** Klipper adaptive bed mesh (ADAPTIVE=1) now considers both. <img width="814" height="920" alt="image" src="https://github.com/user-attachments/assets/f8dd4096-dc7d-423a-8b82-2dcdcd04c12e" />
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/OrcaSlicer#906