--- tag: m0290 title: Babystep brief: Babystep one or more axes author: thinkyhead since: 1.1.7 requires: BABYSTEPPING group: calibration codes: [ M290 ] notes: Requires `BABYSTEP_XY` for babystepping on the XY axes. parameters: - tag: X optional: true description: A distance on the X axis values: - tag: pos type: float - tag: Y optional: true description: A distance on the Y axis values: - tag: pos type: float - tag: Z optional: true description: A distance on the Z axis values: - tag: pos type: float - tag: S optional: true description: Alias for Z values: - tag: pos type: float - tag: P optional: true description: Use `P0` to leave the Probe Z Offset unaffected. (Requires `BABYSTEP_ZPROBE_OFFSET`) values: - type: bool example: - pre: Babystep the Z axis by 0.25mm (in mm units mode) code: - M290 Z0.25 ; move up 0.25mm on the Z axis --- Apply babysteps to one or more axes using current units. Offsets applied with [`M290`](/docs/gcode/M290.html) aren't added to the current coordinates, but are intended for making small adjustments, especially in the Z axis, at the start of a print. Note that when `BABYSTEP_ZPROBE_OFFSET` is enabled, [`M290`](/docs/gcode/M290.html) also modifies the Probe Z Offset (with no immediate effects). The new Z offset applies to successive probing operations, and can be saved with [`M500`](/docs/gcode/M500.html). This behavior is means to coincide with the LCD Menu replacing "Z Babystepping" with "Babystep Z Probe Offset." To avoid this side-effect, use `M290 P0` or leave `BABYSTEP_ZPROBE_OFFSET` disabled.