

The HX711 is a precision 24-bit analog-to-digital converter (ADC) designed for high-accuracy weight measurement and industrial control applications. Manufactured by Arduino under the part ID HX711-Module, this component integrates a low-noise programmable gain amplifier (PGA) to interface directly with load cells, making it ideal for building digital weighing scales. Its compact design and high resolution make it a popular choice for applications requiring precise weight measurements.








The HX711 is optimized for high precision and low noise, making it suitable for sensitive measurements. Below are its key technical details:
| Parameter | Value |
|---|---|
| Supply Voltage | 2.6V to 5.5V |
| Operating Current | ~1.5mA |
| Standby Current | <1µA |
| ADC Resolution | 24-bit |
| Input Channels | 2 (Channel A and Channel B) |
| PGA Gain | 32, 64, or 128 (programmable) |
| Input Voltage Range | ±40mV (at Gain = 128) |
| Data Output Rate | 10Hz or 80Hz (selectable) |
| Communication Interface | Serial (2-wire: Data and Clock) |
| Operating Temperature Range | -40°C to +85°C |
The HX711 module has a total of 4 pins for power and communication. Below is the pinout:
| Pin Name | Description |
|---|---|
| VCC | Power supply input (2.6V to 5.5V). Connect to the 5V pin of the Arduino. |
| GND | Ground connection. Connect to the GND pin of the Arduino. |
| DT (Data) | Serial data output. Connect to a digital input pin on the Arduino. |
| SCK (Clock) | Serial clock input. Connect to a digital output pin on the Arduino. |
The HX711 is straightforward to use with microcontrollers like the Arduino UNO. Below are the steps to integrate it into a circuit and use it effectively:
Below is an example Arduino sketch to read data from the HX711 module using the popular HX711 library:
#include "HX711.h" // Include the HX711 library
// Define HX711 pins
#define DT_PIN 3 // Data pin connected to Arduino digital pin 3
#define SCK_PIN 2 // Clock pin connected to Arduino digital pin 2
// Create an HX711 object
HX711 scale;
void setup() {
Serial.begin(9600); // Initialize serial communication
scale.begin(DT_PIN, SCK_PIN); // Initialize the HX711 with the defined pins
// Wait for the scale to stabilize
Serial.println("Initializing scale...");
delay(2000);
// Set the scale to zero
scale.set_scale(); // You can set a calibration factor here if known
scale.tare(); // Reset the scale to zero
Serial.println("Scale initialized.");
}
void loop() {
// Read weight from the HX711
if (scale.is_ready()) {
float weight = scale.get_units(10); // Average 10 readings for stability
Serial.print("Weight: ");
Serial.print(weight);
Serial.println(" grams");
} else {
Serial.println("HX711 not ready. Check connections.");
}
delay(500); // Wait 500ms before the next reading
}
| Issue | Possible Cause | Solution |
|---|---|---|
| No data output from the HX711 | Loose or incorrect wiring | Verify all connections and ensure proper pin mapping. |
| Unstable or fluctuating weight readings | Electrical noise or unstable power supply | Use shorter wires, proper grounding, and a stable power source. |
| Incorrect weight readings | Calibration not performed | Perform calibration using a known weight and set the correct calibration factor. |
| HX711 not detected by Arduino | Incorrect pin configuration or library issue | Check the pin definitions in the code and ensure the HX711 library is installed. |
Can the HX711 measure negative weights?
Yes, the HX711 can measure negative weights if the load cell is configured to detect both tension and compression.
What is the maximum weight the HX711 can measure?
The maximum weight depends on the load cell used. The HX711 itself supports an input voltage range of ±40mV at a gain of 128.
Can I use the HX711 with a 3.3V microcontroller?
Yes, the HX711 operates at 2.6V to 5.5V, making it compatible with 3.3V systems. Ensure the load cell is also compatible with 3.3V operation.
How do I change the data rate?
The data rate can be changed by connecting a resistor to the RATE pin on the HX711 IC. Most modules are preconfigured for 10Hz.
By following this documentation, you can effectively integrate the HX711 into your projects for precise weight measurement.