Skip to main content

Endstop Related

Microswitch Endstop

Notes on Three-Wire Microswitch Endstops

Important Notice
  • FLY Mainboard Users Please Note: Three-wire microswitch endstops cannot be directly connected to FLY mainboards because the endstop interface on the mainboard already provides 5V power. Direct connection will cause a 5V short circuit, potentially burning out the mainboard, host computer, drivers, and other equipment!
  • Solution
    • Cut the 5V Wire: Cut the corresponding 5V wire (usually the red wire, please verify the actual color) in the three-wire endstop's XH2.54 connector and insulate it with electrical tape to prevent short circuits.
Loading...

Microswitch Endstop Wiring Method

Precautions
  • Strongly Recommended: Use the Normally Closed (NC) contact (to prevent crash incidents in case of wire breakage).
  • Connection Requirements:
Mainboard TerminalFunctionConnection Requirement
5VPower🔌 Leave unconnected (floating)
GNDGround✅ Must be connected
SSignal✅ Must be connected
  • Testing Procedure:
  1. Set the multimeter to the continuity test mode (buzzer icon).

  2. Test the microswitch:

    • Not Pressed: There should be continuity (buzzer sounds) between the Normally Closed (NC) terminal and the Common (C) terminal.
    • Pressed: There should be no continuity (silent) between the Normally Closed (NC) terminal and the Common (C) terminal.
  3. If the result is opposite:

    • Check if the Normally Open (NO) contact is mistakenly used.
    • Check for poor contact.
    Loading...

Configuration Instructions

  • Pull-up Resistor Requirement:

    • Most printers require enabling the pull-up resistor. The ^ symbol must be added before the pin name.
  • Normally Closed Endstop Configuration:

    • When using a Normally Closed (NC) endstop, the ! symbol must be added.
  • Reference configuration below:

    [stepper_x]
    endstop_pin: ^!PD9

TAP

Wiring Instructions

Important Notice
  • This tutorial uses the BL-Touch interface on SHT36-V2 for demonstration.
  • Some TAP devices support 12V or 24V, but it is recommended to use 5V power supply (safer).
  • The middle signal port of BL-Touch cannot be used as an endstop port!!!
Mainboard TerminalFunctionConnection Requirement
5VPower✅ Must be connected
GNDGround✅ Must be connected
SSignal✅ Must be connected
Loading...

Reference Configuration

  • Pull-up Resistor Requirement:
  • Most printers require enabling the pull-up resistor. The ^ symbol must be added before the pin name.
[stepper_z]
endstop_pin: probe:z_virtual_endstop
# position_endstop: -0.5

[probe]
pin: ^sht36:PC15 # Signal interface
x_offset: 0 # X-axis - Sensor offset relative to nozzle
y_offset: 0 # Y-axis - Sensor offset relative to nozzle
#z_offset: 0 # Z-axis - Sensor offset relative to nozzle
speed: 3.0 # Leveling speed
lift_speed: 5 # Probe lift speed
samples: 3 # Number of samples
samples_result: median # Result calculation method (default median)
sample_retract_dist: 3.0 # Leveling retract distance
samples_tolerance: 0.075 # Sample tolerance (Note: too small a value may increase sampling attempts)
samples_tolerance_retries: 3 # Retry count for tolerance exceedance
activate_gcode:
{% set PROBE_TEMP = 150 %}
{% set MAX_TEMP = PROBE_TEMP + 5 %}
{% set ACTUAL_TEMP = printer.extruder.temperature %}
{% set TARGET_TEMP = printer.extruder.target %}

{% if TARGET_TEMP > PROBE_TEMP %}
{ action_respond_info('Extruder temperature target of %.1fC is too high, lowering to %.1fC' % (TARGET_TEMP, PROBE_TEMP)) }
M106 S255
M109 S{ PROBE_TEMP }
M106 S26
{% else %}
# Temperature target is already low enough, but nozzle may still be too hot.
{% if ACTUAL_TEMP > MAX_TEMP %}
{ action_respond_info('Extruder temperature %.1fC is still too high, waiting until below %.1fC' % (ACTUAL_TEMP, MAX_TEMP)) }
TEMPERATURE_WAIT SENSOR=extruder MAXIMUM={ MAX_TEMP }
{% endif %}
{% endif %}

Photoelectric Endstop

Important Notice
  • This tutorial uses EE-SX670WR.
  • Sensor Type: NPN Normally Closed Switch
  • The photoelectric switch uses 5V power supply.
  • For voltages exceeding 5V (e.g., 12V or 24V), please refer to the proximity switch tutorial below.

Wiring Instructions

Mainboard TerminalFunctionConnection Requirement
5VPower✅ Must be connected
GNDGround✅ Must be connected
SSignal✅ Must be connected
  • EE-SX670WR Wiring Instructions

  • It is recommended to connect the Normally Closed (NC) wire to the blue wire (GND)!

    Photoelectric SwitchFunctionConnection Requirement
    BrownPower✅ Must be connected
    BlueGround✅ Must be connected
    BlackSignal✅ Must be connected
    PinkNormally ClosedConnect to GND to use Normally Closed mode
    Loading...

Configuration Instructions

  • Pull-up Resistor Requirement:

  • Most printers require enabling the pull-up resistor. The ^ symbol must be added before the pin name.

  • Reference configuration below:

[stepper_x]
endstop_pin: ^PD9

Proximity Switch

Critical Information
  • Using the Omron proximity switch TL-Q5MC2-Z as an example. Please note before operation:
  • Sensor Type: NPN Normally Closed Switch
  • Required Material: You need to purchase a BAT85 model diode.

Wiring Steps

  1. Diode Installation
  • Connect the black end (cathode) of the diode to the sensor's signal wire.
  • Connect the other end (anode) to the mainboard's signal interface.
  1. Insulation Treatment
  • It is strongly recommended to use heat shrink tubing or electrical tape to insulate exposed wire ends to prevent short circuits with other equipment.
    Loading...

Reference Configuration

  • Pull-up Resistor Requirement:
  • Most printers require enabling the pull-up resistor. The ^ symbol must be added before the pin name.
  • Reference configuration below:
[probe]
pin: ^PC0
x_offset: 0
y_offset: 25.0
z_offset: 0

Endstop Status Check

Preparation

  • Preparation and Initial Check
  • With the printer safely powered off, slowly move the printhead to the center of the machine, then power on.
  • Open the web console and enter the following command to verify endstop status:
QUERY_ENDSTOPS
  • If wiring and configuration are correct, all endstops should show as open status.
    Loading...

Testing

  • Press and hold one of the endstop switches (do not release), then execute the command below again:
QUERY_ENDSTOPS
  • The status of the pressed endstop should now change to TRIGGERED (e.g., if the Y endstop is pressed, its status should change from OPEN to TRIGGERED).
    Loading...

Result Interpretation

  • Status did not change: Please check the endstop switch wiring and whether the Pin defined in the configuration is correct.
  • Inconsistent triggering: Please check if the ^ symbol is present before the Pin in the configuration (e.g., ^PC0). This symbol enables the pull-up resistor; its absence may cause triggering issues.
  • Status is opposite: Please check if the ! symbol is present before the Pin.
    • If it exists, try removing it (e.g., change ^!PD9 to ^PD9).
    • If it does not exist, try adding it (e.g., change ^PD9 to ^!PD9).
Extended Functionality

If your printer does not use physical endstop switches, please refer to the No Endstop Usage Guide

Loading...