Skip to content

Release v1.1.0

Latest

Choose a tag to compare

@jimmyjon711 jimmyjon711 released this 14 Mar 13:50
68cfe77

🚀 Major Updates and Improvements 🚀

🧵 Filament Homing Enhancements

Filament homing is now fully integrated and enabled by default. This prevents over‑retraction events that can pull filament out of BoxTurtles or other unit extruders. Thanks to @weemantella for contributing the majority of the code that made filament homing possible. Homing support is also available for units equipped with home pins or selector mechanisms, including HTLF and ViViD systems.

🔧 New configuration variables added for filament homing

The following new variables and their default values have been added. They can be found in the configuration files section of the documentation for more details.

  • homing_enabled(True), load_then_home(True), home_to_hub(True), home_to_tool(True), load_undershoot(20), homing_delta(300)

⚠️ Action Required

  • Check whether the following variables exist in your AFC_hub configuration and remove them. Default AFC values have been updated for the new homing behavior and the upcoming v1.1 hub/buffer combo: hub_clear_move_dis, move_dis.
  • After updating, recalibrate all lanes and Bowden lengths.
  • If you start seeing Cannot load spools while printer is actively moving or homing when PREP runs at startup in AFC.cfg increase initial_duration for [delayed_gcode welcome] macro from 0.5 to 2

🆕 New unit support

🎨 ViViD

ViViD units are now fully supported, thanks to BTT for providing us units for integration purposes. The installation script has been updated to streamline configuration. Documentation for ViViD‑specific installation steps, macros and configuration variables is available in the unit‑type configuration guide.

⚙️ HTLF

Macros for HTLF unit have been updated and documented here. New variables have been added to control selector homing speed and acceleration using selector_movement_speed and selector_movement_accel.

🛠️ AFC improvements

  • 🔄 During PREP, AFC now correctly recovers and resets internal states if filament is expected to be loaded to the toolhead but the toolhead sensor does not detect filament.
  • 🧪 During PREP, AFC can now check whether filament is loaded to the toolhead when using “ramming” mode. To enable this, set enable_buffer_tool_check: True in your AFC_BoxTurtle/AFC_HTLF/etc. configuration. This is currently intended only for buffers that use springs or rubber bands between PTFE tubes. Do not enable this if your buffer is not set up this way.
  • 🧵 @kismattic added spool‑memory support via the remember_spool variable, useful during testing.
  • 🎨 @robotfishe added a post‑prep macro hook to allow calling his SpoolVision macros for automatic color detection, go check out his project.
  • 🌡️ @bobomb added the ability to ignore Spoolman temperatures and fall back to default temperatures using the ignore_spoolman_material_temps variable.
  • 🔥 @bobomb also added the ability to restore the previous extruder temperature when loading outside of a print using the restore_extruder_temp_on_load_or_unload variable.
  • ♨️ @thunderkeys added the ability to prevent lowering the extruder temperature if it is already sufficiently hot by setting lower_extruder_temp_on_change to False.
  • ✂️ @magnetoxgarage updated the cut macro to work with the Kalico’s bleeding‑edge V2 branch.

🐞 Bug fixes

  • @ejsears fixed an error in the AFC_TEST_LANES macro where Z height would continue moving when using only one lane.
  • @rschaeuble updated espooler assist logic to prevent toolhead stuttering while printing.

Full Change Log

Additions

  • [Enhancement]: Adds ability to check if filament is loaded to toolhead when using buffer as toolhead sensor and sprung buffers by @jimmyjon711 in #668
  • [Enhancement] Adding homing-aware movements when loading/unloading/ejecting filament by @jimmyjon711 in #634
  • [Enhancement]: Add option to remember last spool information by @kismattic in #627
  • Option to disable using spoolman extruder temperature for filament by @bobomb in #630
  • [Enhancement] Add Configurable Post‑Prep Macro Hook for Automatic Actions After Spool Load by @robotfishe in #633
  • Implement restore extruder temperature feature during tool load/unload by @bobomb in #637
  • Integrate ViViD Unit Support and Standardize AFC Movement, Calibration, and Lane Handling by @jimmyjon711 in #640
  • [Refactor] Address install script bugs by @ejsears in #642
  • Add new feature to not lower extruder if it is already at sufficient … by @thunderkeys in #662
  • (Addition) Added new load‑then‑home support, new DIST_HUB speed mode, and lane/unit config propagation by @jimmyjon711 in #663
  • (Addition): Add Lane Recovery and Selector‑Unselect Support Across AFC Lane and Unit Logic by @jimmyjon711 in #664
  • Improved load detection and recovery logic during prep by @jimmyjon711 in #666
  • (Update): Updating ViViD PREP logic by @jimmyjon711 in #667

Bug Fixes

  • Resolve cumulative z height with AFC_TEST_LANES by @ejsears in #620
  • (hotfix): Adding fix for if print time is not passed into do_assist_move by @jimmyjon711 in #650
  • [Fix] Adding homing logic to work with HTLF home pin by @jimmyjon711 in #643
  • (fix): Calibration System Refactor: Unified Lane Calibration, Improved Prompts, and Type‑Safe AFC Structures by @jimmyjon711 in #645
  • fix: spool assist should not call toolhead.get_last_move_time by @rschaeuble in #649
  • (fix): Fix to work with klipper manual_home update in git hash 57c2e0c by @jimmyjon711 in #652
  • (fix): Fixes issue where klipper can crash when trying to load another lane while a lane is already in the progress of loading by @jimmyjon711 in #656
  • (fix) Fixing error where level was removed but calling functions were not updated by @jimmyjon711 in #659
  • Fix install script issues first run by @ejsears in #661
  • (fix): Adding error checking when homing and returning early if error occurred when homing, update to cut/poop/kick macros to help prevent TTCs by @jimmyjon711 in #669

Macro Changes

Misc/Install Script Changes

  • Add integration tests for AFC buffer commands and update configuration by @ejsears in #653
  • [update] Add descriptions to AFC macros for improved clarity by @ejsears in #619
  • [update] Update copyright years in source files and add changelog uti… by @ejsears in #621
  • Add support for Git installation detection and conditional updates by @ejsears in #624
  • Update klipper restart warning message by @ejsears in #635
  • [Add] Implement unit tests for AFC components and configure testing framework by @ejsears in #647
  • Add logging options for klippy tests and update run-tests script by @ejsears in #654
  • Minor install script fixes. by @ejsears in #655

New Contributors

How to Update

DO NOT UPDATE WITH MOONRAKER UPDATE MANAGER WITH THIS RELEASE

Before updating please fully unload your Box Turtle or other unit type

To update ssh into your printer and use the following command in your AFC-Klipper-Add-On folder:

cd ~/AFC-Klipper-Add-On
git pull
./update-afc.sh

Select U to update

Don't forget to restart your printer after updating

Once updated the following should be the AFC version via console printout:

AFC Version in console : v1.1.0-1719-68cfe77

Full Changelog: v1.0.35...v1.1.0