diff --git a/doc/Berechnung Spannungsteiler.pdf b/doc/Berechnung Spannungsteiler.pdf new file mode 100644 index 0000000..6020c9d Binary files /dev/null and b/doc/Berechnung Spannungsteiler.pdf differ diff --git a/lib/Battery/battery.h b/lib/Battery/battery.h index 3466f3e..3e741fe 100644 --- a/lib/Battery/battery.h +++ b/lib/Battery/battery.h @@ -89,8 +89,8 @@ class Battery { const float capacityVoltages[21] = {9.82, 10.83, 11.06, 11.12, 11.18, 11.24, 11.3, 11.36, 11.39, 11.45, 11.51, 11.56, - 11.62, 11.74, 11.86, 11.95, - 12.07, 12.25, 12.33, 12.45, + 11.62, 11.74, 11.86, 11.95, // 60 65 70 75 + 12.07, 12.25, 12.33, 12.45, // 80 85 90 95 12.6 }; }; diff --git a/lib/Navigation/navigation.h b/lib/Navigation/navigation.h index 3e50ded..cdf5aa9 100644 --- a/lib/Navigation/navigation.h +++ b/lib/Navigation/navigation.h @@ -14,6 +14,7 @@ #include #include +#include #include #include "route.h" diff --git a/src/SpecialMenus/Akku/menuAkku.cpp b/src/SpecialMenus/Akku/menuAkku.cpp index 78064ab..35078ac 100644 --- a/src/SpecialMenus/Akku/menuAkku.cpp +++ b/src/SpecialMenus/Akku/menuAkku.cpp @@ -36,6 +36,7 @@ void MenuAkku::printMenu() { char buf[17]; uint8_t controllerBattery = -1; uint8_t mainBattery = this->mainBattery->getBatteryPercent(); + double mainBatteryVolt = this->mainBattery->getBatteryVoltage(); if( controllerBattery != Ps3.data.status.battery ){ controllerBattery = Ps3.data.status.battery; @@ -54,9 +55,9 @@ void MenuAkku::printMenu() { lcd->setCursor(0, 0); lcd->printf("Controller: %s", buf); lcd->setCursor(0, 1); - lcd->printf("Main: %u%%", mainBattery); + lcd->printf("Main: %u%% %4.2fV", mainBattery, mainBatteryVolt); } - std::cout << "Controller: " << buf << " Main: " << (int) mainBattery << "%" << std::endl; + std::cout << "Controller: " << buf << " Main: " << (int) mainBattery << "% " << mainBatteryVolt << "V" << std::endl; } void MenuAkku::update() { diff --git a/src/main.cpp b/src/main.cpp index dce9627..b62776c 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -60,10 +60,10 @@ void setup() { Serial.begin(115200); char wifiIndicator = 'X'; - mainBattery = new Battery(35, 690000, 220000); + mainBattery = new Battery(35, 692000, 218500); Wire.begin(21, 19); - // i2cScanner(); + i2cScanner(); lcd = new LiquidCrystal_I2C(0x3F,16,2); lcd->init(); lcd->clear(); @@ -189,14 +189,15 @@ void i2cScanner() { std::cout << "I2C device found at address 0x"; if (address<16) std::cout << "0"; - std::cout << std::hex << address << std::endl; + std::cout << std::hex << (int) address << std::endl; + // std::cout << (int) address << std::endl; nDevices++; } else if (error==4) { std::cout << "Unknow error at address 0x"; if (address<16) std::cout << "0"; - std::cout << std::hex << address << std::endl; + std::cout << std::hex << (int) address << std::endl; } } if (nDevices == 0)