|
@@ -0,0 +1,318 @@
|
|
|
|
|
+# Bambuddy v0.1.6 - Final Release
|
|
|
|
|
+
|
|
|
|
|
+**Release Date:** January 31, 2026
|
|
|
|
|
+
|
|
|
|
|
+After 11 beta releases and extensive community testing, we're excited to announce **Bambuddy 0.1.6-final** - our biggest release yet! This release brings optional authentication, build plate detection, external camera support, model-based queue scheduling, and much more.
|
|
|
|
|
+
|
|
|
|
|
+---
|
|
|
|
|
+
|
|
|
|
|
+## Highlights
|
|
|
|
|
+
|
|
|
|
|
+### Optional Authentication & User Management
|
|
|
|
|
+Secure your Bambuddy instance for the first time:
|
|
|
|
|
+- Enable/disable authentication via Settings
|
|
|
|
|
+- **Role-based access**: Admin (full access) and User (prints only) roles
|
|
|
|
|
+- **Group-based permissions**: 50+ granular permissions with custom groups
|
|
|
|
|
+- JWT-based authentication with user management UI
|
|
|
|
|
+- Users can change their own password from the sidebar
|
|
|
|
|
+
|
|
|
|
|
+### Build Plate Empty Detection
|
|
|
|
|
+Never start a print with objects on the bed again:
|
|
|
|
|
+- Per-printer toggle for plate detection
|
|
|
|
|
+- Multi-reference calibration (up to 5 plate types)
|
|
|
|
|
+- Automatic print pause when objects detected
|
|
|
|
|
+- Push notifications and WebSocket alerts
|
|
|
|
|
+- ROI calibration for precise detection area
|
|
|
|
|
+
|
|
|
|
|
+### External & USB Camera Support
|
|
|
|
|
+Use any camera with your printers:
|
|
|
|
|
+- **External cameras**: MJPEG, RTSP, HTTP snapshot support
|
|
|
|
|
+- **USB cameras**: V4L2 webcam support on Linux
|
|
|
|
|
+- Layer-based timelapse with external cameras
|
|
|
|
|
+- Finish photo capture from external sources
|
|
|
|
|
+
|
|
|
|
|
+### Model-Based Queue Assignment
|
|
|
|
|
+Perfect for print farms:
|
|
|
|
|
+- Queue items to "Any X1C", "Any P1S", etc.
|
|
|
|
|
+- Auto-assigns to available printer when ready
|
|
|
|
|
+- Automatic filament validation and AMS mapping
|
|
|
|
|
+- Matches required filaments to loaded spools
|
|
|
|
|
+
|
|
|
|
|
+### GitHub Profile Backup
|
|
|
|
|
+Automated backup of your settings to GitHub:
|
|
|
|
|
+- Schedule hourly, daily, or weekly backups
|
|
|
|
|
+- Backs up K-profiles, cloud profiles, and app settings
|
|
|
|
|
+- Skip unchanged commits (only commit when data changes)
|
|
|
|
|
+- Backup history log with commit links
|
|
|
|
|
+
|
|
|
|
|
+### Prometheus Metrics
|
|
|
|
|
+Export printer telemetry for external monitoring:
|
|
|
|
|
+- Endpoint: `GET /api/v1/metrics`
|
|
|
|
|
+- Printer temps, fans, WiFi, print progress
|
|
|
|
|
+- Ready for Grafana dashboards
|
|
|
|
|
+- Optional bearer token authentication
|
|
|
|
|
+
|
|
|
|
|
+---
|
|
|
|
|
+
|
|
|
|
|
+## New Features
|
|
|
|
|
+
|
|
|
|
|
+### Authentication & Security
|
|
|
|
|
+- **Optional Authentication** - Secure your Bambuddy instance with JWT-based user authentication
|
|
|
|
|
+- **Group-Based Permissions** - 50+ granular permissions with custom groups (Administrators, Operators, Viewers)
|
|
|
|
|
+- **Change Password** - Users can update their own password from sidebar
|
|
|
|
|
+- **API Keys** - API key authentication with granular permissions
|
|
|
|
|
+
|
|
|
|
|
+### Virtual Printer
|
|
|
|
|
+- **Virtual Printer** - Emulates a Bambu Lab printer on your network for Bambu Studio/Orca Slicer
|
|
|
|
|
+- **Virtual Printer Queue Mode** - Auto-archive and queue prints from slicer
|
|
|
|
|
+- **Virtual Printer Model Selection** - Choose which printer model to emulate
|
|
|
|
|
+- **TLS 1.3 Encryption** - Secure MQTT + FTPS with auto-generated certificates
|
|
|
|
|
+
|
|
|
|
|
+### Print Queue & Scheduling
|
|
|
|
|
+- **Model-Based Queue Assignment** - Queue to "Any X1C", "Any P1S" with auto filament matching
|
|
|
|
|
+- **Multi-Printer Selection** - Send prints to multiple printers at once
|
|
|
|
|
+- **Per-Printer AMS Mapping** - Configure filament mapping individually per printer
|
|
|
|
|
+- **Queue Bulk Edit** - Select and edit multiple queue items at once
|
|
|
|
|
+- **Queue Only Mode** - Stage prints without auto-start, release when ready
|
|
|
|
|
+- **Unassigned Queue Items** - Queue items without assigned printer
|
|
|
|
|
+- **Add to Queue from File Manager** - Queue sliced files directly from library
|
|
|
|
|
+- **Print Queue Plate Selection** - Full print configuration in queue modal
|
|
|
|
|
+- **Deferred Archive Creation** - Archives created when prints start, not when queued
|
|
|
|
|
+
|
|
|
|
|
+### Smart Plugs & Automation
|
|
|
|
|
+- **MQTT Smart Plug Support** - Monitor energy from Zigbee2MQTT, Shelly, Tasmota
|
|
|
|
|
+- **Home Assistant Integration** - Control any HA switch/light as a smart plug
|
|
|
|
|
+- **HA Energy Sensors** - Use separate sensor entities for power monitoring
|
|
|
|
|
+- **Tasmota Discovery** - Auto-discover Tasmota devices on network
|
|
|
|
|
+- **Switchbar Widget** - Quick power toggle in sidebar
|
|
|
|
|
+- **Tasmota Admin Link** - Quick access to plug web interface
|
|
|
|
|
+
|
|
|
|
|
+### Camera & Streaming
|
|
|
|
|
+- **External Camera Support** - MJPEG, RTSP, HTTP snapshot cameras
|
|
|
|
|
+- **USB Camera Support** - V4L2 webcam support on Linux
|
|
|
|
|
+- **Build Plate Empty Detection** - AI-powered detection with multi-reference calibration
|
|
|
|
|
+- **OBS Streaming Overlay** - Embeddable page at `/overlay/:printerId`
|
|
|
|
|
+- **Camera Zoom & Fullscreen** - 100%-400% zoom with pan support
|
|
|
|
|
+- **Multiple Embedded Viewers** - Open multiple camera streams simultaneously
|
|
|
|
|
+- **Camera View Mode** - Choose between new window or embedded overlay
|
|
|
|
|
+- **Layer-Based Timelapse** - External camera timelapse on layer change
|
|
|
|
|
+- **Finish Photo in Notifications** - `{finish_photo_url}` template variable
|
|
|
|
|
+
|
|
|
|
|
+### File Manager
|
|
|
|
|
+- **STL Thumbnail Generation** - Auto-generate 3D previews for STL files
|
|
|
|
|
+- **ZIP File Support** - Upload and extract ZIP files directly
|
|
|
|
|
+- **Create Folder from ZIP** - Auto-create folder named after ZIP file
|
|
|
|
|
+- **File Manager Sorting** - Sort by name, size, or date
|
|
|
|
|
+- **File Manager Rename** - Rename files and folders directly
|
|
|
|
|
+- **File Manager Print Button** - Print directly from selection toolbar
|
|
|
|
|
+- **Resizable Sidebar** - Drag to adjust width (200-500px)
|
|
|
|
|
+- **Text Wrap Toggle** - Wrap long folder names instead of truncating
|
|
|
|
|
+- **Mobile Accessibility** - Touch-friendly with always-visible menus
|
|
|
|
|
+
|
|
|
|
|
+### Archives & Projects
|
|
|
|
|
+- **Multi-Plate Selection** - Select which plate to print from multi-plate 3MF
|
|
|
|
|
+- **Archive Plate Browsing** - Navigate plate thumbnails in archive cards
|
|
|
|
|
+- **External Links** - Link archives to Printables, Thingiverse, etc.
|
|
|
|
|
+- **Fusion 360 Attachments** - Attach F3D design files to archives
|
|
|
|
|
+- **Project Import/Export** - Export/import projects as ZIP with all files
|
|
|
|
|
+- **BOM Item Editing** - Edit Bill of Materials items after creation
|
|
|
|
|
+- **Bulk Project Assignment** - Assign multiple archives to project at once
|
|
|
|
|
+- **Project Parts Tracking** - Track parts separately from plates
|
|
|
|
|
+- **Tag Management** - Create, edit, and apply tags to archives
|
|
|
|
|
+- **Archive Comparison** - Compare 2-5 archives side-by-side
|
|
|
|
|
+- **AMS Filament Preview** - Preview filament colors in archive cards
|
|
|
|
|
+
|
|
|
|
|
+### Printer Controls
|
|
|
|
|
+- **Printer Controls** - Stop and Pause/Resume buttons with confirmation
|
|
|
|
|
+- **Skip Objects** - Skip individual objects without canceling print
|
|
|
|
|
+- **Chamber Light Control** - Light toggle button on printer cards
|
|
|
|
|
+- **Resizable Printer Cards** - Four sizes (S/M/L/XL)
|
|
|
|
|
+- **H2D Pro Support** - Full support for H2D Pro printer model
|
|
|
|
|
+
|
|
|
|
|
+### AMS & Filament
|
|
|
|
|
+- **AMS Color Mapping** - Manual slot selection with auto-matching
|
|
|
|
|
+- **Expandable Color Picker** - 32 colors in configurable palette
|
|
|
|
|
+- **AMS Slot RFID Re-read** - Re-read filament info via hover menu
|
|
|
|
|
+- **Print Options in Modals** - Bed leveling, flow cal, vibration cal, timelapse toggles
|
|
|
|
|
+
|
|
|
|
|
+### Backup & Monitoring
|
|
|
|
|
+- **GitHub Profile Backup** - Scheduled backup to GitHub repository
|
|
|
|
|
+- **Prometheus Metrics** - Export telemetry for Grafana
|
|
|
|
|
+- **MQTT Publishing** - Publish events to external MQTT brokers
|
|
|
|
|
+- **Application Log Viewer** - Real-time log viewing with filters
|
|
|
|
|
+- **Support Bundle** - Debug logging with ZIP generation
|
|
|
|
|
+- **Comprehensive Backup/Restore** - All settings, users, groups included
|
|
|
|
|
+
|
|
|
|
|
+### Notifications
|
|
|
|
|
+- **HMS Error Notifications** - 853 error codes translated to human-readable messages
|
|
|
|
|
+- **Plate Not Empty Notification** - Dedicated category for plate detection
|
|
|
|
|
+- **Daily Digest** - Consolidated daily notification summary
|
|
|
|
|
+- **Notification Templates** - Customizable message templates
|
|
|
|
|
+- **Slack/Mattermost Format** - Proper payload format support
|
|
|
|
|
+
|
|
|
|
|
+### Statistics & Dashboard
|
|
|
|
|
+- **Failure Analysis Widget** - Failure rate with correlations and trends
|
|
|
|
|
+- **Statistics Improvements** - Size-aware responsive widgets
|
|
|
|
|
+- **Recalculate Costs** - Button to recalculate all archive costs
|
|
|
|
|
+- **Time Format Setting** - Configurable date/time format
|
|
|
|
|
+- **Print Quantity Tracking** - Track items per print for progress
|
|
|
|
|
+
|
|
|
|
|
+### Other Improvements
|
|
|
|
|
+- **Firmware Update Helper** - Check versions against Bambu Lab servers
|
|
|
|
|
+- **Disable Firmware Checks** - Toggle to prevent update checks
|
|
|
|
|
+- **Printer Discovery** - Docker subnet scanning, model mapping
|
|
|
|
|
+- **FTP Reliability** - Configurable retry with SSL fixes
|
|
|
|
|
+- **Pre-built Docker Images** - Pull from GitHub Container Registry
|
|
|
|
|
+- **One-Shot Install Scripts** - Simple `curl | bash` installation
|
|
|
|
|
+- **Mobile PWA** - Full mobile support with touch gestures
|
|
|
|
|
+- **Timelapse Editor** - Trim, speed adjustment, music overlay
|
|
|
|
|
+- **Sidebar Badge Indicators** - Queue and upload counts
|
|
|
|
|
+
|
|
|
|
|
+---
|
|
|
|
|
+
|
|
|
|
|
+## Bug Fixes
|
|
|
|
|
+
|
|
|
|
|
+### Print Queue & Scheduling
|
|
|
|
|
+- **Home Assistant Auto-On for Queued Prints** - Fixed smart plug not turning on for queue-started prints (Issue #200)
|
|
|
|
|
+- **AMS Mapping for Model-Based Queue** - Fixed "Any [Model]" queue jobs failing at filament loading (Issue #192)
|
|
|
|
|
+- **Queue prints on A1** - Fixed "MicroSD Card read/write exception error" when starting prints from queue
|
|
|
|
|
+- **Multi-Plate Queue Thumbnails** - Queue now shows correct plate thumbnail (Issue #166)
|
|
|
|
|
+- **Queue items with library files** - Fixed 500 errors when listing/updating queue items from File Manager
|
|
|
|
|
+
|
|
|
|
|
+### Printer Status & Display
|
|
|
|
|
+- **A1/A1 Mini Status Display** - Fixed incorrect "Printing" status when idle (Issue #168)
|
|
|
|
|
+- **Chamber temp on A1/P1S** - Fixed regression where chamber temperature appeared on printers without sensors
|
|
|
|
|
+- **Active AMS slot display** - Fixed for H2D printers with multiple AMS units
|
|
|
|
|
+- **Printer hour counter** - Fixed not incrementing during prints and inconsistency between views
|
|
|
|
|
+
|
|
|
|
|
+### AMS & Filament
|
|
|
|
|
+- **Empty AMS Slot Recognition** - Fixed removed spools still appearing in Bambuddy (Issue #147)
|
|
|
|
|
+- **Spoolman Sync for Transparent Spools** - Fixed sync failures for natural/transparent filaments (Issue #190)
|
|
|
|
|
+- **Spoolman tag field** - Now auto-created on first connect, fixing fresh installs (Issue #123)
|
|
|
|
|
+- **Spoolman 400 Bad Request** - Fixed when creating spools
|
|
|
|
|
+- **AMS filament matching** - Fixed in reprint modal
|
|
|
|
|
+- **User preset AMS configuration** - Fixed user presets showing empty fields in Bambu Studio
|
|
|
|
|
+
|
|
|
|
|
+### Notifications & Webhooks
|
|
|
|
|
+- **Progress Milestone Notifications** - Fixed showing wrong time (e.g., "17m" instead of "17h 47m") (Issue #157)
|
|
|
|
|
+- **Mattermost/Slack Webhooks** - Added proper payload format support (Issue #133)
|
|
|
|
|
+- **Telegram Notification Parsing** - Fixed markdown errors with underscores in error codes
|
|
|
|
|
+- **HMS Error Notifications** - 853 error codes now translated to human-readable messages
|
|
|
|
|
+- **Notifications sent when printer offline** - Fixed
|
|
|
|
|
+
|
|
|
|
|
+### Camera & Streaming
|
|
|
|
|
+- **Camera stream reconnection** - Automatic recovery from stalled streams
|
|
|
|
|
+- **Camera zoom & pan** - Fixed pan range and added pinch-to-zoom for mobile (Issue #132)
|
|
|
|
|
+- **P2S/X1E/H2 completion photo** - Fixed internal model codes not recognized (Issue #127)
|
|
|
|
|
+- **Browser freeze** - Fixed on print completion when camera stream was open
|
|
|
|
|
+- **ffmpeg processes** - Fixed not being killed when closing webcam window
|
|
|
|
|
+
|
|
|
|
|
+### File Manager & Archives
|
|
|
|
|
+- **P2S Empty Archive Tiles** - Fixed FTP search for printers without SD card (Issue #146)
|
|
|
|
|
+- **File Manager folder navigation** - Fixed folder opening then jumping back to root (Issue #160)
|
|
|
|
|
+- **File Manager upload** - Now accepts all file types, not just ZIP
|
|
|
|
|
+- **Multi-plate 3MF metadata** - Single-plate exports now show correct thumbnail
|
|
|
|
|
+- **Archive card cache** - Fixed wrong cover image bug
|
|
|
|
|
+- **Archive delete safety** - Added checks to prevent deleting parent directories
|
|
|
|
|
+
|
|
|
|
|
+### Statistics & Tracking
|
|
|
|
|
+- **Print time stats** - Now uses actual elapsed time instead of slicer estimates (Issue #137)
|
|
|
|
|
+- **Filament cost** - Now uses "Default filament cost" setting instead of hardcoded €25 (Issue #120)
|
|
|
|
|
+- **Reprint cost tracking** - Now adds cost to existing total instead of replacing
|
|
|
|
|
+- **K-Profiles backup status** - Fixed showing incorrect printer connection count
|
|
|
|
|
+
|
|
|
|
|
+### Smart Plugs
|
|
|
|
|
+- **HA Energy Sensors** - Fixed sensors with lowercase units (w, kwh) not detected (Issue #119)
|
|
|
|
|
+
|
|
|
|
|
+### UI & UX
|
|
|
|
|
+- **Skip objects modal overflow** - Fixed modal going above browser window (Issue #134)
|
|
|
|
|
+- **Project card filament badges** - Fixed showing duplicates and raw color codes
|
|
|
|
|
+- **Subnet scan serial number** - Fixed A1 Mini showing "unknown-*" placeholder (Issue #140)
|
|
|
|
|
+- **Slicer protocol** - Fixed OS detection (Windows vs macOS/Linux)
|
|
|
|
|
+
|
|
|
|
|
+### API & Backend
|
|
|
|
|
+- **Settings API PATCH Method** - Added for Home Assistant rest_command compatibility (Issue #152)
|
|
|
|
|
+- **GitHub Backup Timestamps** - Removed volatile timestamps for cleaner git diffs
|
|
|
|
|
+- **Plate Calibration Persistence** - Fixed reference images not persisting in Docker
|
|
|
|
|
+- **Update module** - Fixed for Docker-based installations
|
|
|
|
|
+
|
|
|
|
|
+---
|
|
|
|
|
+
|
|
|
|
|
+## Maintenance
|
|
|
|
|
+
|
|
|
|
|
+- Upgraded vitest from 2.x to 3.x for security improvements
|
|
|
|
|
+- Added security scanning (pip-audit, npm audit) to CI pipeline
|
|
|
|
|
+- Replaced python-jose with PyJWT to eliminate ecdsa vulnerability
|
|
|
|
|
+- Improved test coverage (796 backend tests, 518 frontend tests)
|
|
|
|
|
+
|
|
|
|
|
+---
|
|
|
|
|
+
|
|
|
|
|
+## Thank You!
|
|
|
|
|
+
|
|
|
|
|
+This release wouldn't be possible without our amazing community. A huge thank you to everyone who contributed code, reported bugs, tested beta releases, and provided feedback!
|
|
|
|
|
+
|
|
|
|
|
+### Code Contributors
|
|
|
|
|
+
|
|
|
|
|
+| Contributor | Contribution |
|
|
|
|
|
+|-------------|--------------|
|
|
|
|
|
+| **[@maziggy](https://github.com/maziggy)** (MartinNYHC) | Lead developer, core features |
|
|
|
|
|
+| **[@MisterBeardy](https://github.com/MisterBeardy)** (Wesley Reaves) | STL thumbnail generation |
|
|
|
|
|
+| **[@JesseFPV](https://github.com/JesseFPV)** (Jesse Hulswit) | Optional authentication system |
|
|
|
|
|
+
|
|
|
|
|
+### Issue Reporters & Testers
|
|
|
|
|
+
|
|
|
|
|
+Special thanks to everyone who reported issues, tested beta releases, and provided valuable feedback:
|
|
|
|
|
+
|
|
|
|
|
+- **[@Locxion](https://github.com/Locxion)** (Markus Bender) - A1 Mini status bug, log viewer feature
|
|
|
|
|
+- **[@cadtoolbox](https://github.com/cadtoolbox)** (Thomas Rambach) - H2D Pro support, model-based queue
|
|
|
|
|
+- **[@Twilek-de](https://github.com/Twilek-de)** - Empty AMS slots, Mattermost webhooks, progress milestones
|
|
|
|
|
+- **[@elit3ge](https://github.com/elit3ge)** - Archive tiles, completion photos, upload improvements
|
|
|
|
|
+- **[@opensourcefan](https://github.com/opensourcefan)** - Subnet scan serial, status colors
|
|
|
|
|
+- **[@1nv4lidus3r](https://github.com/1nv4lidus3r)** - Print time stats, skip objects modal
|
|
|
|
|
+- **[@joaorgoncalves](https://github.com/joaorgoncalves)** (João Gonçalves) - Filament cost settings, HA energy sync
|
|
|
|
|
+- **[@beardofbeespool](https://github.com/beardofbeespool)** (Morton Likely) - STL thumbnail feature request
|
|
|
|
|
+- **[@PeterXQChen](https://github.com/PeterXQChen)** (Peter Chen) - File manager folder navigation
|
|
|
|
|
+- **[@Robnex](https://github.com/Robnex)** - External links, external spool sync
|
|
|
|
|
+- **[@caco3](https://github.com/caco3)** (CaCO3) - Disable firmware checks
|
|
|
|
|
+- **[@sbcrumb](https://github.com/sbcrumb)** - Camera zoom feature
|
|
|
|
|
+- **[@fcps3](https://github.com/fcps3)** - Spoolman transparent spool sync
|
|
|
|
|
+- **[@LucHeart](https://github.com/LucHeart)** - MQTT connection issues
|
|
|
|
|
+- **[@ouihq](https://github.com/ouihq)** (Jonas) - File manager queue bug
|
|
|
|
|
+- **[@Schuermi7](https://github.com/Schuermi7)** - AMS mapping, cloud 2FA
|
|
|
|
|
+- **[@stubbers](https://github.com/stubbers)** (Joseph Stubberfield) - X1C sync issues
|
|
|
|
|
+- **[@nvdmedianl](https://github.com/nvdmedianl)** (Nathan) - Spoolman Bambu spool errors
|
|
|
|
|
+- **[@lbeumer-bit](https://github.com/lbeumer-bit)** - Notification photos
|
|
|
|
|
+- **[@IROKILLER](https://github.com/IROKILLER)** - Home Assistant automations
|
|
|
|
|
+- **[@fgrfn](https://github.com/fgrfn)** (Florian) - Dynamic electricity cost
|
|
|
|
|
+- **[@JasonSwindle](https://github.com/JasonSwindle)** (Jason Swindle) - Smart plug text overflow
|
|
|
|
|
+- **[@Cassiopeia1980](https://github.com/Cassiopeia1980)** - Connection issues
|
|
|
|
|
+
|
|
|
|
|
+And many more community members who tested, provided feedback, and helped make Bambuddy better!
|
|
|
|
|
+
|
|
|
|
|
+---
|
|
|
|
|
+
|
|
|
|
|
+## Upgrade Notes
|
|
|
|
|
+
|
|
|
|
|
+### From 0.1.5.x or earlier
|
|
|
|
|
+- Database migrations run automatically on startup
|
|
|
|
|
+- User authentication is optional and disabled by default
|
|
|
|
|
+- Existing installations will continue to work without changes
|
|
|
|
|
+
|
|
|
|
|
+### From 0.1.6 beta
|
|
|
|
|
+- All beta migrations are included in the final release
|
|
|
|
|
+- No action required - just update and restart
|
|
|
|
|
+
|
|
|
|
|
+---
|
|
|
|
|
+
|
|
|
|
|
+## What's Next?
|
|
|
|
|
+
|
|
|
|
|
+We're already planning 0.1.7 with more exciting features. Stay tuned and keep the feedback coming!
|
|
|
|
|
+
|
|
|
|
|
+- [GitHub Issues](https://github.com/MisterBeardy/bambuddy/issues) - Report bugs and request features
|
|
|
|
|
+- [GitHub Discussions](https://github.com/MisterBeardy/bambuddy/discussions) - Join the conversation
|
|
|
|
|
+
|
|
|
|
|
+---
|
|
|
|
|
+
|
|
|
|
|
+**Happy Printing!** 🎉
|
|
|
|
|
+
|
|
|
|
|
+*— The Bambuddy Team*
|