Limited Y-axis travel and Y-axis endstop not working
June 23, 2015 01:15PM
Greetings All!

Trying to get the bugs worked out on my first build

Here are my specs.
Prusa i3 box frame
ATmega 2560 with RAMPS 1.4 and 5 A4988 motor drivers.
3 mechanical endstops
Arduino v 1.6.5
Marlin firmware

I've gotten movement from X,Y, Z, and extruder. I've gone through the Prusa calculator and modified the firmware to match hardware I'm using.
Here's the issue I've come up against.
After uploading the firmware and powering up the printer, the length of movement on the Y-axis is limited and inconsistent from one time to the next. I'll do my best to explain.
I just switched power off to the printer and manually positioned the Y-axis carriage to about the mid-point of it's available travel. I switched power back on, open Pronterface and was able to move the carriage 50mm toward the rear of the printer (until I hit the endstop). When the endstop is triggered it doesn't disable movement (i.e. I can continue to move the axis until it contacts the frame. When I try to move the axis toward the front of the printer at this point it will not move. I switched off the power to the printer and manually positioned the carriage back to approximately the mid-point of available travel then power up the printer again. Using Pronterface I can move the carriage toward the front of the printer about 60mm until it contacts the frame. Then I try to move it toward the back of the printer and can only get it to move approximately 85mm. Then, using Pronterface, I position X and Y axis to approximately the mid-point of their available travel.
When I click on the Home button on Pronterface the X axis homes correctly as does the Z axis but the Y axis doesn't move. If I click on the Home button for just the Y axis it still won't move. Using Pronterface I can still move the Y axis the travel distances listed above.
Endstops on X and Z axis seem to be working correctly but Yaxis endstop seems to have no effect. I've checked M119 and all three of the endstops show to be triggered when manually pushed.
I've attached a copy of my Marlin configuration.h file.

Any suggestions, advice, or input would be welcome.

open | download - Configuration._h (35.7 KB)
Re: Limited Y-axis travel and Y-axis endstop not working
June 23, 2015 02:13PM
Why do you disable z-axis?

// Disables axis when it's not being used.
#define DISABLE_X false
#define DISABLE_Y false
#define DISABLE_Z true
#define DISABLE_E false // For all extruders

Here the y home dir is seen as max-endstop. Is that correct, with your position of the endstop? If x-endstop is on the left, it´s OK to have the y-endstop ( max ) at the back of the frame.
BUT, you also disabled max-endstops, which wouldn´t work then...

#define X_HOME_DIR -1
#define Y_HOME_DIR 1
#define Z_HOME_DIR -1


PS: if you keep y-endstop as max., you also have to change the position of the cable on the port to the right is y-max. Check with M119

Edited 1 time(s). Last edit at 06/23/2015 02:16PM by o_lampe.
Re: Limited Y-axis travel and Y-axis endstop not working
June 23, 2015 04:49PM
Thank you very much for the response.

Disabling the Z-axis was a mistake on my part. I was reading through several different tutorials on setting up Marlin and that was suggested as a way to fine tune the Z-axis position during a print. Re-thinking that now I see where that does not apply to my particular set-up (that tutorial was written about a printer that has knobs on the tops of the Z-axis rods). I'll change that in Marlin.

My Y-axis endstop is at the back of the frame and my X-axis endstop is on the left when viewing the front of the printer.

If I'm understanding you correctly I should enable MAX Endstops by commenting out the #define DISABLE_MAX_ENDSTOPS?
If I do that, it will also enable MAX Endstops for Z and X, yes? I do not have mechanical endstop switches installed for X and Z is there something else in Marlin that I'll need to change to account for that?

I'm also having a problem with where the printing begins. It seems to want to start printing near the front edge of the print bed and almost on the left edge. Is there someplace in Marlin to define where the center of the print bed is?

Thanks SO much for your help!
Re: Limited Y-axis travel and Y-axis endstop not working
June 24, 2015 12:26PM
If your Y end stop is at the back of the frame it is a MIN end stop.
#define Y_HOME_DIR -1
When you do a Y + in pronterface it should move the bed toward the front.

X end stop on the left is a MIN end stop.
When you do a X + in pronterface the carriage should move right.

When you home the printer the bed should move toward the back and the X carriage to the left


My updated Instructable on our Prusa i3 Build
Re: Limited Y-axis travel and Y-axis endstop not working
June 25, 2015 01:00AM
Thanks Steve,

I made those changes and I'm getting great results as far as endstops working and direction and length of travel on the X and Y axis. Thank You!

Now I'm trying to figure out how the 0,0 point is defined in Marlin. When I click the "bullseye" in Pronterface I can see that it is sending the following to the printer, "SENDING:G0 X85.0 Y85.0 F3000" and the hotend is being positioned accordingly. However, this doesn't correspond to the center of the printbed. Are these coordinates set somewhere in Marlin? I've tried searching the forums for this information but have come up empty-handed.

Again, thanks very much for your help.

Sorry, only registered users may post in this forum.

Click here to login