diff --git a/firmware/config/boards/hellen/alphax-2chan/board_configuration.cpp b/firmware/config/boards/hellen/alphax-2chan/board_configuration.cpp index 329e6d2617..a22d57aa24 100644 --- a/firmware/config/boards/hellen/alphax-2chan/board_configuration.cpp +++ b/firmware/config/boards/hellen/alphax-2chan/board_configuration.cpp @@ -123,8 +123,7 @@ void setBoardConfigOverrides() { engineConfiguration->clt.config.bias_resistor = 4700; engineConfiguration->iat.config.bias_resistor = 4700; - engineConfiguration->canTxPin = Gpio::D1; - engineConfiguration->canRxPin = Gpio::D0; + setHellenCan(); } /** 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 7b8429ff71..54eff631bf 100644 --- a/firmware/config/boards/hellen/hellen-gm-e67/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen-gm-e67/board_configuration.cpp @@ -103,8 +103,7 @@ void setBoardConfigOverrides() { engineConfiguration->clt.config.bias_resistor = 4700; engineConfiguration->iat.config.bias_resistor = 4700; - engineConfiguration->canTxPin = Gpio::D1; - engineConfiguration->canRxPin = Gpio::D0; + setHellenCan(); // TLE9201 driver // This chip has three control pins: diff --git a/firmware/config/boards/hellen/hellen-nb1/board_configuration.cpp b/firmware/config/boards/hellen/hellen-nb1/board_configuration.cpp index a655024f72..3b964e5a38 100644 --- a/firmware/config/boards/hellen/hellen-nb1/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen-nb1/board_configuration.cpp @@ -92,8 +92,7 @@ void setBoardConfigOverrides() { engineConfiguration->clt.config.bias_resistor = 4700; engineConfiguration->iat.config.bias_resistor = 4700; - engineConfiguration->canTxPin = Gpio::D1; - engineConfiguration->canRxPin = Gpio::D0; + setHellenCan(); if (engineConfiguration->trigger.type == TT_MAZDA_MIATA_NB1) { engineConfiguration->trigger.type = TT_MIATA_VVT; diff --git a/firmware/config/boards/hellen/hellen121nissan/board_configuration.cpp b/firmware/config/boards/hellen/hellen121nissan/board_configuration.cpp index 8d18d712ed..bd5f3362f8 100644 --- a/firmware/config/boards/hellen/hellen121nissan/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen121nissan/board_configuration.cpp @@ -120,8 +120,7 @@ void setBoardDefaultConfiguration() { engineConfiguration->enableSoftwareKnock = true; engineConfiguration->canNbcType = CAN_BUS_NBC_NONE; // none because handled by Lua! - engineConfiguration->canTxPin = Gpio::D1; - engineConfiguration->canRxPin = Gpio::D0; + setHellenCan(); engineConfiguration->fuelPumpPin = Gpio::D12; // OUT_IO9 // 113 Fuel Pump Relay engineConfiguration->idle.solenoidPin = Gpio::Unassigned; diff --git a/firmware/config/boards/hellen/hellen121vag/board_configuration.cpp b/firmware/config/boards/hellen/hellen121vag/board_configuration.cpp index a6cbaa3c64..4d6faca2f4 100644 --- a/firmware/config/boards/hellen/hellen121vag/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen121vag/board_configuration.cpp @@ -104,8 +104,7 @@ void setBoardConfigOverrides() { engineConfiguration->clt.config.bias_resistor = 4700; engineConfiguration->iat.config.bias_resistor = 4700; - engineConfiguration->canTxPin = Gpio::D1; - engineConfiguration->canRxPin = Gpio::D0; + setHellenCan(); } /** diff --git a/firmware/config/boards/hellen/hellen72/board_configuration.cpp b/firmware/config/boards/hellen/hellen72/board_configuration.cpp index 2d636bee0e..90778c77bd 100644 --- a/firmware/config/boards/hellen/hellen72/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen72/board_configuration.cpp @@ -110,8 +110,7 @@ void setBoardConfigOverrides() { engineConfiguration->clt.config.bias_resistor = 4700; engineConfiguration->iat.config.bias_resistor = 4700; - engineConfiguration->canTxPin = Gpio::D1; - engineConfiguration->canRxPin = Gpio::D0; + setHellenCan(); } /** diff --git a/firmware/config/boards/hellen/hellen81/board_configuration.cpp b/firmware/config/boards/hellen/hellen81/board_configuration.cpp index 251a7fb57f..456ec902cc 100644 --- a/firmware/config/boards/hellen/hellen81/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen81/board_configuration.cpp @@ -111,8 +111,7 @@ void setBoardConfigOverrides() { engineConfiguration->clt.config.bias_resistor = 4700; engineConfiguration->iat.config.bias_resistor = 4700; - engineConfiguration->canTxPin = Gpio::D1; - engineConfiguration->canRxPin = Gpio::D0; + setHellenCan(); } /** @@ -128,9 +127,6 @@ void setBoardDefaultConfiguration() { engineConfiguration->isSdCardEnabled = true; - engineConfiguration->canTxPin = Gpio::D1; - engineConfiguration->canRxPin = Gpio::D0; - engineConfiguration->fuelPumpPin = Gpio::G2; // OUT_IO9 engineConfiguration->fanPin = Gpio::D12; // OUT_PWM8 engineConfiguration->mainRelayPin = Gpio::I2; // OUT_LOW3 diff --git a/firmware/config/boards/hellen/hellen88bmw/board_configuration.cpp b/firmware/config/boards/hellen/hellen88bmw/board_configuration.cpp index a7d9c31baf..954f6b3515 100644 --- a/firmware/config/boards/hellen/hellen88bmw/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellen88bmw/board_configuration.cpp @@ -118,8 +118,7 @@ void setBoardDefaultConfiguration() { engineConfiguration->enableSoftwareKnock = true; engineConfiguration->canNbcType = CAN_BUS_NISSAN_VQ; - engineConfiguration->canTxPin = Gpio::D1; - engineConfiguration->canRxPin = Gpio::D0; + setHellenCan(); engineConfiguration->fuelPumpPin = Gpio::D12; // OUT_IO9 // 113 Fuel Pump Relay engineConfiguration->idle.solenoidPin = H144_OUT_PWM5; diff --git a/firmware/config/boards/hellen/hellenNA8_96/board_configuration.cpp b/firmware/config/boards/hellen/hellenNA8_96/board_configuration.cpp index b8c2e448b6..8105247e82 100644 --- a/firmware/config/boards/hellen/hellenNA8_96/board_configuration.cpp +++ b/firmware/config/boards/hellen/hellenNA8_96/board_configuration.cpp @@ -92,8 +92,7 @@ void setBoardConfigOverrides() { engineConfiguration->clt.config.bias_resistor = 4700; engineConfiguration->iat.config.bias_resistor = 4700; - engineConfiguration->canTxPin = Gpio::D1; - engineConfiguration->canRxPin = Gpio::D0; + setHellenCan(); engineConfiguration->etb_use_two_wires = true; engineConfiguration->etbIo[0].directionPin1 = Gpio::C7; // PWM 3 diff --git a/firmware/config/boards/hellen/hellen_common.cpp b/firmware/config/boards/hellen/hellen_common.cpp index f62942d940..b549bc55af 100644 --- a/firmware/config/boards/hellen/hellen_common.cpp +++ b/firmware/config/boards/hellen/hellen_common.cpp @@ -15,6 +15,11 @@ void setHellen144LedPins() { engineConfiguration->warningLedPin = H144_LED4; } +void setHellenCan() { + engineConfiguration->canTxPin = Gpio::D1; + engineConfiguration->canRxPin = Gpio::D0; +} + void setHellen176LedPins() { #ifdef EFI_COMMUNICATION_PIN engineConfiguration->communicationLedPin = EFI_COMMUNICATION_PIN; diff --git a/firmware/config/boards/hellen_meta.h b/firmware/config/boards/hellen_meta.h index bf15dbc8ea..1d12c54f80 100644 --- a/firmware/config/boards/hellen_meta.h +++ b/firmware/config/boards/hellen_meta.h @@ -14,6 +14,8 @@ void hellenWbo(); void setHellen144LedPins(); void setHellen176LedPins(); +void setHellenCan(); + int detectHellenBoardId(); void detectHellenBoardType();