feat(afc): gate lane eject on mounted tool - #1899
Conversation
Add an optional `mounted` flag to the AFC lane type and drive the lane Eject button's disabled state from it: when the backend reports it, Eject enables only for the lane whose tool is on the carrier. When `mounted` is absent it falls back to the exact previous expression, so behaviour is unchanged for backends that don't report it. This is to allow for better control of multi-tool machines. Signed-off-by: Lucio <unlucio@gmail.com>
|
@unlucio What is lane mounted? To my knowledge this is not a valid lane status that's in the official AFC-Klipper-Add-On repo. |
It is not for AFC; I'm just using the AFC widget as UI, but for multi-tools that are not using AFC but can gain convenience and visual clarity from the same UI scr.2026-07-04.at.03.17.29.mp4 |
|
@pedrolamas, since I need it for a larger thing, may I ask if this tiny thing is interesting for Fluidd or not? |
|
Hi @unlucio, I don’t have a big stake in this change. I try to focus on keeping things fully compatible with mainline Klipper, Kalico, and Moonraker - anything beyond that is usually contributed by others, and I try to make sure those developers continue maintaining their code. That said, any changes to AFC-related code should be reviewed and approved by @jimmyjon711 since he created and maintains it, and so I reserve to him the first vote in regard to this pull request. |
|
@unlucio @pedrolamas I think my first comment in this PR sums what I think about bringing in changes that are not supported in the official AFC-Klipper-Add-On. I do not think its a good idea to add code to the AFC panel for things that are "imitating" AFC just to get the panel to show. This is going to add confusion, be hard to test to verify that when changes are made they don't break this imitating code. Also this PR that reuses the eject button to dock the toolhead just for the U1 printer is just going to add confusion IMO, there is already code in AFC panel to dock/undock toolheads for toolchangers. |
Add an optional
mountedflag to the AFC lane type and drive the lane Eject button's disabled state from it: when the backend reports it, Eject enables only for the lane whose tool is on the carrier. Whenmountedis absent, it falls back to the exact previous expression, so behaviour is unchanged for backends that don't report it.This is to allow for better control of multi-tool machines.