mirror of
https://github.com/Klipper4FlashForge/firmware.git
synced 2026-10-21 21:02:16 -05:00
AFC-Klipper-Add-On (new anvil-afc package, pinned commit) runs on top of ff_toolchange as one Toolchanger unit with a standalone lane per head. It owns T0..T3 and M104/M109 T<n> through its lane map (SET_MAP), infinite spool (SET_RUNOUT) on the fd_ex presence switches, and a Spoolman spool per head. ff_toolchange keeps docking, offsets, calibration and SELECT_TOOL. - klipper: overlay filament_switch/motion_sensor.py so note_filament_present keeps upstream's two-argument shape, which AFC's sensor wrapper needs. - ff_toolchange: park_detector T<n> views so AFC knows which head is on the carriage; drop T<n>, TOOLCHANGE, RESTORE_AXIS and the unused klipper-toolchanger compatibility commands; arm only the clog sensors. - macros: address physical heaters by name; START_PRINT gates and cleans the heads AFC's map picks; filament temperatures come from AFC's lane record instead of a fixed tool_material list; AFC heats from the same material table. - link-prog seeds AFC/AFC.var.unit; HelixScreen entry marked AFC. - tests: sensor handoff on the printer interpreter, AFC state seeding, START_PRINT mapping, lane contract, material tables and temperatures. - docs: owner page "Filament and spools", hardware checklist, changelog. Not yet run on a printer. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>