
Delta printer leastsquares calibration calculator
Instructions
This calculator implements the leastsquares delta calibration algorithm that RepRapFirmware has builtin.
I have provided it as a service for those not running RepRapFirmware.
You can choose to calibrate the following parameters:
 3 factors (endstop corrections only)
 4 factors (endstop corrections and delta radius)
 6 factors (endstop corrections, delta radius, and two tower angular position corrections)
 7 factors (endstop corrections, delta radius, two tower angular position corrections, and diagonal rod length)
It deliberately doesn't adjust any other tower position coordinates, because doing so isn't helpful.
Any adjustment to the 6 possible tower position coordinates is equivalent to adjusting the delta radius and two tower angular positions,
plus a translation of the bed origin and a rotation of the bed.
You don't want to rotate the bed  that will just move the height errors to points you haven't probed.
You don't want to translate the bed either  as well as moving height errors to points you haven't probed,
it will reduce your print area because the bed origin will no longer be equidistant from the towers.
I recommend using 6 factors. Unless you measure nozzle heights a very long way out opposite each of the towers,
there is insufficient information to determins diagonal rod length accurately.
To use the calculator:
 If you have any tower radius corrections configured in your firmware, remove them.
 Enter your current diagonal rod length, delta radius, homed height, endstop corrections, and tower position corrections.
The tower position corrections are in degrees anticlockwise viewed looking down on the printer.
All other values are in mm, except that if the firmware type is set to Repetier then the initial endstop corrections are in steps.
 Choose how many factors to calibrate (see below).
 Choose some points covering all arease of the bed at which to measure the nozzle height error.
The calculator will suggest some if you enter your printable radius, select 4, 7 or 10 points, and press the Suggest probe points button. Alternatively, choose your own.
The XY coordinates of each point must be the coordinates of the nozzle, not the coordinates of the Z probe if you are using one.
 Measure the nozzle height errors at those probe points, then enter the values in this calculator along with your machine parameters.
Enter positive height errors where the nozzle is too high, and negative height errors where it is too low.
 Press the Calculate. Check that the calculator reports success.
 Copy the output parameters to your machine. You can use the generated M665 and M666 commands to do some or all of this for you, depending on your firmware.
 Repeat the whole process once more. Two iterations should be sufficient unless your calibration was a long way off initially.
If you find the above is rather laborious, why not upgrade your electronics to
Duet WiFi, which has the calibration calculator built in to the firmware
so that you can autocalibrate in just 30 seconds?
You can send feedback to me using the Contact form.
Calculator © 2015 Escher Technologies Ltd.
Update history
20160101 
Corrected sign of nozzle height errors
Added MarlinRC option
Invert endstop corrections where necessary
Corrected homed carriage height calculation
Generate suggested points for 4point probing
Generate M665 D E H Z parameters when Smoothieware is selected

20160117 
Corrected sign of endstop corrections when Repetier is selected
Normalise endstop corrections to be all positive when Repetier is selected
Trap errors if probe points are unreachable or not distinct

20160131 
Added R parameter to generated M666 command when Marlin RC firmware is selected
Added "Copy to initial parameters" button

20160330 
Added D parameter to generated M666 command when Marlin RC firmware is selected
Corrected call to function SwapRows from GaussJordan



