<p>The direction of the end stop is set in the firmware of the printer. Even with different setup end stops, you should be able to get a correct coordinate system without mirroring axes in slicers. <strong>This would be the preferred method to fix your problem!</strong></p>

<p><em>E.g. my Ultimaker 3 Extended homes the Z on Z max having the platform at the bottom of the machine, a calibrated offset determines the actual Z=0.</em></p>

<p>Not knowing which firmware you are using, in e.g. <a href="https://github.com/MarlinFirmware/" rel="nofollow noreferrer">Marlin Firmware</a> this is set by code lines in the file <a href="https://github.com/MarlinFirmware/Marlin/blob/1.1.x/Marlin/Configuration.h" rel="nofollow noreferrer">Configuration.h</a>:</p>

<pre><code>// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1
</code></pre>

<p>Your end stop triggers at the maximum of the Y axis, so you need to configure it as a MAX end stop, i.e. use the Y_MAX pins by defining (search for the <em>Endstop Settings</em> section, note to also disable the YMIN endstop):</p>

<pre><code>//#define USE_YMIN_PLUG // This disables the YMIN endstop
#define USE_YMAX_PLUG   // This enables the YMAX endstop
</code></pre>

<p>and change the homing direction (Y_HOME_DIR) to 1:</p>

<pre><code>#define Y_HOME_DIR 1 // This tells the printer where the endstop is located: positive for YMAX direction
</code></pre>

<p>Otherwise when used at Y_MIN endstop and the homing direction set to -1, the axis is reversed as you experienced.</p>

CC BY-SA 3.0
2018-04-26T10:38:00.277Z
with "adjust the bed coordinates underneath" you mean `#define Y_MIN_POS` and `#define Y_MAX_POS` ?
Mehdi Nellen
CC BY-SA 3.0
2018-04-28T19:56:30.460Z
its ok, I managed to mirror the axis, I set `#define Y_HOME_DIR 1` and in addition: `#define USE_YMAX_PLUG` `#if DISABLED(ENDSTOPPULLUPS)  #define ENDSTOPPULLUP_YMAX` `#define Y_MAX_ENDSTOP_INVERTING true` and I inverted/removed all `Y_MIN` settings, which made everything work. ty
Mehdi Nellen
CC BY-SA 3.0
2018-04-26T07:19:55.937Z
2018-04-28T12:04:01.240Z
2018-04-28T12:04:01.240Z
0scar
<p>I made my printer to have a left handed coordinate system (it homes to the back left corner of the heatbed), I did this because it happens to make working on the printer easier for me. This, however, causes the objects to be printed mirrored. In Slic3r I manually mirror objects every time I load a new objects. From time to time I forget doing this which is really annoying. I was wondering if there is a setting in Slic3r to automatically do this. Something like mirroring on import, or changing the axis in Slic3r itself.</p>

CC BY-SA 3.0
2018-04-26T07:01:49.213Z
So your Y min end stop is at the front of the printer when facing it and left for X min? I think you can fix your problem using the correct setup in your configuration of the firmware.
0scar
CC BY-SA 3.0
2018-04-26T10:38:37.137Z
@0scar yes its in front
Mehdi Nellen
<slic3r><axis>
Change Slic3r settings for left handed coordinate system
Mehdi Nellen
# Change Slic3r settings for left handed coordinate system

(Asked by: username_0 on 2018-04-26)

I made my printer to have a left handed coordinate system (it homes to the back left corner of the heatbed), I did this because it happens to make working on the printer easier for me. This, however, causes the objects to be printed mirrored. In Slic3r I manually mirror objects every time I load a new objects. From time to time I forget doing this which is really annoying. I was wondering if there is a setting in Slic3r to automatically do this. Something like mirroring on import, or changing the axis in Slic3r itself.

**Tags:** slic3r, axis

> **Comments:**
> **username_1**: So your Y min end stop is at the front of the printer when facing it and left for X min? I think you can fix your problem using the correct setup in your configuration of the firmware.  
> **username_0**: @username_1 yes its in front  

---

## 1 answers

### Answer by username_1 on 2018-04-26. Score: 3 | Accepted answer

The direction of the end stop is set in the firmware of the printer. Even with different setup end stops, you should be able to get a correct coordinate system without mirroring axes in slicers. **This would be the preferred method to fix your problem!**

*E.g. my Ultimaker 3 Extended homes the Z on Z max having the platform at the bottom of the machine, a calibrated offset determines the actual Z=0.*

Not knowing which firmware you are using, in e.g. [Marlin Firmware](https://github.com/MarlinFirmware/) this is set by code lines in the file [Configuration.h](https://github.com/MarlinFirmware/Marlin/blob/1.1.x/Marlin/Configuration.h):

```
// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1

```

Your end stop triggers at the maximum of the Y axis, so you need to configure it as a MAX end stop, i.e. use the Y\_MAX pins by defining (search for the *Endstop Settings* section, note to also disable the YMIN endstop):

```
//#define USE_YMIN_PLUG // This disables the YMIN endstop
#define USE_YMAX_PLUG   // This enables the YMAX endstop

```

and change the homing direction (Y\_HOME\_DIR) to 1:

```
#define Y_HOME_DIR 1 // This tells the printer where the endstop is located: positive for YMAX direction

```

Otherwise when used at Y\_MIN endstop and the homing direction set to -1, the axis is reversed as you experienced.

> **Comments:**
> **username_0**: with "adjust the bed coordinates underneath" you mean `#define Y_MIN_POS` and `#define Y_MAX_POS` ?  
> **username_0**: its ok, I managed to mirror the axis, I set `#define Y_HOME_DIR 1` and in addition: `#define USE_YMAX_PLUG` `#if DISABLED(ENDSTOPPULLUPS)  #define ENDSTOPPULLUP_YMAX` `#define Y_MAX_ENDSTOP_INVERTING true` and I inverted/removed all `Y_MIN` settings, which made everything work. ty  

---

