Skip to content

Add Dragonfruit (Prusa XL via PrusaLink) - #55

Open
kevinahuber wants to merge 3 commits into
mainfrom
feat/dragonfruit-prusa-xl
Open

Add Dragonfruit (Prusa XL via PrusaLink)#55
kevinahuber wants to merge 3 commits into
mainfrom
feat/dragonfruit-prusa-xl

Conversation

@kevinahuber

Copy link
Copy Markdown
Contributor

Summary

  • Adds Dragonfruit (Prusa XL) to all lifecycle automations, roundup, weekly summary, and offline alerts
  • Creates alias template sensors (dragonfruit_print_status, dragonfruit_print_progress, dragonfruit_end_time) so the dynamic states("sensor."+printer+"_xxx") lookups work with PrusaLink's different entity naming
  • Adds input_text helpers for Slack threading and last job storage
  • Adds history_stats sensors for weekly print counts using PrusaLink states (finished, stopped)
  • PrusaLink trigger blocks use correct states: idle/ready -> printing -> finished/stopped/paused/error

Entity IDs assume the PrusaLink device is named "Dragonfruit" in HA — may need adjustment once the integration is configured.

Test plan

  • Set up PrusaLink integration for the Prusa XL in HA
  • Verify sensor.dragonfruit exists and reports correct states
  • Verify alias template sensors mirror PrusaLink entities correctly
  • Start a print — confirm starting message posts to #3dprint-info
  • Confirm progress (50%, 90%), finished, stopped, paused, and error messages thread correctly
  • Verify Dragonfruit appears in bi-hourly roundup when active
  • Verify Dragonfruit appears in weekly summary

🤖 Generated with Claude Code

kevinahuber and others added 2 commits March 10, 2026 18:06
- Add input_text helpers for slack thread TS and last job storage
- Create alias template sensors (print_status, print_progress, end_time)
  so dynamic states("sensor."+printer+"_xxx") lookups resolve correctly
- Add last_display_name and last_object template sensors
- Add history_stats for weekly completed/failed counts
- Add PrusaLink-specific triggers to all lifecycle automations
  (starting, finished, stopped, paused, error, progress, offline)
- Add to roundup, weekly summary, and multi-printer offline alerts
- Include PrusaLink states in not_printing and status_labels

Entity IDs assume the PrusaLink device is named "Dragonfruit" in HA.
May need adjustment once the integration is set up.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…name

- Dragonfruit End Time has device_class: timestamp, so it needs an
  availability guard to avoid template errors when PrusaLink is offline
- Pineapple uses the Creality integration, not Prusa

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Kevin Huber <kevinahuber@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant