ESP32 ↔ HX711 + load cell wiring diagram

Purpose

Detailed pin-by-pin wiring for the weight chain. Follow this page when you connect the HX711 board and load cell to the ESP32.

HX711 power connections

HX711 pin ESP32 pin Wire colour (typical) Notes
VCC 5V or 3.3V Red The HX711 board accepts 5 V and generates its own 3.3 V rail internally
GND GND Black Must share ground with ESP32 — different grounds cause ADC drift

HX711 digital connections (to ESP32)

These are the two GPIO lines the firmware talks to:

flowchart LR
    subgraph ESP["ESP32 DevKit"]
        GPIO16[GPIO 16<br/>DT — data out from HX711]
        GPIO17[GPIO 17<br/>SCK — clock to HX711]
    end

    subgraph HX711_BOARD["HX711 breakout board"]
        DT[DT pin]
        SCK[SCK pin]
    end

    ESP32 -- "GPIO 16 → DT" --> DT
    ESP32 -- "GPIO 17 → SCK" --> SCK

Firmware config: HX711_DT_PIN = 16, HX711_SCK_PIN = 17. These can be changed later but keeping them fixed makes the lab wiring consistent.

Load cell bridge connections (to HX711)

The load cell is a Wheatstone bridge. The HX711 board labels each terminal clearly:

flowchart TB
    subgraph LOAD_CELL["Load cell wires"]
        E_PLUS[E+ — Excitation +]
        E_MINUS[E- — Excitation -]
        A_PLUS[A+ — Amplifier + / Signal +]
        A_MINUS[A- — Amplifier - / Signal -]
    end

    subgraph HX711_BOARD["HX711 breakout board pins"]
        TP[E+ pin]
        TN[E- pin]
        RP[A+ pin]
        RN[A- pin]
    end

    E_PLUS --- TP
    E_MINUS --- TN
    A_PLUS --- RP
    A_MINUS --- RN

    style LOAD_CELL fill:#e8f5e9,stroke:#2e7d32
    style HX711_BOARD fill:#fff3e0,stroke:#ef6c00

Typical wire colours on a 4-wire load cell

Bridge terminal Common colour HX711 label
Excitation + (E+) Red TP or E+
Excitation - (E-) Black TN or E-
Signal + (A+) White RP or A+
Signal - (A-) Green RN or A-

Tip: If the readings go in the wrong direction, swap A+ and A-. The bridge polarity is the only thing that flips sign.

Breadboard wiring tips for lab use

flowchart LR
    subgraph BREADBOARD["Breadboard layout"]
        ESP[(ESP32)]
        HX711[(HX711 board)]
        LC[Load cell<br/>screw terminal]
    end

    ESP -- "Dupont jumper wires" --> HX711
    HX711 -- "4-wire cable to screw block" --> LC

    style BREADBOARD fill:#fafafa,stroke:#9e9e9e,stroke-dasharray: 5 5
  • Use short Dupont jumper wires between ESP32 and HX711 first.
  • If readings jump, switch to screw-terminal blocks for both power and signal lines.
  • Keep the load-cell cable away from USB power bricks or switching converters — the bridge signals are very small and noise-sensitive.
  • Label each wire with masking tape: E+, E-, A+, A-, DT, SCK, VCC, GND.

Common problems

Symptom Check
Readings jump randomly Verify HX711 and ESP32 share the same ground
No readings at all Check DT/SCK wiring; try swapping GPIO 16/17 in firmware config
Load cell reads negative Swap A+ and A- wires on the load-cell terminal
Large offset after tare Cable is moving or touching something — fix cable routing with a zip tie