Rostock variant - endstops,homing not working (desperate)
Posted: Mon Dec 09, 2013 2:05 pm
Hello,
I hope I'm writing this in the correct subforum, because i am desperate.
I am building a rostock variant, delta robot printer. My electronics are Gen 7 1.5, firmware is Repetier 0.83 and host software is Repetier 0.90d. I used THIS WIRING SETUP as an example
The problem: after setting up the correct settings, the motors run good and rails slide like in butter. The issue is that when i ask the machine to home to zero(MAX endstops in firmware, X-MX, Y-MAX, Z-zero set in host software) it moves Z axis up, X and Y axis down until the carriage bottoms out. Also, as the Z axis carriage hits the endstop, it does not move down. This seems to tell me that something is still wrong in the configuration. When trying individual G0 axis movements(G0 X10 etc), the carriage moves fast and accurately. When trying G28 X0(etc), the carriage does not move.
I tested the endstop signals aswell( M119) and they seem to be working correctly( L when carriage is away, H when carriage engages the tappet).
I will paste my settings below as well, but I am certainly sure that there is something wrong elsewhere( I asked for some help from Mr Repetier himself and he was very helpful, I found out that the Gen7 chip is originally setup for MIN endstops, so I changed the MIN pins to -1 and MAX pins to 0,1 and 2 (XYZ) ):
// ##########################################################################################
// ## Endstop configuration ##
// ##########################################################################################
/* By default all endstops are pulled up to HIGH. You need a pullup if you
use a mechanical endstop connected with GND. Set value to false for no pullup
on this endstop.
*/
#define ENDSTOP_PULLUP_X_MIN false
#define ENDSTOP_PULLUP_Y_MIN false
#define ENDSTOP_PULLUP_Z_MIN false
#define ENDSTOP_PULLUP_X_MAX true
#define ENDSTOP_PULLUP_Y_MAX true
#define ENDSTOP_PULLUP_Z_MAX true
// Set to true to invert the logic of the endstops
#define ENDSTOP_X_MIN_INVERTING false
#define ENDSTOP_Y_MIN_INVERTING false
#define ENDSTOP_Z_MIN_INVERTING false
#define ENDSTOP_X_MAX_INVERTING true
#define ENDSTOP_Y_MAX_INVERTING true
#define ENDSTOP_Z_MAX_INVERTING true
// Set the values true where you have a hardware endstop. The Pin number is taken from pins.h.
#define MIN_HARDWARE_ENDSTOP_X false
#define MIN_HARDWARE_ENDSTOP_Y false
#define MIN_HARDWARE_ENDSTOP_Z false
#define MAX_HARDWARE_ENDSTOP_X true
#define MAX_HARDWARE_ENDSTOP_Y true
#define MAX_HARDWARE_ENDSTOP_Z true
//// 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
// Delta robot radius endstop
#define max_software_endstop_r true
//If true, axis won't move to coordinates less than zero.
#define min_software_endstop_x false
#define min_software_endstop_y false
#define min_software_endstop_z false
//If true, axis won't move to coordinates greater than the defined lengths below.
#define max_software_endstop_x false
#define max_software_endstop_y false
#define max_software_endstop_z false
// You can disable endstop checking for print moves. This is needed, if you get sometimes
// false signals from your endstops. If your endstops don't give false signals, you
// can set it on for safety.
#define ALWAYS_CHECK_ENDSTOPS true
// maximum positions in mm - only fixed numbers!
// For delta robot Z_MAX_LENGTH is the maximum travel of the towers and should be set to the distance between the hotend
// and the platform when the printer is at its home position.
// If EEPROM is enabled these values will be overidden with the values in the EEPROM
#define X_MAX_LENGTH 135
#define Y_MAX_LENGTH 135
#define Z_MAX_LENGTH 135
Overridden if EEPROM activated.
*/
#define MAX_JERK 20.0
#define MAX_ZJERK 20.0
Thanks for any and all help
I hope I'm writing this in the correct subforum, because i am desperate.
I am building a rostock variant, delta robot printer. My electronics are Gen 7 1.5, firmware is Repetier 0.83 and host software is Repetier 0.90d. I used THIS WIRING SETUP as an example
The problem: after setting up the correct settings, the motors run good and rails slide like in butter. The issue is that when i ask the machine to home to zero(MAX endstops in firmware, X-MX, Y-MAX, Z-zero set in host software) it moves Z axis up, X and Y axis down until the carriage bottoms out. Also, as the Z axis carriage hits the endstop, it does not move down. This seems to tell me that something is still wrong in the configuration. When trying individual G0 axis movements(G0 X10 etc), the carriage moves fast and accurately. When trying G28 X0(etc), the carriage does not move.
I tested the endstop signals aswell( M119) and they seem to be working correctly( L when carriage is away, H when carriage engages the tappet).
I will paste my settings below as well, but I am certainly sure that there is something wrong elsewhere( I asked for some help from Mr Repetier himself and he was very helpful, I found out that the Gen7 chip is originally setup for MIN endstops, so I changed the MIN pins to -1 and MAX pins to 0,1 and 2 (XYZ) ):
// ##########################################################################################
// ## Endstop configuration ##
// ##########################################################################################
/* By default all endstops are pulled up to HIGH. You need a pullup if you
use a mechanical endstop connected with GND. Set value to false for no pullup
on this endstop.
*/
#define ENDSTOP_PULLUP_X_MIN false
#define ENDSTOP_PULLUP_Y_MIN false
#define ENDSTOP_PULLUP_Z_MIN false
#define ENDSTOP_PULLUP_X_MAX true
#define ENDSTOP_PULLUP_Y_MAX true
#define ENDSTOP_PULLUP_Z_MAX true
// Set to true to invert the logic of the endstops
#define ENDSTOP_X_MIN_INVERTING false
#define ENDSTOP_Y_MIN_INVERTING false
#define ENDSTOP_Z_MIN_INVERTING false
#define ENDSTOP_X_MAX_INVERTING true
#define ENDSTOP_Y_MAX_INVERTING true
#define ENDSTOP_Z_MAX_INVERTING true
// Set the values true where you have a hardware endstop. The Pin number is taken from pins.h.
#define MIN_HARDWARE_ENDSTOP_X false
#define MIN_HARDWARE_ENDSTOP_Y false
#define MIN_HARDWARE_ENDSTOP_Z false
#define MAX_HARDWARE_ENDSTOP_X true
#define MAX_HARDWARE_ENDSTOP_Y true
#define MAX_HARDWARE_ENDSTOP_Z true
//// 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
// Delta robot radius endstop
#define max_software_endstop_r true
//If true, axis won't move to coordinates less than zero.
#define min_software_endstop_x false
#define min_software_endstop_y false
#define min_software_endstop_z false
//If true, axis won't move to coordinates greater than the defined lengths below.
#define max_software_endstop_x false
#define max_software_endstop_y false
#define max_software_endstop_z false
// You can disable endstop checking for print moves. This is needed, if you get sometimes
// false signals from your endstops. If your endstops don't give false signals, you
// can set it on for safety.
#define ALWAYS_CHECK_ENDSTOPS true
// maximum positions in mm - only fixed numbers!
// For delta robot Z_MAX_LENGTH is the maximum travel of the towers and should be set to the distance between the hotend
// and the platform when the printer is at its home position.
// If EEPROM is enabled these values will be overidden with the values in the EEPROM
#define X_MAX_LENGTH 135
#define Y_MAX_LENGTH 135
#define Z_MAX_LENGTH 135
Overridden if EEPROM activated.
*/
#define MAX_JERK 20.0
#define MAX_ZJERK 20.0
Thanks for any and all help