Welcome! Log In Create A New Profile

Advanced

Printer calibration issues....

Posted by theinsainepops 
Printer calibration issues....
March 19, 2015 06:09PM
Hello fourm, I have a problem that i've been sitting on for quiet awhile know because I cant figure out the solution or the problem. Im getting ready to just give up because I have been trying to get this 3d printer working since mid August. I have a folgertech prusa i3, and here's my problem. For some reason my motors will only go one way, and they wont calibrate to my endstops. So it goes beyond the print area on my z and y axis. I checked to make sure the endstops are wired correctly and they are. But I had my printer working almost correctly until for some reason my motors will only go basically one way. Thats the best way I can explain it. The z axis will only go down, the X axis only moves left when the printer is on. Can someone please just work with me to fix these problems. Its killing me that i cannot get this printer to just print!!
Re: Printer calibration issues....
March 19, 2015 06:31PM
Usually that happens when you have the logic of your switches inverted in the firmware. If you have pronterface connect the printer and use the command M119 to check the status of your switches. For any switch showing triggered without been hit, switch the ligic in marlin.

If Z only goes down, you have the switch in Max instead of Min location so you will have to change that too unless the problem is with stepper direction. Check that homing is to min in the firmware and that the motor moves in that direction when you home the printer.

Edited 1 time(s). Last edit at 03/19/2015 06:35PM by ggherbaz.
Re: Printer calibration issues....
March 19, 2015 06:45PM
Endstop logic:
// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
//#define DISABLE_MAX_ENDSTOPS

Switch true to false or vice versa depending on how it is in your firmware.

Home 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

And:
// 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

So if Z home dir is -1 like it should but your motor goes opposite then change Z direction from true to false in this example.

Now be sure you plug the endstops in the right location, if homing to min, plug it to min.
Re: Printer calibration issues....
March 19, 2015 06:51PM
Now it's best if your switches are set as NC or normally close, most switches have 3 pins and there is some markings like NC NO and C, be sure that all are connected to C and NC.
Re: Printer calibration issues....
March 19, 2015 07:06PM
Quote
ggherbaz
Usually that happens when you have the logic of your switches inverted in the firmware. If you have pronterface connect the printer and use the command M119 to check the status of your switches. For any switch showing triggered without been hit, switch the ligic in marlin.

If Z only goes down, you have the switch in Max instead of Min location so you will have to change that too unless the problem is with stepper direction. Check that homing is to min in the firmware and that the motor moves in that direction when you home the printer.


Alright so I went into my arduino settings and fixed the issue. But now for it wont upload my fixed software and im getting this error.


Sketch uses 87,446 bytes (34%) of program storage space. Maximum is 253,952 bytes.
Global variables use 3,648 bytes (44%) of dynamic memory, leaving 4,544 bytes for local variables. Maximum is 8,192 bytes.
avrdude: ser_open(): can't open device "\\.\COM3": The system cannot find the file specified.


avrdude: ser_drain(): read error: The handle is invalid.


Problem uploading to board. See [www.arduino.cc] for suggestions.



Ive tried reinstalling arudino but yet no luck!
Re: Printer calibration issues....
March 19, 2015 08:01PM
you left the printer connected to pronterface while you were trying to flash the board. Disconnect it from pronterface and then flash the file.

Be sure to compile the file before flashing to check for errors.
Re: Printer calibration issues....
March 19, 2015 09:29PM
Quote
ggherbaz
Endstop logic:
// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
//#define DISABLE_MAX_ENDSTOPS

Switch true to false or vice versa depending on how it is in your firmware.

Home 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

And:
// 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

So if Z home dir is -1 like it should but your motor goes opposite then change Z direction from true to false in this example.

Now be sure you plug the endstops in the right location, if homing to min, plug it to min.

Alright so know it pronterface is saying that my endstop min is open but endstop max is triggered and the sampe problem still applies..
Re: Printer calibration issues....
March 19, 2015 10:19PM
In pronterface:
an X + should move the carriage to the right
a Y + should move the bed toward the front
a Z + should move the carriage up
If these are wrong then change the connector on the RAMPS (power down first)

Once the motors are going in the correct direction:
You need to figure out of your switches are normally open/NO or normally closed/NC
Use a multimeter to check.
If they are NO then in Marlin set as follows:
const bool X_ENDSTOPS_INVERTING = true;
const bool Y_ENDSTOPS_INVERTING = true;
const bool Z_ENDSTOPS_INVERTING = true;

If they are NC change the true to a false
compile and upload.

Check with a M119

If your X stop is on the left it's a MIN stop, if it's on the right it's a MAX stop
If your Y stop is at the back it's a MIN stop, if it's at the front it's a MAX stop
The Z is a MIN stop as it's on the bottom
These are set in Marlin here:
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1

-1 mean it's a MIN and a 1 means it's a MAX
fix if needed, compile and upload

You must also put the cables from the switches on the correct MIN or MAX on your RAMPS
There is a MIN and MAX pair for each axis. The go X MIN, X MAX, Y MIN, Y MAX, Z MIN, Z MAX starting from the end closest to where the power etc connects
You should only need 2 wires from the switch and they go on the S and -

