ESP32 Thing Plus Battery level aund usb status with mcp73831 and ap2112k

Good morning,

I’m trying to know the battery charge level of my Sparkfun thing Plus with its mcp73831 and ap2112k but I can’t get it. Can someone give me a hand? Thank you so much,

#include <Wire.h>

const int mcp73831_address = 0x6B; // Dirección I2C del MCP73831
const int ap2112k_pin = 33; // Pin de salida del AP2112K

void setup() {
  Serial.begin(9600);
  Wire.begin();
  pinMode(ap2112k_pin, INPUT);
}

void loop() {
  // Leer el estado de VBUS
  bool isUsbConnected = digitalRead(5); // Pin 5 en la SparkFun Thing Plus es la salida VBUS del MCP73831
  if (isUsbConnected) {
    Serial.println("El sistema está siendo alimentado por USB y la batería no se está cargando.");
  } else {
    Serial.println("La batería se está cargando o el sistema está siendo alimentado por la batería.");
  }

  // Leer el nivel de carga de la batería
  Wire.beginTransmission(mcp73831_address); // Envía una solicitud de lectura
  Wire.write(0x07); // Registra la tensión de la batería
  Wire.endTransmission(false); // Termina la transmisión sin liberar el bus I2C

  Wire.requestFrom(mcp73831_address, 2); // Solicita 2 bytes de datos
  int value = Wire.read() << 8 | Wire.read(); // Combina los dos bytes en un valor entero

  float voltage = (value >> 4) * 0.008f; // Calcula el voltaje medido
  float batteryPercent = (voltage - 3.0) / (4.2 - 3.0) * 100.0; // Calcula el nivel de carga de la batería en porcentaje

  Serial.print("Nivel de batería: ");
  Serial.print(batteryPercent);
  Serial.println("%");

  // Leer el nivel de alimentación del AP2112K
  float voltageIn = analogRead(ap2112k_pin) * (3.3 / 4096.0); // Lee el nivel de voltaje en el pin de entrada del AP2112K

  Serial.print("Nivel de voltaje de entrada: ");
  Serial.print(voltageIn);
  Serial.println("V");

  delay(1000);
}

What is being output currently? Does the code run?

There appear to be a lot of methods https://github.com/espressif/arduino-es … ?q=battery - you could likely just copy one of these