rusEFI
The most advanced open source ECU
Loading...
Searching...
No Matches
board_configuration_uaefi121.cpp
Go to the documentation of this file.
1/**
2 * See https://rusefi.com/s/uaefi121
3 *
4 * @author Andrey Belomutskiy, (c) 2012-2023
5 */
6
7#include "pch.h"
8#include "defaults.h"
9#include "hellen_meta.h"
10#include "mega-uaefi.h"
11#include "board_overrides.h"
12
14 engineConfiguration->tps1_1AdcChannel = MM100_IN_TPS_ANALOG;
15 engineConfiguration->tps1_2AdcChannel = MM100_IN_AUX1_ANALOG;
16 engineConfiguration->map.sensor.hwChannel = MM100_IN_MAP1_ANALOG;
17
18 setPPSInputs(MM100_IN_PPS_ANALOG, MM100_IN_AUX2_ANALOG);
19
20 engineConfiguration->clt.adcChannel = MM100_IN_CLT_ANALOG;
21 engineConfiguration->iat.adcChannel = MM100_IN_IAT_ANALOG;
22
23 engineConfiguration->triggerInputPins[0] = Gpio::MM100_UART8_TX; // VR2 max9924 is the safer default
24 engineConfiguration->camInputs[0] = Gpio::MM100_IN_D2; // HALL2
25 engineConfiguration->camInputs[1] = Gpio::MM100_IN_D3; // HALL3
26
27 engineConfiguration->vehicleSpeedSensorInputPin = Gpio::MM100_IN_D1; // HALL1
28}
29
32
33 engineConfiguration->mainRelayPin = Gpio::MM100_IGN7;
34 engineConfiguration->fuelPumpPin = Gpio::MM100_IGN8;
35
37
38 // SPI3 for on-board EGT
40 // MOSI not needed, we have one-way communication here
45
46 engineConfiguration->injectionPins[0] = Gpio::MM100_MEGA_UAEFI_INJ1;
47 engineConfiguration->injectionPins[1] = Gpio::MM100_INJ2;
48 engineConfiguration->injectionPins[2] = Gpio::MM100_INJ3;
49 engineConfiguration->injectionPins[3] = Gpio::MM100_INJ4;
50 engineConfiguration->injectionPins[4] = Gpio::MM100_INJ5;
51 engineConfiguration->injectionPins[5] = Gpio::MM100_INJ6;
52
53 engineConfiguration->ignitionPins[0] = Gpio::MM100_IGN1;
54 engineConfiguration->ignitionPins[1] = Gpio::MM100_IGN2;
55 engineConfiguration->ignitionPins[2] = Gpio::MM100_IGN3;
56 engineConfiguration->ignitionPins[3] = Gpio::MM100_IGN4;
57 engineConfiguration->ignitionPins[4] = Gpio::MM100_IGN5;
58 engineConfiguration->ignitionPins[5] = Gpio::MM100_IGN6;
59
61}
62
64 return 2;
65}
66
67static Gpio OUTPUTS[] = {
68 Gpio::MM100_MEGA_UAEFI_INJ1, // 44a INJ_1
69 Gpio::MM100_INJ2, // 45a INJ_2
70 Gpio::MM100_INJ3, // 46a INJ_3
71 Gpio::MM100_INJ4, // 47a INJ_4
72 Gpio::MM100_INJ5, // 48a INJ_5
73 Gpio::MM100_INJ6, // 49a INJ_6
74 Gpio::MM100_SPI2_CS, // 50a INJ_7
75 Gpio::MM100_MEGA_UAEFI_SPI2_SCK, // 51a INJ_8
76 Gpio::MM100_INJ7, // 14a LS1
77 Gpio::MM100_INJ8, // 15a LS2
78 Gpio::MM100_OUT_PWM1, // 16a LS3
79 Gpio::MM100_OUT_PWM2, // 88a LS4
80 Gpio::MM100_IGN7, // 86a LS5_HOT
81 Gpio::MM100_IGN8, // 87a LS6_HOT fuelpump
82 Gpio::MM100_LED2_GREEN, // 43a High Side Output
83 Gpio::MM100_IGN1, // Coil 1
84 Gpio::MM100_IGN2, // Coil 2
85 Gpio::MM100_IGN3, // Coil 3
86 Gpio::MM100_IGN4, // Coil 4
87 Gpio::MM100_IGN5, // Coil 5
88 Gpio::MM100_IGN6, // Coil 6
89};
90
91static Gpio SBC_OUTPUTS[] = {
92 Gpio::MM100_MEGA_UAEFI_INJ1, // 44a INJ_1
93 Gpio::MM100_INJ2, // 45a INJ_2
94 Gpio::MM100_INJ3, // 46a INJ_3
95 Gpio::MM100_INJ4, // 47a INJ_4
96 Gpio::MM100_INJ5, // 48a INJ_5
97 Gpio::MM100_INJ6, // 49a INJ_6
98 Gpio::MM100_SPI2_CS, // 50a INJ_7
99 Gpio::MM100_MEGA_UAEFI_SPI2_SCK, // 51a INJ_8
100 Gpio::MM100_IGN8, // 87a LS6_HOT fuelpump
101 Gpio::MM100_IGN1, // Coil 1
102 Gpio::MM100_IGN2, // Coil 2
103
104};
105
108 return efi::size(SBC_OUTPUTS);
109 }
110 return efi::size(OUTPUTS);
111}
112
119
126
static void setupDefaultSensorInputs()
static Gpio OUTPUTS[]
int getBoardMetaLowSideOutputsCount()
int getBoardMetaDcOutputsCount()
int getBoardMetaOutputsCount()
void setup_custom_board_overrides()
static Gpio SBC_OUTPUTS[]
Gpio * getBoardMetaOutputs()
static void uaefi_121boardDefaultConfiguration()
void setPPSInputs(adc_channel_e pps1, adc_channel_e pps2)
std::optional< setup_custom_board_overrides_type > custom_board_ConfigOverrides
std::optional< setup_custom_board_overrides_type > custom_board_DefaultConfiguration
static constexpr engine_configuration_s * engineConfiguration
void setMegaUaefiBoardConfigOverrides()
Definition mega-uaefi.cpp:7
void setMegaUaefiBoardDefaultConfiguration()
brain_input_pin_e triggerInputPins[TRIGGER_INPUT_PIN_COUNT]