Skip to main content

Sensorless Homing Usage

Precautions

Prerequisites
  • All of the following conditions must be met simultaneously:
  1. The motherboard supports the DIAG function.
  2. The driver supports DIAG signal output.
  3. The corresponding limit switch port must not have any device connected!

Motherboard Compatibility Check

Fly Motherboard Support Categories:

TypeSupport StatusRepresentative ModelsOperation Requirement
Type ADirectly Connected by DefaultSuper/Gemini/CDY/E3 Series✅ Use limit switch port directly
Type BRequires Jumper to EnableD/C/Pro-X10/Micro Series⚡ Must install DIAG jumper
Type CNot Supported at AllFly-F407ZG❌ Cannot use sensorless homing

Verification Method:

  1. Check motherboard markings: Look for a jumper labeled DIAG.
  2. Consult schematic: Confirm the DIAG signal connection for the driver interface.
  3. For most motherboards, the sensorless homing mapping is Drive0 to io0, Drive1 to io1, and so on.
  • Type A Motherboard
    • No DIAG jumper, directly connected to the corresponding limit switch port by default.
    Loading...
  • Type B Motherboard
    • Requires using the DIAG jumper.
    Loading...

Driver Compatibility Check

Note
  • TMC5160, TMC2240, and TMC2130 have two DIAG pins.
  • You need to check the corresponding product documentation or consult customer service to confirm.
Driver ModelCompatibilityDIAG PinsConfiguration RequirementSensitivity Requirement
TMC2209✅ SupportedSingle PinUse directly0-255 # 255 is the most sensitive, 0 is the least sensitive
TMC5160✅ SupportedDual PinsMust select diag pin-64 to 63 # -64 is the most sensitive, 63 is the least sensitive
TMC2240✅ SupportedDual PinsMust select diag pin-64 to 63 # -64 is the most sensitive, 63 is the least sensitive
TMC2130✅ SupportedDual PinsMust select diag pin-64 to 63 # -64 is the most sensitive, 63 is the least sensitive
TMC2208❌ Not Supported-Cannot use sensorless homingCannot use sensorless homing
TMC2660❌ Not Supported-Cannot use sensorless homingCannot use sensorless homing
LV8729❌ Not Supported-Cannot use sensorless homingCannot use sensorless homing

Identification Points:

  1. For dual-pin drivers, you must consult the corresponding manual to confirm the functional pin.
  2. Some drivers support the DIAG function, but if the corresponding header pins are not soldered, it cannot be used.

Configuration Instructions

  • You need to modify the configuration for the corresponding driver model and axis.
  • For some machines using sensorless homing, retraction may cause homing failure. Set homing_retract_dist: to 0 if needed.

Reference Configuration

  • tmc2209_stepper_x - The TMC2209 here needs to be changed to the corresponding driver model.
  • stepper_x - The x here represents the X-axis. For the Y-axis, change it to stepper_y.
  • Note: The pins in the configuration below are for reference only; use the actual pins.
  • The diag_pin: configuration must include ^, otherwise homing will fail.
  • The value in driver_SGTHRS: needs to be tested and set by yourself. 255 is the most sensitive, 0 is the least sensitive.
    [stepper_x]
    endstop_pin: tmc2209_stepper_x:virtual_endstop
    position_endstop: 0


    [tmc2209 stepper_x]
    diag_pin: ^PD9
    driver_SGTHRS: 100

Testing Sensitivity

  • Step 1

    • Enter the following command in the web console.

    • Slowly move the printhead to the middle of the machine. Use the SET_TMC_FIELD command to set the sensitivity.

    • For TMC2209, use the command below (modify the axis you are testing).

      SET_TMC_FIELD STEPPER=stepper_x FIELD=SGTHRS VALUE=255
    • For TMC5160, TMC2240, and TMC2130, use the command below (modify the axis you are testing).

      SET_TMC_FIELD STEPPER=stepper_x FIELD=sgt VALUE=-64
  • Step 2

    • Enter the following command in the web console.
      G28 X
    • Confirm that the X-axis does not move at all or stops moving very quickly.
    • If it moves without notification, immediately issue the following command.
      M112
    • Check the wiring or configuration of the corresponding DIAG PIN. There may be an error that must be corrected before proceeding.
  • Step 3

    • Next, gradually decrease the sensitivity set by VALUE, and run the SET_TMC_FIELD and G28 X0 commands again.
    • Find the highest sensitivity that allows the carriage to successfully move all the way to the end and stop.
    • For TMC2209 drivers, the adjustment is to decrease SGTHRS. For other drivers, the adjustment is to increase sgt.
  • Step 4

    • Once you have tested and found a suitable value where homing stops immediately upon contact, note the current value.
    • If there is a crash or clicking sound at maximum sensitivity, the homing speed may be too low, the driver current may be too low, or the axis may not be suitable for sensorless homing.
    • Open printer.cfg and update the corresponding sensitivity configuration.
Loading...