I have been working on a large format printer with 3 Z steppers.
// The size of the print bed
#define X_BED_SIZE 610
#define Y_BED_SIZE 425
// Travel limits (mm) after homing, corresponding to endstop positions.
#define X_MIN_POS -140
#define Y_MIN_POS -10
#define Z_MIN_POS 0
#define X_MAX_POS 600
#define Y_MAX_POS 525
#define Z_MAX_POS 1800
I often error on G34 command due to the front of the bed sagging on power down.
#if ENABLED(Z_STEPPER_AUTO_ALIGN)
// Define probe X and Y positions for Z1, Z2 [, Z3 [, Z4]]
// If not defined, probe limits will be used.
// Override with 'M422 S X Y'
#define Z_STEPPER_ALIGN_XY { { 10, 150 }, { 150, 10 }, { 250, 150 } }
/**
* Orientation for the automatically-calculated probe positions.
* Override Z stepper align points with 'M422 S X Y'
*
* 3 Steppers: (0) (1) (2) (3)
* | 3 | 1 | 2 1 | 2 |
* | | 3 | | 3 |
* | 1 2 | 2 | 3 | 1 |
*
#ifndef Z_STEPPER_ALIGN_XY
#define Z_STEPPERS_ORIENTATION 2
#endif
z2 or motor 3 is the front center motor I'd like to probe it 240,20, then z0 @ 500,400, and then Z2 20,400
When I try and Z stepper align Z_STEPPER_ALIGN_XY any bigger than 250 I get compile errors.
Any suggestions on best approach to solve this would be appreciated.
For now I G28, disable the steppers push the front up to top of frame and a G34 works 50% of the time...
[
www.youtube.com]
I don't understand how I can use Override Z stepper align points with 'M422 S X Y' to solve this.
This is my guess below but my guessing has been beating me up all week on this.
M422 S2 X240 Y20
M422 S0 X500 Y400
M422 S1 X20 Y400
I tried
//#define Z_STEPPER_ALIGN_KNOWN_STEPPER_POSITIONS
#if ENABLED(Z_STEPPER_ALIGN_KNOWN_STEPPER_POSITIONS)
// Define Stepper XY positions for Z1, Z2, Z3 corresponding to
// the Z screw positions in the bed carriage.
// Define one position per Z stepper in stepper driver order.
#define Z_STEPPER_ALIGN_STEPPER_XY { {250, 200 }, { 20, 250 }, { 240, 20 } }
But can't define close enough without compile errors.
Edited 3 time(s). Last edit at 03/05/2020 11:25AM by findy.