# Verify Endstops

This section explains how to verify that all of the Endstops are detected by Klipper.

* Manually move all of the printer axes so that none of them are in contact with any of the Endstops;
* Send a <mark style="color:red;">`QUERY_ENDSTOPS`</mark> command in the <mark style="color:red;">`Console`</mark>;
  * It should return with the following status:
    * <mark style="color:red;">`x:open y:open z:open`</mark>

![x:open y:open z:open](https://3358793419-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEUZ4ecqSLgI2D4esAcVS%2Fuploads%2FTMvjr82a26Rdqtx8ofHu%2Fend1.png?alt=media\&token=eef9c93d-c2eb-43b8-af1a-2a973e40d49d)

* Locate the <mark style="color:red;">`y-axis`</mark> Endstop, which is the switch located to the right of the rear stepper motor;

![y-axis Endstop](https://3358793419-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEUZ4ecqSLgI2D4esAcVS%2Fuploads%2F2t5eYvszFqUJtZ3MGs6m%2Fend2.png?alt=media\&token=b6ac73ad-bce9-4cc2-b725-9455f7fd652e)

* Engage this switch by moving the <mark style="color:red;">`Heater Bed`</mark> to the rear of the printer until you hear the switch engage; OR
* If you are working close to the printer or with a partner to run these tests, you can manually engage the switch by pressing and holding it with your hand;
* Once the switch is engaged;
  * Send a <mark style="color:red;">`QUERY_ENDSTOPS`</mark> command in the <mark style="color:red;">`Console`</mark>;
  * It should return the following status:
    * <mark style="color:red;">`x:open y:TRIGGERED z:open`</mark>;

![x:open y:TRIGGERED z:open](https://3358793419-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEUZ4ecqSLgI2D4esAcVS%2Fuploads%2FzvRxFmGqMN8nIXvAp2tv%2Fend3.png?alt=media\&token=70b1b897-7ae9-4a7f-ba61-685f9be8c3ad)

* Move the <mark style="color:red;">`Heater Bed`</mark> back to a neutral position or disengage the y-axis switch;
* Locate the <mark style="color:red;">`x-axis`</mark> Endstop, which is the switch located on the left side of the x-axis;

![x-axis Endstop](https://3358793419-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEUZ4ecqSLgI2D4esAcVS%2Fuploads%2FxnbuMjQeRNIE7AUMQH5j%2Fend4.png?alt=media\&token=ac30b446-0ea3-42d9-8fe2-0d35183f1542)

* Engage this switch by move the <mark style="color:red;">`Hot End/Extruder`</mark> to the far left of the <mark style="color:red;">`x-axis`</mark> until your you hear the switch engage; OR
* If you are working close to the printer or with a partner to run these tests, you can manually engage the switch by pressing and holding it with your hand;
* Once the switch has been engaged;
  * Send a <mark style="color:red;">`QUERY_ENDSTOPS`</mark> command in the <mark style="color:red;">`Console`</mark>;
  * It should return the following status:
    * <mark style="color:red;">`x:TRIGGERED y:open z:open`</mark>;

![x:TRIGGERED y:open z:open](https://3358793419-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEUZ4ecqSLgI2D4esAcVS%2Fuploads%2FfMdKhb4IT1QXPkglbz0Y%2Fend5.png?alt=media\&token=a55c0bef-cfd6-4eb1-b49b-c8fe42f71ed0)

* Move the <mark style="color:red;">`Hot End/Extruder`</mark> back to a neutral position or disengage the <mark style="color:red;">`x-axis`</mark> switch;
* Locate the <mark style="color:red;">`z-axis`</mark> Endstops, these are two optical sensors on either side of the of the print bed;
  * Shown in the picture below if the left <mark style="color:red;">`z-axis`</mark> Endstop;

![z-axis Endstop](https://3358793419-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEUZ4ecqSLgI2D4esAcVS%2Fuploads%2FKDy3iiJ4ks7P7g1T0BPL%2Fend6.png?alt=media\&token=60543080-936a-4874-ac44-e7be003db96f)

* Engage this switch by placing an object (e.g. folded piece of paper) between the sensor; OR
* You can lower the <mark style="color:red;">`z-axis`</mark> to engage the metal piece shown above the optical sensor in the picture above;
* Once the switch has been engaged;
* Send a <mark style="color:red;">`QUERY_ENDSTOPS`</mark> command in the <mark style="color:red;">`Console`</mark>;
  * It should return the following status:
    * <mark style="color:red;">`x:open y:open z:TRIGGERED`</mark>;
* You can repeat this step for both left and right <mark style="color:red;">`z-axis`</mark> Endstops;

![x:open y:open z:TRIGGERED](https://3358793419-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEUZ4ecqSLgI2D4esAcVS%2Fuploads%2FTeRWKaN5ul0X3juEJ25U%2Fend7.png?alt=media\&token=88b695f4-b21a-43b0-953b-47b6e69a26df)

* Remove the object(s) from the z-axis sensor(s);
  * Send a <mark style="color:red;">`QUERY_ENDSTOPS`</mark> command in the <mark style="color:red;">`Console`</mark>;
    * It should return the following status:
      * <mark style="color:red;">`x:open y:open z:open`</mark>;

![](https://3358793419-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEUZ4ecqSLgI2D4esAcVS%2Fuploads%2F6YPDRaxPTBISjf1bgZK8%2Fend8.png?alt=media\&token=ff56bf12-06b2-41ab-a877-815616b0b57c)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://sean-dearing.gitbook.io/klipper-installation-for-anycubic-vyper/configuration-checks/verify-endstops.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
