Skip to content

Add FilaMan spool card - #4

Open
ManuelW77 wants to merge 1 commit into
Bespok3d:devfrom
ManuelW77:filaman-spool-card
Open

ManuelW77 wants to merge 1 commit into
Bespok3d:devfrom
ManuelW77:filaman-spool-card

Conversation

@ManuelW77

Copy link
Copy Markdown

Summary

FilaMan is an NFC/RFID filament tracking system with its own Moonraker component (the separate filaman Bespok3d plugin), independent of Spoolman. This adds a small card, bottom right corner, showing the filament assigned to each extruder and letting you clear or repush it.

  • Shows the filament name and colour assigned to each extruder (falls back to the bare spool id if that lookup fails).
  • Button to clear an extruder's assignment.
  • Button to manually repeat the startup repush (resends every assigned spool to the printer), for when a channel still shows as unknown and restarting Moonraker is overkill. Needs filaman 0.2.0 or newer (its new /repush endpoint); on an older filaman it silently does nothing.
  • No spool picker: assigning a spool to an extruder stays FilaMan's own job (an NFC tap, or its own app).

The card polls the filaman component's own REST endpoints directly (GET .../status, POST .../proxy for spool detail, POST .../repush), so it needs no Vuex or dialog patch, only one script tag and one new file (fluidd/patches/filaman-card.js, installed as b3d-filaman-card.js). Inert on a printer without the filaman plugin installed: the card's first request fails and it never appears.

Fluidd stays v1.37.3. Version 0.1.5 to 0.1.6.

Test plan

  • bash scripts/check.sh passes (6/6: workflow pinning, em-dash/en-dash ban, shellcheck, patch verification)
  • bash fluidd/scripts/fetch-fluidd.sh re-vendor from pristine v1.37.3 applies all 17 patches cleanly (11 original AFC/tool-button/cache-bust patches plus the 2 new for this card)
  • Verified against the real filaman Moonraker component: /server/filaman/status, /server/filaman/proxy (spool detail via GET /api/v1/spools/{id}), and the new /server/filaman/repush endpoint

FilaMan is an NFC/RFID filament tracking system with its own Moonraker
component (the separate filaman Bespok3d plugin), independent of
Spoolman. Adds a small card, bottom right corner, showing the filament
name and colour assigned to each extruder (falling back to the bare
spool id if that lookup fails), a button to clear the assignment, and
a repush button that resends every assigned spool to the printer, the
same thing that already happens once at boot.

The card polls the filaman component's own REST endpoints directly
(GET .../status, POST .../proxy for spool detail, POST .../repush), so
it needs no Vuex or dialog patch, only a script tag and one new file.
Deliberately no spool picker: assigning a spool to an extruder stays
FilaMan's own job (an NFC tap, or its own app).

Inert on a printer without the filaman plugin installed: the card's
first request fails and it never appears. The repush button needs
filaman 0.2.0 or newer (its /repush endpoint); on an older filaman it
silently does nothing. Fluidd stays v1.37.3, version 0.1.5 to 0.1.6.

Signed-off-by: ManuelW77 <manuel.weiser@me.com>
@github-actions

Copy link
Copy Markdown

b3-packages preview (build only, not published). Download the packed .b3 set, its atoms, and the assembled index: b3-packages-fluidd-plugin. Rebuilt for commit 9a86a37cef1eb831ba4b204dc76d87bd989907e5. Build log.

Comment thread fluidd/doc/README.md
Spoolman panel. The repush button needs filaman 0.2.0 or newer; on an older filaman it silently
does nothing.

Nothing appears without that plugin installed: the card's first request fails and it never shows.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can confirm nothing happens without it 😂

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hehe, yeah :D i implemented the manually repush shortly :D

@unlucio

unlucio commented Aug 16, 2026

Copy link
Copy Markdown
Member

Don't bother with the conflicts for now

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.

3 participants