Printer Filament Measurer

Making a device to measure printer filament length when printing multicolor objects

FILAMENT MEASURER RENDERED VIEW

HOW IT WORKS

INSERT THE FILAMENT ON THE RIGHT SIDE, PUSH THE ZERO BUTTON TO ZERO THE DISPLAY, AND THEN PULL THE FILAMENT OUT THE LEFT SIDE UNTIL THE DISPLAY READS THE LENGTH YOU NEED

REAR HOUSING
FRONT HOUSING
MEASURING WHEEL IS COUPLED TO THE SHAFT ENCODER
VERTICAL CROSS-SECTION

SHAFT ENCODER WIRED AND CONNECTED TO MEASUREMENT WHEEL
READY TO MOUNT SHAFT ENCODER
DISPLAY WIRED AND SWITCHES CONNECTED
WIRING COMPLETED
TOP VIEW – DISPLAY, ZERO AND UNITS SWITCHES
MEASURER IN OPERATION – PULL FILAMENT RIGHT TO LEFT

You can find design info at the links below

https://github.com/bmoniey/FilamentMeasuringTool

https://grabcad.com/library/filament-measuring-tool-1

Operation of Measurer

Power
Use a USB C to Mini cable for power. Any USB C wall adapter or USB C port should work.

Normal Mode (out of reset)
Will display units and the length with appropriate precion.

Reset Button: Press to zero length readout.
Units Button: Press to change between mm and inch
Hold down both: Jumps to calibration mode
Calibration Mode:
Expects to record raw counts for 1000mm of filament. The display will show the raw position in counts.

Steps:

Zero the position at your measurement starting point
Draw out exactly 1000mm/39.37in of filament (using a tape measure or other reference)
Press the units button (value must be non-zero. Negative values OK too!)
The value will automatically be stored and the mode should return to Normal Mode
Reset Button: Press to zero length.

Design Targets
Accuracy: 1mm over 1M
Cost: <$20
Easy to use.

Bill of Material

  • 1 Arduino Nano (ASIN B0713XK923)
  • 1 AS5600 kit (PCB,magnet horizontal,5mmx2mm Amazon ASIN:B094F8H591)
  • 1 OLED,128×64,I2C Display (ASIN B076PNP2VD)
  • 4 M5 x 20 Socket Head Cap Screw
  • 3 Ball Bearing, 608, ABEC-9, 8x22x7
  • 4 Stand-off M3x10
  • 4 Stand-off M2x5
  • 1 PCB 50×70 (ASIN B081Q5JZ43)
  • 2 header,male, horizontal, 2.54mm
  • 2 Push-button, momentary
  • 8 Dupont wire jumpers 20cm
  • 1 housing_top, 3d printed
  • 1 housing_bot, 3d printed
  • 1 housing_front, 3d printed
  • 1 Wheel, 3d printed
  • 1 Snap-ring, 3d printed

Library Dependencies
Copy these libraries to your Arduino Libraries folder

https://github.com/adafruit/Adafruit_SSD1306.git

ttps://github.com/adafruit/Adafruit-GFX-Library.git

https://github.com/Seeed-Studio/Seeed_Arduino_AS5600.git