NOTE: this is a relatively large change and may have introduced bugs and/or unintended side-effects. Please report any issues!
Added setting $519 for binding spindle encoder to given spindle in multi spindle configurations.
Added machine readable spindle enumeration report, $SPINDLESH.
Increased default value for setting $398 (number of planner blocs) from 35 to 100 for faster laser engraving.
NOTE: the $398 setting value will not change on an upgrade!
NOTE: STM32F103 builds for the 128K flash variants does not have enough free RAM and will keep 35 as the default value.
Increased allowed number of decimal places from 3 to 5 for $10x stepper step/mm settings. Ref. ioSender issue 346.
Added setting $650 for filing system options. Ref. issue 397.
Currently the following bits are available (depending on the configuration):
0 - Auto mount SD card on startup (1).
1 - Do not add littlefs files when listing the root directory (2).
Added build option for lathe UVW mode.
When enabled UVW words can be used to command relative moves for XYZ without switching to relative mode with G91.
NOTE: This permanently sets lathe mode and disables the $32 mode setting.
There are signature changes to some spindle, ioports enumeration and VFS filing system mount functions.
Added events to allow plugin code to handle tool table data, possibly stored on a SD card.
Now returns no data for alarm and error enums when firmware is compiled for 128K versions of the STM32F1xx MCU.
This frees up some flash space for plugins etc.
New/modified core entry points for soft limit checking.
More delta robot tuning, added setting warning in $DELTA output if some settings are inconsistent such as steps/rad, acceleration etc.
Fix for issue #361, HOME status is not reported or reported late when auto reporting is enabled with setting $481.
Some drivers will now only disable hard limits (if enabled) for axes that are homing, this includes max/min limit switches.
HAL entry points and core handlers/events has been added and some have changed signatures in order to better support kinematics implementations.
More work on delta kinematics: new and changed settings, some improved functionality. Still in progress.
NOTE: Delta and polar kinematics is WIP (work in progress) and incomplete.
Feedback is required as I do not have machines at hand for testing.
Ref. issue #341 and #346.
Added free memory to $I output when available, example: [FREE MEMORY:102K]
Changed reported position for failed probe to target. Parameters #5061 - #5069 returns position in coordinate system used when probing.
Added 5s timeout/abort handling when waiting for index pulses prior to startiong spindle synchronized motion.
Added definitions for M401 (deploy probe) and M402 (stow probe) for plugin use.
Added support for probe protected message and alarm. Requires driver support for interrupt handled probe input.