diff --git a/firmware/config/boards/hellen/alphax-2chan/board_configuration.cpp b/firmware/config/boards/hellen/alphax-2chan/board_configuration.cpp index 1bcf73cffb..800c977bcd 100644 --- a/firmware/config/boards/hellen/alphax-2chan/board_configuration.cpp +++ b/firmware/config/boards/hellen/alphax-2chan/board_configuration.cpp @@ -38,19 +38,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[3] = Gpio::Unassigned; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - engineConfiguration->vbattAdcChannel = H144_IN_VBATT; - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs, hall engineConfiguration->triggerInputPins[0] = Gpio::H144_IN_CRANK; @@ -96,7 +83,7 @@ static bool isMegaModuleRevision() { } void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); int16_t hellenBoardId = engine->engineState.hellenBoardId; // rev.D uses SPI1 pins for CAN2, but rev.E and later uses mega-module meaning SPI1 for SD-card diff --git a/firmware/config/boards/hellen/alphax-4chan/board_configuration.cpp b/firmware/config/boards/hellen/alphax-4chan/board_configuration.cpp index 5940d7b854..fedaff5cb8 100644 --- a/firmware/config/boards/hellen/alphax-4chan/board_configuration.cpp +++ b/firmware/config/boards/hellen/alphax-4chan/board_configuration.cpp @@ -61,19 +61,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[3] = Gpio::H144_IGN_4; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - engineConfiguration->vbattAdcChannel = H144_IN_VBATT; - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs, hall engineConfiguration->triggerInputPins[0] = Gpio::H144_IN_CRANK; @@ -142,7 +129,7 @@ void boardOnConfigurationChange(engine_configuration_s * /*previousConfiguration #include "hellen_leds_144.cpp" void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); if (is_F_OrOlder()) { setHellenEnPin(Gpio::H144_OUT_IO3); diff --git a/firmware/config/boards/hellen/alphax-8chan-revA/board_configuration.cpp b/firmware/config/boards/hellen/alphax-8chan-revA/board_configuration.cpp index 461c401135..7575ed06bd 100644 --- a/firmware/config/boards/hellen/alphax-8chan-revA/board_configuration.cpp +++ b/firmware/config/boards/hellen/alphax-8chan-revA/board_configuration.cpp @@ -66,19 +66,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[3] = Gpio::H144_IGN_4; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - engineConfiguration->vbattAdcChannel = H144_IN_VBATT; - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs, hall engineConfiguration->triggerInputPins[0] = H144_USB1ID; @@ -138,7 +125,7 @@ void boardOnConfigurationChange(engine_configuration_s * /*previousConfiguration #include "hellen_leds_144.cpp" void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); setHellenSdCardSpi2(); diff --git a/firmware/config/boards/hellen/alphax-8chan/board_configuration.cpp b/firmware/config/boards/hellen/alphax-8chan/board_configuration.cpp index de48621624..6520fd4b88 100644 --- a/firmware/config/boards/hellen/alphax-8chan/board_configuration.cpp +++ b/firmware/config/boards/hellen/alphax-8chan/board_configuration.cpp @@ -67,19 +67,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[3] = Gpio::MM176_IGN4; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - engineConfiguration->vbattAdcChannel = MM176_IN_VBATT; - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs, hall engineConfiguration->triggerInputPins[0] = Gpio::MM176_USB1ID; @@ -144,7 +131,7 @@ void boardOnConfigurationChange(engine_configuration_s * /*previousConfiguration #include "hellen_leds_144.cpp" void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); setHellenSdCardSpi1(); diff --git a/firmware/config/boards/hellen/hellen-112-17/board_configuration.cpp b/firmware/config/boards/hellen/hellen-112-17/board_configuration.cpp index 3961fddc89..dd708510e8 100644 --- a/firmware/config/boards/hellen/hellen-112-17/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen-112-17/board_configuration.cpp @@ -24,20 +24,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[3] = Gpio::MM100_IGN4; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = MM100_IN_VBATT; - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { engineConfiguration->vehicleSpeedSensorInputPin = Gpio::MM100_IN_D2; @@ -61,7 +47,7 @@ static void setupDefaultSensorInputs() { void setBoardConfigOverrides() { // rev A needs EN pin but newer revisions would potentially not use it setHellenMegaEnPin(); - setupVbatt(); + setHellenVbatt(); setHellenSdCardSpi1(); configureHellenMegaAccCS2Pin(); diff --git a/firmware/config/boards/hellen/hellen-gm-e67/board_configuration.cpp b/firmware/config/boards/hellen/hellen-gm-e67/board_configuration.cpp index 2c9a91eb13..e1fcdb3ca9 100644 --- a/firmware/config/boards/hellen/hellen-gm-e67/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen-gm-e67/board_configuration.cpp @@ -40,20 +40,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[7] = Gpio::H144_IGN_8; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = EFI_ADC_5; // 4T - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs, hall engineConfiguration->triggerInputPins[0] = Gpio::H144_IN_SENS2; @@ -77,7 +63,7 @@ static void setupDefaultSensorInputs() { #include "hellen_leds_144.cpp" void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); setHellenSdCardSpi2(); setDefaultHellenAtPullUps(); diff --git a/firmware/config/boards/hellen/hellen-honda-k/board_configuration.cpp b/firmware/config/boards/hellen/hellen-honda-k/board_configuration.cpp index 32d3e99577..36710257af 100644 --- a/firmware/config/boards/hellen/hellen-honda-k/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen-honda-k/board_configuration.cpp @@ -25,20 +25,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[3] = Gpio::H144_IGN_4; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = EFI_ADC_5; // 4T - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { engineConfiguration->vehicleSpeedSensorInputPin = Gpio::H144_IN_VSS; @@ -63,7 +49,7 @@ void onBoardStandBy() { void setBoardConfigOverrides() { setHellenMegaEnPin(); - setupVbatt(); + setHellenVbatt(); setHellenSdCardSpi1(); configureHellenMegaAccCS2Pin(); diff --git a/firmware/config/boards/hellen/hellen-nb1/board_configuration.cpp b/firmware/config/boards/hellen/hellen-nb1/board_configuration.cpp index 905d56147c..0f81094573 100644 --- a/firmware/config/boards/hellen/hellen-nb1/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen-nb1/board_configuration.cpp @@ -32,20 +32,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[3] = Gpio::Unassigned; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = EFI_ADC_5; // 4T - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs, hall engineConfiguration->triggerInputPins[0] = Gpio::H144_IN_CRANK; @@ -67,7 +53,7 @@ static void setupDefaultSensorInputs() { #include "hellen_leds_144.cpp" void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); setHellenSdCardSpi2(); diff --git a/firmware/config/boards/hellen/hellen121nissan/board_configuration.cpp b/firmware/config/boards/hellen/hellen121nissan/board_configuration.cpp index f0a4ee8f73..e220c81d62 100644 --- a/firmware/config/boards/hellen/hellen121nissan/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen121nissan/board_configuration.cpp @@ -33,20 +33,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[5] = Gpio::H144_IGN_6; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = EFI_ADC_5; // 4T - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs engineConfiguration->triggerInputPins[0] = Gpio::H144_IN_CRANK; @@ -71,7 +57,7 @@ static void setupDefaultSensorInputs() { #include "hellen_leds_144.cpp" void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); setHellenSdCardSpi3(); engineConfiguration->etbIo[0].directionPin1 = Gpio::H144_OUT_PWM7; diff --git a/firmware/config/boards/hellen/hellen121vag/board_configuration.cpp b/firmware/config/boards/hellen/hellen121vag/board_configuration.cpp index c9deafa505..3b54d63f56 100644 --- a/firmware/config/boards/hellen/hellen121vag/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen121vag/board_configuration.cpp @@ -29,20 +29,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[3] = Gpio::E3; // 94 - IGN_4 } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = EFI_ADC_5; // 4T - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs engineConfiguration->triggerInputPins[0] = Gpio::B1; // 82 - VR @@ -72,7 +58,7 @@ static void setupDefaultSensorInputs() { #include "hellen_leds_176.cpp" void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); setHellenSdCardSpi3(); diff --git a/firmware/config/boards/hellen/hellen128/board_configuration.cpp b/firmware/config/boards/hellen/hellen128/board_configuration.cpp index fbe1ef3218..e49ca48824 100644 --- a/firmware/config/boards/hellen/hellen128/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen128/board_configuration.cpp @@ -39,20 +39,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[7] = Gpio::I7; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = EFI_ADC_5; // 4T - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs engineConfiguration->triggerInputPins[0] = Gpio::B1; @@ -125,7 +111,7 @@ static void setHellen128ETBConfig() { #include "hellen_leds_176.cpp" void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); setHellenSdCardSpi2(); diff --git a/firmware/config/boards/hellen/hellen154hyundai/board_configuration.cpp b/firmware/config/boards/hellen/hellen154hyundai/board_configuration.cpp index c32ba026d9..8e480fddd6 100644 --- a/firmware/config/boards/hellen/hellen154hyundai/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen154hyundai/board_configuration.cpp @@ -28,20 +28,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[3] = Gpio::H144_IGN_4; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = EFI_ADC_5; // 4T - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { engineConfiguration->vvtMode[0] = VVT_SINGLE_TOOTH; engineConfiguration->vvtMode[1] = VVT_SINGLE_TOOTH; @@ -66,7 +52,7 @@ static void setupDefaultSensorInputs() { static bool isFirstInvocation = true; void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); setHellenSdCardSpi2(); diff --git a/firmware/config/boards/hellen/hellen64_miataNA6_94/board_configuration.cpp b/firmware/config/boards/hellen/hellen64_miataNA6_94/board_configuration.cpp index 2a9e25ba4d..bf786c12ba 100644 --- a/firmware/config/boards/hellen/hellen64_miataNA6_94/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen64_miataNA6_94/board_configuration.cpp @@ -32,20 +32,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[3] = Gpio::Unassigned; // Gpio::E3 } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = EFI_ADC_5; // 4T - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs, hall engineConfiguration->triggerInputPins[0] = Gpio::A6; @@ -67,7 +53,7 @@ static void setupDefaultSensorInputs() { #include "hellen_leds_176.cpp" void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); setHellenSdCardSpi2(); diff --git a/firmware/config/boards/hellen/hellen72/board_configuration.cpp b/firmware/config/boards/hellen/hellen72/board_configuration.cpp index 274816d9b5..e0986487aa 100644 --- a/firmware/config/boards/hellen/hellen72/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen72/board_configuration.cpp @@ -27,20 +27,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[3] = Gpio::Unassigned; // Gpio::E3 } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = EFI_ADC_5; // 4T - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs engineConfiguration->triggerInputPins[0] = Gpio::B1; @@ -63,7 +49,7 @@ static void setupDefaultSensorInputs() { #include "hellen_leds_176.cpp" void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); if (engine->engineState.hellenBoardId == -1) { // Rev a-d use SPI3 for SD card diff --git a/firmware/config/boards/hellen/hellen81/board_configuration.cpp b/firmware/config/boards/hellen/hellen81/board_configuration.cpp index 6cf132aa9e..03d65416eb 100644 --- a/firmware/config/boards/hellen/hellen81/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen81/board_configuration.cpp @@ -39,20 +39,6 @@ Gpio getWarningLedPin() { return Gpio::H11; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = EFI_ADC_5; - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs engineConfiguration->triggerInputPins[0] = Gpio::B1; @@ -73,7 +59,7 @@ static void setupDefaultSensorInputs() { } void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); // Hellen81a uses SPI2 for SD-card #if 1 diff --git a/firmware/config/boards/hellen/hellen88bmw/board_configuration.cpp b/firmware/config/boards/hellen/hellen88bmw/board_configuration.cpp index 089a9f5700..e605590219 100644 --- a/firmware/config/boards/hellen/hellen88bmw/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen88bmw/board_configuration.cpp @@ -30,20 +30,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[5] = Gpio::H144_IGN_6; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = H144_IN_VBATT; // 4T - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs engineConfiguration->triggerInputPins[0] = Gpio::H144_IN_CRANK; @@ -66,7 +52,7 @@ static void setupDefaultSensorInputs() { #include "hellen_leds_144.cpp" void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); // hellen88bmw uses L6205PD engineConfiguration->etbIo[0].directionPin1 = Gpio::H144_OUT_PWM2; // ETB+ diff --git a/firmware/config/boards/hellen/hellenNA8_96/board_configuration.cpp b/firmware/config/boards/hellen/hellenNA8_96/board_configuration.cpp index 2855e792b2..e394aff86f 100644 --- a/firmware/config/boards/hellen/hellenNA8_96/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellenNA8_96/board_configuration.cpp @@ -32,20 +32,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[3] = Gpio::Unassigned; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = EFI_ADC_5; // 4T - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { // trigger inputs, hall engineConfiguration->triggerInputPins[0] = Gpio::H144_IN_CAM; @@ -67,7 +53,7 @@ static void setupDefaultSensorInputs() { #include "hellen_leds_144.cpp" void setBoardConfigOverrides() { - setupVbatt(); + setHellenVbatt(); setHellenSdCardSpi2(); diff --git a/firmware/config/boards/hellen/hellen_common.cpp b/firmware/config/boards/hellen/hellen_common.cpp index 9d37d9c8a3..6be832e10b 100644 --- a/firmware/config/boards/hellen/hellen_common.cpp +++ b/firmware/config/boards/hellen/hellen_common.cpp @@ -11,6 +11,19 @@ void setHellenCan() { engineConfiguration->canRxPin = H176_CAN_RX; } +void setHellenVbatt() { + // 4.7k high side/4.7k low side = 2.0 ratio divider + engineConfiguration->analogInputDividerCoefficient = 2.0f; + + // set vbatt_divider 5.835 + // 33k / 6.8k + engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 + + engineConfiguration->vbattAdcChannel = H144_IN_VBATT; + + engineConfiguration->adcVcc = 3.29f; +} + void setHellen64Can() { engineConfiguration->canTxPin = Gpio::B9; engineConfiguration->canRxPin = Gpio::B8; diff --git a/firmware/config/boards/hellen/uaefi/board_configuration.cpp b/firmware/config/boards/hellen/uaefi/board_configuration.cpp index d5744ebf1f..41f5f2100c 100644 --- a/firmware/config/boards/hellen/uaefi/board_configuration.cpp +++ b/firmware/config/boards/hellen/uaefi/board_configuration.cpp @@ -24,20 +24,6 @@ static void setIgnitionPins() { engineConfiguration->ignitionPins[3] = Gpio::MM100_IGN4; } -static void setupVbatt() { - // 4.7k high side/4.7k low side = 2.0 ratio divider - engineConfiguration->analogInputDividerCoefficient = 2.0f; - - // set vbatt_divider 5.835 - // 33k / 6.8k - engineConfiguration->vbattDividerCoeff = (33 + 6.8) / 6.8; // 5.835 - - // pin input +12 from Main Relay - engineConfiguration->vbattAdcChannel = MM100_IN_VBATT; - - engineConfiguration->adcVcc = 3.29f; -} - static void setupDefaultSensorInputs() { engineConfiguration->vehicleSpeedSensorInputPin = Gpio::MM100_IN_D2; @@ -61,7 +47,7 @@ static void setupDefaultSensorInputs() { void setBoardConfigOverrides() { // rev A needs EN pin but newer revisions would potentially not use it setHellenMegaEnPin(); - setupVbatt(); + setHellenVbatt(); setHellenSdCardSpi1(); configureHellenMegaAccCS2Pin(); diff --git a/firmware/config/boards/hellen_meta.h b/firmware/config/boards/hellen_meta.h index bdb7ba34e8..e049c393ec 100644 --- a/firmware/config/boards/hellen_meta.h +++ b/firmware/config/boards/hellen_meta.h @@ -23,6 +23,8 @@ void configureHellenCanTerminator(); void setHellenCan(); void setHellen64Can(); +void setHellenVbatt(); + int detectHellenBoardId(); void detectHellenBoardType();