diff --git a/firmware/controllers/algo/engine_configuration.cpp b/firmware/controllers/algo/engine_configuration.cpp index f30d028c2b..854dea3b2b 100644 --- a/firmware/controllers/algo/engine_configuration.cpp +++ b/firmware/controllers/algo/engine_configuration.cpp @@ -349,7 +349,7 @@ void setDefaultConfiguration(engine_configuration_s *engineConfiguration, board_ boardConfiguration->max31855_cs[i] = GPIO_UNASSIGNED; } for (int i = 0; i < LE_COMMAND_COUNT; i++) { - boardConfiguration->gpioPins[i] = GPIO_UNASSIGNED; + boardConfiguration->fsioPins[i] = GPIO_UNASSIGNED; boardConfiguration->le_formulas[i][0] = 0; } for (int i = 0; i < JOYSTICK_PIN_COUNT; i++) { diff --git a/firmware/controllers/algo/engine_configuration.h b/firmware/controllers/algo/engine_configuration.h index 95b9ba8b47..a9c1e5164f 100644 --- a/firmware/controllers/algo/engine_configuration.h +++ b/firmware/controllers/algo/engine_configuration.h @@ -220,7 +220,7 @@ typedef struct { spi_device_e max31855spiDevice; - brain_pin_e gpioPins[LE_COMMAND_COUNT]; + brain_pin_e fsioPins[LE_COMMAND_COUNT]; pin_output_mode_e gpioPinModes[LE_COMMAND_COUNT]; brain_pin_e joystickPins[JOYSTICK_PIN_COUNT]; @@ -244,7 +244,9 @@ typedef struct { brain_pin_e hip9011CsPin; brain_pin_e hip9011IntHoldPin; brain_pin_e hip9011OutPin; - int unusedbs[38]; + + float fsio_setting[LE_COMMAND_COUNT]; + int unusedbs[22]; le_formula_t le_formulas[LE_COMMAND_COUNT]; diff --git a/firmware/controllers/engine_controller.cpp b/firmware/controllers/engine_controller.cpp index 7471bd828f..d82d90b378 100644 --- a/firmware/controllers/engine_controller.cpp +++ b/firmware/controllers/engine_controller.cpp @@ -199,7 +199,7 @@ static void cylinderCleanupControl(Engine *engine) { } static void handleGpio(Engine *engine, int index) { - if (boardConfiguration->gpioPins[index] == GPIO_UNASSIGNED) + if (boardConfiguration->fsioPins[index] == GPIO_UNASSIGNED) return; bool_t isPwmMode = boardConfiguration->fsioFrequency[index] != 0; @@ -348,7 +348,7 @@ static void setFsioPin(const char *indexStr, const char *pinName) { scheduleMsg(&logger, "invalid pin name [%s]", pinName); return; } - boardConfiguration->gpioPins[index] = pin; + boardConfiguration->fsioPins[index] = pin; scheduleMsg(&logger, "FSIO pin #%d [%s]", (index + 1), hwPortname(pin)); } @@ -499,7 +499,7 @@ void initEngineContoller(Engine *engine) { addConsoleAction("analoginfo", printAnalogInfo); for (int i = 0; i < LE_COMMAND_COUNT; i++) { - brain_pin_e brainPin = boardConfiguration->gpioPins[i]; + brain_pin_e brainPin = boardConfiguration->fsioPins[i]; if (brainPin != GPIO_UNASSIGNED) { @@ -517,7 +517,7 @@ void initEngineContoller(Engine *engine) { int frequency = boardConfiguration->fsioFrequency[i]; if (frequency == 0) { - outputPinRegisterExt2(getPinName(pin), pin, boardConfiguration->gpioPins[i], &d); + outputPinRegisterExt2(getPinName(pin), pin, boardConfiguration->fsioPins[i], &d); } else { startSimplePwmExt(&fsioPwm[i], "FSIO", brainPin, pin, frequency, 0.5f, applyPinState); } diff --git a/firmware/controllers/settings.cpp b/firmware/controllers/settings.cpp index d973a40efb..21ff508293 100644 --- a/firmware/controllers/settings.cpp +++ b/firmware/controllers/settings.cpp @@ -180,7 +180,7 @@ void printConfiguration(engine_configuration_s *engineConfiguration, engine_conf for (int i = 0; i < LE_COMMAND_COUNT; i++) { char * exp = boardConfiguration->le_formulas[i]; if (exp[0] != 0) { - scheduleMsg(&logger, "FSIO #%d [%s] at %s@%dHz = %f", (i + 1), exp, hwPortname(boardConfiguration->gpioPins[i]), + scheduleMsg(&logger, "FSIO #%d [%s] at %s@%dHz = %f", (i + 1), exp, hwPortname(boardConfiguration->fsioPins[i]), boardConfiguration->fsioFrequency[i], engineConfiguration2->fsioLastValue[i]); }