getDigital only works for 4 specific pins. Can it be made to work with generic digital pins? #4861

This commit is contained in:
Andrey 2023-01-03 21:16:05 -05:00
parent 93a3a07ed9
commit 3e86c5bb0c
1 changed files with 14 additions and 0 deletions

View File

@ -45,6 +45,18 @@ static void deInitOldAnalogInputs() {
deInitIfValid("CJ125 UA", activeConfiguration.cj125ua);
}
static void initAuxDigital() {
for (size_t i = 0;i<efi::size(engineConfiguration->luaDigitalInputPins);i++) {
efiSetPadMode("Lua Digital", engineConfiguration->luaDigitalInputPins[i], getInputMode(PI_DEFAULT));
}
}
static void deInitAuxDigital() {
for (size_t i = 0;i<efi::size(activeConfiguration.luaDigitalInputPins);i++) {
brain_pin_markUnused(activeConfiguration.luaDigitalInputPins[i]);
}
}
void initNewSensors() {
#if EFI_PROD_CODE && EFI_CAN_SUPPORT
initCanSensors();
@ -70,6 +82,7 @@ void initNewSensors() {
#endif
initOldAnalogInputs();
initAuxDigital();
// Init CLI functionality for sensors (mocking)
initSensorCli();
@ -85,6 +98,7 @@ void initNewSensors() {
}
void stopSensors() {
deInitAuxDigital();
deInitOldAnalogInputs();
deinitTps();