fome-fw/firmware/config/engines/bmw_e34.cpp

59 lines
1.7 KiB
C++
Raw Normal View History

2014-11-05 12:03:26 -08:00
/**
* @file bmw_e34.cpp
*
* set_engine_type 25
*
2014-11-05 14:03:24 -08:00
* Coil pairs: 1-6, 2-5, 3-4
*
* Injector groups: 1,2,3 <EFBFBD> 4,5,6
*
2014-11-05 12:03:26 -08:00
* @date Nov 5, 2014
* @author Andrey Belomutskiy, (c) 2012-2014
*/
#include "global.h"
#include "bmw_e34.h"
void setBmwE43(engine_configuration_s *engineConfiguration) {
engineConfiguration->rpmHardLimit = 6000;
setOperationMode(engineConfiguration, FOUR_STROKE_CRANK_SENSOR);
engineConfiguration->triggerConfig.triggerType = TT_TOOTHED_WHEEL_60_2;
engineConfiguration->cylindersCount = 6;
2014-11-05 14:03:24 -08:00
engineConfiguration->firingOrder = FO_1_THEN_5_THEN_3_THEN_6_THEN_2_THEN_4;
2014-11-05 15:03:02 -08:00
engineConfiguration->injectionMode = IM_SIMULTANEOUS;
2014-11-05 14:03:24 -08:00
engineConfiguration->ignitionMode = IM_WASTED_SPARK;
2014-11-05 12:03:26 -08:00
2014-11-06 07:06:08 -08:00
setConstantDwell(engineConfiguration, 3); // a bit shorter dwell
engineConfiguration->useConstantDwellDuringCranking = true;
engineConfiguration->ignitionDwellForCrankingMs = 5;
2014-11-05 19:03:10 -08:00
// todo: check the digital sniffer while simulating
// set_global_trigger_offset_angle 84
engineConfiguration->globalTriggerAngleOffset = 84;
setWholeFuelMap(engineConfiguration, 6);
setWholeTimingTable(engineConfiguration, 10);
2014-11-05 15:03:02 -08:00
board_configuration_s *bc = &engineConfiguration->bc;
2014-11-10 07:03:20 -08:00
bc->malfunctionIndicatorPin = GPIO_UNASSIGNED;
2014-11-05 15:03:02 -08:00
2014-11-08 19:03:27 -08:00
// bc->isFastAdcEnabled = true;
2014-11-13 11:03:15 -08:00
bc->ignitionPinMode = OM_INVERTED;
2014-11-05 15:03:02 -08:00
bc->ignitionPins[0] = GPIOC_7; // #1
2014-11-10 07:03:20 -08:00
bc->ignitionPins[1] = GPIO_UNASSIGNED; // #2
2014-11-05 15:03:02 -08:00
bc->ignitionPins[2] = GPIOE_4; // #3
2014-11-10 07:03:20 -08:00
bc->ignitionPins[3] = GPIO_UNASSIGNED; // #4
2014-11-05 15:03:02 -08:00
bc->ignitionPins[4] = GPIOC_9; // #5
2014-11-10 07:03:20 -08:00
bc->ignitionPins[5] = GPIO_UNASSIGNED; // #6
2014-11-05 15:03:02 -08:00
2014-11-13 11:03:15 -08:00
bc->injectionPinMode = OM_INVERTED;
2014-11-10 12:03:16 -08:00
// emulating this 60-0 takes some resources, let's keep it slow by default
// rpm 200
bc->triggerSimulatorFrequency = 200;
2014-11-06 14:03:17 -08:00
engineConfiguration->map.sensor.sensorType = MT_MPX4250;
2014-11-05 12:03:26 -08:00
}