Welcome! Log In Create A New Profile

Advanced

Problem with homing, endstops and repetierhostconfused smiley

Posted by threemicrons 
Problem with homing, endstops and repetierhostconfused smiley
December 07, 2013 01:52PM
Hello,

I am currently finishing my 3D delta printer, modeled along the lines of the original Rostock. I am running into some very strange problems and I am not sure how to fix them. They are driving me insane, because im 100% sure there is a very simple solution.

I am using GEN 7 1.5 board, Repetier host(0.90c) and firmware(0.83). The machine works quite nicely when i manually center the hotend and ask it to "print" something(without the filament ofcourse). The probem I am facing, is related to the endstops. I tried several to modify the firmware to work as MIN endstop and MAX endstop(changing the pins.h file aswell) but nothing got it working. After spending an additonal several hours on the problem, I noticed that the repetier host treats the homing G-code(G28 X0) as a software home(meaning that the arms have not moved, and the X:0 changes to X: 135), regardless of the type of setting i use in the host.

Anyways, I'm looking for some help on how to setup my machine properly - If i have to restart with a fresh piece of firmware, I'll do that too. But i desperately need your help - I have a deadline in 28 hours and the endstops are the things that are keeping me from reaching it. I attached the firmware code that is uploaded right now.

Thanks

// ##########################################################################################
// ## 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 true
#define ENDSTOP_PULLUP_Y_MIN true
#define ENDSTOP_PULLUP_Z_MIN true
#define ENDSTOP_PULLUP_X_MAX false
#define ENDSTOP_PULLUP_Y_MAX false
#define ENDSTOP_PULLUP_Z_MAX false

//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 false
#define ENDSTOP_Y_MAX_INVERTING false
#define ENDSTOP_Z_MAX_INVERTING false

// Set the values true where you have a hardware endstop. The Pin numbe ris taken from pins.h.

#define MIN_HARDWARE_ENDSTOP_X true
#define MIN_HARDWARE_ENDSTOP_Y true
#define MIN_HARDWARE_ENDSTOP_Z true
#define MAX_HARDWARE_ENDSTOP_X false
#define MAX_HARDWARE_ENDSTOP_Y false
#define MAX_HARDWARE_ENDSTOP_Z false

//// ADVANCED SETTINGS - to tweak parameters ///////

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

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

// Inverting axis direction
#define INVERT_X_DIR false
#define INVERT_Y_DIR false
#define INVERT_Z_DIR 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

// Delta robot radius endstop
#define max_software_endstop_r false

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

/****************************************************************************************
* Gen7 1.4.1 pin assignment
*
****************************************************************************************/
#if MOTHERBOARD == 71
#define KNOWN_BOARD 1

#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
#error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu.
#endif

//x axis pins
#define X_STEP_PIN 29
#define X_DIR_PIN 28
#define X_ENABLE_PIN 25
#define X_MIN_PIN 0
#define X_MAX_PIN -1

//y axis pins
#define Y_STEP_PIN 27
#define Y_DIR_PIN 26
#define Y_ENABLE_PIN 25
#define Y_MIN_PIN 1
#define Y_MAX_PIN -1

//z axis pins
#define Z_STEP_PIN 23
#define Z_DIR_PIN 22
#define Z_ENABLE_PIN 25
#define Z_MIN_PIN 2
#define Z_MAX_PIN -1


Repetier host: home X,Y,Z - all set to MIN, printable radius 130mm, printable height 130mm.
Re: Problem with homing, endstops and repetierhostconfused smiley
December 07, 2013 03:02PM
first, correct host settings. In printer configuration you can set x and y home position to zero, z to max. Then only do home all on a delta, it's the only homing type making sense on deltas.

Firmware. Download the developemnt version on github. it is currently preconfigured for delta, so you have a good jump start. To your settings: Gen 7 has only min endstops, so put the pins in the max endstop names and set min pins to minus one. Activate only max hardware endstops. to check pullup/ inverting use M119 to test the signals. You need L when not triggered and H when triggered.


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Re: Problem with homing, endstops and repetierhostconfused smiley
December 08, 2013 11:09AM
Hello,

I made the host setting changes for the printer. Set the x and Y axis to 0 and z to MAX.

I could not find the development version, but i assumed the 0.83 version is the same. I changed the PINS.H so MIN pins have -1 and MAX pins have 0,1 and 2(X,Y and z respectively).
In firmware I also set the MIN HARDWARE ENDSTOP to false, leaving MAX HARDWARE ENDSTOP to true. After this I uploaded firmware, and checked M119 and it showed the signal as L(as it should be).

When I use the "home all axes" under the manual control mode, it drives the Z axis until it hits the endstop, but X and Y keep going until they hit the bottom of the rail. I tried using G28 X0, but that did not make the axis move at all. Using G28 Y0 made the axis meet the endstop, but again the X and Y axis moved along as long as they could.





Quote
repetier
first, correct host settings. In printer configuration you can set x and y home position to zero, z to max. Then only do home all on a delta, it's the only homing type making sense on deltas.

Firmware. Download the developemnt version on github. it is currently preconfigured for delta, so you have a good jump start. To your settings: Gen 7 has only min endstops, so put the pins in the max endstop names and set min pins to minus one. Activate only max hardware endstops. to check pullup/ inverting use M119 to test the signals. You need L when not triggered and H when triggered.
Re: Problem with homing, endstops and repetierhostconfused smiley
December 08, 2013 02:04PM
No, 0.83 is not the development version which is 0.90. You need to select the development branch in github to see it. Here the direct link:
https://github.com/repetier/Repetier-Firmware/tree/development

Homing on delta works different. Don't think columns = axis - that is not true. Homeing x or y centers them, but that only works after successfull homing.

Have you tested if M119 goes to H when triggered for x and y?


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Re: Problem with homing, endstops and repetierhostconfused smiley
December 08, 2013 02:29PM
I'm away from the printer right now, but I downloaded the newer version and looked it over in Arduino, apart from a range on new features, the variables seemed similar to what I had uploaded to the board.

Yes, M119 showed H when i manually pushed the switch down.


EDIT:

unfortunately I could not get the AVR or the DUE version to compile, i attached the error message


Quote
repetier
No, 0.83 is not the development version which is 0.90. You need to select the development branch in github to see it. Here the direct link:
https://github.com/repetier/Repetier-Firmware/tree/development

Homing on delta works different. Don't think columns = axis - that is not true. Homeing x or y centers them, but that only works after successfull homing.

Have you tested if M119 goes to H when triggered for x and y?

Edited 1 time(s). Last edit at 12/09/2013 09:39AM by threemicrons.
Attachments:
open | download - error repetier 0.90 firmware.png (153.8 KB)
Sorry, only registered users may post in this forum.

Click here to login