I have a hard time estimating filament remaining on the spool. This scale solves that problem quickly and effectively for me. It only takes a moment to remove the spool, weigh it, subtract the known empty spool weight, and thereby knowing exactly what I have remaining to print with. And it is very accurate to the gram. Yes, you can certainly buy an inexpensive kitchen scale to do this, but where’s the fun in that.
I am not a coder, and at almost 60 I’ve only recently become a 3D printer enthusiast and maker. I’m an old dude with a newfound hobby and I love to learn and tinker. So, if I can do this project, you can too. The scale itself, and its component layout is designed by me. But all of the important stuff, coding, components, etc. I found online.
Please thoroughly read the attached .pdf documentation for more detailed information, pictures, and instructions.
Important Information:
The instructions here, provided by me, will not be as thorough as you hoped. Therefore, it is imperative that you follow the easy to understand, online free to use, source tutorials provided by Random Nerd Tutorials – “Arduino with Load Cell and HX711 Amplifier (Digital Scale)”. https://randomnerdtutorials.com/arduino-load-cell-hx711/*I am not affiliated with Random Nerd Tutorials but would like to THANK them for their excellent instruction.
The Process:
Review the tutorial’s information, instructions, pictures, and diagrams.
Feeling confident, gather the materials.
3D print the components. You will need the base and the spool tray for the “Calibrating the Scale” process in the tutorials.
Install the Arduino IDE.
Follow the online Random Nerd Tutorials – “Arduino with Load Cell and HX711 Amplifier (Digital Scale)”.
Prewire the components on a breadboard.
Follow the coding instructions. Firstly, installing the necessary libraries into your IDE, particularly the “HX711 Arduino Library by Bogdan Necula” at first for calibrating the scale.
Then following the tutorial, adjust your breadboard build to include the display and push button for tare. Paying particular attention to the number of 5V (+) and GND (Ground (-)) connections you will need to make, and how you intend to do it.
Then add the, “Adafruit SSD1306”, “Adafruit GFX”, and the “Pushbutton Library by Pololu” to your IDE for the completion by adding the display and the pushbutton for tare. **Just to note: My SSD1306 Display was the Yellow (1/4) by Blue (3/4) version, so I adjusted the code so the display would not show the yellow portion.
Once all components are test wired, and the coding has been successfully uploaded, with confirmation of accuracy by using several known weights, you can start the final assembly.
Please use the pictures below for a little guidance.
Notice the display is held in by mushrooming the pegs with a soldering iron.
This Build’s Equipment:
Arduino IDE (Integrated Development Environment). This is free software that allows you to write and compile information to Arduino microcontrollers and the like (ESP32s).
Arduino Nano micro-controller. I used a readily available knockoff one from Amazon. V3.0, ATmega328P, CH340G Chip, 5V 16M, USB-C(Please note the tutorials use an Arduino UNO, but the pin usage is the same, and of course, it functions).
OLED 0.96” 128x64 Display SSD1306
5Kg (Wheatstone Bridge) Load Cell with HX711 Amplifier
10K (10,000) Ohm Resistor
Normally Open Push Button with 7mm mounting hole diameter (Amazon Desc: 12pcs 7mm 3V-6V-12V-24V-230V/1A Prewired Mini Momentary Push Button,SPST Nomal Open ON/Off 2 Pin Round Button for Model Railway Hobby)
20mm x 80mm double sided PCB prototype DIY board
M2.5 x 4 x 3.5mm Threaded inserts (13)
M2.5 x 6mm Pan Head Screws (13)
M5 x 30 Pan Head Screws (2) for load cell
M4 x 30 Pan Head Screws (2) for load cell
Wire18-20 gauge
Solder
Assorted Dupont Wire connectors, 15cm and 20cm, Female to Female, Male to Female.
USB-C power cable and charge block.
The Print:
I designed the scale to be narrow to fit into a space beside my printer. The base I designed so it would have no flex while weighing, in case flexibility altered its accuracy. The printed parts include the base itself, display mount, Nano holder, the exterior shell, spool tray, and its pedestal. The tray is designed with a radius to steadily hold a 1Kg spool. The finished print measures 200mm L x 110mm W x 78mm H.
I grouped the items together in one file, printing at .16mm, Line Width .37 (w/.4 Nozzle), 4-wall loops, 20%-3D Honeycomb infill. The Base is about a 4hr print, Nano Holder and Display Mount-48min, Reset Tool-50min, Shell-3+hr, and Tray & Pedestal-2.5hr. Roughly 11 hours in total and about 404g of filament. I used Elegoo PLA+ for all the components, it’s my favorite filament.
Please thoroughly read the attached .pdf documentation for more detailed information, pictures, and instructions.