Z Axis Homed Then moves wrong up or down
Hey everyone,
New to 3d printing period, built a reprapguru V2 which has the arduino 2560 & Ramps 1.4 with marlin 1.8.3 installed. So I've been looking all around just trying to get this thing to run right and I almost have it good but I am stuck currently. Basically, after I home the Z, to which it will travel down and hit the endstop just fine, but after that if I hit the manual control to move it ether up or down using the .01, .1, 1 or 10 buttons it automatically starts to move down towards the endstop. I am not sure the exact distance but its equal to about 3 inches of travel. I was looking through the code in marlin and couldn't see anything out of the ordinary (Im new to c++ however) and there is no home offset in the eeprom settings. Also, the X and Y don't have this problem, can anyone offer a suggestion?
Comments
A typical beginner error is to set motor direction wrong just to be able to home to the desired place. So if you have z min homing you have homing direction -1 and you mist adjust invert z motor to make it work.
You should also make sure 0 means bed and extruder are touching. 200 in this example would be max. distance between extruder and bed hence max endstop homing with homing dir = 1.
Firmware and host must be configured identically to work together.
thanks
this is probably better asked in Marlin Github, but.......
There are a couple of things and they are all in configuration.h
I can't speak specifically to the version of Marlin you are using. I am using 1.1.x bugfix, so the code may be slightly different.
There are settings: - these are my values for a CoreXY printer - yours will be different.
that will reverse the motors. The variable is true or false. Since there is no convention you just need to play with it.
------------
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
#define INVERT_X_DIR false
#define INVERT_Y_DIR false
#define INVERT_Z_DIR true
---------------
below that are the settings for the extruder
that change the steps/mm for each motor. The axis are by calculation, the extruder is by experiment.
-------------------
/**
* Default Axis Steps Per Unit (steps/mm)
* Override with M92
* X, Y, Z, E0 [, E1[, E2[, E3[, E4]]]]
*/
#define DEFAULT_AXIS_STEPS_PER_UNIT { 200, 200, 800, 185.2 }
-------------------
that will change the speed of homing and the bounce speed (off end stop) using a multiplier. This one is in configuration_adv.h
----------------------
//homing hits the endstop, then retracts by this distance, before it tries to slowly bump again:
#define X_HOME_BUMP_MM 5
#define Y_HOME_BUMP_MM 5
#define Z_HOME_BUMP_MM 2
#define HOMING_BUMP_DIVISOR {2, 2, 2}
-----------------------------------------
The Z divisor default = 4. --- 2 is faster.
that controls the endstop direction - if you are using min or max endstops.
--------------
// 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 version may just be whether you are using min or max endstops. I think the above is new.
that set the bed size
----------------
// The size of the print bed
#define X_BED_SIZE 335 //** max size
#define Y_BED_SIZE 305 //** max size
// Travel limits (mm) after homing, corresponding to endstop positions.
#define X_MIN_POS 0
#define Y_MIN_POS 0
#define Z_MIN_POS 0
#define X_MAX_POS X_BED_SIZE
#define Y_MAX_POS Y_BED_SIZE
#define Z_MAX_POS 295 //**
----------------------
that sets the homing feed rate
-----------------
// Homing speeds (mm/m)
#define HOMING_FEEDRATE_XY (50*60)
#define HOMING_FEEDRATE_Z (8*60)
---------------------------
If you unit only bounce off endstop but does not go back to touch it again, that isn't right.
work with the direction till you get it right.
there is also config setting for the endstops, that could be an issue. you are on your own there.
I've been there too. good luck.
thanks anyway
http://forum.repetier.com/discussion/comment/16083/#Comment_16083
''My guess is that you have set Home Z to 0 instead of printer height also in shape tab. You must there enter the geight returned by firmware when you have homed and send M114.''