I’d like to request some quick feedback on an improvement to the TUNING_TOWER command I’d like to implement.
Many (including myself) get confused with the current syntax, which works well for towers where the parameter changes smoothly, but requires extra calculations, or even a spreadsheet, when using the BAND option. Specifically I’d like easier syntax for printing towers like this one: Smart compact temperature calibration tower by gaaZolee - Thingiverse.
Here’s the current documentation:
TUNING_TOWER COMMAND=<command> PARAMETER=<name> START=<value> FACTOR=<value> [BAND=<value>]: A tool for tuning a parameter on each Z height during a print. The tool will run the given COMMAND with the given PARAMETER assigned to the value using the formula value = start + factor * z_height. If BAND is provided then the adjustment will only be made every BAND millimeters of z height - in that case the formula used is value = start + factor * ((floor(z_height / band) + .5) * band).
I’d like to be able to specify “start at 225C, skip 2mm, then decrease by 5C every 5mm”. I don’t want to have to calculate the factor, or adjust for the .5 in the formula.
I propose adding two arguments:
- STEP=<value>. This can be used instead of FACTOR. If specified, the formula used is value = start + step * floor(z_height / band). It would be an error to specify both FACTOR and STEP.
- SKIP=<value_mm>. Skips this many millimeters of Z height before starting the tower. Useful for e.g. the base or stand of a tower.
The following simple command can then be used for the above tower. Note the values for the parameters are immediately known to the user, and no calculations are needed:
TUNING_TOWER COMMAND=“SET_HEATER_TEMPERATURE HEATER=extruder” PARAMETER=TARGET START=225 SKIP=2 BAND=5 STEP=5
This change would be 100% backwards compatible.