

The HX711 Load Cell (5kg) by SparkFun is a high-precision weight sensor designed to measure loads up to 5 kilograms. It operates by converting mechanical force into an electrical signal, which can then be amplified and processed by a microcontroller. This component is widely used in applications requiring accurate weight or force measurements, such as digital weighing scales, industrial automation, and DIY projects.








The HX711 Load Cell (5kg) is designed to work seamlessly with the HX711 ADC (Analog-to-Digital Converter) module, which amplifies and converts the small electrical signals from the load cell into a digital format readable by microcontrollers.
| Parameter | Value |
|---|---|
| Maximum Load Capacity | 5 kg |
| Rated Output | 1.0 ± 0.1 mV/V |
| Excitation Voltage | 5V DC (recommended) |
| Operating Voltage Range | 2.6V to 5.5V |
| Accuracy Class | C3 (High Precision) |
| Non-linearity | ±0.03% of full scale |
| Hysteresis | ±0.03% of full scale |
| Operating Temperature | -10°C to +40°C |
| Dimensions | 80mm x 12.7mm x 12.7mm |
The HX711 Load Cell has four wires that connect to the HX711 ADC module. Below is the pin configuration:
| Wire Color | Function | Description |
|---|---|---|
| Red | Excitation+ (E+) | Positive excitation voltage (VCC) |
| Black | Excitation- (E-) | Negative excitation voltage (GND) |
| White | Signal+ (S+) | Positive signal output |
| Green | Signal- (S-) | Negative signal output |
The HX711 ADC module typically has the following pinout for connecting to a microcontroller:
| Pin Name | Description |
|---|---|
| VCC | Power supply (2.6V to 5.5V) |
| GND | Ground |
| DT | Data output pin (connects to microcontroller) |
| SCK | Clock input pin (connects to microcontroller) |
Wiring the Load Cell to the HX711 ADC Module:
Connecting the HX711 Module to an Arduino UNO:
Install the HX711 Library:
Calibrate the Load Cell:
Below is an example Arduino sketch to read data from the HX711 Load Cell:
#include "HX711.h" // Include the HX711 library
#define DT 3 // Data pin connected to digital pin 3
#define SCK 2 // Clock pin connected to digital pin 2
HX711 scale; // Create an instance of the HX711 class
void setup() {
Serial.begin(9600); // Initialize serial communication
scale.begin(DT, SCK); // Initialize the HX711 with DT and SCK pins
Serial.println("Calibrating... Place a known weight on the scale.");
delay(5000); // Wait for the user to place a weight
scale.set_scale(); // Set the scale to default calibration factor
scale.tare(); // Reset the scale to zero
Serial.println("Calibration complete.");
}
void loop() {
// Read the weight from the load cell
float weight = scale.get_units(10); // Average 10 readings for stability
Serial.print("Weight: ");
Serial.print(weight);
Serial.println(" kg");
delay(1000); // Wait 1 second before the next reading
}
No Output or Incorrect Readings:
Fluctuating or Noisy Readings:
Calibration Issues:
Weight Readings Are Inaccurate:
Q: Can I use the HX711 Load Cell with a 3.3V microcontroller?
A: Yes, the HX711 module operates within a voltage range of 2.6V to 5.5V, making it compatible with 3.3V microcontrollers like the ESP32 or Raspberry Pi Pico.
Q: How do I improve the accuracy of the load cell?
A: Use a stable power supply, shielded cables, and ensure proper calibration. Minimize environmental factors such as vibrations and temperature fluctuations.
Q: Can I measure weights above 5kg with this load cell?
A: No, exceeding the 5kg limit may damage the load cell and result in inaccurate readings. Use a load cell with a higher capacity for heavier loads.
Q: How do I reset the scale to zero?
A: Use the scale.tare() function in your code to reset the scale to zero before taking measurements.