github maziggy/bambuddy v0.1.9

10 hours ago

v0.1.9

Bambuddy v0.1.9 Release Notes

Highlights

This is the biggest release yet — Advanced Authentication via Email, full H2C/H2D Pro nozzle rack support, OrcaSlicer local profiles, configurable slicer preference, Italian localization, and 50+ bug fixes spanning every printer model.


New Features

Advanced Authentication via Email (#322)

  • Optional SMTP-based email integration for streamlined user onboarding and self-service password management
  • Admins configure SMTP settings and create users with just a username and email — the system generates a secure random password and emails it directly to the new user
  • One-click admin password resets from User Management
  • Users can reset their own forgotten password from the login screen without contacting an admin
  • Customizable email templates for welcome emails and password resets
  • Username and email login is case-insensitive
  • Can be enabled or disabled independently at any time without affecting existing accounts

Configurable Slicer Preference (#313)

  • New "Preferred Slicer" setting in General settings to choose between Bambu Studio and OrcaSlicer
  • Controls the protocol used by all "Open in Slicer" buttons across Archives, 3D Preview, and context menus
  • OrcaSlicer uses the orcaslicer://open?file= protocol; default remains Bambu Studio

Local Profiles — OrcaSlicer Import (#310)

  • Import slicer presets from OrcaSlicer without Bambu Cloud
  • Supports .orca_filament, .bbscfg, .bbsflmt, .zip, and .json exports
  • Resolves OrcaSlicer inheritance chains by fetching base Bambu profiles from GitHub (cached locally with 7-day TTL)
  • New "Local Profiles" tab on the Profiles page with drag-and-drop import, search, and expandable details
  • Local filament presets appear in AMS slot configuration alongside cloud presets

Hostname Support for Printers (#290)

  • Printers can now be added using hostnames (e.g., printer.local, my-printer.home.lan) in addition to IPv4 addresses

Camera View Controls (#291)

  • Added chamber light toggle and skip objects buttons to embedded camera viewer and standalone camera page

Extended Support Bundle Diagnostics

  • Collects comprehensive diagnostic data: printer connectivity, integration status, network interfaces, Python packages, database health, Docker details, WebSocket connections, and log file info
  • All data properly anonymized — no IPs, names, or serials included

Improved

H2C Nozzle Rack — Full 6-Slot Display (#300)

  • Always shows all 6 rack positions with filled slots and empty placeholders
  • Compact single-row layout with bottom accent bars (green = mounted, gray = docked)
  • Translates raw nozzle type codes to human-readable names (Hardened Steel, Stainless Steel, Tungsten Carbide, High Flow, Standard)
  • Shows loaded filament material and color in hover card
  • Resolves filament names with 4-tier fallback: Cloud → Local Profiles → built-in lookup table (86 known Bambu codes) → raw ID

H2 Series — L/R Nozzle Hover Card (#300)

  • New dual-nozzle hover card shows L and R nozzle details side by side (diameter, type, flow, status, wear, max temp, serial)
  • Active nozzle highlighted in amber; single-nozzle H2D/H2S printers show extended nozzle details on hover

Firmware Version Badge on Printer Card (#311)

  • Green badge with checkmark when up to date, orange with download icon when update available
  • Click opens firmware info modal with release notes; respects firmware:read and firmware:update permissions

Auto-Detect Subnet for Printer Discovery

  • Docker users no longer need to manually enter a subnet — auto-detects available networks with dropdown for multiple subnets

Japanese Locale Complete Overhaul

  • Restructured ja.ts to match EN/DE structure; translated all 2,083 keys for full parity

Italian Localization (#309)


Bug Fixes

  • H2C Firmware Downloads Wrong Firmware (#311) — H2C was mapped to H2D firmware track; added separate h2c API key
  • H2D Pro L/R Nozzle Hover Card Swapped (#300) — Left and right nozzles were swapped in the hover card
  • H2C Printer Card Shows H2D Image (#300) — Added dedicated H2C printer image
  • H2C Nozzle Rack Shows Wrong Slots and Missing Colors (#300) — Fixed mapping by nozzle ID instead of array index; added fallback for H2C MQTT field names
  • Nozzle Rack Hides 0% Wear (#300) — Now correctly shows "Wear: 0%" for new nozzles
  • AMS-HT Mapping Fails for Left Nozzle on H2D Pro (#318) — Fixed global tray ID calculation for AMS-HT units (ams_id >= 128)
  • H2D Pro Prints Fail at ~75% With Extrusion Motor Overload (#245) — Fixed use_ams type from integer to boolean for H2D series
  • Virtual Printer FTP Transfer Fails With Connection Reset (#58) — Fixed async handler completing while data connection was still active
  • Virtual Printer IP Override Ignored in Server Mode (#52) — Network interface override now applies to all modes (TLS
    certificate, SSDP, service restart)
  • Wrong Thumbnail When Reprinting Same Project (#314) — Cover image cache now cleared on every print start
  • Wrong Timelapse Attached to Archive (#315) — Replaced mtime-based selection with snapshot-diff approach for reliable timelapse detection
  • Calibration Prints Archived (#315) — Internal printer gcode files under /usr/ now detected and skipped
  • Sidebar Links Custom Icons Inverted Colors (#308) — Removed CSS invert() filter from user-uploaded icons
  • Spoolman Creates Duplicate Spools on Startup (#295) — Cached spool data prevents redundant API calls; added retry logic
  • Firmware Badge Shown for Models Without API Data (#311) — Badge hidden when API returns no firmware data
  • Support Bundle Shows 0 AMS Units — Now handles both nested dict and flat list formats for AMS data
  • GitHub Backup Description Misleading — Updated to correctly state "complete database"
  • Timezone from .env (#303) — Use TZ from .env instead of hardcoded value
  • FTP TLS 1.3 Compatibility (#305) — Limit FTP server TLS to 1.2 max for broader client compatibility

Testing

  • Mock FTPS Server & FTP Test Suite — 67 automated test cases against a real implicit FTPS mock server covering connection, upload, download, model-specific behavior, and failure injection
  • Nozzle Rack Tests — Backend: 7 tests for MQTT nozzle_info parsing; Frontend: 3 tests for rack card rendering
  • Advanced Auth Integration Tests — 27 integration tests covering SMTP config, advanced auth toggle, email login, forgot password, admin password reset, and user creation

Documentation

  • Advanced Auth via Email — Updated README, website, and wiki with SMTP setup and self-service password guides
  • Supported Printers — All 12 Bambu Lab models now listed uniformly (X1, X1C, X1E, P1P, P1S, P2S, A1, A1 Mini, H2D, H2D Pro, H2C, H2S)
  • CONTRIBUTING.md — Added i18n conventions and authentication/permissions guide
  • Proxy Mode — FTP data channel security warning, passive port documentation, SSDP discovery limitations table

Community Contributors

Thank you to everyone who contributed to this release!

  • @cadtoolbox (Thomas Rambach) — Advanced Authentication via Email (#322)
  • @Keybored02 — Italian localization (#309)
  • @notti (Gernot Vormayr) — FTP TLS 1.2 version limit (#305)
  • @bnap00 (Bharat Parsiya) — Timezone environment variable fix (#303)
  • @bambuman — Spoolman duplicate spool fix (#295) and Home Assistant environment variables
    (#294)

Don't miss a new bambuddy release

NewReleases is sending notifications on new releases.