The extruder offset can be specified in the configuration
file or adjusted on the fly using the "M218 T# X# Y#" command.
The EEPROM support is not yet merged in.
The "T#" command can take option "F#" that specifies the feedrate
at which the printing head should be re-positioned. If not
specified the re-positioning move is not preformed immediately,
but the coordinates are adjusted for the printer to properly
position the head when the next movement happens.
[default off for now]
syntax: M600 X[pos] Y[pos] Z[relative lift] E[initial retract] L[later retract distance for removal]
if enabled, after a M600, the printer will retract by E, lift by Z, move to XY, retract even more filament.
Oh, and it will display "remove filament" and beep like crazy.
You are then supposed to insert a new filament (other color, e.g.) and click the display to continue.
After having the nozzle cleaned manually, aided by the disabled e-steppers.
After clicking, the printer will then go back the whole shebang, and continue printing with a fancy new color.
Add a feature to run the cooling fan at full speed for a small period
(default 100ms) when first starting the fan. Some fans wont reliably
start spinning at low power, and many fans have issue with the PWM at
low power. However, once the fan starts spinning it can reliably be
set to a wide range of PWM values.
Use "whole program" and "link time optimization" features of gcc. The
whole-program optimization enables the compiler to evaluate the entire
firmware for optimization instead of just one code file at a time.
This leads to better overall optimizations.
The "relax" option enables the linker to convert certain "call"
instructions to the smaller "rcall" instruction. This reduces the
size of the resulting binary.