Hardware companion

Spool Inspector

Place a spool on the scale. The Inspector scans the QR code, weighs the spool, and syncs everything to your account in seconds. Remaining filament, project costs, even storage location — all without touching your phone.

Spool Inspector 3D rendering
Up close

Hardware

Workflow

How it works

1

Place spool on the scale

The scale detects weight over 50g and begins stabilizing.

2

Camera scans QR code

The autofocus camera locks onto your QR label and reads the spool ID.

3

Data syncs instantly

Weight, remaining filament, and project costs update in your account automatically.

4

Set location (optional)

A prompt asks if you want to update the spool's storage location. Pick from your list or skip.

5

Remove spool

Take the spool off. The station resets and is ready for the next one.

What it does

Features

Automatic QR Scanning

Place a spool on the scale and the autofocus camera reads its QR code automatically — no manual entry needed.

Precision Weighing

A load cell weighs down to the gram. The system subtracts the spool tare weight to calculate remaining filament.

Instant Sync

Weight readings sync to your account in real time. Remaining filament, project usage, and material costs all update automatically.

Set Spool Location

Update a spool's storage location right from the device. Moving a spool to the printer? Scan it and set the location — no need to open the app.

Near-Empty Detection

When a spool has less than 10g remaining, the device prompts you to mark it as empty. Never start a print with an empty spool again.

Three Modes

Cycle between Weigh (update inventory), New Spool (calibrate tare weight), and Set Location (move spools between locations) with a single button press.

Offline Queue

No WiFi? No problem. Weighings are saved to flash memory and sync automatically when connectivity returns. No data is ever lost.

OLED Display

A built-in display shows weight, current mode, scan progress, WiFi status, and prompts — no phone or computer needed to operate.

Easy WiFi Setup

Long press a button to start the captive portal and enter WiFi credentials. Then either paste an API key in the portal or scan a QR from Settings to pair the key — your call.

Controls

Button reference

Left button — short pressTare (zero the scale)
Left button — long press (3s)WiFi setup mode
Right button — short pressCycle mode (Weigh / New / Loc)
Right button — long press (3s)Scale calibration
Display

OLED indicators

WEIGH / NEW / LOCCurrent device mode
Q:3 near WiFi icon3 weighings queued (offline)
WiFi icon solidConnected to WiFi
WiFi icon fast flashConnecting to WiFi
WiFi icon slow flashWiFi not configured
Under the hood

Specifications

MCU
Seeed XIAO ESP32S3 Sense
Camera
OV5640 with autofocus
Load Cell ADC
HX711 (integrated on PCB)
Display
SSD1306 128x64 OLED
Controls
2 buttons (TARE + MODE)
Connectivity
WiFi 2.4 GHz, HTTPS
Power
USB-C
Modes
Weigh, New Spool, Set Location
Build it yourself

Bill of materials

Estimated total parts cost: ~$60 (excluding tools and 3D printing filament). Or get a complete kit from 3dcreator.shop.

Some links below are affiliate links. We may earn a small commission at no extra cost to you.

Hardware & Connectors
2x7-pin female header
4xM2x4mm screws (PCB mount)
4xM4x25mm screws + nuts
2xM3x14mm screws + nuts

Headers, fasteners, and wire typically sold in bulk packs. This crimper kit (paid link) includes the crimper, housings, and pins.

Important: Direct-wire the load cell

Do not use Dupont connectors on the load cell wires. Solder them directly to the PCB pads. Dupont connectors cause intermittent contact issues that lead to weight drift and unstable readings. The OLED and button connectors are fine — this only applies to the load cell.

3D Printed Parts 4 print plates
1xInspector housing body
1xInspector housing lid
1xOLED cover / bezel
1xLabel position template
1xScale platform (top)
1xScale platform (bottom)
1xWire tunnel / channel
1xInspector base

STL files provided. ~450g of filament total.

Tools Required one-time
Flux (paid link)Check price
Heat-set insert tip
Wire strippers
Hex key / screwdriver set
3D Printer
USB-C cable