Check again with a M119, close a switch and check again etc

[www.instructables.com]

Steve


My updated Instructable on our Prusa i3 Build
[www.instructables.com]
Re: Printer calibration issues....
March 20, 2015 11:16AM
Quote

Alright so know it pronterface is saying that my endstop min is open but endstop max is triggered and the sampe problem still applies..

Unless you really have max and min endstops in the same axis. Disable the endstops that you don't have or switch them the logic.

I personally use all my switches in minimum lication so I always disable max endstops.
Re: Printer calibration issues....
March 21, 2015 10:04AM
How do you disable the endstops??
Re: Printer calibration issues....
March 21, 2015 10:24AM
I figured out how to disable my endstops but I keep on getting one triggered and the other open. I can't seem to solve my problem. My Y axis is on the front, X on the right, and my Z on the bottom, I reconfigured my wiring. And I still cannot get this to work!
Re: Printer calibration issues....
March 21, 2015 11:37AM
Ok!! So I got it all figured out!! But One more major problem, for my Z & X axis when the endstops are hit it wont let the motors turn the other way to get off the endstops. In printer face it says endstops hit. But for my Y axis when the endstop is triggered it let's me move off of it.
Re: Printer calibration issues....
March 21, 2015 11:38AM
So I got it all figured out!! But One more major problem, for my Z & X axis when the endstops are hit it wont let the motors turn the other way to get off the endstops. In printer face it says endstops hit. But for my Y axis when the endstop is triggered it let's me move off of it.
Re: Printer calibration issues....
March 22, 2015 12:46PM
Quote
ggherbaz
Quote

Alright so know it pronterface is saying that my endstop min is open but endstop max is triggered and the sampe problem still applies..

Unless you really have max and min endstops in the same axis. Disable the endstops that you don't have or switch them the logic.

I personally use all my switches in minimum lication so I always disable max endstops.

Alright so I moved all my endstops to min position, changed my wiring to min, and did everthing in firmware to change to min. & yet in pronterface it still says my max is bring triggered
Re: Printer calibration issues....
March 22, 2015 04:15PM
Can you post the end stop settings from your Marlin's configuration.h file

Steve
Re: Printer calibration issues....
March 22, 2015 09:41PM
Quote
SteveRoy
Can you post the end stop settings from your Marlin's configuration.h file

Steve
Sorry for the long wait Steve I just got off work..

// corse Endstop Settings
#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors

#ifndef ENDSTOPPULLUPS
// fine Enstop settings: Individual Pullups. will be ignord if ENDSTOPPULLUPS is defined
#define ENDSTOPPULLUP_XMAX
#define ENDSTOPPULLUP_YMAX
#define ENDSTOPPULLUP_ZMAX
#define ENDSTOPPULLUP_XMIN
#define ENDSTOPPULLUP_YMIN
//#define ENDSTOPPULLUP_ZMIN
#endif

#ifdef ENDSTOPPULLUPS
// #define ENDSTOPPULLUP_XMAX
// #define ENDSTOPPULLUP_YMAX
// #define ENDSTOPPULLUP_ZMAX
#define ENDSTOPPULLUP_XMIN
#define ENDSTOPPULLUP_YMIN
#define ENDSTOPPULLUP_ZMIN
#endif

// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
//#define DISABLE_MAX_ENDSTOPS
// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
#define X_ENABLE_ON 0
#define Y_ENABLE_ON 0
#define Z_ENABLE_ON 0
#define E_ENABLE_ON 0 // For all extruders

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

#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

// 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

#define min_software_endstops false //If true, axis won't move to coordinates less than HOME_POS.
#define max_software_endstops true //If true, axis won't move to coordinates greater than the defined lengths below.
// Travel limits after homing
#define X_MAX_POS 200
#define X_MIN_POS 0
#define Y_MAX_POS 200
#define Y_MIN_POS 0
#define Z_MAX_POS 185
#define Z_MIN_POS 0

#define X_MAX_LENGTH (X_MAX_POS - X_MIN_POS)
#define Y_MAX_LENGTH (Y_MAX_POS - Y_MIN_POS)
#define Z_MAX_LENGTH (Z_MAX_POS - Z_MIN_POS)

// The position of the homing switches
//#define MANUAL_HOME_POSITIONS // If defined, MANUAL_*_HOME_POS below will be used
//#define BED_CENTER_AT_0_0 // If defined, the center of the bed is at (X=0, Y=0)

//Manual homing switch locations:
#define MANUAL_X_HOME_POS 0
#define MANUAL_Y_HOME_POS 0
#define MANUAL_Z_HOME_POS 0


^^ There she is, please let me know if anything is wrong
Re: Printer calibration issues....
March 23, 2015 11:39AM
That's the same as I have in my Configuration.h
An M119 show everything open when the printer is off the stops, so I'm unsure of why you get triggered max stops.

Steve
Sorry, only registered users may post in this forum.

Click here to login