A powerful Home Assistant blueprint that sends mobile notifications with camera snapshots when your Bambu printer finishes or encounters a fault. Packed with features for the ultimate 3D printing notification experience.
| Feature | Description |
|---|---|
| πΈ Smart Snapshots | Captures a photo at ~99% progress before the bed drops |
| π‘ Snapshot Lighting | Optionally turn on a light before capture for better photos |
| π± Mobile Notifications | Rich notifications with images to iOS/Android |
| π TTS Announcements | Voice announcements on your smart speakers |
| π¨ Critical Alerts | Optional critical notifications that bypass Do Not Disturb |
| β‘ Custom Actions | Run any automation on success or fault |
| π Quiet Hours | Suppress TTS during sleeping hours |
| β±οΈ Cooldown | Prevent notification spam |
| π Persistent Alerts | Fault notifications stay until acknowledged |
- Home Assistant 2024.6.0 or newer
- Bambu Lab integration installed and configured
- A camera entity for your printer
- (Optional) Mobile app for push notifications
- (Optional) Media player for TTS announcements
- Download
bambu_printer_notify_v4.yaml - Copy to your Home Assistant config:
/config/blueprints/automation/custom/bambu_printer_notify_v4.yaml - Restart Home Assistant or reload automations
- Go to Settings β Automations & Scenes β Blueprints
- Click Import Blueprint
- Paste the raw GitHub URL - https://raw.githubusercontent.com/HallyAus/homeassistant-bambu-blueprints/refs/heads/main/blueprints/automation/danielhall/bambu_print_notify.yaml
- Click Preview then Import
| Input | Description |
|---|---|
| Print status sensor | Sensor with states: running, finish, failed |
| Print error binary sensor | Binary sensor that turns ON on error |
| Current stage sensor | Enum sensor for printer stage |
| Progress sensor | Print progress percentage |
| Printer name sensor | Your printer's name |
| Task name sensor | Current print job name |
| Print weight sensor | Print weight in grams |
| Camera | Your printer's camera entity |
| Notifications enabled | input_boolean to enable/disable |
| Input | Default | Description |
|---|---|---|
| Snapshot light | none | Light to turn on before capture |
| Light brightness | 100% | Brightness for snapshot light |
| Snapshot delay | 1 sec | Delay for light warmup / camera adjustment |
| Input | Default | Description |
|---|---|---|
| Enable TTS | Off | Enable voice announcements |
| TTS service | tts.speak |
Your TTS service (google, cloud, piper, etc.) |
| Media player | none | Speaker(s) for announcements |
| Volume | 0 (current) | Announcement volume (1-100%) |
| Success message | "{{printer_name}} has finished printing {{task_name}}" | Customizable template |
| Fault message | "Warning! {{printer_name}} has encountered a fault..." | Customizable template |
| Quiet hours | Off | Suppress TTS during specified times |
| Input | Default | Description |
|---|---|---|
| Notify device | empty | Your mobile_app_* service name |
| Success type | Normal | Normal, Critical, or Never Critical |
| Fault type | Critical | Normal, Critical, or Never Critical |
| Critical sound | default | iOS sound name |
| Critical volume | 1.0 | Alert volume (0.0-1.0) |
You can run any Home Assistant actions on print success or fault:
Success action examples:
- Turn on a green "print done" light
- Power on a cooling fan via smart plug
- Send a message to Discord/Slack
- Turn off the printer after a delay
Fault action examples:
- Turn on a red warning light
- Flash lights to get attention
- Pause other printers in your farm
- Send urgent alerts to multiple services
Use these in your TTS messages:
| Variable | Description | Example |
|---|---|---|
{{ printer_name }} |
Printer name | "X1 Carbon" |
{{ task_name }} |
Print job name | "benchy.3mf" |
{{ print_weight }} |
Weight in grams | "15" |
{{ progress }} |
Progress percentage | "100" |
{{ status }} |
Current status | "finish" |
- Set progress threshold to 98-99% to capture before the bed drops
- Add a snapshot light for consistent lighting
- Use a 1-2 second delay to let the camera adjust
- Set time windows to only get critical alerts during certain hours
- Set start and end to the same time to completely disable critical alerts
- Use "Never Critical" option to always get normal notifications
Perfect for overnight prints:
- TTS quiet hours: 22:00 β 07:00
- You'll still get mobile notifications, just no voice announcements
Create a separate automation from this blueprint for each printer. Use different:
- Notification tags (automatic based on printer name)
- Snapshot lights
- TTS messages
This happens when trying to reimport from a URL. Instead:
- Download the YAML file manually
- Place it in
/config/blueprints/automation/custom/ - Restart Home Assistant
- Ensure
/config/www/snapshots/directory exists - Check Home Assistant has write permissions
- Verify your camera entity is working
- Verify your TTS service name is correct
- Test your media player with Developer Tools β Services
- Check you're not in quiet hours
- Verify
notify.mobile_app_*service exists - Check the notifications enabled boolean is ON
- Review cooldown settings
- β¨ Added TTS announcements with customizable messages
- β¨ Added TTS quiet hours
- β¨ Support for multiple TTS services
- β¨ Added custom actions on success/fault
- π¨ Organized inputs into collapsible sections
- β¨ Added optional snapshot light with brightness control
- π Fixed critical notifications (now truly optional)
- π Fixed snapshot delay (positive values only)
- π Fixed time window handling (00:00-00:00 = disabled)
- π Initial release
Found a bug? Have a feature request? Feel free to:
- Open an issue
- Submit a pull request
- Share your custom configurations
- @sawokei - Bug reports and testing
If this blueprint has helped you, consider buying me a coffee!
Your support helps me create more useful Home Assistant blueprints and integrations.
This project is licensed under the MIT License - see the LICENSE file for details.
Made with β€οΈ for the Home Assistant and 3D printing community