Collection: Load Cells & HX711

A load cell turns weight into an electrical signal, and the HX711 makes that signal readable by a microcontroller. Together they make digital kitchen scales, parcel weighers, filament scales and force sensors.

Inside a load cell, strain gauges bonded to a metal bar change resistance as the bar flexes. The output is only fractions of a millivolt, far too small for an Arduino or ESP32 to read directly. The HX711 is a 24-bit ADC with a built-in amplifier made for load cells. It runs on 2.6-5.5V and talks over its own two-wire data and clock link (not I2C or SPI), at 10 or 80 samples a second.

How to choose:

  • Match the load cell's rated capacity to the heaviest thing you will weigh, with some margin. Pushing a cell past its rating can damage it permanently.
  • Mount it firmly on a level surface.

Every build needs two calibration steps: tare with nothing on the scale, then place a known weight to work out the factor that converts raw counts to grams. Redo it whenever you change or remount the cell.

Frequently asked questions

Why do I need an HX711?

A load cell's output is only fractions of a millivolt. The HX711 amplifies and digitises it into a value your board can read.

Is the HX711 I2C?

No. It uses its own two-wire clock and data protocol, and a library handles it.

Does the HX711 work with an ESP32?

Yes. It runs on 2.6-5.5V, so it works on 3.3V boards as well as a 5V Uno.

How do I calibrate a load cell?

Tare with nothing on it, then add a known weight and compute the factor from raw counts to grams.

Guides