<p>So I'm using TH3D firmware on my CoreXY printer and when I move it from the LCD it moves correctly, but when I try to home X or Y it goes in the wrong direction. It's set to home to min in firmware. When I set the endstop logic so its always triggered, it homes in the right direction.</p>
<p>Here are my motion settings:</p>
<pre><code>#define MKS_PRINTER

// Build Area Size Settings
#define MKS_X_SIZE 300
#define MKS_Y_SIZE 300
#define MKS_Z_SIZE 300

// Endstop Logic Settings
#define MKS_X_ENDSTOP 0
#define MKS_Y_ENDSTOP 0
#define MKS_Z_ENDSTOP 0

// Homing Settings
#define X_HOME_LOCATION 0
#define Y_HOME_LOCATION 0

// Steps per MM Settings
#define MKS_X_STEPS 80
#define MKS_Y_STEPS 80
#define MKS_Z_STEPS 400
#define MKS_E0_STEPS 95
#define MKS_E1_STEPS 95


// Motor Direction Settings
#define MKS_X_DIRECTION 1
#define MKS_Y_DIRECTION 0
#define MKS_Z_DIRECTION 0
#define MKS_E0_DIRECTION 0
#define MKS_E1_DIRECTION 0

// Stepper Driver Settings
#define MKS_X_DRIVER A4988
#define MKS_Y_DRIVER A4988
#define MKS_Z_DRIVER A4988
#define MKS_E0_DRIVER A4988
#define MKS_E1_DRIVER A4988
<span class="math-container">```</span>
</code></pre>

CC BY-SA 4.0
2020-06-30T22:20:29.267Z
Hi, welcome to 3DPrinting.SE! For which brand/model printer are you using this firmware? If it is a self built you should use vanilla Marlin.
0scar
CC BY-SA 4.0
2020-06-30T22:41:07.207Z
There is a setting in marlin to invert the home direction.
user77232
CC BY-SA 4.0
2020-07-01T06:11:50.017Z
@user77232 That is e.g. `#define X_HOME_DIR -1`, but TH3D firmware has wrapped this up and buried this under a few hundred lines of code. That is why I prefer the Marlin repository. I do understand that for some people with a popular and supported printer the TH3D firmware may be easy and convenient, but for advanced users this extra layer has no added value.
0scar
<homing><corexy><th3d>
CoreXY printer homes in the wrong direction, but moves correctly when moved manually
Bluesandbox
# CoreXY printer homes in the wrong direction, but moves correctly when moved manually

(Asked by: username_0 on 2020-06-30)

So I'm using TH3D firmware on my CoreXY printer and when I move it from the LCD it moves correctly, but when I try to home X or Y it goes in the wrong direction. It's set to home to min in firmware. When I set the endstop logic so its always triggered, it homes in the right direction.

Here are my motion settings:

```
#define MKS_PRINTER

// Build Area Size Settings
#define MKS_X_SIZE 300
#define MKS_Y_SIZE 300
#define MKS_Z_SIZE 300

// Endstop Logic Settings
#define MKS_X_ENDSTOP 0
#define MKS_Y_ENDSTOP 0
#define MKS_Z_ENDSTOP 0

// Homing Settings
#define X_HOME_LOCATION 0
#define Y_HOME_LOCATION 0

// Steps per MM Settings
#define MKS_X_STEPS 80
#define MKS_Y_STEPS 80
#define MKS_Z_STEPS 400
#define MKS_E0_STEPS 95
#define MKS_E1_STEPS 95

// Motor Direction Settings
#define MKS_X_DIRECTION 1
#define MKS_Y_DIRECTION 0
#define MKS_Z_DIRECTION 0
#define MKS_E0_DIRECTION 0
#define MKS_E1_DIRECTION 0

// Stepper Driver Settings
#define MKS_X_DRIVER A4988
#define MKS_Y_DRIVER A4988
#define MKS_Z_DRIVER A4988
#define MKS_E0_DRIVER A4988
#define MKS_E1_DRIVER A4988
```

```

**Tags:** homing, corexy, th3d

> **Comments:**
> **username_1**: Hi, welcome to 3DPrinting.SE! For which brand/model printer are you using this firmware? If it is a self built you should use vanilla Marlin.  
> **username_2**: There is a setting in marlin to invert the home direction.  
> **username_1**: @username_2 That is e.g. `#define X_HOME_DIR -1`, but TH3D firmware has wrapped this up and buried this under a few hundred lines of code. That is why I prefer the Marlin repository. I do understand that for some people with a popular and supported printer the TH3D firmware may be easy and convenient, but for advanced users this extra layer has no added value.  

---

## 0 answers