Most 3D printing hobbyists already have these tools

Recommended Accessories

Thermal label printer for printing QR code spool labels. Works with our label export feature.

Pricing

Get one

Complete kit
$63.54all parts

Every part you need to build a Spool Inspector — source nothing yourself. Already have some parts? Exclude them at checkout and pay less.

  • All electronics, hardware, and connectors
  • Base PCB set included
  • Optional add-ons: pre-crimped cables, USB, scale
  • Customize — exclude items you already have
  • You 3D print the enclosure (STLs provided)
PCB set
$12boards only

Just the main + button boards. Source the rest yourself using the BOM below.

  • Main board + button board
  • Pre-compiled firmware via web flasher
  • BOM, STL files, and assembly guide
  • Source parts yourself (~$50 more)
  • Same features as pre-built
Pre-built
$125one-time

Fully assembled, tested, and ready to go — just plug in and connect.

  • Fully assembled and tested
  • 3D printed enclosure included
  • Firmware pre-loaded
  • OTA firmware updates
Changelog

Firmware version history

v1.7.14May 3, 2026
  • Fix: WiFi auto-recovery — devices that lost connection during a router or ISP blip used to sit offline (WiFi: OFF / IP: N/A) until power-cycled. The device now retries with exponential backoff (30s → 10m cap) so transient drops self-heal within ~10 minutes instead of stranding the device. Resolves “hasn’t checked in for 24h” reports.
  • Fix: pressing a button to dismiss the screen saver no longer also opens the Menu or triggers AP setup mode
  • New: Reboot Device button on the on-device status page — restart over LAN/AP without unplugging
  • New: status page split into Device (settings) and Maintenance (reboot) cards, with a note that settings apply immediately and persist
  • Polish: scan light reduced from 3 to 2 LEDs to match the latest housing geometry
  • Internal: log payload JSON escaping now RFC 8259-compliant; build-settings guards (PSRAM, partition table) surface misconfigured Arduino IDE settings clearly
v1.7.10 · BetaMay 1, 2026
  • Fix: Test Mode buttons — left button labeled EXIT now actually exits Test Mode (was opening the menu); right button consistently exits too. Long-press of left still triggers AP/setup mode.
  • Fix: post-weigh location prompt no longer shows a stale name on refresh; a missing location correctly displays “No location set” instead of leaking a prior value

Beta — opt-in only via admin force-target. Not auto-pushed to stable-channel devices.

v1.7.9 · BetaMay 1, 2026
  • Camera defaults retuned for low-light scanning (decodes in pitch dark, fixes spool-hole-pattern interference)
  • Screen saver with web-configurable timeout — extends OLED life on always-on units
  • Buzzer volume control, default Low (quieter scan/calibrate beeps)
  • Scan light (WS2812B) controllable from a web slider, default Off
  • Fix: crop fallback bug when the QR detector receives a degenerate camera region

Beta — opt-in only via admin force-target. Not auto-pushed to stable-channel devices.

v1.7.8May 1, 2026
  • Fix: stuck-token devices now self-heal correctly — the case where every call would re-provision on the server but the firmware kept sending the same stale token
  • Fix: auth recovery actually triggers on queue-drain failures (recovery counter was missing 401s when the HTTP client returned a non-OK error code)
  • Fix: queued weighings retained on auth failures instead of being silently discarded — when auth breaks, your data stays safe until recovery restores it
  • Performance: queue stops hammering the server during auth issues — exponential backoff plus pause-during-recovery
v1.7.7May 1, 2026
  • Auto-recovery from invalid API keys: when a device's stored key drifts out of sync with the server, an admin can restore it remotely with one click — no user action needed on the device
  • Fix: locations list now loads for users with many or long-named locations (resolves the “No locations / Add in web app” message)
  • Diagnostics: device now reports its local IP on heartbeat so admins can deep-link to the device's /diag page
  • Polish: serial-output button help now matches the current button behavior
