

The HX711 AD Module, manufactured by Makro, is a precision 24-bit analog-to-digital converter (ADC) designed for applications requiring high accuracy and stability. It is widely used in weigh scales, industrial control systems, and other applications where small changes in voltage need to be measured. The HX711 simplifies the process of interfacing load cells or other sensors with microcontrollers by providing a high-resolution digital output.








The HX711 AD Module is designed to provide high precision and ease of use. Below are its key technical details:
| Parameter | Value |
|---|---|
| Manufacturer | Makro |
| Part ID | HX711 AD Module |
| ADC Resolution | 24-bit |
| Operating Voltage | 2.6V to 5.5V |
| Typical Operating Current | ~1.5mA |
| Standby Current | <1µA |
| Input Channels | 2 (Channel A and Channel B) |
| Gain | Channel A: 128 or 64, Channel B: 32 |
| Data Rate | 10Hz or 80Hz |
| Interface | Serial (2-wire: Data and Clock) |
| Operating Temperature | -40°C to +85°C |
The HX711 module has a total of 4 pins for interfacing with a microcontroller. Below is the pinout:
| Pin Name | Description |
|---|---|
| VCC | Power supply pin (2.6V to 5.5V). Connect to the microcontroller's power source. |
| GND | Ground pin. Connect to the ground of the circuit. |
| DT (Data) | Serial data output pin. Used for communication with the microcontroller. |
| SCK (Clock) | Serial clock input pin. Used to synchronize data transfer. |
The HX711 is commonly used to interface load cells with microcontrollers. Below are the steps to use the HX711 in a circuit:
Connect the Load Cell to the HX711:
Connect the HX711 to the Microcontroller:
DT pin of the HX711 to a digital input pin on the microcontroller.SCK pin of the HX711 to another digital output pin on the microcontroller.VCC and GND to the microcontroller's power and ground.Load Cell --> HX711 --> Microcontroller (e.g., Arduino UNO)
Below is an example code to interface the HX711 with an Arduino UNO:
#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
HX711 scale; // Create an instance of the HX711 class
void setup() {
Serial.begin(9600); // Initialize serial communication
scale.begin(DT_PIN, SCK_PIN); // Initialize the HX711 with the defined pins
Serial.println("HX711 initialized. Place weight on the scale.");
}
void loop() {
if (scale.is_ready()) { // Check if the HX711 is ready
long reading = scale.get_units(); // Get the weight reading
Serial.print("Weight: ");
Serial.print(reading); // Print the weight value
Serial.println(" units");
} else {
Serial.println("HX711 not ready. Check connections.");
}
delay(500); // Wait for 500ms before the next reading
}
No Output or Incorrect Readings:
Fluctuating or Noisy Readings:
HX711 Not Responding:
DT and SCK pin connections.Q1: Can the HX711 measure multiple load cells simultaneously?
A1: The HX711 has two input channels (A and B), but only one channel can be read at a time. For multiple load cells, use multiple HX711 modules.
Q2: How do I calibrate the HX711?
A2: Calibration involves determining the scale factor by applying a known weight to the load cell and adjusting the readings accordingly. Use the HX711 library's calibration functions for this purpose.
Q3: What is the maximum weight the HX711 can measure?
A3: The maximum weight depends on the load cell's capacity. The HX711 itself does not impose a weight limit but provides high-resolution readings for the connected load cell.
Q4: Can I use the HX711 with a 3.3V microcontroller?
A4: Yes, the HX711 operates at 2.6V to 5.5V, making it compatible with both 3.3V and 5V systems.
By following this documentation, you can effectively integrate the HX711 AD Module into your projects for precise weight and voltage measurements.