HX711 Calibration Issues

Wondering if anyone has run into this issue. I have an hx711 ADC board wired to 4 50kg load sensors.
I am using the Sparkfun calibration sketch (included) to determine my calibration factor.

However, after calibrating the scale with a 5lbs item, if I put a heavier item on the scale it is no longer accurate.

To be more specific, I calibrated with 5lbs item, then moved to a 175lbs and the scale read ~160lbs.

I have also attached a picture of the wiring diagram I used to hook everything up.
What could be causing this?

Thanks!

/*
 Example using the SparkFun HX711 breakout board with a scale
 By: Nathan Seidle
 SparkFun Electronics
 Date: November 19th, 2014
 License: This code is public domain but you buy me a beer if you use this and we meet someday (Beerware license).

 This is the calibration sketch. Use it to determine the calibration_factor that the main example uses. It also
 outputs the zero_factor useful for projects that have a permanent mass on the scale in between power cycles.

 Setup your scale and start the sketch WITHOUT a weight on the scale
 Once readings are displayed place the weight on the scale
 Press +/- or a/z to adjust the calibration_factor until the output readings match the known weight
 Use this calibration_factor on the example sketch

 This example assumes pounds (lbs). If you prefer kilograms, change the Serial.print(" lbs"); line to kg. The
 calibration factor will be significantly different but it will be linearly related to lbs (1 lbs = 0.453592 kg).

 Your calibration factor may be very positive or very negative. It all depends on the setup of your scale system
 and the direction the sensors deflect from zero state
 This example code uses bogde's excellent library: https://github.com/bogde/HX711
 bogde's library is released under a GNU GENERAL PUBLIC LICENSE
 Arduino pin 2 -> HX711 CLK
 3 -> DOUT
 5V -> VCC
 GND -> GND

 Most any pin on the Arduino Uno will be compatible with DOUT/CLK.

 The HX711 board can be powered from 2.7V to 5V so the Arduino 5V power should be fine.

*/

#include "HX711.h"

#define DOUT  3
#define CLK  2

HX711 scale;

float calibration_factor = -7050; //-7050 worked for my 440lb max scale setup

void setup() {
  Serial.begin(9600);
  Serial.println("HX711 calibration sketch");
  Serial.println("Remove all weight from scale");
  Serial.println("After readings begin, place known weight on scale");
  Serial.println("Press + or a to increase calibration factor");
  Serial.println("Press - or z to decrease calibration factor");

  scale.begin(DOUT, CLK);
  scale.set_scale();
  scale.tare(); //Reset the scale to 0

  long zero_factor = scale.read_average(); //Get a baseline reading
  Serial.print("Zero factor: "); //This can be used to remove the need to tare the scale. Useful in permanent scale projects.
  Serial.println(zero_factor);
}

void loop() {

  scale.set_scale(calibration_factor); //Adjust to this calibration factor

  Serial.print("Reading: ");
  Serial.print(scale.get_units(), 1);
  Serial.print(" lbs"); //Change this to kg and re-adjust the calibration factor if you follow SI units like a sane person
  Serial.print(" calibration_factor: ");
  Serial.print(calibration_factor);
  Serial.println();

  if(Serial.available())
  {
    char temp = Serial.read();
    if(temp == '+' || temp == 'a')
      calibration_factor += 10;
    else if(temp == '-' || temp == 'z')
      calibration_factor -= 10;
  }
}

Perhaps you need to examine what you are doing. You are using 50kg max sensors and putting how much weight on them?

Paul

How accurate was that calibrstion load?
11% off id easy to get.

There is a batch of HX711 boards out there with E- not connected to ground.
Check with a DMM.
Leo..

Paul_KD7HB:
Perhaps you need to examine what you are doing. You are using 50kg max sensors and putting how much weight on them?

Paul

I see your point Paul but it seems to me that once calibrated, the scale should be accurate (within reason) at all weights up to its max load. I did attempt to calibrate the scale at the higher weight but the issue remains the same if I attempt to weigh something lighter afterwards. I should have specified that in my original post.

Railroader:
How accurate was that calibrstion load?
11% off id easy to get.

Sorry I don't know that I fully understand your question.

Wawa:
There is a batch of HX711 boards out there with E- not connected to ground.
Check with a DMM.
Leo..

Thanks Leo I will give it a try. However, would the HX711 board be functioning at all without E- being connected to ground?

How do You that it is 5.00 LBS. not 5.6 or 4.4? Any deviation from 5.00 will cause errors later.

What is the maximum load the scale can measure?

Railroader:
How do You that it is 5.00 LBS. not 5.6 or 4.4? Any deviation from 5.00 will cause errors later.

Oh I see what you're saying. I have a small counter top food scale that I used to weigh the item first. I guess it is possible that the food scale was off a bit?

wildbill:
What is the maximum load the scale can measure?

The scale is using 4 50kg load sensors so I believe that makes its max load ~440lbs.

Jtoeniskoetter:
Oh I see what you’re saying. I have a small counter top food scale that I used to weigh the item first. I guess it is possible that the food scale was off a bit?

The scale is using 4 50kg load sensors so I believe that makes its max load ~440lbs.

If it is a modern digital food scale I think it’s probably good enoght, better than 11% wrong. Something else must be affecting Your proj.
An old mechanical scale… I’m not too sure about the accuracy.

Has anyone had luck calibrating an hx711 with a different sketch?

Thanks!

Most likely plenty of people regarding the number of projects based on this sensor.
Make som simple code for just this purpose and care about the details.

You need to calibrate with a much bigger weight , at least near to the full weight your scale can take .

If you get a piece of graph paper , and draw a point at 5kg ( say) and draw a line to zero . Now get your rules and try and get to 100kg , you’ll see a slight movement will give you a big error - electronically that’s is your problem

hammy:
You need to calibrate with a much bigger weight , at least near to the full weight your scale can take .

If you get a piece of graph paper , and draw a point at 5kg ( say) and draw a line to zero . Now get your rules and try and get to 100kg , you’ll see a slight movement will give you a big error - electronically that’s is your problem

Just some more information here. I noticed this morning that when measuring smaller loads, the scale reads correctly if the weight it directly in the center of the scale. However, when weighing heavier loads, if I distribute the weight more to the back of the scale it reads correctly!

Could this indicate that my wiring is off?

No more likely a mechanical issue .

Just calibrate with big weights , then see what you get, this issue might not then exist .