From 307b33837d97cfc6a2ae928cf955b384e6acaf20 Mon Sep 17 00:00:00 2001 From: Matthew Kennedy Date: Sat, 26 Feb 2022 06:14:37 -0800 Subject: [PATCH] core 8 overrides and stepper-as-brain-pin (#3962) * core 8 overrides and stepper-as-brain-pin * oops, change the pin not the mode * a little bit of #3963 makes everyone happy --- .../boards/atlas/board_configuration.cpp | 3 - .../boards/core8/board_configuration.cpp | 75 ++++++++----------- .../boards/f407-discovery/board_extra.cpp | 7 -- .../f429-discovery/board_configuration.cpp | 3 - .../nucleo_h743/board_configuration.cpp | 7 -- .../controllers/algo/engine_configuration.cpp | 1 + firmware/integration/rusefi_config.txt | 6 +- 7 files changed, 34 insertions(+), 68 deletions(-) diff --git a/firmware/config/boards/atlas/board_configuration.cpp b/firmware/config/boards/atlas/board_configuration.cpp index c2db0ea91f..5d27dcf5be 100644 --- a/firmware/config/boards/atlas/board_configuration.cpp +++ b/firmware/config/boards/atlas/board_configuration.cpp @@ -1,7 +1,4 @@ #include "pch.h" -void setSerialConfigurationOverrides() { -} - void setSdCardConfigurationOverrides() { } diff --git a/firmware/config/boards/core8/board_configuration.cpp b/firmware/config/boards/core8/board_configuration.cpp index 03b4a4f556..58e20c4b6c 100644 --- a/firmware/config/boards/core8/board_configuration.cpp +++ b/firmware/config/boards/core8/board_configuration.cpp @@ -9,7 +9,6 @@ #include "pch.h" static void setInjectorPins() { - engineConfiguration->injectionPinMode = OM_DEFAULT; engineConfiguration->injectionPins[0] = GPIOF_13; @@ -23,7 +22,6 @@ static void setInjectorPins() { } static void setIgnitionPins() { - engineConfiguration->ignitionPinMode = OM_DEFAULT; engineConfiguration->ignitionPins[0] = GPIOE_15; @@ -40,8 +38,7 @@ static void setIgnitionPins() { void setSdCardConfigurationOverrides(void) { } -void setBoardConfigOverrides(void) { - +static void setEtbConfig() { // TLE9201 driver // This chip has three control pins: // DIR - sets direction of the motor @@ -72,28 +69,6 @@ void setBoardConfigOverrides(void) { engineConfiguration->etb_use_two_wires = false; } -void setPinConfigurationOverrides(void) { - - //CAN 1 bus overwrites - engineConfiguration->canTxPin = GPIOD_0; - engineConfiguration->canRxPin = GPIOD_1; - - //CAN 2 bus overwrites - engineConfiguration->can2RxPin = GPIOB_5; - engineConfiguration->can2TxPin = GPIOB_6; -} - -void setSerialConfigurationOverrides(void) { -} - - -/** - * @brief Board-specific configuration defaults. - * - * See also setDefaultEngineConfiguration - * - * @todo Add your board-specific code, if any. - */ static void setupVbatt() { // 5.6k high side/10k low side = 1.56 ratio divider engineConfiguration->analogInputDividerCoefficient = 1.47f; @@ -107,14 +82,39 @@ static void setupVbatt() { engineConfiguration->adcVcc = 3.3f; } +static void setStepperConfig() { + engineConfiguration->idle.stepperDirectionPin = GPIOF_7; + engineConfiguration->idle.stepperStepPin = GPIOF_8; + engineConfiguration->stepperEnablePin = GPIOF_9; +} + +void setBoardConfigOverrides() { + setupVbatt(); + setEtbConfig(); + setStepperConfig(); + + // PE3 is error LED, configured in board.mk + engineConfiguration->communicationLedPin = GPIOG_12; + engineConfiguration->runningLedPin = GPIOG_9; + engineConfiguration->warningLedPin = GPIOG_10; + + engineConfiguration->clt.config.bias_resistor = 2490; + engineConfiguration->iat.config.bias_resistor = 2490; + + //CAN 1 bus overwrites + engineConfiguration->canTxPin = GPIOD_0; + engineConfiguration->canRxPin = GPIOD_1; + + //CAN 2 bus overwrites + engineConfiguration->can2RxPin = GPIOB_5; + engineConfiguration->can2TxPin = GPIOB_6; +} + static void setupDefaultSensorInputs() { engineConfiguration->afr.hwChannel = EFI_ADC_11; setEgoSensor(ES_14Point7_Free); - engineConfiguration->clt.config.bias_resistor = 2490; - engineConfiguration->iat.config.bias_resistor = 2490; - engineConfiguration->baroSensor.hwChannel = EFI_ADC_NONE; engineConfiguration->lps25BaroSensorScl = GPIOB_10; @@ -122,32 +122,17 @@ static void setupDefaultSensorInputs() { } - -static void setLedPins() { - // PE3 is error LED, configured in board.mk - engineConfiguration->communicationLedPin = GPIOG_12; - engineConfiguration->runningLedPin = GPIOG_9; - engineConfiguration->warningLedPin = GPIOG_10; -} - void setBoardDefaultConfiguration(void) { - setInjectorPins(); setIgnitionPins(); - setupVbatt(); - setLedPins(); - engineConfiguration->sdCardPeriodMs = 50; engineConfiguration->isSdCardEnabled = true; - engineConfiguration->canWriteEnabled = true; engineConfiguration->canReadEnabled = true; engineConfiguration->canSleepPeriodMs = 50; engineConfiguration->canBaudRate = B500KBPS; engineConfiguration->can2BaudRate = B500KBPS; - - -} \ No newline at end of file +} diff --git a/firmware/config/boards/f407-discovery/board_extra.cpp b/firmware/config/boards/f407-discovery/board_extra.cpp index 684e64537c..e24b955ce1 100644 --- a/firmware/config/boards/f407-discovery/board_extra.cpp +++ b/firmware/config/boards/f407-discovery/board_extra.cpp @@ -11,13 +11,6 @@ void setPinConfigurationOverrides() { } -/** - * @brief Board-specific Serial configuration code overrides. Needed by bootloader code. - * @todo Add your board-specific code, if any. - */ -void setSerialConfigurationOverrides() { -} - /** * @brief Board-specific SD card configuration code overrides. Needed by bootloader code. * @todo Add your board-specific code, if any. diff --git a/firmware/config/boards/f429-discovery/board_configuration.cpp b/firmware/config/boards/f429-discovery/board_configuration.cpp index a553fd602a..3663498043 100644 --- a/firmware/config/boards/f429-discovery/board_configuration.cpp +++ b/firmware/config/boards/f429-discovery/board_configuration.cpp @@ -1,8 +1,5 @@ #include "pch.h" -void setSerialConfigurationOverrides() { -} - void setSdCardConfigurationOverrides() { } diff --git a/firmware/config/boards/nucleo_h743/board_configuration.cpp b/firmware/config/boards/nucleo_h743/board_configuration.cpp index 221716367d..54d10d1a00 100644 --- a/firmware/config/boards/nucleo_h743/board_configuration.cpp +++ b/firmware/config/boards/nucleo_h743/board_configuration.cpp @@ -1,12 +1,5 @@ #include "pch.h" -/** - * @brief Board-specific Serial configuration code overrides. Needed by bootloader code. - * @todo Add your board-specific code, if any. - */ -void setSerialConfigurationOverrides() { -} - /** * @brief Board-specific SD card configuration code overrides. Needed by bootloader code. * @todo Add your board-specific code, if any. diff --git a/firmware/controllers/algo/engine_configuration.cpp b/firmware/controllers/algo/engine_configuration.cpp index fb9a153056..1f4e558512 100644 --- a/firmware/controllers/algo/engine_configuration.cpp +++ b/firmware/controllers/algo/engine_configuration.cpp @@ -1197,3 +1197,4 @@ void setFrankenso0_1_joystick(engine_configuration_s *engineConfiguration) { // These symbols are weak so that a board_configuration.cpp file can override them __attribute__((weak)) void setBoardDefaultConfiguration() { } __attribute__((weak)) void setBoardConfigOverrides() { } +__attribute__((weak)) void setSerialConfigurationOverrides() { } diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index 0ef1543942..23f7929d6e 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -628,8 +628,8 @@ struct idle_hardware_s int solenoidFrequency;;"Hz", 1, 0, 0, 3000, 0 output_pin_e solenoidPin - output_pin_e stepperDirectionPin - output_pin_e stepperStepPin + brain_pin_e stepperDirectionPin + brain_pin_e stepperStepPin pin_output_mode_e solenoidPinMode end_struct @@ -1345,7 +1345,7 @@ custom stepper_num_micro_steps_e 1 bits, U08, @OFFSET@, [0:3], @@stepper_num_mic float[SCRIPT_CURVE_8] scriptCurve4Bins;;"x", 1, 0, -999, 1000, 3 float[SCRIPT_CURVE_8] scriptCurve4;;"y", 1, 0, -999, 1000, 3 - output_pin_e stepperEnablePin; + brain_pin_e stepperEnablePin; brain_pin_e tle8888_cs; pin_output_mode_e tle8888_csPinMode; brain_pin_e mc33816_cs;