Skip to content

v0.3.0 — glass dashboard + structured status

Choose a tag to compare

@dmuth23 dmuth23 released this 06 Jul 16:07

SpoolTap 0.3.0 — the glass dashboard + a status pipeline that tells you what happened

The dashboard, redesigned

The shipped dashboard is now a dark "glass cockpit": frosted cards on a navy gradient, one cyan accent, and semantic color everywhere. Phone-first; widens to two columns on a PC.

  • Hero status banner — every action outcome shows as a color-coded badge (green DONE · amber ARMED/CHECK · red FAILED · cyan WORKING, pulsing while something's in flight) with the full message and context chips: the tag in your hand, the armed slot, and how old the message is.
  • Live AMS slot strip (Assign) — one chip per slot in the spool's actual filament color, the armed slot glows amber, a cyan dot marks slots with an NFC tag bound. Auto-derived from Bambuddy; adapts to any AMS count.
  • Inventory, visual (Spools) — color swatches + remaining-filament bars (green/amber/red by fill) replace the markdown tables, with an up-front warning card listing spools that have no slicer profile linked.
  • Mode pills, bind-mode glow, slot-tag list — all restyled to match.

Dependency change: the dashboard now uses button-card + card-mod (HACS → Frontend). Mushroom is no longer required.

Status messages, properly structured

  • BREAKING: sensor.spooltap_status's state is now the level — one of Idle / Ready / Armed / Working / Success / Warning / Error / Info (a proper enum you can trigger automations on, e.g. to: "Error"). The human message moved to the message attribute, joined by updated_at (freshness) and busy. Previously the state was the message string itself; if you templated on it, read state_attr('sensor.spooltap_status','message').
  • Friendly errors — a failed Bambuddy call now reports Bambuddy's own detail (or a clean "unreachable / timed out" line) instead of a raw exception dump.
  • Working states + double-press guard — Assign/Bind/Save/Archive now show "…ing" feedback the moment you press, and a second press while a write is in flight is ignored.
  • Consistent tag naming — success messages use the HA tag's friendly name (the label you read off the spool), matching the bind preview.

Upgrading

  1. Install button-card (HACS → Frontend) if you don't have it.
  2. HACS → update SpoolTap → restart HA.
  3. Run spooltap.install_dashboard with force: true once — the auto-install never overwrites an existing dashboard.

See DEPLOY.md → "Upgrading to 0.3.0" for the full notes.