2

I am trying to set up a load cell using the HX711 amplifier. Whenever I upload my sketch, my serial monitor only will read zeros regardless of load applied to the sensor (no signal appears to be sending from my load cell).

Here is my wiring, with the Arduino Uno connected to a COM port. I am using an Arduino Uno, HX711, and Sparkfun's TAL220 Straight Bar 10kg load cell.

enter image description here

Here is the calibration sketch I am using (from the HX711 hookup guide):

#include <HX711.h>
#define DOUT 9
#define CLK 8
HX711 scale(DOUT, CLK);
float calibration_factor = 282650; //-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.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(" kgs"); //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;
 }
}

And here is a typical output from the serial monitor (I previously had this load cell functioning correctly, which is why my calibration factor is so different).

enter image description here

Observations:

  • Whenever I upload the sketch and open the serial monitor, the TX LED on my Arduino Uno will light up flashing, but the RX LED stays off.
  • Removing the scale.tare() step will output a constant nonzero value, but the load cell is unaffected by any loading:

image description

  • I have tried adding an external power supply to the hookup assembly (I don't know if this is even necessary, but I know the load cell requires excitation to function, so I thought I'd give it a try). So far it has not changed the output in any way.
  • I have also tried adjusting the calibration factor, which only offsets the constant value outputted.
  • I have re-soldered the connecting wires to the load cell and replaced the remaining wires, as well as tried multiple Uno Boards and a new USB cord. I have also gone over my wiring and had my labmate check it too (though I will definitely not rule out it being some small wiring/hardware mistake on my part, as I am still very new to Arduino).

Thank you for any suggestions!

jsotola
1,5542 gold badges12 silver badges20 bronze badges
asked Apr 7, 2018 at 18:17
3
  • you do not appear to have any code that reads the load cell Commented Apr 7, 2018 at 20:29
  • This is a calibration sketch, I also have a separate sketch that reads the load cell once the calibration is complete - is this what you mean? Commented Apr 7, 2018 at 20:38
  • so if i use a calibration factor of 8388607 and t reads zero then my hx711 is broken? i tried it and it reads -0.5kg Commented Mar 30, 2021 at 12:09

1 Answer 1

1

The zero factor 8388607 showed up in a similar question on another forum and is associated with the range of the HX711 amplifier. This indicated that my amplifier was broken; I have since replaced it and am now receiving a signal from the load cell.

answered Apr 18, 2018 at 20:36

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.