- Optimize TFT code for state handling (pause, runout, ...)
- Remove multiple state booleans in favour of a single integer
- Remove obsolete filament runout code
- Increase jerk/accel
- Decrease TX buffer size
- Revert minimum segment time to factory default
- M888: Cooldown routine for the Anycubic Ultrabase (EXPERIMENTAL):
This is meant to be placed at the end Gcode of your slicer. It hovers over the print bed and does circular movements while running the fan. Works best with custom fan ducts.
- T<int>: Target bed temperature (min 15°C), 30°C if not specified
- S<int>: Fan speed between 0 and 255, full speed if not specified
Thanks to @kulfuerst for the suggestion!
- Raise nozzle timeout to 10 minutes
- Use continue button as reheat trigger
- Manage nozzle_timed_out variable via display
- Add PausedByNozzleTimeout flag to enter correct routine on display
- Bump version to 1.4.3
- Add startFileprint(); call to M108 display routine to fix progress and ensure "printing done" gets shown
- Add SD printing check in marlin_main.cpp M600 routine to skip TFTstate if not necessary (e.g. USB printing)
- Move routine to the top again to ensure immediate execution
Move the routine to a better position and set the state regardless of SDPRINT status.
This ensures that M600 makes the display show a continue button every time. Before, it was only behaving correctly for the first instance of M600.
Some hosts like Pronterface use continuous M105 commands to poll temperature, this causes a software halt when the heating via M109 or M190 is finished. Flushing the rx buffer fixes this.
As reported in #15, thanks to @rug156 for the feedback!
Using TMC2208 in standalone mode, I've inverted the stepper direction to match Anycubics pin layout. M110 memory watcher was removed due to redundancy and - ironically - to save memory.