v1.7.6April 29, 2026
  • Pair Key: new menu item lets you re-key the device by scanning a QR from Settings → API Keys — no more copy/paste during setup or key rotation
  • Diagnostics screens: on-device hardware status pages for camera, scale, and WiFi, accessible from the menu
  • Menu cleanup: consolidated calibration so the calibration UI persists through reboots
  • Fix: pre-calibration weight cycling no longer flickers the display when the scale isn't calibrated
  • Fix: boot tare is now silent (no startup beep)
  • Polish: firmware version printed on serial at startup for easier diagnostics
v1.7.5April 28, 2026
  • Update consent: device no longer auto-installs firmware updates on its own — installs only when you click Update on the website, press Update on the device, or an admin force-targets a specific version
  • New on-device indicator: an “update available” badge appears when a newer version is published so you know when to install at your convenience
  • Fix: tare-weight prompt no longer fires spuriously after calibration
v1.7.4April 28, 2026
  • Fix: OTA partition selection — corrects a partition-table mismatch that prevented some devices from installing 1.7.3 over the air
  • Fix: device boot stability — addresses an out-of-memory error during the QR decoder startup
  • Fix: device now sends its MAC on every authenticated call so a stale saved token self-heals on the next request instead of looping on auth errors (carries forward from 1.7.3)
v1.7.3April 27, 2026 — withdrawn
  • Withdrawn: replaced by 1.7.4 after a boot-time OOM was identified. Do not flash directly.
v1.7.2April 27, 2026
  • Fix: device now sends MAC fallback on locations and firmware-check calls when its token isn't loaded yet — clears boot-time auth errors
v1.7.1April 27, 2026
  • Dryer Mode: scan a spool to start or end a drying session
  • Set Location cross-prompts to start or end drying when the target is a dryer
  • End-drying prompt during weigh when the spool has an open session
  • Sticky location: pick a location once, scan multiple spools to bulk check-in
  • Auto-revert from Dry to Weigh after a successful scan
  • Long location names now wrap on the picker and prompt instead of truncating
  • Post-weigh prompts require an explicit answer (no silent dismissal on spool removal)
v1.6.2April 25, 2026
  • Fix: admin force-update from /devices now reaches target units (firmware-check call now sends auth)
  • Optional belt-and-suspenders: device can also OTA directly off the heartbeat response when a target is queued
v1.6.1April 20, 2026
  • QC test mode gated behind compile flag (disabled in OTA builds)
v1.6.0April 19, 2026
  • Camera Rotate 180° — toggle in settings for flexible mounting, persists across updates
  • Test Mode — continuous QR scan testing without sending data to server
  • Needs-setup melody — 5 rising tones on boot when device isn't configured
  • Boot splash repositioned for 2-color OLED compatibility
  • "Please wait" message during first-boot camera init
  • Optional compile-time device name for identifying units
  • Menu cleanup — "Refresh Loc" shortened to "Refresh"
v1.5.3April 12, 2026
  • Boot splash screen with SPOOL INSPECTOR logo and version number
v1.5.2April 11, 2026
  • Instant "Saving..." feedback when selecting a location
v1.5.1April 11, 2026
  • Location prompt after weigh shows current spool location
  • SET_LOCATION mode auto-resets to WEIGH after 5 minutes idle
v1.5.0April 11, 2026
  • Session-locked QR payload prevents stale spool ID on actions
  • Debug logging to server for remote diagnostics
  • Offline queue entries tagged as [queued] in usage history
v1.4.0April 9, 2026
  • Test mode for hardware testing without an account
  • Factory reset button on WiFi setup portal
  • Hardcoded API base URL (removed from setup portal)
  • Fixed long-press WiFi button from any state
v1.3.0April 7, 2026
  • Cached locations — fetched on boot, refreshed hourly, instant picker
  • Refresh Locations menu item
  • Dual-color OLED support

As an Amazon Associate, 3D Spool Tracker earns from qualifying purchases. Product links on this page may include affiliate tags. Prices are the same whether you use our links or not.