MAX30102 heart rate + SpO2 con ESP32

Alimentazione 3.3-5 V Bus I2C Indirizzo I2C 0x57 Misura battito cardiaco, ossigeno nel sangue
VINSDASCLINTIRDRDGND

Pin e collegamento all’ESP32

PinRuoloPin ESP32Note
VINAlimentazione3V3
SDADati I2C (SDA)D21
SCLClock I2C (SCL)D22
INTInterruptD35
IRDNon collegato all’ESP32—IR LED output. Leave unconnected
RDNon collegato all’ESP32—Red LED output. Leave unconnected
GNDMassaGND

Collegamento consigliato per l’ESP32 DevKit a 30 pin, evitando i pin della flash, di sola lettura e di strapping. BoardPilot lo controlla mentre colleghi.

Verifica che sia il chip originale

Leggi il registro 0xFF: un componente originale risponde 0x15. BoardPilot lo fa da solo in “Risolvi un problema”.

Codice di partenza (Arduino)

#include <Wire.h>

void setup() {
  Serial.begin(115200);
  Wire.begin(21, 22);  // SDA = GPIO 21, SCL = GPIO 22
  Wire.beginTransmission(0x57);
  bool found = Wire.endTransmission() == 0;
  Serial.println(found ? "MAX30102 heart rate + SpO2 found at 0x57" : "Not found: check power, GND and SDA/SCL");
}

void loop() {}

Fonti

Provalo in 3D in BoardPilot

BoardPilot Dati del componente (JSON)

Componenti simili

Dati dei componenti: CC BY 4.0, riutilizzabili citando BoardPilot.