fix(drying): P1 AMS drying is screen-only — stop offering it (#2533)

The reporter found what his P1S was doing, and it is in Bambu's P1 manual:
"P1S connected AMS drying functions may only be controlled from the P1S screen."
The firmware acks ams_filament_drying with result: success and then discards it,
which is why three commands on an idle printer left the AMS 2 Pro at dry_status 0.
No command can start a cycle on a P1, on any firmware, so don't offer one.

supports_drying() now excludes the P1 series outright, replacing the 01.08+ gate
carried since #292 — that version is when P1 firmware gained AMS 2 Pro support,
not remote drying, and it was never checked against a live P1. Both drying routes
refuse with a specific 400 instead of publishing a message the printer will drop;
queue and ambient auto-drying skip P1s via the same helper.

A new drying_screen_only flag keeps the control on the card, disabled, saying why
— a P1 owner needs to learn where to dry, not watch the button disappear. A cycle
started at the printer still shows with its countdown; only Stop goes away, since
a P1 ignores stop exactly as it ignores start.

Also corrects the wiki firmware matrix, which listed P1P/P1S as supported and
(separately) P2S/H2S/H2C as unsupported. 8 tests.
This commit is contained in:
maziggy
2026-07-11 09:33:52 +02:00
parent ce31de65c2
commit ca3f6e5ee0
22 changed files with 268 additions and 49 deletions
+2
View File
@@ -526,6 +526,8 @@ export interface PrinterStatus {
awaiting_plate_clear: boolean;
// AMS drying support
supports_drying: boolean;
// The AMS can dry, but only from the printer's own screen (P1 series, #2533).
drying_screen_only?: boolean;
// Active chamber heater (responds to M141). True only for H2C/H2D/H2DPro/H2S/X2D.
supports_chamber_heater?: boolean;
}