Kitchen Scale and Arduino?

This may sound stupid, but I'm wondering if I can use a kitchen scale to act as a weight sensor and connect it to my Arduino Uno. It's not important how I gathered the weight value, I just need to have a value of weight so I can use an "If/else" command.

I have already used an HX711 and a load cell, unfortunately, I think the HX711 is faulty. I don't have the time to buy another HX711 because this project is near its due date, and buying online is not an option for me.

What I meant by "the HX711 is faulty" is that while calibrating, the load cell cannot read any weight. But, I used a multimeter to test the jumpers. The GND and VCC jumpers from the HX711 to Arduino are good (5V). The voltage between E+ and A+ is 2V, and the voltage between E+ and E- reached up to 4V.

The HX711 feeds voltage to the load cell using E+/E- and reads the voltage in A+/A-, which is in the order of a few millivolts. This voltage changes slightly when the weight applied varies and thus must be sampled and amplified. The HX711 provides a comfortable digital reading.

Be aware that the load cell itself might be faulty. Read the resistance between all wires. You should get 1K between black/red and green/white, 750 ohms in the other combinations.

Double check your wiring, try connecting E- to GND if you have a green HX711 board, and post a diagram showing all your connections as well as your code

So you can get better, faster answers

2 Likes

I would think it is possible however doing it is another thing. Post the scales annotated schematic. You could also use a comparator/op amp to do the go no go by adding a pot to set the level.

1 Like

Is it possible that I could still read the resistance of each wire when it has been soldered to the HX711? But I tried to read the resistance before, it showed .124V when I set the multimeter to 2V. I don't have the resistance mode in my multimeter or I just didn't know how to use it then.

Here's the photo of my load cell and HX711 setup:

For the diagram:

Lastly, the code:

/*
 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 LOADCELL_DOUT_PIN  8
#define LOADCELL_SCK_PIN  9

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(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
  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;
  }
}
 

Thanks for the idea, but I only understood the "I would think it is possible however doing it is another thing." part. The latter terms are very new to me

This is what the serial monitor looked like with this code:
image

These solder joints are a serious problem, and especially with such low voltage signals, must be cleaned up.

You need to practice. Adafruit and Sparkfun have excellent soldering tutorials, with pictures and/or videos to show what clean solder joints look like.

3 Likes

I will note this one. It's the 3rd time that I have tried soldering this thing since it was really difficult for me (It's my first time using one). This is why I thought it was fine because of the 2V and 5V that were shown in the multimeter. But, I don't have enough time to practice soldering, do you have recommendations for alternatives like the kitchen scale that I was planning?

My recommendation is to do a different project that does not involving soldering on your part.

Soldering is a basic skill needed for electronics. Without mastering it your projects are destine to the dust bin. Look at this way: you are trying to climb from the foot of mount Everest to the peak wearing a bathing suite and a pocket knife. The success rate will not be much different.

6 Likes

At the very least get a toothbrush and some isopropyl (rubbing) alcohol and clean the gunk off the solder pads and wiring.  You may have bridged some solder between something and just can't see it for the residue.  In the same vein there may be a cold solder joint hidden in there.

1 Like

Unfortunately, there is now significant overlap between this thread and the OP's original: How do I use HX711 and a load cell? - #5 by DaveEvans

But, back to the OP of this one:

What sort of kitchen scale do you have? Post some photos.

1 Like

I'm scrapping off the scale idea, I'm switching to an ultrasonic sensor now. It would be time-consuming to use the load cell and HX711 since I don't have the skills to use a solder. Thanks though!

Get a soldering practice kit and a small amount of liquid flux. Your goal on the practice kit is to learn accurate soldering. Do not worry about making the widget work. If it works, win-win.
https://www.amazon.com/Turntable-Soldering-Practice-Learning-Electronics/dp/B0BLGRV5S7/

After you learn to confidently, accurately, cleanly solder, go back to the Arduino projects.

2 Likes

Perhaps you could tell us WHEN Is the deadline, and we may be able to advise a more suitable project?

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.