Improve USB printing by slowing down on certain situations. This prevents the buffer from running empty and removes the need to wait for new serial commands.
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!
As a possible fix for the bug with Cura's end Gcode as described in
issue #7, I changed the leveling state to be disabled after homing since
Cura uses X homing in their end Gcode.
While adding ENDSTOP_NOISE_FILTER, I try to reduce the impact on accuracy as much as possible by reducing the endstop_poll_count to 2.
Possible fix for #8.
Thanks to @notching, @mensikv and @md66pt for the valuable feedback!
Thanks to feedback from @DerDominik I was made aware that Anycubic's default acceleration values in their source code are different from the ones they use in their compiled firmwares. Seems like insufficient torque on the Y-axis caused step loss on TMC2208 for that reason.
Co-Authored-By: DerDominik <derdominik@users.noreply.github.com>
Thanks to some great feedback from @RolandRosenfeld I did some small tweaks:
- Adjusted auto PID tune parameters
- Replaced manufacturer PID values
- Minor changes to the readme
- Raised retraction on G26 Mesh Test
- Merged latest bugfix from derhopp
- Added latest hex files
Co-Authored-By: Roland Rosenfeld <roland@spinnaker.de>
To further optimize print quality even at very high speeds (I aim for roughly 80-100mm/s), I enabled S_CURVE_ACCELERATION and tweaked the jerk and default acceleration values.
Note: This is still in testing. As soon as I finish and it works as I like, I'll push it onto the master branch. If you see this commit on the master branch, it's safe to flash.
Since a custom fan duct caused the heat block on my printer to cool down enough to have a negative impact on PETG printing, I adjusted the auto PID tune aswell as the default PID values.
Also adding a precompiled hex file of all the previous changes.
• Added auto PID tune of heatbed to the special TFT menu
•Enabled automatic saving on both PID tune commands
• Added preheating and mesh leveling commands to the special TFT menu
• Mentioned changes in readme
After getting my extruder to work reliably on a Vref of 1.100V on the TMC2208, I had to adjust my e-steps quite a bit from the original value from Anycubic. Assuming you have a TMC2208 on a similar voltage, this might work well right after flashing, calibrating your e-steps is recommended in any case.
Enable heatbed PID mode and add several tweaks
Enable PIDTEMPBED and add several tweaks
• Enabling heatbed PID tuning
• Tweaking default hotend PID
• Enhancing MMBL grid from 9 points to 25 (3x3 to 5x5 -
fair warning, leveling might take a few minutes now!)
• Increasing buffer and lowering baudrate to ensure smoother prints via USB
• Removing some redundant stuff to save memory
Thanks to @NetrunnerAT for his recommendations!
Co-Authored-By: NetrunnerAT <netrunnerat@users.noreply.github.com>
Enable PIDTEMPBED and add several tweaks
• Enabling heatbed PID tuning
• Tweaking default hotend PID
• Enhancing MMBL grid from 9 points to 25 (3x3 to 5x5 -
fair warning, leveling might take a few minutes now!)
• Increasing buffer and lowering baudrate to ensure smoother prints via USB
• Removing some redundant stuff to save memory
Thanks to @NetrunnerAT for his recommendations!
Co-Authored-By: NetrunnerAT <netrunnerat@users.noreply.github.com>
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.