mirror of https://github.com/rusefi/rusefi-1.git
merc128: engine config defaults #3236
This commit is contained in:
parent
6610c80408
commit
3e50319eb7
|
@ -115,7 +115,6 @@ void setBoardConfigOverrides(void) {
|
|||
engineConfiguration->canTxPin = GPIOD_1;
|
||||
engineConfiguration->canRxPin = GPIOD_0;
|
||||
|
||||
setHellenDefaultVrThresholds(PASS_CONFIG_PARAMETER_SIGNATURE);
|
||||
engineConfiguration->vrThreshold[0].pin = GPIOD_14;
|
||||
}
|
||||
|
||||
|
|
|
@ -765,6 +765,6 @@ void setHellen72etb(DECLARE_CONFIG_PARAMETER_SIGNATURE) {
|
|||
void setHellenDefaultVrThresholds(DECLARE_CONFIG_PARAMETER_SIGNATURE) {
|
||||
for (int i = 0;i<VR_THRESHOLD_COUNT;i++) {
|
||||
setLinearCurve(engineConfiguration->vrThreshold[i].rpmBins, 600, 7000, 100);
|
||||
setLinearCurve(engineConfiguration->vrThreshold[i].values, 0.6, 1.2, 0.1);
|
||||
setLinearCurve(engineConfiguration->vrThreshold[i].values, PACK_PERCENT_BYTE_MULT * 0.6, PACK_PERCENT_BYTE_MULT * 1.2, PACK_PERCENT_BYTE_MULT * 0.1);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,9 +6,19 @@
|
|||
*/
|
||||
|
||||
#include "pch.h"
|
||||
#include "custom_engine.h"
|
||||
|
||||
static void common(DECLARE_CONFIG_PARAMETER_SIGNATURE) {
|
||||
setHellenDefaultVrThresholds(PASS_CONFIG_PARAMETER_SIGNATURE);
|
||||
}
|
||||
|
||||
void setHellenMercedes128_4_cyl(DECLARE_CONFIG_PARAMETER_SIGNATURE) {
|
||||
common(PASS_CONFIG_PARAMETER_SIGNATURE);
|
||||
}
|
||||
|
||||
// is this M104 or M112 or both?
|
||||
void setHellenMercedes128_6_cyl(DECLARE_CONFIG_PARAMETER_SIGNATURE) {
|
||||
common(PASS_CONFIG_PARAMETER_SIGNATURE);
|
||||
engineConfiguration->specs.cylindersCount = 6;
|
||||
// 1-4-2-5-3-6 M104
|
||||
engineConfiguration->specs.firingOrder = FO_1_4_3_6_2_5; // M112
|
||||
|
@ -16,6 +26,7 @@ void setHellenMercedes128_6_cyl(DECLARE_CONFIG_PARAMETER_SIGNATURE) {
|
|||
|
||||
// M113
|
||||
void setHellenMercedes128_8_cyl(DECLARE_CONFIG_PARAMETER_SIGNATURE) {
|
||||
common(PASS_CONFIG_PARAMETER_SIGNATURE);
|
||||
engineConfiguration->specs.cylindersCount = 8;
|
||||
engineConfiguration->specs.firingOrder = FO_1_5_4_2_6_3_7_8;
|
||||
}
|
||||
|
|
|
@ -9,5 +9,6 @@
|
|||
|
||||
#include "engine_configuration.h"
|
||||
|
||||
void setHellenMercedes128_4_cyl(DECLARE_CONFIG_PARAMETER_SIGNATURE);
|
||||
void setHellenMercedes128_6_cyl(DECLARE_CONFIG_PARAMETER_SIGNATURE);
|
||||
void setHellenMercedes128_8_cyl(DECLARE_CONFIG_PARAMETER_SIGNATURE);
|
||||
|
|
|
@ -859,7 +859,6 @@ void resetConfigurationExt(configuration_callback_t boardCallback, engine_type_e
|
|||
// todo: is it time to replace MICRO_RUS_EFI, PROTEUS, PROMETHEUS_DEFAULTS with MINIMAL_PINS? maybe rename MINIMAL_PINS to DEFAULT?
|
||||
case PROTEUS_DEFAULTS:
|
||||
case PROMETHEUS_DEFAULTS:
|
||||
case HELLEN_128_MERCEDES_4_CYL:
|
||||
case MINIMAL_PINS:
|
||||
// all basic settings are already set in prepareVoidConfiguration(), no need to set anything here
|
||||
// nothing to do - we do it all in setBoardDefaultConfiguration
|
||||
|
@ -938,6 +937,9 @@ void resetConfigurationExt(configuration_callback_t boardCallback, engine_type_e
|
|||
#endif // HARDWARE_CI
|
||||
#endif // HW_PROTEUS
|
||||
#if HW_HELLEN
|
||||
case HELLEN_128_MERCEDES_4_CYL:
|
||||
setHellenMercedes128_4_cyl(PASS_CONFIG_PARAMETER_SIGNATURE);
|
||||
break;
|
||||
case HELLEN_128_MERCEDES_6_CYL:
|
||||
setHellenMercedes128_6_cyl(PASS_CONFIG_PARAMETER_SIGNATURE);
|
||||
break;
|
||||
|
|
|
@ -12,7 +12,7 @@ static void updateVrPwm(int rpm, size_t index DECLARE_ENGINE_PARAMETER_SUFFIX) {
|
|||
return;
|
||||
}
|
||||
|
||||
float thresholdVoltage = interpolate2d(rpm / RPM_1_BYTE_PACKING_MULT, cfg.rpmBins, cfg.values) / 100.0f;
|
||||
float thresholdVoltage = interpolate2d(rpm / RPM_1_BYTE_PACKING_MULT, cfg.rpmBins, cfg.values) / PACK_PERCENT_BYTE_MULT;
|
||||
|
||||
// 0v threshold voltage = 3.3v output from mcu = 100% duty
|
||||
// 2.5v threshold voltage = 0v output from mcu = 0% duty
|
||||
|
|
|
@ -7,6 +7,13 @@
|
|||
|
||||
#include "pch.h"
|
||||
|
||||
TEST(sensors, vrThreshold) {
|
||||
WITH_ENGINE_TEST_HELPER(HELLEN_128_MERCEDES_4_CYL);
|
||||
|
||||
auto& cfg = CONFIG(vrThreshold)[0];
|
||||
ASSERT_FLOAT_EQ(0.8 * PACK_PERCENT_BYTE_MULT, cfg.values[2]);
|
||||
}
|
||||
|
||||
TEST(sensors, mapDecoding) {
|
||||
WITH_ENGINE_TEST_HELPER(FORD_INLINE_6_1995);
|
||||
|
||||
|
|
Loading…
Reference in New Issue