|
repetier firmware proposal for delta endstop offset calibration May 23, 2013 07:41AM |
Registered: 13 years ago Posts: 72 |
.|
Re: repetier firmware proposal for delta endstop offset calibration May 24, 2013 11:50AM |
Registered: 14 years ago Posts: 2,705 |
|
Re: repetier firmware proposal for delta endstop offset calibration June 12, 2013 05:15PM |
Registered: 13 years ago Posts: 72 |
|
Re: repetier firmware proposal for delta endstop offset calibration July 01, 2013 08:12AM |
Registered: 12 years ago Posts: 24 |
void home_axis(bool xaxis,bool yaxis,bool zaxis) {
long steps;
bool homeallaxis = (xaxis && yaxis && zaxis) || (!xaxis && !yaxis && !zaxis);
if (X_MAX_PIN > -1 && Y_MAX_PIN > -1 && Z_MAX_PIN > -1 && MAX_HARDWARE_ENDSTOP_X & MAX_HARDWARE_ENDSTOP_Y && MAX_HARDWARE_ENDSTOP_Z) {
UI_STATUS_UPD(UI_TEXT_HOME_DELTA);
// Homing Z axis means that you must home X and Y
if (homeallaxis || zaxis) {
delta_move_to_top_endstops(homing_feedrate[0]);
move_steps(0,0,axis_steps_per_unit[0]*-ENDSTOP_Z_BACK_MOVE,0,homing_feedrate[0]/ENDSTOP_X_RETEST_REDUCTION_FACTOR, true, false);
delta_move_to_top_endstops(homing_feedrate[0]/ENDSTOP_X_RETEST_REDUCTION_FACTOR);
printer_state.currentPositionSteps[0] = 0;
printer_state.currentPositionSteps[1] = 0;
printer_state.currentPositionSteps[2] = printer_state.zMaxSteps;
calculate_delta(printer_state.currentPositionSteps, printer_state.currentDeltaPositionSteps);
//update our delta state based on our end-stop soft trimming
printer_state.currentDeltaPositionSteps[0] -= axis_steps_per_unit[0]*printer_state.tower1_trim;
printer_state.currentDeltaPositionSteps[1] -= axis_steps_per_unit[0]*printer_state.tower2_trim;
printer_state.currentDeltaPositionSteps[2] -= axis_steps_per_unit[0]*printer_state.tower3_trim;
//set max delta steps based on the tallest tower incase all 3 towers have trim values applied for some reason
printer_state.maxDeltaPositionSteps = max(printer_state.currentDeltaPositionSteps[0], printer_state.currentDeltaPositionSteps[1]);
printer_state.maxDeltaPositionSteps = max(printer_state.maxDeltaPositionSteps, printer_state.currentDeltaPositionSteps[2]);
//move down in Z equal to the largest trim value, this re-syncs the cartesian and delta states
move_steps(0,0,axis_steps_per_unit[0]*-(max(printer_state.tower1_trim,max(printer_state.tower2_trim,printer_state.tower3_trim))),0,homing_feedrate[0]/ENDSTOP_X_RETEST_REDUCTION_FACTOR, true, false);
} else {
if (xaxis) printer_state.destinationSteps[0] = 0;
if (yaxis) printer_state.destinationSteps[1] = 0;
split_delta_move(true,false,false);
}
printer_state.countZSteps = 0;
UI_CLEAR_STATUS
}
}
|
Re: repetier firmware proposal for delta endstop offset calibration July 01, 2013 10:01AM |
Registered: 14 years ago Posts: 2,705 |
|
Re: repetier firmware proposal for delta endstop offset calibration July 01, 2013 07:09PM |
Registered: 12 years ago Posts: 24 |
|
Re: repetier firmware proposal for delta endstop offset calibration July 04, 2013 02:17AM |
Registered: 12 years ago Posts: 24 |
|
Re: repetier firmware proposal for delta endstop offset calibration July 06, 2013 03:21PM |
Registered: 13 years ago Posts: 6 |
|
Re: repetier firmware proposal for delta endstop offset calibration July 07, 2013 07:24PM |
Registered: 13 years ago Posts: 14 |
|
Re: repetier firmware proposal for delta endstop offset calibration July 08, 2013 02:36AM |
Registered: 14 years ago Posts: 2,705 |
|
Re: repetier firmware proposal for delta endstop offset calibration August 15, 2014 06:14PM |
Registered: 11 years ago Posts: 1 |
Quote
extent
And just for the curious, here is the entirety of my own dirty hack
[github.com]
It's manual deploy/retract, and it spits out estimated correction values to the log similar to PIDautotune rather than just making the fixes itsself. But it's got me to around +- 50 micron and tiding me over until the real release.
.. Thank you very much for sharing your files, you solved my problem!!.. Thank you Thank you Thank you!