#include <Wire.h>
#include <LiquidCrystal_I2C.h>

const int batteryPin = A0; // Analog input pin for battery voltage

LiquidCrystal_I2C lcd(0x27, 20, 4); // Set the LCD address to 0x27 for a 20x4 display

void setup() {
  lcd.init();
  lcd.backlight();
  lcd.setCursor(0, 0);
  lcd.print("Battery Capacity:");
}

void loop() {
  int sensorValue = analogRead(batteryPin);
  float voltage = sensorValue * (5.0 / 1023.0); // Convert the analog reading to voltage
  int percentage = map(voltage, 0, 4.2, 0, 100); // Assuming 4.2V max battery voltage

  lcd.setCursor(0, 1);
  lcd.print("Voltage: ");
  lcd.print(voltage);
  lcd.print(" V");

  lcd.setCursor(0, 2);
  lcd.print("Capacity: ");
  lcd.print(percentage);
  lcd.print(" %");

  delay(1000); // Update the display every second
}
nano:12
nano:11
nano:10
nano:9
nano:8
nano:7
nano:6
nano:5
nano:4
nano:3
nano:2
nano:GND.2
nano:RESET.2
nano:0
nano:1
nano:13
nano:3.3V
nano:AREF
nano:A0
nano:A1
nano:A2
nano:A3
nano:A4
nano:A5
nano:A6
nano:A7
nano:5V
nano:RESET
nano:GND.1
nano:VIN
nano:12.2
nano:5V.2
nano:13.2
nano:11.2
nano:RESET.3
nano:GND.3
lcd1:GND
lcd1:VCC
lcd1:SDA
lcd1:SCL
pot1:GND
pot1:SIG
pot1:VCC