Endstop Related
Microswitch Endstop
Three-Wire Microswitch Notes
Note
- FLY Motherboard Users Please Note: Three-wire microswitch endstop switches cannot be directly connected to the FLY motherboard, as the endstop interface on the motherboard already provides a 5V power supply. Direct connection will cause a 5V short circuit, potentially damaging the motherboard, host computer, drivers, and other equipment!
- Solution
- Cut the 5V wire: Cut the 5V wire (usually red, but please confirm by actual color) in the
XH2.54
terminal of the three-wire endstop switch, and wrap it with insulating tape to prevent short circuits.
- Cut the 5V wire: Cut the 5V wire (usually red, but please confirm by actual color) in the
Microswitch Wiring Method
Notes
- Strongly Recommended: Use the normally closed (NC) contact (to prevent crashes in case of disconnection)
- Wiring Requirements:
Motherboard Terminal | Function | Connection Requirement |
---|---|---|
5V | Power | 🔌 Leave unconnected |
GND | Ground | ✅ Must be connected |
S | Signal | ✅ Must be connected |
- Testing Steps:
-
Set multimeter to continuity test mode (beep icon)
-
Test microswitch:
- Not Pressed: Continuity between NC and common terminal (beeper sounds)
- Pressed: Open circuit between NC and common terminal (no sound)
-
If results are reversed:
- Check if normally open (NO) contact was mistakenly used
- Check for poor contact
Configuration Instructions
-
Pull-up Resistor Requirement:
- Most printers require enabling the pull-up resistor, which requires adding the
^
symbol before the pin name
- Most printers require enabling the pull-up resistor, which requires adding the
-
Normally Closed (NC) Endstop Configuration:
- When using a normally closed (NC) endstop, add the
!
symbol
- When using a normally closed (NC) endstop, add the
-
Below is a sample configuration
[stepper_x]
endstop_pin: ^!PD9
TAP
Wiring Instructions
Note
- This tutorial demonstrates using the
BL-Touch
interface on theSHT36-V2
- Some
TAP
devices support12V
or24V
, but it is recommended to use5V
for safety - The center signal pin of the
BL-Touch
cannot be used as an endstop pin!!!
Motherboard Terminal | Function | Connection Requirement |
---|---|---|
5V | Power | ✅ Must be connected |
GND | Ground | ✅ Must be connected |
S | Signal | ✅ Must be connected |

Sample Configuration
- Pull-up Resistor Requirement:
- Most printers require enabling the pull-up resistor, which requires adding the
^
symbol 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 - Offset from nozzle
y_offset: 0 # Y-axis - Offset from nozzle
#z_offset: 0 # Z-axis - Offset from nozzle
speed: 3.0 # Leveling speed
lift_speed: 5 # Probe lifting speed
samples: 3 # Number of samples
samples_result: median # Value selection method (median by default)
sample_retract_dist: 3.0 # Retract distance during leveling
samples_tolerance: 0.075 # Sampling tolerance (Note: too small a value may increase sampling count)
samples_tolerance_retries: 3 # Retries when exceeding tolerance
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 %}
Optical Endstop
Note
- This tutorial uses the
EE-SX670WR
- Sensor Type: NPN Normally Closed Switch
- Power the photoelectric switch with
5V
- For voltages exceeding
5V
, refer to the proximity switch tutorial below for12V
or24V
usage
Wiring Instructions
Motherboard Terminal | Function | Connection Requirement |
---|---|---|
5V | Power | ✅ Must be connected |
GND | Ground | ✅ Must be connected |
S | Signal | ✅ Must be connected |
-
EE-SX670WR
wiring instructions -
It is recommended to connect the normally closed terminal to the blue wire (GND)!
Photoelectric Switch Function Connection Requirement Brown Power ✅ Must be connected Blue Ground ✅ Must be connected Black Signal ✅ Must be connected Pink Normally Closed Use with GND connected
Configuration Instructions
-
Pull-up Resistor Requirement:
-
Most printers require enabling the pull-up resistor, which requires adding the
^
symbol before the pin name -
Below is a sample configuration
[stepper_x]
endstop_pin: ^PD9
Proximity Switch
Important Note
- Using Omron proximity switch
TL-Q5MC2-Z
as an example, please note before operation: - Sensor Type: NPN Normally Closed Switch
- Required Component: You need to purchase a
BAT85
diode separately
Wiring Steps
- Diode Installation
- Connect the black end of the diode (cathode) to the sensor signal wire
- Connect the other end (anode) to the motherboard signal interface
- Insulation Treatment
- It is strongly recommended to cover exposed wire ends with heat shrink tubing or electrical tape to prevent short circuits with other devices
Sample Configuration
- Pull-up Resistor Requirement:
- Most printers require enabling the pull-up resistor, which requires adding the
^
symbol before the pin name - Below is a sample configuration
[probe]
pin: ^PC0
x_offset: 0
y_offset: 25.0
z_offset: 0
Endstop Status Check
Preparation
- Prepare and perform initial inspection
- With the power safely disconnected, manually move the print head to the center of the machine before powering on.
- Open the web console and enter the following command to verify the endstop status:
QUERY_ENDSTOPS
- If wiring and configuration are correct, all endstops should show as open status.
Testing
- Press and hold one of the endstops (do not release), then execute the following command again:
QUERY_ENDSTOPS
- At this point, the pressed endstop status should change to
TRIGGERED
(for example, pressing the Y endstop should change its status fromOPEN
toTRIGGERED
).
Result Interpretation
Status Unchanged
: Check if the wiring and thePin
defined in the configuration are correct.Unresponsive Trigger
: Check if thePin
in the configuration has the^
symbol (e.g.,^PC0
), which enables pull-up. Missing it may cause triggering issues.Opposite Status
:- If such a symbol exists, remove it (e.g., change
^!PD9
to^PD9
). - If not, try adding it (e.g., change
^PD9
to^!PD9
).
- If such a symbol exists, remove it (e.g., change
Loading...