Y-axis homing in wrong direction

#1
TLDR: The Y axis moves the correct way in manual control but moves the wrong way (toward the max, not the min, away from the limit switch) during homing. Changing the setting below did not help. Tried Repetier firmware and this issue did not occur, but there I have issues setting up other things.

I am having a problem with the homing direction of the Y axis. The motor leads are plugged in the correct way such that telling it to move "down" in Repetier makes it move toward the user and "up" toward the back. As with my other printers, this is the way it should be. However, when I tell it to home, the Y axis moves toward the back, not the front.

See this section of the Marlin Configuration.h file: The Y direction says 1, thus it is set to home towards the MAX, not the MIN. However, when I changed that definition to -1, the y axis would only move in 1 direction.

// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
#define X_HOME_DIR -1
#define Y_HOME_DIR 1
#define Z_HOME_DIR -1
 

GORDON.LAPLANTE

Administrator
Staff member
#2
Re: Y-axis homing in wrong direction - FIX

To fix the homing direction you can try one of two things. It's possible the motor wire was installed backward in the electronics box. With the new motor wires (Blue, yellow, red green) you can simply unplug it in and turn it around so the red wire is on the left.

As for changing the direction in the firmware, it has to be changed in a 2 places (which tricked me when i first played with it).

As you mentioned make sure to update the endstop settings:

// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
#define X_HOME_DIR -1
#define Y_HOME_DIR 1
#define Z_HOME_DIR -1


But also change the line below to actually invert the y-axis direction:

#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true
#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false
#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true
#define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E2_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false


Using these settings you can also move the y-axis endstop to the rear of the printer and only invert the endstop direction.
 
#3
I'm having this same issue. Well, kind of. My printer moves incorrectly except when homing. Still the same problem though. I'm unfamiliar with editing the firmware.

I could probably figure it out, but there is currently no firmware in the downloads section. I tried searching this forum for some help, but the search function is mostly useless. Apparently, "firmware", "Marlin", "download", and "config" are all terms too common to search for.
 
#4
As it turns out, this issue wasn't firmware related. Something was glitching out on the computer end of things. I installed repetier on a different computer and the problem disappeared. An uninstall followed by a restart and a clean installation after that should work as well.

The website just changed, but I've seen the firmware packages on the new download page. That said, you don't need to mess with anything there.
 
#6
Okay, so the weirdness continues. When I hit auto home from the printer interface, it moves in the correct direction. However, the info screen shows the position at X=0, Y=410, Z=0.

So it moves in the correct direction, but thinks it moved Y+? Moving it from a computer or manually through the interface, Y is inverted. This sounds like a firmware issue, but I still haven't found a firmware download or know any way to edit the firmware settings.

Any help would be highly appreciated.

EDIT: We swapped the Y servo plug around just for the heck of it, and of course now it moves correctly manually but homes in the wrong direction. I don't get why it would try to home in the direction it clearly thinks is Y+.
 
#7
So I just resolved this same issue in another printer I'm building right now...

In Repetier --> Printer Settings --> Printer Shape you should change "Set Home Y" to max. See what happens. Make sure the Y distance is set to 410.