mirror of
https://github.com/maziggy/bambuddy.git
synced 2026-10-07 23:01:06 +02:00
Queue auto-drying: scheduler automatically starts drying on idle printers with scheduled queue prints when AMS humidity exceeds the configured threshold. Uses conservative parameters (lowest temp, longest duration) for mixed filaments. Drying stops when humidity drops below threshold (30-minute minimum prevents oscillation), when scheduled items are removed, or when the feature is disabled. Optional "block queue" mode delays the next print until drying completes. Configurable presets: temperature and duration per filament type, editable in Settings → Print Queue, used by both manual drying popover and queue auto-drying. Separate presets for AMS 2 Pro (n3f) and AMS-HT (n3s) reflecting different heating capabilities. PSU detection: drying button disabled with tooltip when dry_sf_reason indicates insufficient power. Parses drying status bits and dry_sf_reason from AMS info hex string via MQTT. Backend: print_scheduler.py (+316 lines), bambu_mqtt.py, printer_manager, schemas, settings route. Frontend: PrintersPage drying presets prop, SettingsPage drying config UI, i18n (7 locales). Tests: 27 new tests in test_scheduler_auto_drying.py covering conservative params, presets, state sync, stop logic, minimum drying time, and auto-stop regressions.