From d36297c8008203571bfaac2a232d18e9cf6e332b Mon Sep 17 00:00:00 2001 From: rusEfi Date: Mon, 9 Mar 2015 08:05:23 -0500 Subject: [PATCH] auto-sync --- .../config/engines/citroenBerlingoTU3JP.cpp | 59 +++++++++++-------- firmware/config/engines/dodge_neon.cpp | 1 - firmware/config/engines/honda_accord.cpp | 2 - firmware/config/stm32f4ems/chconf.h | 4 +- .../controllers/algo/engine_configuration.cpp | 2 +- firmware/hw_layer/pin_repository.cpp | 6 ++ firmware/hw_layer/pin_repository.h | 1 + firmware/hw_layer/trigger_input.cpp | 4 +- firmware/hw_layer/wave_analyzer_hw.cpp | 2 +- firmware/rusefi.cpp | 2 +- 10 files changed, 49 insertions(+), 34 deletions(-) diff --git a/firmware/config/engines/citroenBerlingoTU3JP.cpp b/firmware/config/engines/citroenBerlingoTU3JP.cpp index 30896cfcd1..b4595afd0b 100644 --- a/firmware/config/engines/citroenBerlingoTU3JP.cpp +++ b/firmware/config/engines/citroenBerlingoTU3JP.cpp @@ -63,8 +63,8 @@ static const ignition_table_t tps_advance_table = { {/*15 engineLoad=100.00*/ /*0 800.0*/+12.00, /*1 1213.0*/+13.20, /*2 1626.0*/+14.40, /*3 2040.0*/+15.60, /*4 2453.0*/+16.80, /*5 2866.0*/+18.00, /*6 3280.0*/+19.20, /*7 3693.0*/+20.40, /*8 4106.0*/+21.60, /*9 4520.0*/+22.80, /*10 4933.0*/+24.00, /*11 5346.0*/+25.20, /*12 5760.0*/+26.40, /*13 6173.0*/+27.60, /*14 6586.0*/+28.80, /*15 7000.0*/+30.00} }; -static const float rpmSteps[16] = {800, 1200, 1600, 2000, 2500, 2800, - 3280, 3693.0, 4106.0, 4520.0, 4933.0, 5346.0, 5760.0, 6173.0, 6586.0, 7000.0}; +//static const float rpmSteps[16] = {400, 800, 1200, 1600, 2000, 2400, 2800, 3200, 3600, 4000, 4400, 4800, 5200, 5600, 6000, 6400}; +//static const float mapSteps[16] = {25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100}; EXTERN_ENGINE; @@ -117,10 +117,15 @@ void setCitroenBerlingoTU3JPConfiguration(DECLARE_ENGINE_PARAMETER_F) { // Frankenstein lo-side output #6: PE5 // Frankenstein lo-side output #7: PE2 // Frankenstein lo-side output #8: PE3 - // Frankenstein lo-side output #9: PE0 - // Frankenstein lo-side output #10: PE1 - // Frankenstein lo-side output #11: PB8 - // Frankenstein lo-side output #12: PB9 Fuel pump + // Frankenstein lo-side output #9: PE0 Fan + // Frankenstein lo-side output #10: PE1 MIL + // Frankenstein lo-side output #11: PB8 Main relay + // Frankenstein lo-side output #12: PB9 Fuel pump + + boardConfiguration->ignitionPins[0] = GPIOC_14; + boardConfiguration->ignitionPins[1] = GPIO_UNASSIGNED; + boardConfiguration->ignitionPins[2] = GPIOC_15; + boardConfiguration->ignitionPins[3] = GPIO_UNASSIGNED; engineConfiguration->injector.flow = 137; //SIEMENS DEKA VAZ20734 boardConfiguration->injectionPins[0] = GPIOE_6; @@ -128,18 +133,19 @@ void setCitroenBerlingoTU3JPConfiguration(DECLARE_ENGINE_PARAMETER_F) { boardConfiguration->injectionPins[2] = GPIO_UNASSIGNED; boardConfiguration->injectionPins[3] = GPIO_UNASSIGNED; - boardConfiguration->ignitionPins[0] = GPIOC_14; - boardConfiguration->ignitionPins[1] = GPIO_UNASSIGNED; - boardConfiguration->ignitionPins[2] = GPIOC_15; - boardConfiguration->ignitionPins[3] = GPIO_UNASSIGNED; + boardConfiguration->fanPin = GPIOE_0; + boardConfiguration->fanPinMode = OM_DEFAULT; + + boardConfiguration->malfunctionIndicatorPin = GPIOE_1; + boardConfiguration->malfunctionIndicatorPinMode = OM_DEFAULT; + + boardConfiguration->mainRelayPin = GPIOB_8; boardConfiguration->fuelPumpPin = GPIOB_9; boardConfiguration->fuelPumpPinMode = OM_DEFAULT; setLCD(boardConfiguration); - boardConfiguration->fanPin = GPIO_UNASSIGNED; -// boardConfiguration->fanPinMode = OM_DEFAULT; // boardConfiguration->o2heaterPin = GPIOC_13; // boardConfiguration->logicAnalyzerPins[1] = GPIO_UNASSIGNED; @@ -149,18 +155,18 @@ void setCitroenBerlingoTU3JPConfiguration(DECLARE_ENGINE_PARAMETER_F) { */ // See https://docs.google.com/spreadsheet/ccc?key=0Arl1FeMZcfisdEdGdUlHdWh6cVBoSzFIbkxqa1QtZ3c - // Frankenstein analog input #1: PA1 adc1 MAP - // Frankenstein analog input #2: PA3 adc3 TPS - // Frankenstein analog input #3: PC3 adc13 IAT - // Frankenstein analog input #4: PC1 adc11 CLT - // Frankenstein analog input #5: PA0 adc0 vBatt - // Frankenstein analog input #6: PC2 adc12 WBO - // Frankenstein analog input #7: PA4 adc4 - // Frankenstein analog input #8: PA2 adc2 - // Frankenstein analog input #9: PA6 adc6 - // Frankenstein analog input #10: PA7 adc7 - // Frankenstein analog input #11: PC4 adc14 - // Frankenstein analog input #12: PC5 adc15 + // Frankenstein analog input #1: PA1 adc1 MAP + // Frankenstein analog input #2: PA3 adc3 TPS + // Frankenstein analog input #3: PC3 adc13 IAT + // Frankenstein analog input #4: PC1 adc11 CLT + // Frankenstein analog input #5: PA0 adc0 vBatt + // Frankenstein analog input #6: PC2 adc12 WBO + // Frankenstein analog input #7: PA4 adc4 + // Frankenstein analog input #8: PA2 adc2 + // Frankenstein analog input #9: PA6 adc6 + // Frankenstein analog input #10: PA7 adc7 + // Frankenstein analog input #11: PC4 adc14 + // Frankenstein analog input #12: PC5|PA8 adc15 Speed Sensor /** * MAP @@ -197,6 +203,11 @@ void setCitroenBerlingoTU3JPConfiguration(DECLARE_ENGINE_PARAMETER_F) { */ engineConfiguration->afr.hwChannel = EFI_ADC_12; /** + * Speed Sensor + */ + engineConfiguration->vehicleSpeedSensorInputPin = GPIOA_8; + engineConfiguration->hasVehicleSpeedSensor = true; + /** * Other */ // engineConfiguration->mafAdcChannel = GPIO_UNASSIGNED; diff --git a/firmware/config/engines/dodge_neon.cpp b/firmware/config/engines/dodge_neon.cpp index 34570432e8..483de73d05 100644 --- a/firmware/config/engines/dodge_neon.cpp +++ b/firmware/config/engines/dodge_neon.cpp @@ -379,7 +379,6 @@ void setDodgeNeonNGCEngineConfiguration(DECLARE_ENGINE_PARAMETER_F) { setFsioExt(engineConfiguration, 0, GPIOE_5, "0 fsio_setting", 400); #endif - boardConfiguration->logicAnalyzerPins[0] = GPIO_UNASSIGNED; engineConfiguration->vehicleSpeedSensorInputPin = GPIOA_8; engineConfiguration->hasVehicleSpeedSensor = true; diff --git a/firmware/config/engines/honda_accord.cpp b/firmware/config/engines/honda_accord.cpp index 3b5ceb83b0..e3ab47fdd0 100644 --- a/firmware/config/engines/honda_accord.cpp +++ b/firmware/config/engines/honda_accord.cpp @@ -179,8 +179,6 @@ static void setHondaAccordConfigurationCommon(DECLARE_ENGINE_PARAMETER_F) { setFrankenso_01_LCD(boardConfiguration); - boardConfiguration->logicAnalyzerPins[1] = GPIO_UNASSIGNED; - boardConfiguration->idleSolenoidFrequency = 500; } diff --git a/firmware/config/stm32f4ems/chconf.h b/firmware/config/stm32f4ems/chconf.h index 37e2975fad..de260ffbb4 100644 --- a/firmware/config/stm32f4ems/chconf.h +++ b/firmware/config/stm32f4ems/chconf.h @@ -436,7 +436,7 @@ * @note The default is @p FALSE. */ #if !defined(CH_DBG_ENABLE_TRACE) || defined(__DOXYGEN__) -#define CH_DBG_ENABLE_TRACE FALSE +#define CH_DBG_ENABLE_TRACE TRUE #endif /** @@ -462,7 +462,7 @@ * @note The default is @p FALSE. */ #if !defined(CH_DBG_FILL_THREADS) || defined(__DOXYGEN__) -#define CH_DBG_FILL_THREADS FALSE +#define CH_DBG_FILL_THREADS TRUE #endif /** diff --git a/firmware/controllers/algo/engine_configuration.cpp b/firmware/controllers/algo/engine_configuration.cpp index bcecf342e4..c6731d43b8 100644 --- a/firmware/controllers/algo/engine_configuration.cpp +++ b/firmware/controllers/algo/engine_configuration.cpp @@ -482,7 +482,7 @@ void setDefaultConfiguration(DECLARE_ENGINE_PARAMETER_F) { boardConfiguration->triggerInputPins[0] = GPIOC_6; boardConfiguration->triggerInputPins[1] = GPIOA_5; - boardConfiguration->logicAnalyzerPins[0] = GPIOA_8; + boardConfiguration->logicAnalyzerPins[0] = GPIO_UNASSIGNED; boardConfiguration->logicAnalyzerPins[1] = GPIO_UNASSIGNED; // GPIOE_5 is a popular option (if available) boardConfiguration->logicAnalyzerPins[2] = GPIO_UNASSIGNED; boardConfiguration->logicAnalyzerPins[3] = GPIO_UNASSIGNED; diff --git a/firmware/hw_layer/pin_repository.cpp b/firmware/hw_layer/pin_repository.cpp index eae41ce146..a22a7c69f3 100644 --- a/firmware/hw_layer/pin_repository.cpp +++ b/firmware/hw_layer/pin_repository.cpp @@ -230,3 +230,9 @@ void registedFundamentralIoPin(char *msg, ioportid_t port, ioportmask_t pin, iom palSetPadMode(port, pin, mode); } +void efiIcuStart(ICUDriver *icup, const ICUConfig *config) { + efiAssertVoid((icup->state == ICU_STOP) || (icup->state == ICU_READY), + "input already used?"); + + icuStart(icup, config); +} diff --git a/firmware/hw_layer/pin_repository.h b/firmware/hw_layer/pin_repository.h index 17920cfe79..96be191dc2 100644 --- a/firmware/hw_layer/pin_repository.h +++ b/firmware/hw_layer/pin_repository.h @@ -42,5 +42,6 @@ GPIO_TypeDef * getHwPort(brain_pin_e brainPin); } #endif /* __cplusplus */ +void efiIcuStart(ICUDriver *icup, const ICUConfig *config); #endif /* PIN_REPOSITORY_H_ */ diff --git a/firmware/hw_layer/trigger_input.cpp b/firmware/hw_layer/trigger_input.cpp index e2f132cb86..2888fe3abe 100644 --- a/firmware/hw_layer/trigger_input.cpp +++ b/firmware/hw_layer/trigger_input.cpp @@ -79,7 +79,7 @@ void initShaftPositionInputCapture(void) { print("initShaftPositionInputCapture 1 %s\r\n", hwPortname(boardConfiguration->triggerInputPins[0])); // todo: reuse 'setWaveReaderMode' method here? if (driver != NULL) { - icuStart(driver, &shaft_icucfg); + efiIcuStart(driver, &shaft_icucfg); icuEnable(driver); } @@ -89,7 +89,7 @@ void initShaftPositionInputCapture(void) { shaft_icucfg.channel = ICU_CHANNEL_1; print("initShaftPositionInputCapture 2 %s\r\n", hwPortname(boardConfiguration->triggerInputPins[1])); if (driver != NULL) { - icuStart(driver, &shaft_icucfg); + efiIcuStart(driver, &shaft_icucfg); icuEnable(driver); } diff --git a/firmware/hw_layer/wave_analyzer_hw.cpp b/firmware/hw_layer/wave_analyzer_hw.cpp index 28ecca80d8..10e3654925 100644 --- a/firmware/hw_layer/wave_analyzer_hw.cpp +++ b/firmware/hw_layer/wave_analyzer_hw.cpp @@ -173,7 +173,7 @@ void startInputDriver(WaveReaderHw *hw, bool isActiveHigh) { icuDisable(driver); icuStop(driver); } - icuStart(driver, &wave_icucfg); + efiIcuStart(driver, &wave_icucfg); icuEnable(driver); } hw->started = true; diff --git a/firmware/rusefi.cpp b/firmware/rusefi.cpp index 81f9fe2cf9..0c953e9846 100644 --- a/firmware/rusefi.cpp +++ b/firmware/rusefi.cpp @@ -276,5 +276,5 @@ int getRusEfiVersion(void) { return 1; // this is here to make the compiler happy about the unused array if (UNUSED_CCM_SIZE[0] == 0) return 1; // this is here to make the compiler happy about the unused array - return 20150306; + return 20150309; }