Workflow — Snapmaker U1 (Direct Mode)¶
The Snapmaker U1 integration uses the extended firmware's filament_detect/set endpoint. The scanner posts scan data directly to Moonraker.
For setup, see the Snapmaker U1 Integration guide.
Smart Tag Flow (OpenSpool, OpenPrintTag, TigerTag, OpenTag3D, Bambu)¶
- User scans a tag. The scanner reads vendor, material, color, temps from the tag.
- The scanner POSTs to
http://<u1-ip>:7125/printer/filament_detect/set:{ "channel": 0, "info": { "VENDOR": "Polymaker", "MAIN_TYPE": "PLA", "SUB_TYPE": "Matte", "RGB_1": 16737792, "ALPHA": 255, "HOTEND_MIN_TEMP": 200, "HOTEND_MAX_TEMP": 220, "BED_TEMP": 60, "CARD_UID": [4, 161, 178, 195] } } - The extended firmware writes the data to channel 0's state.
- Fluidd reflects the new spool.
- If the tag is missing fields and Spoolman is configured, the scanner does a second POST after Spoolman lookup to fill in any gaps.
Generic UID Tag Flow (NFC+)¶
- User scans a UID-only tag.
- The scanner queries Spoolman with the UID.
- Spoolman returns the spool's data.
- The scanner POSTs the data to the U1.
If the user removes the tag during the lookup, the scanner skips the POST.
Comparison¶
| Workflow | Middleware | Klipper macros | Tag formats | Per-toolhead |
|---|---|---|---|---|
| Klipper / AFC | Required | None (uses AFC) | All 6 | Per-lane |
| Klipper toolchanger | Required | ASSIGN_SPOOL |
All 6 | Per-tool via keypad |
| Bambu Lab AMS | None (HA-driven) | None | All 6 | Per-tray |
| Snapmaker U1 | None | None | All 6 | One scanner per channel (stage mode coming) |