v0.2.2b3
**Highlights**
-
Spoolman Linking for Non-Bambu Spools — Third-party spools without RFID tags can now be linked and unlinked to Spoolman.
-
Force Color Match — New queue option that requires strict color matching when assigning "Print to Any" jobs, preventing incorrect filament assignments.
-
Queue All Plates — Multi-plate 3MF files can now be queued in one action, adding every plate as a separate queue entry.
-
Home Assistant Notifications — Select "Home Assistant" as a notification provider to send persistent notifications to your HA dashboard, then forward via automations to mobile, WhatsApp, or any service.
New Features
-
Home Assistant Notification Provider (#656) — Added Home Assistant as a notification provider. When HA is configured in Settings → Network → Home Assistant, selecting "Home Assistant" sends persistent notifications to the HA dashboard. From there, HA automations can forward to mobile apps, WhatsApp, or any other service.
-
Force Color Match (#625) — Added a "Force Color Match" option for "Print to Any" queue scheduling. When enabled, the scheduler requires a strict color match when assigning prints to printers, preventing incorrect filament assignments when multiple candidates are close in color. Prints wait in the queue until a printer with the exact matching filament is available.
-
Queue All Plates (#530) — Multi-plate 3MF files can now be queued in one action. A "Queue All N Plates" toggle adds every plate as a separate queue entry (one per plate × per selected printer), each individually editable from the queue page.
-
Virtual Printer Queue Auto-Dispatch Toggle (#587) — Added an "Auto-dispatch" toggle to virtual printers in Queue mode. When disabled, prints are added to the queue but wait for manual dispatch instead of starting automatically.
-
ETA Variable in Notifications (#638) — Added {eta} template variable to print start, print progress, and queue job started notifications. Shows the estimated wall-clock completion time (e.g. "15:53" or "3:53 PM") based on the user's configured time format.
-
Bulk Delete Spool and Color Catalog Entries (#646) — Added checkbox selection and bulk delete to both the Spool Catalog and Color Catalog in Settings > Filament.
-
New Currencies (#634) — Added Malaysian Ringgit (RM) and Israeli New Shekel (₪).
Changes
-
License changed from MIT to AGPL-3.0 — To prevent unauthorized redistribution of Bambuddy as a closed-source product. All existing contributions were made under MIT, which is forward-compatible with AGPL-3.0. Community contributions and usage are unaffected.
Improved
-
Prometheus Build Info Metric (#633) — Added a bambuddy_build_info gauge metric to the Prometheus metrics endpoint, exposing version, Python version, platform, and architecture.
-
Shorter Inventory Location Labels — Compact labels like "H2D-1 B3" instead of "H2D-1 AMS-B Slot 3". External spool holders show "Ext" instead of "External".
-
Higher FTP Timeout Options (#660) — Added 180s and 300s FTP timeout options for large 3MF files (e.g. 28 MB Hueforge models).
-
Separate Permission for AMS Spool Assignments (#635) — New inventory:view_assignments permission lets users see AMS spool assignments on printer cards without full Inventory page access. All default groups include the new permission automatically.
Bug Fixes
-
SD Card Error After FTP Upload (#645) — Fixed 0500-C010 "MicroSD Card read/write exception" caused by sending the print command before the FTP server acknowledged the upload. Now waits for the 226 confirmation (with 60s timeout for slower models). - Bed Cooled Notification Never Fires (#497) — The bed cooldown monitor timed out without sending a notification because partial MQTT updates didn't include bed_temper. Now sends periodic pushall commands to get fresh temperature data.
-
Notification Provider Missing Event Toggles on Create (#497) — The on_bed_cooled and 7 queue event toggles were silently discarded when creating a new provider.
-
H2D AMS Units Shown on Wrong Nozzle (#659) — Fixed hex parsing of the AMS info field and 4-bit extruder ID extraction on dual-nozzle printers.
-
GitHub Backup Required Cloud Login (#655) — GitHub backup can now be configured without Bambu Cloud authentication. - GitHub Backup Log Timestamps Off by 1 Hour — Fixed UTC-to-local timezone conversion in backup history.
-
P2S Shows Carbon Rod Maintenance Tasks (#640) — P2S now correctly shows steel rod maintenance tasks instead of carbon rod tasks.
-
Non-Bambu Lab Spools Can't Link/Unlink to Spoolman (#653) — The "Link to Spoolman" button was not shown for spools without RFID tags. Now generates a fallback tag from
printer/AMS/tray IDs. Also added an "Unlink from Spoolman" button. -
Spoolman Location Not Updated on Link/Unlink (#669) — Linking now sets the Spoolman location (e.g. "P2S-1 - AMS-A 3"); unlinking clears it.
-
Archive Card Buttons Overlapping at Narrow Widths (#641) — Buttons now clip cleanly with ellipsis instead of overlapping.
-
Ethernet Badge Always Shown on Printer Cards — Removed faulty ethernet detection; WiFi signal badge now displays correctly.
-
Dispatch Toast Stuck After Second Print — Progress toast no longer gets stuck after repeated print dispatches.
-
Clear Plate Prompt Shown for Staged Queue Items — Prompt now only appears when there are auto-dispatchable items.
-
Debug Logging Endpoint 500 Error — Fixed timezone-aware timestamp causing TypeError in duration calculation.
-
Debug Logging Banner Timer Shows Negative Time — Fixed UTC offset causing negative countdown display.
Community Contributors
Thank you to everyone who contributed to this release:
-
@cadtoolbox — Force Color Match feature (#625), bug report: H2D AMS nozzle (#659)
-
@shrunbr — Spoolman linking for non-Bambu spools (#653), Spoolman location updates (#669)
-
@TravisWilder — Feature request: Home Assistant notifications (#656), bug report: GitHub backup (#655)
-
@SebSeifert — Feature requests: ETA variable (#638), bulk delete (#646)
-
@Dendrowen — Feature request: Queue all plates (#530)
-
@Percy2Live — Feature request: Auto-dispatch toggle (#587)
-
@lanfi89, @Bademeister89 — Bug report: SD card error (#645)
-
@Minebuddy — Bug report: AMS permission (#635)
-
@dsmitty166 — Bug report: Archive card overlap (#641)