Arduino Uno - HX711 Digital Weight Scale

by johnnyfrx in Circuits > Arduino

13084 Views, 17 Favorites, 0 Comments

Arduino Uno - HX711 Digital Weight Scale

HX711 Arduino Powered Weight Scale 09Oct17

Need to weigh anything? A Bearded Dragon perhaps?

Check out the video above for details on the scale and see it in action.

Soooo...the latest member of our family, a bearded dragon named DaVinci had a stomach bug which was really messing with his appetite, etc... We needed a scale with a resolution in the grams/oz. range but with a big enough base to hold him in his entirety so we could make sure he was on the rebound to health with his diet. Gotta eat those BUGS BUDDY BOY! Arduino and HX711 Load Cell weight scale to the rescue. Read on to build one for your reptile family members, or for whatever you need to weigh.

Parts Needed:

Davinci_Scale_Small.jpg
hx711.jpeg
load cell.jpg
arduino_uno.jpg
4wd-robot-smart-car-chassis.gif
jumpers.jpg
weights.jpg
standoffs.jpg

Any reference to merchants and particular parts is just that, reference. Caveat Emptor.

  • Bearded Dragon
  • 5kg Load Cell and HX711 Combo Pack Kit - Amazon
  • NOTE for the kit above: One side both holes tapped M4 thread, the other side both holes tapped M5 thread.
  • Arduino UNO - Amazon
  • Precision Steel Scale Calibration Weight Kit - Amazon
  • For Parts: 4 wheel 2 layer Robot Smart Car Chassis Kit Amazon (I used the acrylic bases and standoffs from a previous project I had built, so parts were already present for me)
  • LCD 1602 w/I2C Serial Backpack - Amazon
  • Jumpers, USB Cable

Software Needed:

Assumptions:

  • Knowledge of Arduino IDE.
  • Knowledge on installing and utilizing Arduino libraries.
  • Knowledge of obtaining libraries from GITHub.

Libraries:


Final Arduino Sketch:

  • See attached.

YouTube Resource I Used:

  • Ralph Bacon's Videos and Downloads I used for this project. Ralph Bacon

Hardware Setup:

IMG_20171007_104950178.jpg
IMG_20171007_170805077.jpg
IMG_20171007_090006195.jpg
IMG_20171007_121446043.jpg

This is where YOU need to get creative based on what you have on hand for building the scale frame. Whether it's like mine or if you just want to use some Popsicle sticks and 2X4's...it's your call.

Regardless of how you assemble it, just pay close attention to connection locations and jumper cable lengths you'll be using.

Power Up and TEST your connections once, or twice, before you put it all together.

IMPORTANT NOTE: Make sure all solder joints are completely and solidly soldered on the HX711. It is very sensitive to external EMF. One of my connections was off just a little and the numbers went HAYWIRE! I would wave my hand 3 foot above the rig and it would stop dead in it's tracks.CRAZY MANNNN....CRAZY!!!

WIRING:

Arduino LCD HX711 LOAD CELL

Arduino 5v--------------------5v LCD

Arduino 3v--------------------3v HX711

Arduino Grnd----------------Grnd LCD

Arduino Grnd----------------Grnd HX711

Arduino 10--------------------Clck HX711

Arduino 11-------------------- Data HX711

Arduino A4--------------------Data LCD

Arduino A5--------------------Clck LCD

HX711 E+-----------------------LOAD CELL RED

HX711 E- -----------------------LOAD CELL BLACK

HX711 A- -----------------------LOAD CELL GREEN

HX711 A+-----------------------LOAD CELL WHITE

DO NOT CONNECT B+ B-


Final Step - Home Stretch:

Uno_HX711__Small_08Oct17.jpg

This final step of steps may seem a little chaotic, so jump around at your own pace.

  • In the Arduino sketch, if you are you using I2C for the LCD, you may need to change it's address to match your device. If you don't know it's address, you can download the I2C Scanning Tool from here to track it down. It is named ESP32_Wemos_I2C_Scanner but will work on any Arduino compatible with the Wire.h library.
  • Head to Ralph Bacon's page now for additional tips on calibration.
  • Refer to the Bogde GIT page for tips in the Readme.
  • Calibration Time!! Once you have tested all, and assembled, calibrate your scale....even if you calibrated earlier, do it again now.
  • The HX711 will work on other controllers like the ESP8266 and ESP32. You may need to adjust processor speed though. Refer to Andreas Speiss's page for tips on that.