- Send notifications to ExtUI for M0/M1
- wait_for_user can be non-volatile (not changed by interrupt)
C / C++ compilers don't optimize away reads of non-volatile variables when a function call is used between accesses, because *any* variable could be changed by the function call. Since `wait_for_user` can't be changed without a function call, it should be non-volatile so the compiler can optimize away cases where it is read more than once without an intervening function call.
- Ensure `MarlinUI:get_progress` is defined for `ExtUI`.
- Fix for `BACKLASH_SMOOTHING` with small segments.
`BACKLASH_SMOOTHING` with extremely small segments failed to fully correct due to the correction factor being rounded down. Rounding up ensures the entire backlash will converge to zero even for small segments.
- Add pinout for the beta revision `EINSY_RETRO`.
- Update soft endstops with tool offsets (for toolchange et. al. move clamping) (#12568)
- The `sdcard.transfer_port` variable is Marlin's internal serial port index, not the physical serial port number.
- Added packet number to "ok" response so hosts don't need to wait for the ACK.
- Renamed feature to `BINARY_FILE_TRANSFER`, as the speed up is only consequential to the ability to transfer binaries over serial.
Ticket #13228
If `INCH_MODE_SUPPORT` is undefined, G20 is an unknown command as it should be (Marlin is, by default, operating in metric mode). G21, however, is found in many slicers and printer start gcode sections and should be accepted (as a NOOP) to avoid the unknown commands.
- Turn off bed leveling prior to calibrating.
- This prevents lateral probes from having a Z component that
triggers the Z endstop and causes the motion to be aborted.
- Got rid of static const float arrays "dimension" and "true_center"
- Frees up 24 bytes of SRAM
- Changed incorrect use of "bool" for float in backlash macros.
- Replaced arguments with 0.0f and 1.0f for clarity.
- Now only disables soft endstops (since calibration cube is outside of bed)
- Not necessary to disable global endstops
Apply minimum `C` in `M303`. `PID_autotune()` needs to be called with a 'C'ycles-parameter >2 to give meaningful (different from 0) PID-factors. Therefore silently raise C to 3. Fixing one aspect of #13104