ACS712 current sensor module with ESP32

Supply 5 V Bus ANALOG Measures current
VCCOUTGNDIP+IP-

Pins and ESP32 wiring

PinRoleESP32 pinNotes
VCCPowerVINNeeds 5 V: use VIN
OUTAnalog outputD34Sits at 2.5 V with no current and can reach 5 V: use a voltage divider before the ADC
GNDGroundGND
IP+Not wired to the ESP32—Screw terminal: current path in. Never wire to the ESP32
IP-Not wired to the ESP32—Screw terminal: current path out

Suggested wiring for the 30-pin ESP32 DevKit, avoiding flash, input-only and strapping pins. BoardPilot checks it for you as you wire.

This module is sold for 5 V. Its outputs may be 5 V: use a level shifter or a voltage divider on ESP32 inputs.

Starter code (Arduino)

void setup() { Serial.begin(115200); }

void loop() {
  int mv = analogReadMilliVolts(34);  // OUT on GPIO 34
  Serial.println(mv);
  delay(200);
}

Sources

Try it in 3D in BoardPilot

BoardPilot Part data (JSON)

Related parts

Part data: CC BY 4.0, free to reuse with credit to BoardPilot.