Page 1 of 1
Calibration process: what happens when you calibrate multiple times?
Posted: Mon Dec 19, 2016 9:06 am
by PhantamaroK
I have seen some guides that recommend running calibration (G29) 3-5 times. What happens when you run calibration a second time? Does it completely replace the previous values? Does it do some sort of weighted adjustment, dialing in?
What if you do the delta calibration from geneb's Octoprint plugin? Does that affect future calibrations?
I only ask because calibration
works pretty well right after I install the Rambo firmware, and then slowly starts to act erratic (e.g. if I change filament or run calibration again). In particular, nozzle height is spot on at the beginning, then all over the place, and I find myself doing trial-and-error adjustments with the slicer.
Finally, what are good best practices for calibrating? This is what I do:
- After loading filament, extrude until some comes out.
- Lower the temp to 90 so that the extrudite breaks off cleanly.
- Wipe the bed and clean the nozzle with a wire brush and/or leather glove.
- Make sure nozzle and bed are close to room temperature.
- Run G29.
- Run G30. (I'm not actually sure what this does.)
- Run the 7-factor calibration from the Octoprint plugin.
Re: Calibration process: what happens when you calibrate multiple times?
Posted: Mon Dec 19, 2016 10:17 am
by mhackney
Changing filament is not going to affect calibration. If it does, you have something else going on that you need to resolve.
As far as running dc42's autocalibration that is the heart of Gene's plugin, running it multiple times can converge on a better result - depending on how far off "actual" was from "calibrated" initially. The first time you calibrate a new delta, you use measured values or factory provided values for the various parameters. These could be reasonably far off. David's calibration is a least squares fit so the closer the parameters are to actual, the better the fit will be. That's why running several times can converge on the best LSQ fit. However, once you have reached that point, you really only need to run autocalibration once since you are already very close to ideal.
NEVER EVER do Z height (nozzle = 0) adjustments in your slicer!!! This is a recipe for all sorts of issues. Instead, learn how to set (or auto set) the Z height properly on the machine where it is "real". 3D printing is not friendly to "trial and error" approaches. You might get by with it for a while but at some point it will come back to bite you and you will not have the understanding or tools to correct it.
Why would you ever use a wire brush on your bed? Even glass can get severely scratched with brass wire.
Here you go:
1) load filament (hot)
2) preheat bed and clean it
2) retract 2 mm to clear nozzle
3) turn off bed and hot end (I do this in my probing script but you should do it manually)
4) clean nozzle tip with leather or clean rag as I describe in my blog
5) run auto calibration as per Gene's instructions - run G29 first to "prime the pump" then run the auto calibration plugin. This process is unique to the Rostock Max/HE280 firmware and the auto calibration OctoPrint plugin.
Note: you can auto calibrate either hot or cold "depending" - SeeMeCNC recommends running cold to ensure you have the heaters turned off. In practice it is best to run calibration at working temperatures because these systems do expand/contract at elevated temperatures - especially the bed. I prefer to run calibration at temp but I turn off the heaters right before calibration. The slight temp decrease that occurs during the 30 seconds it takes to probe is negligible. I also recommend "standardizing" on the new firmware and OctoPrint plugin - it will do the best autocalibration of the available options (if you have the RaspberryPi/OctoPrint).
6) re-enable hot bed and nozzle heaters
7) print
G29 is the gcode command to run auto calibration
G30 is the gcode command that actually conducts the probe. You can run G30 S2 to probe and set Z height (Z = 0) (instead of guessing in your slicer)
The SeeMeCNC Repetier firmware branch and Gene's auto calibration OctoPrint plugin are a little unique since they must work together to auto calibrate. For more sophisticated controllers like Duet, the auto calibration (and actually the exact same algorithm as run in the plugin) is implemented in the firmware (dc42) so it is very convenient to just issue a G29 command anywhere you want to auto calibrate - I do it right in my slicer's gcode header so I auto calibrate before every print on my critical parts. You can't do this with the RAMBo/Repetier - OctoPrint plugin implementation but you CAN run auto calibration manually and then run G30 S2 to set Z=0 when you need it.
Re: Calibration process: what happens when you calibrate multiple times?
Posted: Tue Dec 20, 2016 11:36 am
by ComJak
How do you get the autocalibration plugin if you don't use Octoprint?
Re: Calibration process: what happens when you calibrate multiple times?
Posted: Tue Dec 20, 2016 12:28 pm
by mhackney
You don't but you can run the same auto calibration manually using the web delta calibration wizard. It just won't automatically probe and add the points and then update the firmware. But the results should be identical.
https://www.seemecnc.com/pages/delta-calibration-wizard
If you want to run this best of class auto calibration manually then you either need to:
1) get a raspberry pi and install OctoPrint
2) upgrade to a Duet 0.6, 0.8.5 or Duet WiFi
There is a port to Smoothie as well but I have not tried that and it is not in the main branch.
Re: Calibration process: what happens when you calibrate multiple times?
Posted: Wed Dec 21, 2016 7:53 am
by PhantamaroK
mhackney, thank you very very much for your detailed answer. It helped my results. Am I to understand, then, that it is futile to run G29 more than once?
mhackney wrote:Why would you ever use a wire brush on your bed? Even glass can get severely scratched with brass wire.
What I meant to say was, "Wipe the bed
with alcohol and a microfiber cloth, then clean the nozzle with a wire brush and/or leather glove."
Re: Calibration process: what happens when you calibrate multiple times?
Posted: Wed Dec 21, 2016 8:10 am
by Jimustanguitar
Is there a difference between running a G29 and selecting "full calibration" from the LCD menu? John Oly mentioned that the calibration in the menu writes a 'fresh' GCode calibration script to the SD card, so it made me wonder if it scrubbed the existing values as well...
Re: Calibration process: what happens when you calibrate multiple times?
Posted: Wed Dec 21, 2016 10:09 am
by mhackney
@PhantamaroK - It is good to run G29 several times until results converge. Once converged, recalibrating is not necessary - except height does need the occasional tweaking.
But for critical prints like my open mesh parts (see avatar) I just G29 at the start of every print and be done with it! However, now with grid compensation, I no longer do that. I calibrate once, probe grid once and then set Z height before every print and I'm getting excellent results.
I wouldn't even use a wire brush on a nozzle - leather is perfect.