--- tag: m0423 title: X Twist Compensation brief: Modify, reset, and report X-Axis Twist Compensation data author: thinkyhead requires: X_AXIS_TWIST_COMPENSATION since: 2.0.9.4 group: calibration codes: [ M423 ] related: [ G29 ] notes: parameters: - tag: R optional: true description: Reset the Twist Compensation array to the configured default values. values: - type: flag - tag: A optional: true description: Set the X-Axis Twist Compensation starting X position. values: - tag: linear type: float - tag: I optional: true description: Set the X-Axis Twist Compensation X-spacing. values: - tag: linear type: float - tag: X optional: true description: Zero-based index into the Twist Compensation array. Requires a `Z` value. values: - tag: index type: int - tag: Z optional: true description: A Z-offset value to set in the Twist Compensation array. Requires an `X` index. values: - tag: index type: int examples: - pre: Report the current X-twist data to the host console. code: - M423 - pre: Reset X-twist data to the configured defaults. code: - M423 R - pre: Set the 5th value in the Twist Compensation array to -0.03. code: - M423 X4 Z-0.03 - pre: Set the X-start position to 0 and the X-spacing distance to 50. code: - M423 M423 X0 I50 --- Use `M423` to reset, modify, or report X-Twist Compensation data. X-Twist Compensation is applied to the mesh on [`G29`](docs/gcode/G029)) to correct for a twisted X gantry. Meaningful X-Twist Compensation data is generated using a guided procedure in the LCD menu that compares measurements taken by the bed probe to readings taken manually at the nozzle. Since manual measurements are prone to inaccuracy, a metal feeler gauge is recommended over a paper test. If the first layer is still imperfect, `M423` can then be used to correct for small errors.