KY-039 finger heartbeat sensor with ESP32

Supply 3.3-5 V Bus ANALOG Measures heart rate
SVCCGND

Pins and ESP32 wiring

PinRoleESP32 pinNotes
SAnalog outputD34Very small signal that changes with each heartbeat. To an ADC1 pin (GPIO 32 to 39)
VCCPower3V3Middle pin. Use 3V3
GNDGroundGNDMarked - on the board

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

Starter code (Arduino)

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

void loop() {
  int mv = analogReadMilliVolts(34);  // S 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.