GCC Code Coverage Report


Directory: ./
File: firmware/config/engines/vw.cpp
Date: 2025-10-03 00:57:22
Coverage Exec Excl Total
Lines: 56.2% 27 0 48
Functions: 20.0% 1 0 5
Branches: -% 0 0 0
Decisions: -% 0 - 0

Line Branch Decision Exec Source
1 /*
2 * @file vw.cpp
3 *
4 * set engine_type 32
5 *
6 * @date May 24, 2015
7 * @author Andrey Belomutskiy, (c) 2012-2020
8 */
9
10 #include "pch.h"
11
12 #include "vw.h"
13 #include "custom_engine.h"
14 #include "defaults.h"
15
16 // VW_ABA
17 // set engine_type 32
18 3 void setVwAba() {
19 3 setFrankensoConfiguration();
20 3 engineConfiguration->camInputs[0] = Gpio::E0; // a random unused pin needed for happy HW CI
21
22 // default PC1-5 ADC pins conflict with the ethernet module on F767, used on HW CI
23 3 engineConfiguration->tps1_1AdcChannel = EFI_ADC_32;
24 3 engineConfiguration->vbattAdcChannel = EFI_ADC_33;
25 3 engineConfiguration->clt.adcChannel = EFI_ADC_34;
26 3 engineConfiguration->iat.adcChannel = EFI_ADC_35;
27 3 engineConfiguration->afr.hwChannel = EFI_ADC_36;
28
29 3 setWholeTimingTable(20);
30 // set cranking_timing_angle 10
31 3 engineConfiguration->crankingTimingAngle = 10;
32
33 // set global_trigger_offset_angle 93
34 3 engineConfiguration->globalTriggerAngleOffset = 93;
35
36 3 setCrankOperationMode();
37 3 engineConfiguration->trigger.type = trigger_type_e::TT_TOOTHED_WHEEL_60_2;
38
39 //Base engine setting
40 3 setInline4();
41 3 engineConfiguration->displacement = 2.0;
42 3 engineConfiguration->injector.flow = 320; // 30lb/h
43 // set algorithm 3
44 3 setAlgorithm(engine_load_mode_e::LM_SPEED_DENSITY);
45 3 engineConfiguration->map.sensor.type = MT_GM_3_BAR;
46
47 3 engineConfiguration->ignitionMode = IM_ONE_COIL;
48
49 3 float mapRange = 110;
50
51 3 setEgoSensor(ES_PLX);
52 3 setFuelTablesLoadBin(20, mapRange);
53 3 setLinearCurve(config->ignitionLoadBins, 20, mapRange);
54
55 3 engineConfiguration->isSdCardEnabled = false;
56 3 engineConfiguration->tpsMin = 740;
57 3 engineConfiguration->tpsMax = 135;
58 3 }
59
60 void setVag_5_cyl() {
61 strcpy(engineConfiguration->engineMake, ENGINE_MAKE_VAG);
62 engineConfiguration->cylindersCount = 5;
63 engineConfiguration->displacement = 2.5;
64 engineConfiguration->firingOrder = FO_1_2_4_5_3;
65 }
66
67 void setHellen121Vag_vr6_cyl() {
68 engineConfiguration->cylindersCount = 6;
69 engineConfiguration->firingOrder = FO_1_5_3_6_2_4;
70 }
71
72 void setHellen121Vag_v6_cyl() {
73 engineConfiguration->cylindersCount = 6;
74 engineConfiguration->displacement = 2.7;
75
76 engineConfiguration->camInputs[1 * CAMS_PER_BANK] = Gpio::A7; // 87a
77
78 engineConfiguration->firingOrder = FO_1_4_3_6_2_5;
79 }
80
81 void setHellen121Vag_8_cyl() {
82 engineConfiguration->cylindersCount = 8;
83 engineConfiguration->displacement = 4.2;
84 engineConfiguration->firingOrder = FO_1_5_4_8_6_3_7_2;
85 }
86