From 6b205e832f6096ec07c58f33bce19353ab77cccb Mon Sep 17 00:00:00 2001 From: VitorBoss Date: Thu, 31 Aug 2017 17:38:41 -0300 Subject: [PATCH 01/11] Fix error on IDLE --- speeduino/auxiliaries.ino | 9 +++++---- speeduino/globals.h | 2 +- speeduino/idle.ino | 8 +++++--- speeduino/speeduino.ino | 5 +++-- speeduino/utils.ino | 8 ++++++-- 5 files changed, 20 insertions(+), 12 deletions(-) diff --git a/speeduino/auxiliaries.ino b/speeduino/auxiliaries.ino index 544c0427..0f1f206a 100644 --- a/speeduino/auxiliaries.ino +++ b/speeduino/auxiliaries.ino @@ -40,10 +40,6 @@ void initialiseAuxPWM() TCCR1B = (1 << CS12); //Timer1 Control Reg B: Timer Prescaler set to 256. 1 tick = 16uS. Refer to http://www.instructables.com/files/orig/F3T/TIKL/H3WSA4V7/F3TTIKLH3WSA4V7.jpg #elif defined(CORE_TEENSY) //REALLY NEED TO DO THIS! - #elif defined(CORE_STM32) - Timer1.attachInterrupt(2, boostInterrupt); - Timer1.attachInterrupt(3, vvtInterrupt); - Timer1.resume(); #endif boost_pin_port = portOutputRegister(digitalPinToPort(pinBoost)); @@ -67,6 +63,11 @@ void initialiseAuxPWM() currentStatus.boostDuty = 0; boostCounter = 0; + #if defined(CORE_STM32) //Need to be initialised last due to instant interrupt + Timer1.attachInterrupt(2, boostInterrupt); + Timer1.attachInterrupt(3, vvtInterrupt); + Timer1.resume(); + #endif } void boostControl() diff --git a/speeduino/globals.h b/speeduino/globals.h index 7f0d33cc..a716170e 100644 --- a/speeduino/globals.h +++ b/speeduino/globals.h @@ -13,7 +13,7 @@ #define CORE_STM32 #if defined (STM32F1) || defined(__STM32F1__) #define BOARD_NR_GPIO_PINS 34 - #define LED_BUILTIN 33 + #define LED_BUILTIN PB1 #elif defined(ARDUINO_BLACK_F407VE) || defined(STM32F4) #define BOARD_NR_GPIO_PINS 80 #define LED_BUILTIN PA7 diff --git a/speeduino/idle.ino b/speeduino/idle.ino index ec0b0d7e..d9433264 100644 --- a/speeduino/idle.ino +++ b/speeduino/idle.ino @@ -78,9 +78,6 @@ void initialiseIdle() NVIC_ENABLE_IRQ(IRQ_FTM2); } - #elif defined(CORE_STM32) - Timer1.attachInterrupt(4, idleInterrupt); - Timer1.resume(); #endif //Initialising comprises of setting the 2D tables with the relevant values from the config pages @@ -196,6 +193,10 @@ void initialiseIdle() } idleInitComplete = configPage4.iacAlgorithm; //Sets which idle method was initialised currentStatus.idleLoad = 0; + #if defined(CORE_STM32) //Need to be initialised last due to instant interrupt + Timer1.attachInterrupt(4, idleInterrupt); + Timer1.resume(); + #endif } void idleControl() @@ -454,3 +455,4 @@ static inline void idleInterrupt() //Most ARM chips can simply call a function } } + diff --git a/speeduino/speeduino.ino b/speeduino/speeduino.ino index e270699e..70742064 100644 --- a/speeduino/speeduino.ino +++ b/speeduino/speeduino.ino @@ -130,6 +130,7 @@ bool initialisationComplete = false; //Tracks whether the setup() functino has r void setup() { + pinMode(LED_BUILTIN, OUTPUT); digitalWrite(LED_BUILTIN, LOW); //Setup the dummy fuel and ignition tables //dummyFuelTable(&fuelTable); @@ -143,14 +144,14 @@ void setup() table3D_setSize(&trim2Table, 6); table3D_setSize(&trim3Table, 6); table3D_setSize(&trim4Table, 6); - + Serial.begin(115200); + #if defined(CORE_STM32) EEPROM.init(); #endif loadConfig(); doUpdates(); //Check if any data items need updating (Occurs ith firmware updates) - Serial.begin(115200); #if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) //ATmega2561 does not have Serial3 if (configPage10.enable_canbus == 1) { CANSerial.begin(115200); } #elif defined(CORE_STM32) diff --git a/speeduino/utils.ino b/speeduino/utils.ino index a9865a2c..d68dc45b 100644 --- a/speeduino/utils.ino +++ b/speeduino/utils.ino @@ -223,6 +223,8 @@ void setPinMapping(byte boardID) pinFlex = PC4; // Flex sensor (Must be external interrupt enabled) pinTrigger = PC5; //The CAS pin pinTrigger2 = PC6; //The Cam Sensor pin + pinIdle1 = PB8; //Single wire idle control + pinIdle2 = PB9; //2 wire idle control pinBoost = PE0; //Boost control pinVVT_1 = PE1; //Default VVT output #elif defined(CORE_STM32) @@ -255,8 +257,10 @@ void setPinMapping(byte boardID) pinTrigger = 25; //The CAS pin pinTrigger2 = 22; //The Cam Sensor pin pinBaro = pinMAP; - pinBoost = 1; //Boost control - pinVVT_1 = 0; //Default VVT output + pinIdle1 = 2; //Single wire idle control + pinIdle2 = 9; //2 wire idle control + pinBoost = 10; //Boost control + pinVVT_1 = 11; //Default VVT output #endif break; From da39db1476e6ee7bef9d1d401b7a02387bbfa746 Mon Sep 17 00:00:00 2001 From: VitorBoss Date: Fri, 1 Sep 2017 16:16:45 -0300 Subject: [PATCH 02/11] Fix potential crash on IDLE when first flash Other cosmetic changes --- speeduino/auxiliaries.ino | 4 +-- speeduino/globals.h | 6 ++-- speeduino/idle.ino | 2 +- speeduino/scheduler.ino | 50 ++++++++++++++-------------- speeduino/speeduino.ino | 6 ++-- speeduino/storage.ino | 68 +++++++++++++++++++-------------------- speeduino/utils.ino | 1 - 7 files changed, 68 insertions(+), 69 deletions(-) diff --git a/speeduino/auxiliaries.ino b/speeduino/auxiliaries.ino index 0f1f206a..0eff9134 100644 --- a/speeduino/auxiliaries.ino +++ b/speeduino/auxiliaries.ino @@ -64,8 +64,8 @@ void initialiseAuxPWM() currentStatus.boostDuty = 0; boostCounter = 0; #if defined(CORE_STM32) //Need to be initialised last due to instant interrupt - Timer1.attachInterrupt(2, boostInterrupt); - Timer1.attachInterrupt(3, vvtInterrupt); + if(boost_pwm_max_count > 0) { Timer1.attachInterrupt(2, boostInterrupt);} + if(vvt_pwm_max_count > 0) { Timer1.attachInterrupt(3, vvtInterrupt);} Timer1.resume(); #endif } diff --git a/speeduino/globals.h b/speeduino/globals.h index a716170e..98a2705f 100644 --- a/speeduino/globals.h +++ b/speeduino/globals.h @@ -13,7 +13,9 @@ #define CORE_STM32 #if defined (STM32F1) || defined(__STM32F1__) #define BOARD_NR_GPIO_PINS 34 - #define LED_BUILTIN PB1 + #ifndef LED_BUILTIN + #define LED_BUILTIN PB1 //Maple Mini + #endif #elif defined(ARDUINO_BLACK_F407VE) || defined(STM32F4) #define BOARD_NR_GPIO_PINS 80 #define LED_BUILTIN PA7 @@ -704,4 +706,4 @@ extern byte iatCalibrationTable[CALIBRATION_TABLE_SIZE]; extern byte o2CalibrationTable[CALIBRATION_TABLE_SIZE]; -#endif // GLOBALS_H +#endif // GLOBALS_H diff --git a/speeduino/idle.ino b/speeduino/idle.ino index d9433264..3670de16 100644 --- a/speeduino/idle.ino +++ b/speeduino/idle.ino @@ -194,7 +194,7 @@ void initialiseIdle() idleInitComplete = configPage4.iacAlgorithm; //Sets which idle method was initialised currentStatus.idleLoad = 0; #if defined(CORE_STM32) //Need to be initialised last due to instant interrupt - Timer1.attachInterrupt(4, idleInterrupt); + if(idle_pwm_max_count > 0) { Timer1.attachInterrupt(4, idleInterrupt);} //on first flash the configPage4.iacAlgorithm is invalid Timer1.resume(); #endif } diff --git a/speeduino/scheduler.ino b/speeduino/scheduler.ino index da968ea6..a6688190 100644 --- a/speeduino/scheduler.ino +++ b/speeduino/scheduler.ino @@ -166,35 +166,33 @@ void initialiseSchedulers() Timer1.setPrescaleFactor((HAL_RCC_GetHCLKFreq() * 2U)-1); //2us resolution Timer2.setPrescaleFactor((HAL_RCC_GetHCLKFreq() * 2U)-1); //2us resolution Timer3.setPrescaleFactor((HAL_RCC_GetHCLKFreq() * 2U)-1); //2us resolution - Timer2.setMode(1, TIMER_OUTPUT_COMPARE); - Timer2.setMode(2, TIMER_OUTPUT_COMPARE); - Timer2.setMode(3, TIMER_OUTPUT_COMPARE); - Timer2.setMode(4, TIMER_OUTPUT_COMPARE); - - Timer3.setMode(1, TIMER_OUTPUT_COMPARE); - Timer3.setMode(2, TIMER_OUTPUT_COMPARE); - Timer3.setMode(3, TIMER_OUTPUT_COMPARE); - Timer3.setMode(4, TIMER_OUTPUT_COMPARE); - Timer1.setMode(1, TIMER_OUTPUT_COMPARE); - #else //libmaple core aka STM32DUINO //see https://github.com/rogerclarkmelbourne/Arduino_STM32/blob/754bc2969921f1ef262bd69e7faca80b19db7524/STM32F1/system/libmaple/include/libmaple/timer.h#L444 - //(CYCLES_PER_MICROSECOND == 72, APB2 at 72MHz, APB1 at 36MHz). - //Timer2 to 4 is on APB1, Timer1 on APB2. http://www.st.com/resource/en/datasheet/stm32f103cb.pdf sheet 12 - Timer1.setPrescaleFactor((72 * 2U)-1); //2us resolution - Timer2.setPrescaleFactor((36 * 2U)-1); //2us resolution - Timer3.setPrescaleFactor((36 * 2U)-1); //2us resolution - Timer2.setMode(TIMER_CH1, TIMER_OUTPUT_COMPARE); - Timer2.setMode(TIMER_CH2, TIMER_OUTPUT_COMPARE); - Timer2.setMode(TIMER_CH3, TIMER_OUTPUT_COMPARE); - Timer2.setMode(TIMER_CH4, TIMER_OUTPUT_COMPARE); - - Timer3.setMode(TIMER_CH1, TIMER_OUTPUT_COMPARE); - Timer3.setMode(TIMER_CH2, TIMER_OUTPUT_COMPARE); - Timer3.setMode(TIMER_CH3, TIMER_OUTPUT_COMPARE); - Timer3.setMode(TIMER_CH4, TIMER_OUTPUT_COMPARE); - + #if defined (STM32F1) || defined(__STM32F1__) + //(CYCLES_PER_MICROSECOND == 72, APB2 at 72MHz, APB1 at 36MHz). + //Timer2 to 4 is on APB1, Timer1 on APB2. http://www.st.com/resource/en/datasheet/stm32f103cb.pdf sheet 12 + Timer1.setPrescaleFactor((72 * 2U)-1); //2us resolution + Timer2.setPrescaleFactor((36 * 2U)-1); //2us resolution + Timer3.setPrescaleFactor((36 * 2U)-1); //2us resolution + #elif defined(STM32F4) + //(CYCLES_PER_MICROSECOND == 168, APB2 at 84MHz, APB1 at 42MHz). + //Timer2 to 4 is on APB1, Timer1 on APB2. http://www.st.com/resource/en/datasheet/stm32f103cb.pdf sheet 12 + Timer1.setPrescaleFactor((84 * 2U)-1); //2us resolution + Timer2.setPrescaleFactor((42 * 2U)-1); //2us resolution + Timer3.setPrescaleFactor((42 * 2U)-1); //2us resolution + #endif #endif + Timer2.setMode(1, TIMER_OUTPUT_COMPARE); + Timer2.setMode(2, TIMER_OUTPUT_COMPARE); + Timer2.setMode(3, TIMER_OUTPUT_COMPARE); + Timer2.setMode(4, TIMER_OUTPUT_COMPARE); + + Timer3.setMode(1, TIMER_OUTPUT_COMPARE); + Timer3.setMode(2, TIMER_OUTPUT_COMPARE); + Timer3.setMode(3, TIMER_OUTPUT_COMPARE); + Timer3.setMode(4, TIMER_OUTPUT_COMPARE); + Timer1.setMode(1, TIMER_OUTPUT_COMPARE); + Timer2.attachInterrupt(1, fuelSchedule1Interrupt); Timer2.attachInterrupt(2, fuelSchedule2Interrupt); Timer2.attachInterrupt(3, fuelSchedule3Interrupt); diff --git a/speeduino/speeduino.ino b/speeduino/speeduino.ino index a070acf7..63ecffaa 100644 --- a/speeduino/speeduino.ino +++ b/speeduino/speeduino.ino @@ -212,7 +212,7 @@ void setup() loadCalibration(); //Set the pin mappings - if(configPage1.pinMapping > BOARD_NR_GPIO_PINS) + if((configPage1.pinMapping == 0) || (configPage1.pinMapping > BOARD_NR_GPIO_PINS)) { //First time running on this board setPinMapping(3); //Force board to v0.4 @@ -665,7 +665,7 @@ void loop() { if (CANSerial.available() > 0) { - canCommand(); + canCommand(); } } } @@ -678,7 +678,7 @@ void loop() { if (CANSerial.available() > 0) { - canCommand(); + canCommand(); } } } diff --git a/speeduino/storage.ino b/speeduino/storage.ino index fcb1ca43..48d97c1e 100644 --- a/speeduino/storage.ino +++ b/speeduino/storage.ino @@ -28,19 +28,19 @@ void writeConfig() | Fuel table (See storage.h for data layout) - Page 1 | 16x16 table itself + the 16 values along each of the axis -----------------------------------------------------*/ - if(EEPROM.read(EEPROM_CONFIG1_XSIZE) != fuelTable.xSize) { EEPROM.write(EEPROM_CONFIG1_XSIZE, fuelTable.xSize); } //Write the VE Tables RPM dimension size - if(EEPROM.read(EEPROM_CONFIG1_YSIZE) != fuelTable.ySize) { EEPROM.write(EEPROM_CONFIG1_YSIZE, fuelTable.ySize); } //Write the VE Tables MAP/TPS dimension size + EEPROM.update(EEPROM_CONFIG1_XSIZE, fuelTable.xSize); //Write the VE Tables Table RPM dimension size + EEPROM.update(EEPROM_CONFIG1_YSIZE, fuelTable.ySize); //Write the VE Tables Table MAP/TPS dimension size for(int x=EEPROM_CONFIG1_MAP; x Date: Fri, 1 Sep 2017 23:21:14 -0300 Subject: [PATCH 03/11] Changed pins to any STM32F1 Make debug more friendly on Updates.ino --- speeduino/updates.ino | 10 +++---- speeduino/utils.ino | 64 ++++++++++++++++++++++--------------------- 2 files changed, 38 insertions(+), 36 deletions(-) diff --git a/speeduino/updates.ino b/speeduino/updates.ino index 03c02ac4..cbd53dc7 100644 --- a/speeduino/updates.ino +++ b/speeduino/updates.ino @@ -9,9 +9,9 @@ void doUpdates() { #define CURRENT_DATA_VERSION 5 - + uint8_t currentVersion = EEPROM.read(EEPROM_DATA_VERSION); //May 2017 firmware introduced a -40 offset on the ignition table. Update that table to +40 - if(EEPROM.read(EEPROM_DATA_VERSION) == 2) + if(currentVersion == 2) { for(int x=0; x<16; x++) { @@ -24,7 +24,7 @@ void doUpdates() EEPROM.write(EEPROM_DATA_VERSION, 3); } //June 2017 required the forced addition of some CAN values to avoid weird errors - if(EEPROM.read(EEPROM_DATA_VERSION) == 3) + if(currentVersion == 3) { configPage10.speeduino_tsCanId = 0; configPage10.true_address = 256; @@ -37,7 +37,7 @@ void doUpdates() EEPROM.write(EEPROM_DATA_VERSION, 4); } //July 2017 adds a cranking enrichment curve in place of the single value. This converts that single value to the curve - if(EEPROM.read(EEPROM_DATA_VERSION) == 4) + if(currentVersion == 4) { //Some default values for the bins (Doesn't matter too much here as the values against them will all be identical) configPage11.crankingEnrichBins[0] = 0; @@ -55,7 +55,7 @@ void doUpdates() } //Final check is always for 255 and 0 (Brand new arduino) - if( (EEPROM.read(EEPROM_DATA_VERSION) == 0) || (EEPROM.read(EEPROM_DATA_VERSION) == 255) ) + if( (currentVersion == 0) || (currentVersion == 255) ) { configPage10.true_address = 0x200; EEPROM.write(EEPROM_DATA_VERSION, CURRENT_DATA_VERSION); diff --git a/speeduino/utils.ino b/speeduino/utils.ino index b3841502..41029005 100644 --- a/speeduino/utils.ino +++ b/speeduino/utils.ino @@ -195,6 +195,7 @@ void setPinMapping(byte boardID) pinCoil3 = 30; pinO2 = A22; #elif defined(STM32F4) + //Black F407VE http://wiki.stm32duino.com/index.php?title=STM32F407 pinInjector1 = PE7; //Output pin injector 1 is on pinInjector2 = PE8; //Output pin injector 2 is on pinInjector3 = PE9; //Output pin injector 3 is on @@ -212,6 +213,10 @@ void setPinMapping(byte boardID) pinO2 = A4; //O2 Sensor pin pinBat = A5; //Battery reference voltage pin pinBaro = A6; + pinIdle1 = PB8; //Single wire idle control + pinIdle2 = PB9; //2 wire idle control + pinBoost = PE0; //Boost control + pinVVT_1 = PE1; //Default VVT output pinStepperDir = PD8; //Direction pin for DRV8825 driver pinStepperStep = PB15; //Step pin for DRV8825 driver pinStepperEnable = PD9; //Enable pin for DRV8825 @@ -223,44 +228,41 @@ void setPinMapping(byte boardID) pinFlex = PC4; // Flex sensor (Must be external interrupt enabled) pinTrigger = PC5; //The CAS pin pinTrigger2 = PC6; //The Cam Sensor pin - pinIdle1 = PB8; //Single wire idle control - pinIdle2 = PB9; //2 wire idle control - pinBoost = PE0; //Boost control - pinVVT_1 = PE1; //Default VVT output #elif defined(CORE_STM32) - //http://docs.leaflabs.com/static.leaflabs.com/pub/leaflabs/maple-docs/0.0.12/hardware/maple-mini.html#master-pin-map - //pins 23, 24 and 33 couldn't be used - pinInjector1 = 15; //Output pin injector 1 is on - pinInjector2 = 16; //Output pin injector 2 is on - pinInjector3 = 17; //Output pin injector 3 is on - pinInjector4 = 18; //Output pin injector 4 is on - pinCoil1 = 19; //Pin for coil 1 - pinCoil2 = 20; //Pin for coil 2 - pinCoil3 = 21; //Pin for coil 3 - pinCoil4 = 26; //Pin for coil 4 - pinCoil5 = 27; //Pin for coil 5 + //blue pill http://wiki.stm32duino.com/index.php?title=Blue_Pill + //Maple mini http://wiki.stm32duino.com/index.php?title=Maple_Mini + //pins PA12, PA11 are used for USB or CAN couldn't be used for GPIO + pinInjector1 = PB7; //Output pin injector 1 is on + pinInjector2 = PB6; //Output pin injector 2 is on + pinInjector3 = PB5; //Output pin injector 3 is on + pinInjector4 = PB4; //Output pin injector 4 is on + pinCoil1 = PB3; //Pin for coil 1 + pinCoil2 = PA15; //Pin for coil 2 + pinCoil3 = PA14; //Pin for coil 3 + pinCoil4 = PA9; //Pin for coil 4 + pinCoil5 = PA8; //Pin for coil 5 pinTPS = A0; //TPS input pin pinMAP = A1; //MAP sensor pin pinIAT = A2; //IAT sensor pin pinCLT = A3; //CLS sensor pin pinO2 = A4; //O2 Sensor pin pinBat = A5; //Battery reference voltage pin - pinStepperDir = 12; //Direction pin for DRV8825 driver - pinStepperStep = 13; //Step pin for DRV8825 driver - pinStepperEnable = 14; //Enable pin for DRV8825 - pinDisplayReset = 2; // OLED reset pin - pinFan = 1; //Pin for the fan output - pinFuelPump = 0; //Fuel pump output - pinTachOut = 31; //Tacho output pin - //external interrupt enabled pins - pinFlex = 32; // Flex sensor (Must be external interrupt enabled) - pinTrigger = 25; //The CAS pin - pinTrigger2 = 22; //The Cam Sensor pin pinBaro = pinMAP; - pinIdle1 = 2; //Single wire idle control - pinIdle2 = 9; //2 wire idle control - pinBoost = 10; //Boost control - pinVVT_1 = 11; //Default VVT output + pinIdle1 = PB2; //Single wire idle control + pinIdle2 = PA2; //2 wire idle control + pinBoost = PA1; //Boost control + pinVVT_1 = PA0; //Default VVT output + pinStepperDir = PC15; //Direction pin for DRV8825 driver + pinStepperStep = PC14; //Step pin for DRV8825 driver + pinStepperEnable = PC13; //Enable pin for DRV8825 + pinDisplayReset = PB2; // OLED reset pin + pinFan = PB1; //Pin for the fan output + pinFuelPump = PB11; //Fuel pump output + pinTachOut = PB10; //Tacho output pin + //external interrupt enabled pins + pinFlex = PB8; // Flex sensor (Must be external interrupt enabled) + pinTrigger = PA10; //The CAS pin + pinTrigger2 = PA13; //The Cam Sensor pin #endif break; @@ -878,4 +880,4 @@ unsigned int PW_SD(int REQ_FUEL, byte VE, byte MAP, int corrections, int injOpen unsigned int PW_AN(int REQ_FUEL, byte VE, byte TPS, int corrections, int injOpen) { return PW(REQ_FUEL, VE, currentStatus.MAP, corrections, injOpen); -} +} From 8af08a720930896e6ac99dd44a5f86a347fbb4ae Mon Sep 17 00:00:00 2001 From: VitorBoss Date: Sat, 2 Sep 2017 13:26:41 -0300 Subject: [PATCH 04/11] Included 12bit math for STM Boost/VVT pins dont change if 0% Change visual led clock to 4Hz Change analog resolution to 10bits on STM32GENERIC core --- speeduino/auxiliaries.ino | 6 ++++-- speeduino/idle.ino | 1 + speeduino/maths.h | 12 +++++++++--- speeduino/sensors.ino | 2 ++ speeduino/timers.ino | 6 +++--- 5 files changed, 19 insertions(+), 8 deletions(-) diff --git a/speeduino/auxiliaries.ino b/speeduino/auxiliaries.ino index 0eff9134..162798d3 100644 --- a/speeduino/auxiliaries.ino +++ b/speeduino/auxiliaries.ino @@ -64,6 +64,8 @@ void initialiseAuxPWM() currentStatus.boostDuty = 0; boostCounter = 0; #if defined(CORE_STM32) //Need to be initialised last due to instant interrupt + Timer1.setMode(2, TIMER_OUTPUT_COMPARE); + Timer1.setMode(3, TIMER_OUTPUT_COMPARE); if(boost_pwm_max_count > 0) { Timer1.attachInterrupt(2, boostInterrupt);} if(vvt_pwm_max_count > 0) { Timer1.attachInterrupt(3, vvtInterrupt);} Timer1.resume(); @@ -152,7 +154,7 @@ void vvtControl() static inline void boostInterrupt() //Most ARM chips can simply call a function #endif { - if (boost_pwm_state) + if ((boost_pwm_state) && (boost_pwm_target_value<=2)) { BOOST_PIN_LOW(); // Switch pin to low BOOST_TIMER_COMPARE = BOOST_TIMER_COUNTER + (boost_pwm_max_count - boost_pwm_cur_value); @@ -174,7 +176,7 @@ void vvtControl() static inline void vvtInterrupt() //Most ARM chips can simply call a function #endif { - if (vvt_pwm_state) + if ((vvt_pwm_state) && (vvt_pwm_target_value<=2)) { VVT_PIN_LOW(); // Switch pin to low VVT_TIMER_COMPARE = VVT_TIMER_COUNTER + (vvt_pwm_max_count - vvt_pwm_cur_value); diff --git a/speeduino/idle.ino b/speeduino/idle.ino index 3670de16..0b8c3ec0 100644 --- a/speeduino/idle.ino +++ b/speeduino/idle.ino @@ -194,6 +194,7 @@ void initialiseIdle() idleInitComplete = configPage4.iacAlgorithm; //Sets which idle method was initialised currentStatus.idleLoad = 0; #if defined(CORE_STM32) //Need to be initialised last due to instant interrupt + Timer1.setMode(4, TIMER_OUTPUT_COMPARE); if(idle_pwm_max_count > 0) { Timer1.attachInterrupt(4, idleInterrupt);} //on first flash the configPage4.iacAlgorithm is invalid Timer1.resume(); #endif diff --git a/speeduino/maths.h b/speeduino/maths.h index a1796e86..6c2760dc 100644 --- a/speeduino/maths.h +++ b/speeduino/maths.h @@ -10,8 +10,14 @@ unsigned long percentage(byte, unsigned long); //This is a dedicated function that specifically handles the case of mapping 0-1023 values into a 0 to X range //This is a common case because it means converting from a standard 10-bit analog input to a byte or 10-bit analog into 0-511 (Eg the temperature readings) -#define fastMap1023toX(x, out_max) ( ((unsigned long)x * out_max) >> 10) -//This is a new version that allows for out_min -#define fastMap10Bit(x, out_min, out_max) ( ( ((unsigned long)x * (out_max-out_min)) >> 10 ) + out_min) +#if defined(_VARIANT_ARDUINO_STM32_) //libmaple + #define fastMap1023toX(x, out_max) ( ((unsigned long)x * out_max) >> 12) + //This is a new version that allows for out_min + #define fastMap10Bit(x, out_min, out_max) ( ( ((unsigned long)x * (out_max-out_min)) >> 12 ) + out_min) +#else + #define fastMap1023toX(x, out_max) ( ((unsigned long)x * out_max) >> 10) + //This is a new version that allows for out_min + #define fastMap10Bit(x, out_min, out_max) ( ( ((unsigned long)x * (out_max-out_min)) >> 10 ) + out_min) +#endif #endif diff --git a/speeduino/sensors.ino b/speeduino/sensors.ino index 7057819c..bf847710 100644 --- a/speeduino/sensors.ino +++ b/speeduino/sensors.ino @@ -42,6 +42,8 @@ void initialiseADC() BIT_CLEAR(ADCSRA,ADPS1); BIT_CLEAR(ADCSRA,ADPS0); #endif +#elif defined(ARDUINO_ARCH_STM32) //STM32GENERIC lib + analogReadResolution(10); //use 10bits for analog #endif MAPcurRev = 0; MAPcount = 0; diff --git a/speeduino/timers.ino b/speeduino/timers.ino index b4ff21b3..70a7f9e8 100644 --- a/speeduino/timers.ino +++ b/speeduino/timers.ino @@ -104,9 +104,6 @@ void oneMSInterval() //Most ARM chips can simply call a function { loop100ms = 0; //Reset counter BIT_SET(TIMER_mask, BIT_TIMER_10HZ); - #if defined(CORE_STM32) //debug purpose, only visal for running code - digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN)); - #endif currentStatus.rpmDOT = (currentStatus.RPM - lastRPM_100ms) * 10; //This is the RPM per second that the engine has accelerated/decelleratedin the last loop lastRPM_100ms = currentStatus.RPM; //Record the current RPM for next calc @@ -118,6 +115,9 @@ void oneMSInterval() //Most ARM chips can simply call a function { loop250ms = 0; //Reset Counter BIT_SET(TIMER_mask, BIT_TIMER_4HZ); + #if defined(CORE_STM32) //debug purpose, only visal for running code + digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN)); + #endif #if defined(CORE_AVR) //Reset watchdog timer (Not active currently) From 44a0da5a62aa2679d0ee86073117cd2e803d490b Mon Sep 17 00:00:00 2001 From: VitorBoss Date: Sat, 23 Sep 2017 11:47:48 -0300 Subject: [PATCH 05/11] Small fixes --- speeduino/auxiliaries.ino | 4 ++-- speeduino/scheduler.ino | 2 +- speeduino/speeduino.ino | 26 ++++++-------------------- speeduino/storage.ino | 4 ++-- speeduino/utils.ino | 25 +++++++++++++++---------- 5 files changed, 26 insertions(+), 35 deletions(-) diff --git a/speeduino/auxiliaries.ino b/speeduino/auxiliaries.ino index 162798d3..ea6ddff8 100644 --- a/speeduino/auxiliaries.ino +++ b/speeduino/auxiliaries.ino @@ -154,7 +154,7 @@ void vvtControl() static inline void boostInterrupt() //Most ARM chips can simply call a function #endif { - if ((boost_pwm_state) && (boost_pwm_target_value<=2)) + if (boost_pwm_state == true) { BOOST_PIN_LOW(); // Switch pin to low BOOST_TIMER_COMPARE = BOOST_TIMER_COUNTER + (boost_pwm_max_count - boost_pwm_cur_value); @@ -176,7 +176,7 @@ void vvtControl() static inline void vvtInterrupt() //Most ARM chips can simply call a function #endif { - if ((vvt_pwm_state) && (vvt_pwm_target_value<=2)) + if (vvt_pwm_state == true) { VVT_PIN_LOW(); // Switch pin to low VVT_TIMER_COMPARE = VVT_TIMER_COUNTER + (vvt_pwm_max_count - vvt_pwm_cur_value); diff --git a/speeduino/scheduler.ino b/speeduino/scheduler.ino index a6688190..68211697 100644 --- a/speeduino/scheduler.ino +++ b/speeduino/scheduler.ino @@ -176,7 +176,7 @@ void initialiseSchedulers() Timer3.setPrescaleFactor((36 * 2U)-1); //2us resolution #elif defined(STM32F4) //(CYCLES_PER_MICROSECOND == 168, APB2 at 84MHz, APB1 at 42MHz). - //Timer2 to 4 is on APB1, Timer1 on APB2. http://www.st.com/resource/en/datasheet/stm32f103cb.pdf sheet 12 + //Timer2 to 14 is on APB1, Timers 1, 8, 9 and 10 on APB2. http://www.st.com/resource/en/datasheet/stm32f407vg.pdf sheet 120 Timer1.setPrescaleFactor((84 * 2U)-1); //2us resolution Timer2.setPrescaleFactor((42 * 2U)-1); //2us resolution Timer3.setPrescaleFactor((42 * 2U)-1); //2us resolution diff --git a/speeduino/speeduino.ino b/speeduino/speeduino.ino index 63ecffaa..4df8b0f4 100644 --- a/speeduino/speeduino.ino +++ b/speeduino/speeduino.ino @@ -649,32 +649,17 @@ void loop() //Check for any requets from serial. Serial operations are checked under 2 scenarios: // 1) Every 64 loops (64 Is more than fast enough for TunerStudio). This function is equivalent to ((loopCount % 64) == 1) but is considerably faster due to not using the mod or division operations // 2) If the amount of data in the serial buffer is greater than a set threhold (See globals.h). This is to avoid serial buffer overflow when large amounts of data is being sent - if ( (BIT_CHECK(LOOP_TIMER, BIT_TIMER_15HZ)) or (Serial.available() > SERIAL_BUFFER_THRESHOLD) ) + if ( ((mainLoopCount & 31) == 1) or (Serial.available() > SERIAL_BUFFER_THRESHOLD) ) { if (Serial.available() > 0) { command(); } } - -#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) //ATmega2561 does not have Serial3 - //if serial3 interface is enabled then check for serial3 requests. - if (configPage10.enable_canbus == 1) - { - if ( (BIT_CHECK(LOOP_TIMER, BIT_TIMER_15HZ)) or (CANSerial.available() > SERIAL_BUFFER_THRESHOLD) ) - { - if (CANSerial.available() > 0) - { - canCommand(); - } - } - } - -#elif defined(CORE_TEENSY) || defined(CORE_STM32) //if can or secondary serial interface is enabled then check for requests. if (configPage10.enable_canbus == 1) //secondary serial interface enabled { - if ( (BIT_CHECK(LOOP_TIMER, BIT_TIMER_15HZ)) or (CANSerial.available() > SERIAL_BUFFER_THRESHOLD) ) + if ( ((mainLoopCount & 31) == 1) or (CANSerial.available() > SERIAL_BUFFER_THRESHOLD) ) { if (CANSerial.available() > 0) { @@ -682,15 +667,16 @@ void loop() } } } - else if (configPage10.enable_canbus == 2) // can module enabled + #if defined(CORE_TEENSY) || defined(CORE_STM32) + else if (configPage10.enable_canbus == 2) // can module enabled { //check local can module - // if ( (BIT_CHECK(LOOP_TIMER, BIT_TIMER_15HZ)) or (CANbus0.available()) + // if ( BIT_CHECK(LOOP_TIMER, BIT_TIMER_15HZ) or (CANbus0.available()) // { // CANbus0.read(rx_msg); // } } -#endif + #endif //Displays currently disabled // if (configPage1.displayType && (mainLoopCount & 255) == 1) { updateDisplay();} diff --git a/speeduino/storage.ino b/speeduino/storage.ino index 48d97c1e..bbcaaef0 100644 --- a/speeduino/storage.ino +++ b/speeduino/storage.ino @@ -28,8 +28,8 @@ void writeConfig() | Fuel table (See storage.h for data layout) - Page 1 | 16x16 table itself + the 16 values along each of the axis -----------------------------------------------------*/ - EEPROM.update(EEPROM_CONFIG1_XSIZE, fuelTable.xSize); //Write the VE Tables Table RPM dimension size - EEPROM.update(EEPROM_CONFIG1_YSIZE, fuelTable.ySize); //Write the VE Tables Table MAP/TPS dimension size + EEPROM.update(EEPROM_CONFIG1_XSIZE, fuelTable.xSize); //Write the VE Table RPM dimension size + EEPROM.update(EEPROM_CONFIG1_YSIZE, fuelTable.ySize); //Write the VE Table MAP/TPS dimension size for(int x=EEPROM_CONFIG1_MAP; x Date: Fri, 6 Oct 2017 16:44:29 -0300 Subject: [PATCH 06/11] Typo fix --- speeduino/speeduino.ino | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/speeduino/speeduino.ino b/speeduino/speeduino.ino index fe4749dd..b2911517 100644 --- a/speeduino/speeduino.ino +++ b/speeduino/speeduino.ino @@ -654,7 +654,7 @@ void loop() { if ( ((mainLoopCount & 31) == 1) or (CANSerial.available() > SERIAL_BUFFER_THRESHOLD) ) { - if (CANSerial.available() > 0) { cancommand(); } + if (CANSerial.available() > 0) { canCommand(); } } } #if defined(CORE_TEENSY) || defined(CORE_STM32) @@ -1420,4 +1420,4 @@ void loop() } } //Ignition schedules on } //Has sync and RPM -} //loop() +} //loop() From a52adc48a87d18fb2d99257f0486543245f695de Mon Sep 17 00:00:00 2001 From: VitorBoss Date: Fri, 13 Oct 2017 18:00:58 -0300 Subject: [PATCH 07/11] Merge branch 'master' of git://github.com/noisymime/speeduino into noisymime-master --- reference/Base Tunes/NA6 PNP base tune.msq | 1164 +++++++++++++++++ reference/Speeduino base tune.msq | 365 +++++- reference/speeduino.ini | 68 +- reference/wiki/accessories/boost_settings.png | Bin 91831 -> 239059 bytes speeduino/comms.h | 3 +- speeduino/comms.ino | 64 +- speeduino/decoders.ino | 29 +- speeduino/sensors.h | 2 +- speeduino/sensors.ino | 12 +- speeduino/utils.ino | 2 +- 10 files changed, 1612 insertions(+), 97 deletions(-) create mode 100644 reference/Base Tunes/NA6 PNP base tune.msq diff --git a/reference/Base Tunes/NA6 PNP base tune.msq b/reference/Base Tunes/NA6 PNP base tune.msq new file mode 100644 index 00000000..e1789954 --- /dev/null +++ b/reference/Base Tunes/NA6 PNP base tune.msq @@ -0,0 +1,1164 @@ + + + + + +"CAN ID 0" + + + + 44.0 44.0 49.0 49.0 23.0 17.0 19.0 35.0 51.0 54.0 51.0 51.0 51.0 51.0 51.0 51.0 + 44.0 45.0 49.0 44.0 24.0 17.0 16.0 34.0 61.0 63.0 57.0 57.0 56.0 56.0 56.0 56.0 + 45.0 45.0 55.0 47.0 31.0 29.0 21.0 51.0 64.0 62.0 64.0 60.0 60.0 60.0 60.0 60.0 + 44.0 47.0 50.0 63.0 37.0 34.0 33.0 54.0 65.0 64.0 69.0 63.0 63.0 63.0 63.0 63.0 + 51.0 60.0 61.0 60.0 42.0 46.0 39.0 59.0 66.0 66.0 71.0 65.0 65.0 65.0 65.0 65.0 + 56.0 62.0 63.0 68.0 53.0 53.0 50.0 70.0 72.0 68.0 72.0 68.0 68.0 67.0 67.0 67.0 + 58.0 61.0 64.0 75.0 61.0 60.0 64.0 75.0 86.0 75.0 77.0 72.0 72.0 71.0 71.0 71.0 + 54.0 60.0 65.0 82.0 65.0 65.0 68.0 74.0 84.0 75.0 83.0 75.0 68.0 68.0 68.0 58.0 + 57.0 60.0 61.0 85.0 74.0 70.0 71.0 85.0 76.0 73.0 71.0 64.0 64.0 64.0 64.0 64.0 + 58.0 61.0 64.0 87.0 82.0 78.0 74.0 83.0 76.0 68.0 74.0 67.0 67.0 67.0 67.0 66.0 + 64.0 64.0 79.0 87.0 81.0 81.0 86.0 86.0 78.0 72.0 78.0 76.0 73.0 71.0 69.0 69.0 + 66.0 72.0 80.0 89.0 85.0 86.0 97.0 101.0 105.0 87.0 80.0 78.0 73.0 71.0 69.0 69.0 + 66.0 75.0 80.0 93.0 89.0 91.0 100.0 105.0 112.0 99.0 89.0 89.0 83.0 77.0 74.0 74.0 + 66.0 75.0 84.0 88.0 92.0 103.0 108.0 117.0 119.0 96.0 95.0 94.0 84.0 79.0 77.0 77.0 + 66.0 75.0 84.0 88.0 105.0 115.0 121.0 150.0 166.0 125.0 113.0 102.0 87.0 83.0 80.0 80.0 + 66.0 71.0 85.0 84.0 95.0 109.0 116.0 140.0 140.0 102.0 95.0 93.0 88.0 85.0 84.0 84.0 + + + 500.0 + 700.0 + 900.0 + 1500.0 + 2100.0 + 2900.0 + 3800.0 + 4700.0 + 5500.0 + 5700.0 + 5900.0 + 6100.0 + 6300.0 + 6500.0 + 6600.0 + 6600.0 + + + 16.0 + 26.0 + 30.0 + 36.0 + 40.0 + 46.0 + 50.0 + 56.0 + 60.0 + 66.0 + 70.0 + 76.0 + 86.0 + 90.0 + 96.0 + 100.0 + + + +50.0 +50.0 +5.0 +5.0 + + 179.0 + 179.0 + 179.0 + 179.0 + 179.0 + 129.0 + 114.0 + 112.0 + 108.0 + 100.0 + +10.0 +"NA6 MX5 PNP" +"Board Default" +"Normal" +3.2 +0.0 +60.0 +700.0 +"Unused" +"VE" +"CPU" +"TPS" +"Mem" +"RPM" +"RPM" +"RPM" +12.7 +2.0 +"Alternating" +"Yes" +"No" +"Full" +"Yes" +"Yes" +"Yes" +"Disabled" +1.0 +355.0 +355.0 +355.0 +355.0 +"Cycle Average" +"Four-stroke" +"Port" +"4" +"GM" +"GM" +"4" +"Even fire" +"Off" +"Speed Density" +"Off" +"Semi-Sequential" +"No" +"Off" +2.0 +95.0 +42.0 +0.0 +0.0 +46.0 +233.0 +10.0 +260.0 +5.0 +14.7 +0.0 +0.0 +0.0 +4.0 +1.0 +15.0 +85.0 +40.0 +80.0 +12.0 + + 16.0 + 16.0 + 57.0 + 60.0 + 60.0 + 64.0 + 65.0 + 68.0 + 71.0 + 73.0 + 74.0 + 75.0 + 76.0 + 77.0 + 78.0 + 78.0 + 79.0 + 80.0 + 57.0 + 60.0 + 60.0 + 64.0 + 65.0 + 68.0 + 71.0 + 73.0 + 74.0 + 75.0 + 76.0 + 77.0 + 78.0 + 78.0 + 79.0 + 80.0 + 57.0 + 60.0 + 60.0 + 64.0 + 65.0 + 68.0 + 71.0 + 73.0 + 74.0 + 75.0 + 76.0 + 77.0 + 78.0 + 78.0 + 79.0 + 80.0 + 57.0 + 60.0 + 60.0 + 64.0 + 65.0 + 68.0 + 71.0 + 73.0 + 74.0 + 74.0 + 76.0 + 77.0 + 77.0 + + + 0.0 + + + + + 17.0 20.0 20.0 24.0 25.0 28.0 31.0 33.0 34.0 35.0 36.0 37.0 38.0 38.0 39.0 40.0 + 17.0 20.0 20.0 24.0 25.0 28.0 31.0 33.0 34.0 35.0 36.0 37.0 38.0 38.0 39.0 40.0 + 17.0 20.0 20.0 24.0 25.0 28.0 31.0 33.0 34.0 35.0 36.0 37.0 38.0 38.0 39.0 40.0 + 17.0 20.0 20.0 24.0 25.0 28.0 31.0 33.0 34.0 34.0 36.0 37.0 37.0 37.0 38.0 39.0 + 16.0 20.0 20.0 23.0 24.0 28.0 31.0 32.0 34.0 34.0 36.0 37.0 37.0 37.0 38.0 39.0 + 16.0 20.0 21.0 23.0 24.0 28.0 31.0 32.0 33.0 34.0 35.0 36.0 36.0 36.0 37.0 38.0 + 15.0 20.0 22.0 23.0 24.0 27.0 30.0 31.0 32.0 33.0 34.0 35.0 36.0 36.0 37.0 38.0 + 15.0 20.0 21.0 23.0 24.0 26.0 29.0 30.0 31.0 32.0 33.0 34.0 35.0 35.0 36.0 37.0 + 15.0 20.0 21.0 23.0 24.0 25.0 28.0 30.0 31.0 32.0 33.0 34.0 34.0 34.0 35.0 35.0 + 15.0 20.0 21.0 23.0 24.0 25.0 28.0 29.0 30.0 31.0 32.0 33.0 33.0 33.0 34.0 34.0 + 15.0 20.0 21.0 23.0 24.0 25.0 28.0 29.0 30.0 31.0 31.0 32.0 32.0 32.0 33.0 33.0 + 15.0 20.0 22.0 23.0 24.0 25.0 28.0 29.0 30.0 30.0 31.0 31.0 31.0 31.0 32.0 32.0 + 15.0 20.0 22.0 23.0 24.0 25.0 28.0 29.0 29.0 29.0 30.0 30.0 30.0 30.0 31.0 31.0 + 16.0 21.0 22.0 23.0 24.0 25.0 28.0 29.0 29.0 29.0 29.0 29.0 29.0 29.0 30.0 30.0 + 17.0 22.0 22.0 23.0 24.0 25.0 28.0 29.0 29.0 29.0 29.0 29.0 29.0 29.0 29.0 29.0 + 18.0 22.0 22.0 23.0 24.0 25.0 27.0 28.0 28.0 28.0 28.0 28.0 28.0 28.0 28.0 28.0 + + + 500.0 + 1000.0 + 1500.0 + 2000.0 + 2500.0 + 3000.0 + 3500.0 + 4000.0 + 4500.0 + 5000.0 + 5500.0 + 6000.0 + 6500.0 + 7000.0 + 8000.0 + 9000.0 + + + 16.0 + 26.0 + 30.0 + 36.0 + 40.0 + 46.0 + 50.0 + 56.0 + 60.0 + 66.0 + 70.0 + 76.0 + 86.0 + 90.0 + 96.0 + 100.0 + + + +0.0 +0.0 +5.0 +10.0 +"Leading" +"Crank Speed" +"Going Low" +"Yes" +"4G63 / Miata / 3000GT" +"Trailing" +"Board Default" +"Yes" +6.5 +3200.0 +-21.0 +38.0 +0.0 +"Dwell control" +"Off" +"Wasted Spark" +"Weak" +"On" +6.0 +5.0 +2.0 +1.0 +400.0 +90.0 +6000.0 +1.0 +2.0 +6500.0 + + 20.0 + 280.0 + 640.0 + 970.0 + + + 69.0 + 90.0 + 106.0 + 120.0 + + + -40.0 + -32.0 + -23.0 + -14.0 + -4.0 + 15.0 + 33.0 + 48.0 + 66.0 + 77.0 + +12.0 + + 106.0 + 105.0 + 100.0 + 100.0 + 91.0 + 85.0 + + + 0.0 + 20.0 + 30.0 + 40.0 + 60.0 + 100.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + +1500.0 +150.0 +1.0 +"Off" +"3" +"HIGH" + + 16.0 + 16.0 + 147.0 + 128.0 + 128.0 + 129.0 + 132.0 + 151.0 + 150.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 128.0 + 128.0 + 129.0 + 132.0 + 151.0 + 28.0 + 64.0 + 97.0 + 69.0 + 90.0 + 106.0 + 120.0 + 0.0 + 8.0 + 17.0 + 26.0 + 36.0 + 53.0 + 73.0 + 88.0 + 106.0 + 117.0 + 12.0 + 106.0 + 105.0 + 100.0 + 100.0 + 91.0 + 85.0 + 0.0 + 20.0 + 30.0 + 40.0 + 60.0 + 100.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 150.0 + 150.0 + 1.0 + + + 0.0 + + + + + 14.7 12.8 12.8 12.9 13.2 15.1 15.0 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 + 14.7 12.8 12.8 12.9 13.2 15.1 15.0 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 + 14.7 12.8 12.8 12.9 13.2 15.1 15.0 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 14.7 + 14.7 12.8 12.8 12.9 13.1 15.0 14.9 14.7 14.7 14.6 14.6 14.5 14.5 14.4 14.4 14.4 + 14.7 14.7 14.7 14.8 14.9 15.0 14.8 14.6 14.4 14.3 14.3 14.2 14.1 14.0 14.0 14.0 + 14.7 14.7 14.7 14.7 14.8 14.9 14.7 14.6 14.1 14.0 13.9 13.8 13.7 13.6 13.5 13.5 + 14.3 14.3 13.5 13.5 13.5 13.5 13.5 13.5 13.8 13.8 13.8 13.7 13.6 13.5 13.4 13.4 + 14.2 14.2 13.5 13.5 13.5 13.5 13.5 13.5 13.6 13.6 13.6 13.5 13.3 13.2 13.1 13.1 + 14.1 14.1 13.5 13.5 13.5 13.5 13.5 13.6 13.1 13.1 13.0 13.0 12.9 12.9 12.9 12.9 + 14.1 14.1 13.5 13.5 13.5 13.5 13.5 13.4 13.0 13.0 13.0 12.9 12.9 12.9 12.9 12.9 + 14.1 14.1 13.5 13.5 13.5 13.5 13.5 13.1 13.0 12.9 12.9 12.9 12.8 12.8 12.8 12.8 + 14.0 14.0 13.5 13.6 13.4 13.4 13.2 13.0 12.9 12.9 12.9 12.8 12.8 12.8 12.8 12.8 + 13.7 13.7 13.7 12.8 12.9 12.9 12.9 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 12.8 + 13.4 13.4 13.4 12.8 12.9 12.8 12.8 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 12.7 + 13.1 13.1 13.1 12.8 12.8 12.7 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 12.6 + 12.8 12.8 12.8 12.8 12.8 12.7 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 12.5 + + + 500.0 + 700.0 + 900.0 + 1500.0 + 2100.0 + 2900.0 + 3800.0 + 4700.0 + 5500.0 + 5700.0 + 5900.0 + 6100.0 + 6300.0 + 6500.0 + 6600.0 + 6600.0 + + + 30.0 + 50.0 + 60.0 + 70.0 + 80.0 + 90.0 + 100.0 + 110.0 + 120.0 + 130.0 + 140.0 + 150.0 + 170.0 + 180.0 + 190.0 + 200.0 + + + +"No correction" +"Wide Band" +"Off" +"Off" +"Off" +100.0 +20.0 +0.0 +158.0 +16.0 +1.0 +15.0 +9.0 +19.0 +15.0 +1200.0 +70.0 +"26" +"No" +"Simple" +"20" +"No" +"ONE" + + 7.0 + 9.0 + 12.1 + 13.9 + 16.9 + 20.3 + + + 154.0 + 117.0 + 107.0 + 100.0 + 100.0 + 100.0 + + + -40.0 + -20.0 + 0.0 + 20.0 + 35.0 + 50.0 + 60.0 + 90.0 + 120.0 + + + 126.0 + 116.0 + 107.0 + 100.0 + 95.0 + 91.0 + 88.0 + 81.0 + 74.0 + +30.0 +300.0 +160.0 +"Board Default" +"Yes" +"LOW" +2500.0 +-15.0 +4000.0 +30.0 +10.0 +0.0 +0.0 +64.0 +35.0 +38.0 +1.0 +"Pullup" +"No" +"No" +"A0" +4500.0 +30.0 +2500.0 + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 520.0 + 200.0 + 0.0 + 1000.0 + 1200.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 38.0 + 39.0 + 39.0 + + + -40.0 + -10.0 + 15.0 + 25.0 + 35.0 + 38.0 + 54.0 + 81.0 + 87.0 + 103.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + + + -40.0 + -40.0 + -40.0 + -40.0 + +"None" +"1" +"1" +"Normal" +-40.0 +0.0 +0.0 +"No" +"Off" +"Board Default" +-40.0 +0.0 +0.0 + + -40.0 + -40.0 + -40.0 + -40.0 + + + + + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + + + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + -128.0 -128.0 -128.0 -128.0 -128.0 -128.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + +"Disable" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" +"blank" +"blank" +"blank" +"blank" +"blank" +"blank" +"blank" +"blank" +"blank" +"blank" +"blank" +"blank" +"blank" +"blank" +"blank" +"blank" +"7" +"1" +"1" +"1" +"1" +"1" +"1" +"1" +"1" +"7" +"7" +"7" +"7" +"7" +"7" +"7" +"2" +"2" +"2" +"2" +"2" +"2" +"2" +"2" +"2" +"2" +"2" +"2" +"2" +"2" +"2" +"2" +255.0 +255.0 +"Off" +"On" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" +"Off" + + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + +"7" +"1" +"1" +"1" +"1" +"1" +"1" +"1" +0.0 +0.0 +0.0 +0.0 +"CAN ID 0" +"blank" +"blank" +"blank" +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +0.0 +156.0 + + + + -40.0 + -3.0 + 34.0 + 83.0 + + + 162.0 + 164.0 + 128.0 + 125.0 + +"FC" +"On" +"On" +"On" +"On" +"On" +"On" + + 255.0 + 255.0 + 255.0 + 255.0 + 255.0 + 255.0 + 255.0 + 255.0 + + + 510.0 + 510.0 + 510.0 + 510.0 + 510.0 + 510.0 + 510.0 + 510.0 + +65535.0 +255.0 + + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 100.0 + 0.0 + 0.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 22600.0 + 9200.0 + 0.0 + 0.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 6000.0 + 2100.0 + 100.0 + 0.0 + 14800.0 + 19700.0 + 14200.0 + 900.0 + 14800.0 + 19700.0 + 14200.0 + 900.0 + 5200.0 + 17000.0 + 12000.0 + 200.0 + 100.0 + 23800.0 + 9900.0 + 200.0 + 100.0 + 0.0 + 11500.0 + 20800.0 + 20900.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25400.0 + 25500.0 + 25400.0 + 25400.0 + 25400.0 + 25400.0 + 25400.0 + 25400.0 + 25400.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + + + + + + + + + + + + + + + diff --git a/reference/Speeduino base tune.msq b/reference/Speeduino base tune.msq index 6ab52dd9..5499675a 100644 --- a/reference/Speeduino base tune.msq +++ b/reference/Speeduino base tune.msq @@ -1,7 +1,7 @@ - - + + "CAN ID 0" @@ -61,7 +61,7 @@ 500.0 - + 0.0 50.0 25.0 @@ -99,7 +99,7 @@ "Alternating" "Yes" "No" -"No" +"Full" "No" "No" "Yes" @@ -127,7 +127,7 @@ 90.0 50.0 150.0 -100.0 +80.0 26.0 230.0 10.0 @@ -143,7 +143,75 @@ 10.0 0.0 0.0 -0.0 +20.0 + + 16.0 + 18.0 + 57.0 + 62.0 + 62.0 + 60.0 + 61.0 + 64.0 + 65.0 + 66.0 + 68.0 + 68.0 + 70.0 + 71.0 + 71.0 + 71.0 + 71.0 + 66.0 + 59.0 + 60.0 + 60.0 + 61.0 + 63.0 + 64.0 + 66.0 + 67.0 + 68.0 + 69.0 + 70.0 + 71.0 + 72.0 + 74.0 + 69.0 + 61.0 + 59.0 + 60.0 + 61.0 + 62.0 + 64.0 + 66.0 + 67.0 + 69.0 + 70.0 + 71.0 + 72.0 + 72.0 + 73.0 + 74.0 + 64.0 + 59.0 + 61.0 + 60.0 + 61.0 + 64.0 + 65.0 + 67.0 + 68.0 + 68.0 + 70.0 + 71.0 + 71.0 + 71.0 + 71.0 + + + 0.0 + @@ -201,7 +269,7 @@ 104.0 - + 0.0 0.0 5.0 @@ -209,7 +277,7 @@ "Leading" "Crank Speed" "Going Low" -"Yes" +"No" "Missing Tooth" "Leading" "Board Default" @@ -289,6 +357,74 @@ "Off" "3" "LOW" + + 16.0 + 16.0 + 147.0 + 147.0 + 147.0 + 147.0 + 150.0 + 151.0 + 151.0 + 148.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 150.0 + 151.0 + 151.0 + 148.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 150.0 + 151.0 + 151.0 + 148.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 147.0 + 149.0 + 150.0 + 150.0 + 148.0 + 147.0 + 147.0 + 147.0 + 146.0 + 145.0 + + + 0.0 + @@ -346,7 +482,7 @@ 100.0 - + "No correction" "Wide Band" "Off" @@ -368,7 +504,7 @@ "No" "Simple" "Board Default" -"ONE" +"No" "ONE" 6.6 @@ -432,8 +568,6 @@ 400.0 5.0 2000.0 - - 0.0 0.0 @@ -520,7 +654,7 @@ 158.0 - + 150.0 150.0 150.0 150.0 150.0 150.0 150.0 150.0 150.0 150.0 150.0 150.0 150.0 150.0 150.0 150.0 @@ -582,7 +716,7 @@ 100.0 - + 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 @@ -680,7 +814,7 @@ 120.0 - + "Disable" "On" "Off" @@ -804,9 +938,9 @@ 255.0 255.0 255.0 -1.0 +100.0 - + -40.0 0.0 @@ -819,6 +953,203 @@ 105.0 100.0 +"FC" +"On" +"Off" +"Off" +"Off" +"Off" +"Off" + + 255.0 + 7.0 + 255.0 + 7.0 + 255.0 + 7.0 + 255.0 + 7.0 + + + 510.0 + 14.0 + 510.0 + 14.0 + 510.0 + 14.0 + 510.0 + 14.0 + +2047.0 +20.0 + + 700.0 + 25300.0 + 1000.0 + 25000.0 + 1300.0 + 24700.0 + 700.0 + 700.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 100.0 + 700.0 + 700.0 + 700.0 + 700.0 + 700.0 + 600.0 + 0.0 + 3800.0 + 25500.0 + 21400.0 + 100.0 + 100.0 + 100.0 + 100.0 + 100.0 + 100.0 + 100.0 + 100.0 + 5600.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 17700.0 + 500.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 100.0 + 100.0 + 200.0 + 200.0 + 100.0 + 100.0 + 100.0 + 10700.0 + 25500.0 + 25500.0 + 25500.0 + 14300.0 + 0.0 + 100.0 + 0.0 + 100.0 + 12000.0 + 13400.0 + 12300.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 10500.0 + 3500.0 + 6600.0 + 9700.0 + 13500.0 + 13100.0 + 11300.0 + 10000.0 + 3300.0 + 800.0 + 1100.0 + 700.0 + 500.0 + 800.0 + 1000.0 + 1200.0 + 1400.0 + 1500.0 + 2200.0 + 3400.0 + 4300.0 + 4900.0 + 6100.0 + 8400.0 + 11700.0 + 19500.0 + 5000.0 + 2400.0 + 600.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 20900.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + 25500.0 + + + 0.0 + diff --git a/reference/speeduino.ini b/reference/speeduino.ini index a20d91f0..3f644e60 100644 --- a/reference/speeduino.ini +++ b/reference/speeduino.ini @@ -7,7 +7,7 @@ queryCommand = "Q" ;signature = 20 - signature = "speeduino 201709-dev" + signature = "speeduino 201710-dev" versionInfo = "S" ; Put this in the title bar. [TunerStudio] @@ -724,7 +724,7 @@ page = 10 #endif boostSens = scalar, U16, 25, "", 1, 0, 0, 5000, 0 boostIntv = scalar, U08, 27, "ms", 1, 0, 0, 250, 0 - unused11_28_192 = array, U08, 28,[164], "RPM", 100.0, 0.0, 100, 25500, 0 + unused11_28_192 = array, U08, 28,[163], "RPM", 100.0, 0.0, 100, 25500, 0 ;------------------------------------------------------------------------------- @@ -853,7 +853,7 @@ menuDialog = main subMenu = std_realtime, "&Realtime Display" subMenu = accelEnrichments, "&Acceleration Enrichment" subMenu = egoControl, "AFR/O2", 3 - subMenu = RevLimiterS, "Rev Limits", 2 + subMenu = RevLimiterS, "Limiters", 2 subMenu = flexFueling, "Flex Fuel", 2 subMenu = veTableDialog, "&VE Table", 0 subMenu = sparkTbl, "&Spark Table", 2 @@ -1398,6 +1398,10 @@ menuDialog = main field = "Ignition Configuration", rotaryType panel = rotaryTrailing_curve + dialog = boostCut, "Boost Cut" + field = "Boost Cut", boostCutType + field = "Boost Limit", boostLimit, { boostCutType } + dialog = RevLimiterS, "Rev Limiter", 4 topicHelp = "http://speeduino.com/wiki/index.php/Rev_Limits" field = "Rev Limiter" @@ -1406,6 +1410,7 @@ menuDialog = main field = "Soft limit max time", SoftLimMax field = "Hard Rev limit", HardRevLim field = "Hard limiter method", hardCutType + panel = boostCut dialog = clutchInput, "Clutch input" field = "Clutch Input Pin", launchPin, { launchEnable || flatSEnable } @@ -1463,10 +1468,6 @@ menuDialog = main field = "Use external Baro sensor", useExtBaro field = "Analog pin to use for ext. Baro sensor", baroPin, { useExtBaro } - dialog = boostCut, "Boost Cut" - field = "Boost Cut", boostCutType, { boostEnabled } - field = "Boost Limit", boostLimit, { boostEnabled && boostCutType } - dialog = boostSettings, "Boost Control" topicHelp = "http://speeduino.com/wiki/index.php/Boost_Control" field = "Boost Control Enabled", boostEnabled @@ -2152,7 +2153,7 @@ cmdtestspk450dc = "E\x03\x0C" egoCorrGauge = egoCorrection, "EGO Correction", "%", 50, 150, 90, 99, 101, 110, 0, 0 gammaEnrichGauge = gammaEnrich, "Gamma Enrichment", "%", 50, 150, -1, -1, 151, 151, 0, 0 - pulseWidthGauge = pulseWidth, "Pulse Width", "mSec", 0, 25.5, 1.0, 1.2, 20, 25, 1, 1 + pulseWidthGauge = pulseWidth, "Pulse Width", "mSec", 0, 35.0, 1.0, 1.2, 20, 25, 3, 3 tachometer = rpm, "Engine Speed", "RPM", 0, 8000, 300, 600, 3000, 5000, 0, 0 throttleGauge = throttle, "Throttle Position", "%TPS", 0, 100, -1, 1, 90, 100, 0, 0 tpsGauge = tps, "Throttle Position2", "%TPS", 0, 100, -1, 1, 90, 100, 0, 0 @@ -2324,7 +2325,7 @@ cmdtestspk450dc = "E\x03\x0C" deadValue = { 0 } ; Convenient unchanging value. ochGetCommand = "r\$tsCanId\x30%2o%2c" - ochBlockSize = 74 + ochBlockSize = 75 secl = scalar, U08, 0, "sec", 1.000, 0.000 squirt = scalar, U08, 1, "bits", 1.000, 0.000 @@ -2360,30 +2361,28 @@ cmdtestspk450dc = "E\x03\x0C" gammaEnrich = scalar, U08, 17, "%", 1.000, 0.000 veCurr = scalar, U08, 18, "%", 1.000, 0.000 afrTarget = scalar, U08, 19, "O2", 0.100, 0.000 - pulseWidth = scalar, U08, 20, "ms", 0.1, 0.000 - TPSdot = scalar, U08, 21, "%/s", 10.00, 0.000 - advance = scalar, S08, 22, "deg", 1.000, 0.000 - tps = scalar, U08, 23, "%", 1.000, 0.000 - loopsPerSecond = scalar, U16, 24, "loops", 1.000, 0.000 - freeRAM = scalar, U16, 26, "bytes", 1.000, 0.000 - boostTarget = scalar, U08, 28, "kPa", 2.000, 0.000 - boostDuty = scalar, U08, 29, "%", 1.000, 0.000 - spark = scalar, U08, 30, "bits", 1.000, 0.000 - launchHard = bits, U08, 30, [0:0] - launchSoft = bits, U08, 30, [1:1] - hardLimitOn = bits, U08, 30, [2:2] - softlimitOn = bits, U08, 30, [3:3] - boostCutSpark = bits, U08, 30, [4:4] - error = bits, U08, 30, [5:5] - idle = bits, U08, 30, [6:6] - sync = bits, U08, 30, [7:7] - rpmDOT = scalar, S16, 31, "rpm/s", 1.000, 0.000 - flex = scalar, U08, 33, "%", 1.000, 0.000 - flexFuelCor = scalar, U08, 34, "%", 1.000, 0.000 - flexIgnCor = scalar, U08, 35, "deg", 1.000, 0.000 - errors = scalar, U08, 36, "bits", 1.000, 0.000 - errorNum = bits, U08, 36, [0:1] - currentError = bits, U08, 36, [2:7] + pulseWidth = scalar, U16, 20, "ms", 0.001, 0.000 + TPSdot = scalar, U08, 22, "%/s", 10.00, 0.000 + advance = scalar, S08, 23, "deg", 1.000, 0.000 + tps = scalar, U08, 24, "%", 1.000, 0.000 + loopsPerSecond = scalar, U16, 25, "loops", 1.000, 0.000 + freeRAM = scalar, U16, 27, "bytes", 1.000, 0.000 + boostTarget = scalar, U08, 29, "kPa", 2.000, 0.000 + boostDuty = scalar, U08, 30, "%", 1.000, 0.000 + spark = scalar, U08, 31, "bits", 1.000, 0.000 + launchHard = bits, U08, 31, [0:0] + launchSoft = bits, U08, 31, [1:1] + hardLimitOn = bits, U08, 31, [2:2] + softlimitOn = bits, U08, 31, [3:3] + boostCutSpark = bits, U08, 31, [4:4] + error = bits, U08, 31, [5:5] + idle = bits, U08, 31, [6:6] + sync = bits, U08, 31, [7:7] + rpmDOT = scalar, S16, 32, "rpm/s", 1.000, 0.000 + flex = scalar, U08, 34, "%", 1.000, 0.000 + flexFuelCor = scalar, U08, 35, "%", 1.000, 0.000 + flexIgnCor = scalar, U08, 36, "deg", 1.000, 0.000 + idleLoad = scalar, U08, 37, { bitStringValue( idleUnits , iacAlgorithm ) }, 2.000, 0.000 ; This is a combined variable covering both PWM and stepper IACs. The units used depend on which idle algorithm is chosen testoutputs = scalar, U08, 38, "bits", 1.000, 0.000 testenabled = bits, U08, 38, [0:0] @@ -2407,6 +2406,9 @@ cmdtestspk450dc = "E\x03\x0C" canin_gauge14 = scalar, U16, 69, "", 1.000, 0.000 canin_gauge15 = scalar, U16, 71, "", 1.000, 0.000 tpsADC = scalar, U08, 73, "ADC",1.000, 0.000 + errors = scalar, U08, 36, "bits", 1.000, 0.000 + errorNum = bits, U08, 36, [0:1] + currentError = bits, U08, 36, [2:7] ; Computed output channels. See "megatuneExamples.ini" for all the ; pre-defined variables, search for "???" and you'll see them. diff --git a/reference/wiki/accessories/boost_settings.png b/reference/wiki/accessories/boost_settings.png index d1c7bdf4999af9469bc05836f3155e5c4b825f8c..af1fa4f336b0b332b984e5bfc6c752d8648dc5ba 100644 GIT binary patch literal 239059 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%0A1irFp&QHW8hn*@b?=vYrm*bK{Htr zx#Y!BP=kW$+^Xun@zDlUVuxkPD>*LhaJIQ zgo>*AioYApHn(5(Z1uMb`gMz;-9N#(3*mBIY*WhreWLLcBsIM@{IXIAl>QNJJJ|ns z=`c{akr0uLONi@mp7De5jih8hKY}E+{UA>5^TPpnDE~n>NA=$i?%&G=$-#tl+p~(< zE%}QRrD%Drw}C$Nk$(-^+=)%_UTLFp*i@RH>_d1&h-l2P0zGH)so!Ix0mlubP#Yz* z|9`_|BoNhF%F2eJa$th;1_ToREUc}iDw7BTUgv?fe(82t=WG^>DGI=m!lO^Tw4pX) zMIi{d7;4djkEn&09^|*UQ0>2S)P8(>C$|1O4m=+WTDB{ihK7dHH#fE1VK!K}b)4_c zR;vIW3ns)uxf=x<z-V=L~mq_kHyocXYq)H z@C;miHI`p7f|mp2Mtb=YvU`W@E92`n0&L+9V|@Dq{ab}E@ceO{Qg|&+JX6|QFPS|* zM3rtoij*`bH3CNBW8B*)m{cJ7p&3$o%q_kbZwCyj0)-4ZLQf36hA9c)X_|WBg#O&8 zfVid!5A!GV_fo_}#|cDK46>g!4zgi?atXoar~ez*NGzxq-06?|83yZRnz*KV>%Yc_ z9`L$HQ462TJuX+6iHIK33*`Ic1>^Gk9^l&ce?V^wcI*yQAO7~{>3Jkl!3Q1OX5P{Wf z$|Y0nyjil`h}0!_ZQEx$`k@g%jvu#bt*zBkw_J6yD%wdi8X5zoA(q9(DC))N*|7pF z*cxhTi%_S4!TS^Voy0SlE453>>=7PyL(QfBq%rciKu&L&M+65oDH;N)&XU_jGhKv1 zf`O)kdSLQhgwvGww6nV30WyHwc1;zDN?|6{u?f^cC;~|uR&l~X*h6^&7*wE3Fxw%gRY%%oQb$U!Esl{SB)mKbSp65 zG&vS#BK-5tq6Hjdz5>ZDWKVbJNz|F{UA*alAIC6YNBd+!iUC^qbvDL#9uJ_Qc&_L| z&lT^k5MQ*ltsa^{DkG0ldjG8vyJGVH^v=c!vg9w0%BJjfk=rZPYf7Ta}skAr|rHdR+}Yu!$fGm z8rBJqrRmJX$$*c9p#hKtK>#lJ{+vCMf4|6Dg2lqa9w{2OTCm~`ule?EeUj6{_WYO2 za6uYLXEIN*X-+ziTa~rp2nxilT?qZzK<3x<7WAm7+J?)=}TBRc$f++&Bx zeob`{;?X68upfVGdw(nY2cRDAX+uU0g@aWY**g4_N~et}Y!t|%z{@LJ^H1{Q^=+P9 zn6x6ai|HbM0oRi8<2OMSqGTUyO2bzmR>q(UYI$Dpq650hW|=cZ(5ETgX^cnRb<1w8 zWicrDome^NhY{oX?%QC>UQz80a4p_xCSNo(%nZ{wZK}rhTdu~ck1B10_O1L~!(W%|u`HNEa-6Mp6gaV_Vkrk)@LGOOI zst+g3?kic%-;{s!;QA1MivkaWIO!xIwhf*_3QLde5_{zrJ`P^-Vc@K3Zh;6U`zJBm=h7qyn!-Q4*Dv zG0*?*W!$cNomzpzjrKC=}9CdE_-ZA*X2wwxK&QIdpG& z9C;SjNXs%-rwptZ!-PxiA27H*cZ#AqBfAGHIVorIsYK%}bls)XHInKD3-fb%W8Rm`5_; zb%lV2wOcGC#*0eec0$|fA7~e*sN15lncrnbl?Byq>74cSgkpwP&Tc_DdljyNS+Ml7oXO7MX2w`}oBM ze^6|AK2$I=m7wiUWir5_Z~8GjT=5>A>b~tI!_JHWP5}l98(YvKmGG0NTo{v96$Ky7 z=>Pq6zsyg$=bp3A-fOSD)+Ca3>t#It z!n7{<%e}HN>%m$q=s20c#JJ9%)V&oc}UI3S6`( zU%pd6kf${};jbAI>U#Q=h%=hx$dqAj*P?H*k9v;xnG_Lb1;xjro0QsvTCyY#P8jX+ zhSWSNmYE|Fn@caQWb%4vm7yQ1xcgK`+weRwI-Gjsfy~L2Ir~vtSz92LI-C*XSLEeo zO{=eKFuO-ln$?b6;--z)SI8|~CQi`;tpuYBD!B|y1AtP(uJ9l#g z9Wsk(zmR1RUQgO=5b{-y=E&BCWN68DRH(KJgrvXROb6A)T8QczxO`o0QTaj*ldL*p zTC;zlCfUnLjaujQ>Wgi1^rpl8W#@#&p4*%3Xwf?;{sQ1Kz?z#05F))paf*r0t7L$8 ztda?c^D|6Q6le+F<#|)^mT3#{xBDcXiq;3iFDBHk^AUtvrd6(O@hZ zOYuo5zPuh^#T3`eqqPKspG&l$!aQ_^KB;jF=4spP z{t__hd}d?6n_zjGQ35f(Hu2Q$DpQE|r9y?jgzIy`J?VeU=wQ}Z*17bK_L{)mIIv(k zCp>cd%0sp$PHyvW14C{BgiV|W#s2IVhiR^^^ z=n9rH2M|dz(`y;7E__pDHvkzr-~?z<_pcuYOEB~mq5uK=~Xov%(G+oB8 zu2^ok<9F2x!)5`#b;u-PdOYS8`7#|i3<9@1F$3!5D_Ay7j~lfVOv={NlDdR0B5;C{ z!3o%Q;m;p&JjYA1iQ+e+aGiiq9tUi~m%^$q*Jh3b49J^0c53v&vzYwEAQT~t2U|l_ zIN#;PZa3BI-S2~NFU%IYv)q}NEJru}bnwIJS)ZrG#xTrvA#rBlO{0h~i1D4W25uJf zi?#EEVITB6>q>Pe!3uh+AR*u7q@lCQejej$IvvlwPAqRH&-^S1kL(i?Y&W}^{7-2* zPaLavQ80HYo=BN^5oVImz`pqbBY}>VD)sXo8RfpA_gDu3dBVJw{5-{g)a5nOs$N{6 z(1qh(ie36JyVS5yrIg}cKM)Q^A*6-bP`K7VbDO>Wm9&H>GYX`wyJI3`E{r;3BvmLG zuTA!w_a#gi$?z&kScqHSb_Kh`G#Fo0a%Wg=4fU+phvKL$a6QQTgs~jU^yk%_Y?i*KfAvVQ2H<$n2Y`p;D9~*3^CXiR#2E-HP(zsd%~Hm1#vy` z!_Dj+RHNUA$Ok#YcwmR;?;llE^4tOjCSQg%yxIV3G}m;292hUp#B=j?iP{$=b|(O? zX?jvgqooW2gV5|Pa9!tSXVWJ{tTT8x!|G{=li~fz-;5X(FRp?Let#r$fpz~<)Nm$* z59Rwi5p)iv@u{L$0R*{HJRRiBo5w;oFdH?@@}6l-smc{2q=(jX&cqX%t&@sM_`3YH z$8&*=7r7yl|*Y2m}hUT5*ZZo&RKC*T{5kEP00lzj|@8>C*-b8Frum55PDDxAjvU2vN z!Y>VDt{;_&W%OoP2y{`AxrieG7?Q(?k! zspk0J+;uTMg`gj9Fi=H=Nx73+i_~m~pbUM%1ItT{TZ(br@r$hp=MVEmox^azI2^_Y zh9HWlykd#a{HIF>I39uR1@G`&Svy+-;?6zEn+}eB%vgIW)V9Bu^97q#`YDlf{jG8R z7>w-;?--<<2zq$3DI`^>RNH+UmYLhV40H?eW|BQAmx5lj;eAK4)9MaI^xq!vA4siP ztW6aD?o8$a0&~({eO1DE`>!GEI0KkOM-oEEK3X@9v#E}dugBbM?@dyy5=k@5l69@w zup%?cMO3$ji1mPq!W(pKayhS2wNcT-#<@eN2$@HfcIWZg!N00C>JRCjh zQuz?ZkQ?xV5;XvEM6)ro-kjnEG^P|I$oe(FBRcb2pGB zJ&YdB!nwCe?wAB3?!TE{2TzwR>TukKQe6hQwC zcDIIbsL1`pQGgGL3S#M9sK&9VbBNb070yj@_F@^a;j4nJ`pe7kO~gnb(_D!nGv)a3 zh=U+o?oG9Rc~~~B$V{~_M9yk`R0+Bw{CAyi7?#Y!7JJo)m77_YhA~(@S@*aftq;8& zr|_(5UAke7S6%9ZTZeM=Lv4r7o)RjIfMyodt~hK9&+S7zRG|ojCOC6p;D1~qz7HzsZPZxVNB?C}OOlsN@mAH@?+?^& zmN58^dI?7Qh?n5+<^~?l?}IW}I^L|_M+rCKK@~Ruy)V4R26xJB24s+=;(z%pO3ra3 z{@-5;{JPysI*2D`SV8B68ew?Y_E6@{K8yG7+w(yH)v?EBg;oqdUtx*FFeKcyD80br zYG4?xckefU`!F_xjnBh4D0A7u;vJNnSk)N_|3$HJtPNX2XMl^XJ!y z++Qfk-^BrZ?TRk{IhDw_^>xd{b=^4l=9uCsh{9VdCO^TI_-~T>hxbFFM!$WZ(|+huCR`bFTnShLUg3aQ24e<2kKFEt#ppakacWhq#g9Z&m2a{o zEkjAMkeKKjJL!*2MIF@Hi!G?U%x~!VP%9kFQ&5&eu=;~NdF(Xf)WLFp>vd%eRC=(x z&=BZ;7khd!y;}ODu!DfnNJM)iejR$^F-P}kJssNY$aUrjMXJyIb<~zhOF^;OWi4|- z{N>ZGovrV(Yg#|!wm*!!Fe*BcL?l*{unFN%i_Ao~!YX~lUDlLz>IT%s+7%D3Dd3q&3^m7i;1!kgp`iQO+Q-H1_lNT z>LKt0o;x{6vcEN}8g5-DB!pewODaFe12vqIm2%zNv`3ClU&d?66dUhGEZUCEx>oTw z;B#&1s_1hAA7Gr;ptrhXkHEnM4-7euW{Z0i#~5@Mt9|3yJs^kfgL|4wxJ?Y>E3BLXF^mHnHP!H1%3pfX=A7wRA@4l^Vb~h@# zL6auxS%IT+q4^!@lKdhIkR;$^3~m_G(f9#4nd00Di7-zr(RnSQf?2rQZd{~^O^OhJ zjwSDM*R~_cpTQI$$ugc}UMe$B9dU4+b$_8SjBr`5-sCNjhx~NgnJxX8Ym%6O*^KSRz(3ZyXW7<;2S{=w0VPCvcue}Df`)cK)vtIk@apL{rQ(wVy) zPo7WW@oIh`h$$^B?15&$Y|iC-pkF1ecv)2)Z4VPNq&pN5Z}B)68olV^BxFBI5pDX! z?*kC41pxcItfyI74oKh91>QK%eD$uepRVi(jQ}Kshb*~}F2vE%(JsBTo_)zLjo53f zMg>qq`MVdJJwF=&RPT`XT9-BDM!?y14bX5+29!JNrIK-~|HjP+ky3i;UR%}~{9oMr zw=NU;Lgdn7r131j^-B=^1h7&|fp3ao=_uQk9}&;`zyC_&gdOwFInR+$O>>`p68IPV?MDB&pXt{;@_Yng_t-r1^_8Sm7>K_q9UQff%-K}_T3Ep_~_%K ziTBw?wqV0lKF5tqaqO)(y-GymJwB48XkI2#297zvmbMyDoKEAjirG~k9_j%+nk{BQ zb+z+APX&i@vRJ*I&>EO=M~WW|00r#hi(oBT**7>O)PfF4x;2)RoFau)6~{U&wBCOJ zVDCE2+|h1r4+ej(8E&(&MhktGPTFBKUui4tYHz)!k*FQ%cqG_c)|h_vVPcL2A4}~`3l13 z5>w3(7#ygY>`r@MwN zywAvwzrQHbp@E~piN5`Q0v?=NRVpaV{~3xyE(I^@MsUBp1w{?&&^Ud^811iu?Z;h_ zp>L~+#o9S1X+QN2;}>``do>!&J_qSx4%6;DWV-{dixo2o>lpsrn2{K0reAanD73@R zwHQ_8IJzChEXI`+5ayX;iFfJeqr8D?ND1~h+cFT6H@|2x{?Z~S{7j1q#1SKjOnWDihl zNVQ?()pp>0q37UdGs}koN1$92wn?RDUhzL2nunorucIWq6DSuf0cf=3FaV>L$z~au z897a7lUh(QLj}@9S-?946SrO)E~sdM3yobbe8tX3L9`$5RYg#l6(187y%s8K7Rog- z{=vQ#tx;ut$fREo7T3YFgN{uI>O}W_E_v7uK8msu>+&dOk|5L*+KQf;1ibCc?9|4r z|5eaPtkF3Aor9M6i;tE-SK0n$Q3A$-p}3hOp=Ijsi$E(5d2mNl&+2Sn{P##D`Jtjr zA}YnvHoo(V3iLzvuj)Yh((9!oJVs$i+?UKf1AD80E~^n#<-yqbxAbPiTa__lM^usq^rd)K3_t~ zYR!iFW#gQv5_vfYe|6yS1EI`d+8R)5pAZm15s^@F4Ds@LfYh?4Tx zGyOQhs5KA1`!WdSmP_H)c+)OWOD1LLrBdo}JSMSlJJ}y{Td|zJf;u z3jm~d;!m^hOqCda%hs;Y(9<}?W}Q}{OIZZW`XaaQY&5`1yIsA5mE&<&7K>5AM*3_L zF28R*b|~#Ye~&;_ro*rZPAJw;#`iK^Gb=TXA!^5_@fW$%Rv|d2VMgVqiW^C)&5Bx) z_J5(0_fbLWdZSr-%<6QnQ<;Zpd7st?o;p{lhDE+nrRBAA`SMLGXUAsnX~j48?5txN z5PBwo`ygjMg*uuef>lGz?EUbpBH@?Q)3_J&-l)Zi)Px(c4ZS-i4pF$<)SYrBhqPFy zr0A-}FAIyr=Ld)(Q*Ven4I+Lo@Ko;vW5Iplj~~$yOk1HQIEO#040&4qxm0l0jj2B- z#LALM$7|U8p55pxJG@d|h2XfLl#pGA#+u*!nQ_yT_2aT;?wJW+<$GlNG36-8wdaSMIKjTSX}z(*t2Y`TVf2@GxX zg4u2;i!;*G?ICcB!4wO){l?21qa`M+OA=&@4}?ndWp$G;k{=Er%jrG(gCQfsRn7ddd`!b9I> zWs^PDvlptI1lPg3dv4wlzD*;*Afj=%Jco?H81{62)ax|JOZ>frA5s)Zw?}QxJ=I)o z-Bnl};l#G^kWJ2hJI}1TYv>Y#dyh{GC~*mYPQny!NbymrWAE>r0;*nHpKKeK!>R54 zS^RL#&aY0lU*98c?Y#`mBZq$>3842Gcq=S|WOs-N#bhcsy{wTh7#%9>V(Ai_Y!GR7 z6D)EQ?VlR6{-_j4;WELj==2y9o=%9q{I=TZSw*2rYWi7T;Zv))69bUsa7I=JNIe@8 zyd>@Ku{UQ!^*fK zI|J5L5rqrID&ki~&FZOCskY)ZMGD60Je$%VKW6IKH1jid5G4z<(nThi^d;&=e|RZr z_&5~17RMT&*v+fh;CN$HkdGr2<#>{Je+*ov3qhJgnAiC{z~_Lqw3odLn}+cl0 z8g9Iz=$esRLyD~&VnQGC8u79Jat?nf^E*9&-e~KsxC@31ACC(@o=k@)Kd*^Q+QICV z-sawxfIJne$Yw(HsMW8u&ghE*eX;=G2H!qwD(ZNwABuC3ZtPByraHwD{1yR)D;Lol8dV0b2)92y`u%QKP1 z53iJ_$NQp%P0}|}gk_ofrOs920)m&rXz^uGXWzl$ z^4?C9Z(MqkUrx(#Y{i#?JLp9?9zrrb`DtKcj8P2GrGMbe(uq7uFcV+gQPPo6i!}T5 z-6}a_Q{wCgKZWVr=ZVt49A@uNy-KM(q@z0Ez086f`QE`uo>L&{arhPa%E?#?W-BXc zcnS!FaN{6&Ncf>#K>!uKC+s!VlUYJ_(NCB(OgvUcE%@3V<>+hrK(7IsA;8JZK>P#o zpdYc}cCe8p;+jiq$3@KRHJU7-1j+uJh`=Fe5&|)!v&lx~30{0>oxYX9xY%R7bVTb3 zHm*Hy_D!r5$|(Ma4)yEuQW+(rsmZ%w&DMuJ;3BlVl_L;PD%Kb^YGv`iVWYOl6m-m< z+Lf~yF6z1l@X=^B&^;x$zjf#&QSc7W%86`l!;=v>HQj1eFCAa`n?uG5ZpGm@MYyTE z8~dTGE5f@Sp4KNAbBUqPb$c9_kqzhridY}Qg$5TA)}hWXs%a%j^40LnM=m&*&)|vo zF+P4C4Zsgq#nBRcfA4RR_8v5L&NmL%ae5f#ov(A6z_5nkUNoL>a<3Dew2tn*6TdaO zcRxnvL>7SU1DvAr$?uQ!&X(B-S;y2)QrcWCCp}rg`tR;YB14NpExT{d7vp3WfwCCv z9v$X%8HV#i{-TAr5qr3Um~Duho}(A^hzhO4n4Dm%kL@3f0m7I7MX~;lfAtpBpn?hD z1j=hFq`5Q;C<-;t$a7)Ry#IbkaUVk`kleu@*^S4XHk@y|zV|-lgcob5B350|n(%}K zKwB>ou!+>#^r@Z%pAlF$Y2zp-NlXblEJM7`LnJ55qtgifNa_YM^WU9jdD*G z_^KTZUCeehVp`t7*xJ#t{>>60t%x}v=EAf>xtR3-mXqx%Mm1bz%`v)v_-I7m1^%q< zNdA2gKALf|8-)LfYblFr(xO{QER!?tmygYlQ@yBgkkAE=&r_&q9>3f0d|9`O#oO z4hJge78yiuyc`FJ0tF+Oj3!tH+Gsu7s%_3&u751=y()XmpN)$|x59ca3S1B1t7sUO zDt9|3YMJtzCL94r4Iimr^CVqa6d%_1G!dn=l_a-FQpg8azCLYbZtim7&30^ciX}h) z8^R9XNL7#S1K5H~RuW=h%~)Ezpt<;EQ}S~8Si}7_cJvr?uZojpL4FKBG5E>Vg71DZ zQn2L+@PRP^`~oIog91g{&hesB0a_K%n!0B3$NWIT$WZyQq_FS-5Eq!6gU6)|x262D zZOW|KHH2k)=XE%_@@Zz)il9mJj~85fI_NiGPLSyFZ-hBkTd+r*I!nZrZ}+{|-rM~T zH&{vnVp?uti~g+0$qVghh%0B3yI%Ur9FOs z?7PJo5Q!AI=;`v&5zc$I)cN8a{3&x;rVcwybj{8hL^z_6NcIw73XzK%2r<9b3o=Qz zbOR{1&)^05Q1By&vZ{MDj#Sd(c3hOgEeY<~-n?CU3LvLNEiu-Wga_slVVbaP24s6E z0=k9$E-K^5Xbh*)X(bo_p;fOjvPHgg5$#G?%E+eTl7Y3lD!sG~KRwr-2tBH2)vyoz zq(nFWlg+jG#o+tK#8nNm2(ij-Sgprd-%(?t`;Pb*9`>+_nmZGK(Q}lw@23D5KiK=> zM3(LYj^fY6pEQ$h`G_PlB1eH|xf+@Ah4Q252`$sYLFn0odGSt+os=$h1EnP;JOD4u zrI53h9&IdzQ{Q}JB#V;Z{g33Y?1;`VJk=>BarRO?RW3!b({GwCfC|bWQtp7lezDcC z?)6Vr3-Aj>UT4QAtx|K~T4mMnqN+=3M#PAk-(H=j^a55*wrI0kQ>B`kn!0b4^PE9f ze{-}jg3?POQzQkCOG3xuBGIh*R7Y5u*b2ha?onB{7 z*;(2GSs^VDn0qY;5+uI=NV^Z{R+V>2Z39}r9M@;NiAc4`>cHOt!uwy3uU@l99CR~r z?mV&@&E^CQM3R957?$ofQ*Gh$UDqltE;#qF%u0NapB89~$dk7LDn^4}y^qWG0F99^ zet;qlt5v46ymDc>Sr9t~owU$@Av|{p1l4k7ReHoU@S0;Ns}L*gr@uz;&-XZ%6QK;_ zrT7kMYR`u?gH8A21!fADLEw?P^&+y?7?hjvS9`r)l7V-A-h=uJyg}qu4G%#Kic4PV z3%d^jl*#_w8IuKR4ivu&!aJyw$oYPV%E&$6mZG6>;<~YE=O4?n?^wT#I-_L_KQjI# zXB8r~l!bK{K}4IPO5{+ji#HJ1{~*QVi04 z#&Go6X>-%rP⁢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

Q3c`4Ga+*9`<02E&IyHFY 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 literal 91831 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

VkFXf}>^!bo+G+ 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 0) && (chunkComplete < chunkSize) ) + { + receiveValue( (valueOffset + chunkComplete), Serial.read()); + chunkComplete++; + } + if(chunkComplete >= chunkSize) { cmdPending = false; chunkPending = false; } + } break; case 'Z': //Totally non-standard testing function. Will be removed once calibration testing is completed. This function takes 1.5kb of program space! :S @@ -296,16 +300,13 @@ void command() "\n" "===Command Help===\n\n" "All commands are single character and are concatenated with their parameters \n" - "without spaces. Some parameters are binary and cannot be entered through this \n" - "prompt by conventional means. \n" + "without spaces." "Syntax: +++\n\n" "===List of Commands===\n\n" "A - Displays 31 bytes of currentStatus values in binary (live data)\n" "B - Burn current map and configPage values to eeprom\n" "C - Test COM port. Used by Tunerstudio to see whether an ECU is on a given serial \n" " port. Returns a binary number.\n" - "L - Displays map page (aka table) or configPage values. Use P to change page (not \n" - " every page is a map)\n" "N - Print new line.\n" "P - Set current page. Syntax: P+\n" "R - Same as A command\n" @@ -380,31 +381,31 @@ void sendValues(uint16_t offset, uint16_t packetLength, byte cmd, byte portNum) fullStatus[17] = currentStatus.corrections; //Total GammaE (%) fullStatus[18] = currentStatus.VE; //Current VE 1 (%) fullStatus[19] = currentStatus.afrTarget; - fullStatus[20] = (byte)(currentStatus.PW1 / 100); //Pulsewidth 1 multiplied by 10 in ms. Have to convert from uS to mS. - fullStatus[21] = currentStatus.tpsDOT; //TPS DOT - fullStatus[22] = currentStatus.advance; - fullStatus[23] = currentStatus.TPS; // TPS (0% to 100%) + fullStatus[20] = lowByte(currentStatus.PW1); //Pulsewidth 1 multiplied by 10 in ms. Have to convert from uS to mS. + fullStatus[21] = highByte(currentStatus.PW1); //Pulsewidth 1 multiplied by 10 in ms. Have to convert from uS to mS. + fullStatus[22] = currentStatus.tpsDOT; //TPS DOT + fullStatus[23] = currentStatus.advance; + fullStatus[24] = currentStatus.TPS; // TPS (0% to 100%) //Need to split the int loopsPerSecond value into 2 bytes - fullStatus[24] = lowByte(currentStatus.loopsPerSecond); - fullStatus[25] = highByte(currentStatus.loopsPerSecond); + fullStatus[25] = lowByte(currentStatus.loopsPerSecond); + fullStatus[26] = highByte(currentStatus.loopsPerSecond); //The following can be used to show the amount of free memory currentStatus.freeRAM = freeRam(); - fullStatus[26] = lowByte(currentStatus.freeRAM); //(byte)((currentStatus.loopsPerSecond >> 8) & 0xFF); - fullStatus[27] = highByte(currentStatus.freeRAM); + fullStatus[27] = lowByte(currentStatus.freeRAM); //(byte)((currentStatus.loopsPerSecond >> 8) & 0xFF); + fullStatus[28] = highByte(currentStatus.freeRAM); - fullStatus[28] = (byte)(currentStatus.boostTarget >> 1); //Divide boost target by 2 to fit in a byte - fullStatus[29] = (byte)(currentStatus.boostDuty / 100); - fullStatus[30] = currentStatus.spark; //Spark related bitfield + fullStatus[29] = (byte)(currentStatus.boostTarget >> 1); //Divide boost target by 2 to fit in a byte + fullStatus[30] = (byte)(currentStatus.boostDuty / 100); + fullStatus[31] = currentStatus.spark; //Spark related bitfield //rpmDOT must be sent as a signed integer - fullStatus[31] = lowByte(currentStatus.rpmDOT); - fullStatus[32] = highByte(currentStatus.rpmDOT); + fullStatus[32] = lowByte(currentStatus.rpmDOT); + fullStatus[33] = highByte(currentStatus.rpmDOT); - fullStatus[33] = currentStatus.ethanolPct; //Flex sensor value (or 0 if not used) - fullStatus[34] = currentStatus.flexCorrection; //Flex fuel correction (% above or below 100) - fullStatus[35] = currentStatus.flexIgnCorrection; //Ignition correction (Increased degrees of advance) for flex fuel - fullStatus[36] = getNextError(); + fullStatus[34] = currentStatus.ethanolPct; //Flex sensor value (or 0 if not used) + fullStatus[35] = currentStatus.flexCorrection; //Flex fuel correction (% above or below 100) + fullStatus[36] = currentStatus.flexIgnCorrection; //Ignition correction (Increased degrees of advance) for flex fuel fullStatus[37] = currentStatus.idleLoad; fullStatus[38] = currentStatus.testOutputs; @@ -446,6 +447,7 @@ void sendValues(uint16_t offset, uint16_t packetLength, byte cmd, byte portNum) fullStatus[72] = highByte(currentStatus.canin[15]); fullStatus[73] = currentStatus.tpsADC; + fullStatus[74] = getNextError(); for(byte x=0; x configPage1.nCylinders) ) //Trigger is on CHANGE, hence 4 pulses = 1 crank rev + if( (toothCurrentCount == 1) || (toothCurrentCount > triggerActualTeeth) ) //Trigger is on CHANGE, hence 4 pulses = 1 crank rev { toothCurrentCount = 1; //Reset the counter toothOneMinusOneTime = toothOneTime; @@ -716,16 +720,25 @@ void triggerPri_4G63() { if ( BIT_CHECK(currentStatus.engine, BIT_ENGINE_CRANK) && configPage2.ignCranklock && (currentStatus.startRevolutions >= configPage2.StgCycles)) { - if( toothCurrentCount == 1 ) { endCoil1Charge(); } - else if( toothCurrentCount == 3 ) { endCoil2Charge(); } - else if( toothCurrentCount == 5 ) { endCoil3Charge(); } + if(configPage1.nCylinders == 4) + { + //This operates in forced wasted spark mode during cranking to align with crank teeth + if( (toothCurrentCount == 1) || (toothCurrentCount == 5) ) { endCoil1Charge(); endCoil3Charge(); } + else if( (toothCurrentCount == 3) || (toothCurrentCount == 7) ) { endCoil2Charge(); endCoil4Charge(); } + } + else if(configPage1.nCylinders == 6) + { + if( toothCurrentCount == 1 ) { endCoil1Charge(); } + else if( toothCurrentCount == 3 ) { endCoil2Charge(); } + else if( toothCurrentCount == 5 ) { endCoil3Charge(); } + } } //Whilst this is an uneven tooth pattern, if the specific angle between the last 2 teeth is specified, 1st deriv prediction can be used if( (configPage2.triggerFilter == 1) || (currentStatus.RPM < 1400) ) { //Lite filter - if( (toothCurrentCount == 1) || (toothCurrentCount == 3) || (toothCurrentCount == 5) ) + if( (toothCurrentCount == 1) || (toothCurrentCount == 3) || (toothCurrentCount == 5) || (toothCurrentCount == 7) ) { triggerToothAngle = 70; triggerFilterTime = curGap; //Trigger filter is set to whatever time it took to do 70 degrees (Next trigger is 110 degrees away) @@ -748,20 +761,20 @@ void triggerPri_4G63() else if(configPage2.triggerFilter == 2) { //Medium filter level - if( (toothCurrentCount == 1) || (toothCurrentCount == 3) || (toothCurrentCount == 5) ) { triggerToothAngle = 70; triggerFilterTime = (curGap * 5) >> 2 ; } //87.5 degrees with a target of 110 + if( (toothCurrentCount == 1) || (toothCurrentCount == 3) || (toothCurrentCount == 5) || (toothCurrentCount == 7) ) { triggerToothAngle = 70; triggerFilterTime = (curGap * 5) >> 2 ; } //87.5 degrees with a target of 110 else { triggerToothAngle = 110; triggerFilterTime = (curGap >> 1); } //55 degrees with a target of 70 } else if (configPage2.triggerFilter == 3) { //Aggressive filter level - if( (toothCurrentCount == 1) || (toothCurrentCount == 3) || (toothCurrentCount == 5) ) { triggerToothAngle = 70; triggerFilterTime = (curGap * 11) >> 3 ; } //96.26 degrees with a target of 110 + if( (toothCurrentCount == 1) || (toothCurrentCount == 3) || (toothCurrentCount == 5) || (toothCurrentCount == 7) ) { triggerToothAngle = 70; triggerFilterTime = (curGap * 11) >> 3 ; } //96.26 degrees with a target of 110 else { triggerToothAngle = 110; triggerFilterTime = (curGap * 9) >> 5; } //61.87 degrees with a target of 70 } else { //trigger filter is turned off. triggerFilterTime = 0; - if( (toothCurrentCount == 1) || (toothCurrentCount == 3) || (toothCurrentCount == 5) ) { triggerToothAngle = 70; } //96.26 degrees with a target of 110 + if( (toothCurrentCount == 1) || (toothCurrentCount == 3) || (toothCurrentCount == 5) || (toothCurrentCount == 7) ) { triggerToothAngle = 70; } //96.26 degrees with a target of 110 else { triggerToothAngle = 110; } //61.87 degrees with a target of 70 } diff --git a/speeduino/sensors.h b/speeduino/sensors.h index 204e5970..8b1411d5 100644 --- a/speeduino/sensors.h +++ b/speeduino/sensors.h @@ -28,7 +28,7 @@ volatile int AnChannel[15]; unsigned long MAPrunningValue; //Used for tracking either the total of all MAP readings in this cycle (Event average) or the lowest value detected in this cycle (event minimum) unsigned int MAPcount; //Number of samples taken in the current MAP cycle -byte MAPcurRev; //Tracks which revolution we're sampling on +uint16_t MAPcurRev; //Tracks which revolution we're sampling on /* * Simple low pass IIR filter macro for the analog inputs diff --git a/speeduino/sensors.ino b/speeduino/sensors.ino index bf847710..4db4dcaf 100644 --- a/speeduino/sensors.ino +++ b/speeduino/sensors.ino @@ -45,8 +45,9 @@ void initialiseADC() #elif defined(ARDUINO_ARCH_STM32) //STM32GENERIC lib analogReadResolution(10); //use 10bits for analog #endif -MAPcurRev = 0; -MAPcount = 0; + MAPcurRev = 0; + MAPcount = 0; + MAPrunningValue = 0; } void instanteneousMAPReading() @@ -118,11 +119,12 @@ void readMAP() currentStatus.MAP = fastMap10Bit(currentStatus.mapADC, configPage1.mapMin, configPage1.mapMax); //Get the current MAP value //currentStatus.MAP = fastMap1023toX(currentStatus.mapADC, configPage1.mapMax); if(currentStatus.MAP < 0) { currentStatus.MAP = 0; } //Sanity check - MAPcurRev = currentStatus.startRevolutions; //Reset the current rev count - MAPrunningValue = 0; - MAPcount = 0; } else { instanteneousMAPReading(); } + + MAPcurRev = currentStatus.startRevolutions; //Reset the current rev count + MAPrunningValue = 0; + MAPcount = 0; } } else { instanteneousMAPReading(); } diff --git a/speeduino/utils.ino b/speeduino/utils.ino index af6f05d7..0a3db3fe 100644 --- a/speeduino/utils.ino +++ b/speeduino/utils.ino @@ -43,7 +43,7 @@ uint16_t freeRam () byte pinTranslate(byte rawPin) { byte outputPin = rawPin; - if(rawPin > BOARD_DIGITAL_GPIO_PINS) { outputPin = A8 + (outputPin - BOARD_DIGITAL_GPIO_PINS); } + if(rawPin > BOARD_DIGITAL_GPIO_PINS) { outputPin = A8 + (outputPin - BOARD_DIGITAL_GPIO_PINS - 1); } return outputPin; } From d746de22f8383835e698b6883770480650e41b9e Mon Sep 17 00:00:00 2001 From: VitorBoss Date: Wed, 13 Dec 2017 15:21:33 -0200 Subject: [PATCH 08/11] Increase STM32 max write --- speeduino/storage.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/speeduino/storage.h b/speeduino/storage.h index 3ecbd0cc..3fb9aa9f 100644 --- a/speeduino/storage.h +++ b/speeduino/storage.h @@ -7,7 +7,11 @@ void loadConfig(); void loadCalibration(); void writeCalibration(); +#if defined(CORE_STM32) || defined(CORE_TEENSY) +#define EEPROM_MAX_WRITE_BLOCK 64 //The maximum number of write operations that will be performed in one go. If we try to write to the EEPROM too fast (Each write takes ~3ms) then the rest of the system can hang) +#else #define EEPROM_MAX_WRITE_BLOCK 30 //The maximum number of write operations that will be performed in one go. If we try to write to the EEPROM too fast (Each write takes ~3ms) then the rest of the system can hang) +#endif bool eepromWritesPending = false; /* From 8a636e407f31380e19b3fb8c991efb8b161c15ba Mon Sep 17 00:00:00 2001 From: VitorBoss Date: Fri, 16 Feb 2018 20:44:12 -0200 Subject: [PATCH 09/11] Update Timers and limited BluePill to 4 Inj/Ign --- speeduino/scheduler.h | 165 ++++++++++++++++++++++++---------------- speeduino/speeduino.ino | 9 ++- speeduino/timers.ino | 8 +- 3 files changed, 110 insertions(+), 72 deletions(-) diff --git a/speeduino/scheduler.h b/speeduino/scheduler.h index d94541ce..77642909 100644 --- a/speeduino/scheduler.h +++ b/speeduino/scheduler.h @@ -204,138 +204,169 @@ See page 136 of the processors datasheet: http://www.atmel.com/Images/doc2549.pd #define FUEL2_COUNTER (TIM2)->CNT #define FUEL3_COUNTER (TIM2)->CNT #define FUEL4_COUNTER (TIM2)->CNT - #define FUEL5_COUNTER (TIM4)->CNT - #define FUEL6_COUNTER (TIM4)->CNT - #define FUEL7_COUNTER (TIM4)->CNT - #define FUEL8_COUNTER (TIM4)->CNT - - #define IGN1_COUNTER (TIM3)->CNT - #define IGN2_COUNTER (TIM3)->CNT - #define IGN3_COUNTER (TIM3)->CNT - #define IGN4_COUNTER (TIM3)->CNT - #define IGN5_COUNTER (TIM4)->CNT - #define IGN6_COUNTER (TIM4)->CNT - #define IGN7_COUNTER (TIM4)->CNT - #define IGN8_COUNTER (TIM4)->CNT #define FUEL1_COMPARE (TIM2)->CCR1 #define FUEL2_COMPARE (TIM2)->CCR2 #define FUEL3_COMPARE (TIM2)->CCR3 #define FUEL4_COMPARE (TIM2)->CCR4 - #define FUEL5_COMPARE (TIM4)->CCR1 - #define FUEL6_COMPARE (TIM4)->CCR2 - #define FUEL7_COMPARE (TIM4)->CCR3 - #define FUEL8_COMPARE (TIM4)->CCR4 + + #define IGN1_COUNTER (TIM3)->CNT + #define IGN2_COUNTER (TIM3)->CNT + #define IGN3_COUNTER (TIM3)->CNT + #define IGN4_COUNTER (TIM3)->CNT #define IGN1_COMPARE (TIM3)->CCR1 #define IGN2_COMPARE (TIM3)->CCR2 #define IGN3_COMPARE (TIM3)->CCR3 #define IGN4_COMPARE (TIM3)->CCR4 + +#ifndef SMALL_FLASH_MODE + #define FUEL5_COUNTER (TIM5)->CNT + #define FUEL6_COUNTER (TIM5)->CNT + #define FUEL7_COUNTER (TIM5)->CNT + #define FUEL8_COUNTER (TIM5)->CNT + + #define FUEL5_COMPARE (TIM5)->CCR1 + #define FUEL6_COMPARE (TIM5)->CCR2 + #define FUEL7_COMPARE (TIM5)->CCR3 + #define FUEL8_COMPARE (TIM5)->CCR4 + + #define IGN5_COUNTER (TIM4)->CNT + #define IGN6_COUNTER (TIM4)->CNT + #define IGN7_COUNTER (TIM4)->CNT + #define IGN8_COUNTER (TIM4)->CNT + #define IGN5_COMPARE (TIM4)->CCR1 #define IGN6_COMPARE (TIM4)->CCR2 #define IGN7_COMPARE (TIM4)->CCR3 #define IGN8_COMPARE (TIM4)->CCR4 - +#endif //https://github.com/rogerclarkmelbourne/Arduino_STM32/blob/754bc2969921f1ef262bd69e7faca80b19db7524/STM32F1/system/libmaple/include/libmaple/timer.h#L444 #define FUEL1_TIMER_ENABLE() (TIM2)->CCER |= TIM_CCER_CC1E #define FUEL2_TIMER_ENABLE() (TIM2)->CCER |= TIM_CCER_CC2E #define FUEL3_TIMER_ENABLE() (TIM2)->CCER |= TIM_CCER_CC3E #define FUEL4_TIMER_ENABLE() (TIM2)->CCER |= TIM_CCER_CC4E - #define FUEL5_TIMER_ENABLE() (TIM4)->CCER |= TIM_CCER_CC1E - #define FUEL6_TIMER_ENABLE() (TIM4)->CCER |= TIM_CCER_CC2E - #define FUEL7_TIMER_ENABLE() (TIM4)->CCER |= TIM_CCER_CC3E - #define FUEL8_TIMER_ENABLE() (TIM4)->CCER |= TIM_CCER_CC4E - - #define IGN1_TIMER_ENABLE() (TIM3)->CCER |= TIM_CCER_CC1E - #define IGN2_TIMER_ENABLE() (TIM3)->CCER |= TIM_CCER_CC2E - #define IGN3_TIMER_ENABLE() (TIM3)->CCER |= TIM_CCER_CC3E - #define IGN4_TIMER_ENABLE() (TIM3)->CCER |= TIM_CCER_CC4E - #define IGN5_TIMER_ENABLE() (TIM1)->CCER |= TIM_CCER_CC1E - + #define FUEL1_TIMER_DISABLE() (TIM2)->CCER &= ~TIM_CCER_CC1E #define FUEL2_TIMER_DISABLE() (TIM2)->CCER &= ~TIM_CCER_CC2E #define FUEL3_TIMER_DISABLE() (TIM2)->CCER &= ~TIM_CCER_CC3E #define FUEL4_TIMER_DISABLE() (TIM2)->CCER &= ~TIM_CCER_CC4E + #define IGN1_TIMER_ENABLE() (TIM3)->CCER |= TIM_CCER_CC1E + #define IGN2_TIMER_ENABLE() (TIM3)->CCER |= TIM_CCER_CC2E + #define IGN3_TIMER_ENABLE() (TIM3)->CCER |= TIM_CCER_CC3E + #define IGN4_TIMER_ENABLE() (TIM3)->CCER |= TIM_CCER_CC4E + #define IGN1_TIMER_DISABLE() (TIM3)->CCER &= ~TIM_CCER_CC1E #define IGN2_TIMER_DISABLE() (TIM3)->CCER &= ~TIM_CCER_CC2E #define IGN3_TIMER_DISABLE() (TIM3)->CCER &= ~TIM_CCER_CC3E #define IGN4_TIMER_DISABLE() (TIM3)->CCER &= ~TIM_CCER_CC4E - #define IGN5_TIMER_DISABLE() (TIM1)->CCER &= ~TIM_CCER_CC1E + +#ifndef SMALL_FLASH_MODE + #define FUEL5_TIMER_ENABLE() (TIM5)->CCER |= TIM_CCER_CC1E + #define FUEL6_TIMER_ENABLE() (TIM5)->CCER |= TIM_CCER_CC2E + #define FUEL7_TIMER_ENABLE() (TIM5)->CCER |= TIM_CCER_CC3E + #define FUEL8_TIMER_ENABLE() (TIM5)->CCER |= TIM_CCER_CC4E + + #define FUEL5_TIMER_DISABLE() (TIM5)->CCER &= ~TIM_CCER_CC1E + #define FUEL6_TIMER_DISABLE() (TIM5)->CCER &= ~TIM_CCER_CC2E + #define FUEL7_TIMER_DISABLE() (TIM5)->CCER &= ~TIM_CCER_CC3E + #define FUEL8_TIMER_DISABLE() (TIM5)->CCER &= ~TIM_CCER_CC4E + + #define IGN5_TIMER_ENABLE() (TIM4)->CCER |= TIM_CCER_CC1E + #define IGN6_TIMER_ENABLE() (TIM4)->CCER |= TIM_CCER_CC2E + #define IGN7_TIMER_ENABLE() (TIM4)->CCER |= TIM_CCER_CC3E + #define IGN8_TIMER_ENABLE() (TIM4)->CCER |= TIM_CCER_CC4E + + #define IGN5_TIMER_DISABLE() (TIM4)->CCER &= ~TIM_CCER_CC1E + #define IGN6_TIMER_DISABLE() (TIM4)->CCER &= ~TIM_CCER_CC2E + #define IGN7_TIMER_DISABLE() (TIM4)->CCER &= ~TIM_CCER_CC3E + #define IGN8_TIMER_DISABLE() (TIM4)->CCER &= ~TIM_CCER_CC4E +#endif #else //libmaple core aka STM32DUINO #define FUEL1_COUNTER (TIMER2->regs).gen->CNT #define FUEL2_COUNTER (TIMER2->regs).gen->CNT #define FUEL3_COUNTER (TIMER2->regs).gen->CNT #define FUEL4_COUNTER (TIMER2->regs).gen->CNT - #define FUEL5_COUNTER (TIMER4->regs).gen->CNT - #define FUEL6_COUNTER (TIMER4->regs).gen->CNT - #define FUEL7_COUNTER (TIMER4->regs).gen->CNT - #define FUEL8_COUNTER (TIMER4->regs).gen->CNT - - #define IGN1_COUNTER (TIMER3->regs).gen->CNT - #define IGN2_COUNTER (TIMER3->regs).gen->CNT - #define IGN3_COUNTER (TIMER3->regs).gen->CNT - #define IGN4_COUNTER (TIMER3->regs).gen->CNT - #define IGN5_COUNTER (TIMER4->regs).gen->CNT - #define IGN6_COUNTER (TIMER4->regs).gen->CNT - #define IGN7_COUNTER (TIMER4->regs).gen->CNT - #define IGN8_COUNTER (TIMER4->regs).gen->CNT #define FUEL1_COMPARE (TIMER2->regs).gen->CCR1 #define FUEL2_COMPARE (TIMER2->regs).gen->CCR2 #define FUEL3_COMPARE (TIMER2->regs).gen->CCR3 #define FUEL4_COMPARE (TIMER2->regs).gen->CCR4 - #define FUEL5_COMPARE (TIMER4->regs).gen->CCR1 - #define FUEL6_COMPARE (TIMER4->regs).gen->CCR2 - #define FUEL7_COMPARE (TIMER4->regs).gen->CCR3 - #define FUEL8_COMPARE (TIMER4->regs).gen->CCR4 + + #define IGN1_COUNTER (TIMER3->regs).gen->CNT + #define IGN2_COUNTER (TIMER3->regs).gen->CNT + #define IGN3_COUNTER (TIMER3->regs).gen->CNT + #define IGN4_COUNTER (TIMER3->regs).gen->CNT #define IGN1_COMPARE (TIMER3->regs).gen->CCR1 #define IGN2_COMPARE (TIMER3->regs).gen->CCR2 #define IGN3_COMPARE (TIMER3->regs).gen->CCR3 #define IGN4_COMPARE (TIMER3->regs).gen->CCR4 + +#ifndef SMALL_FLASH_MODE + #define FUEL5_COUNTER (TIMER5->regs).gen->CNT + #define FUEL6_COUNTER (TIMER5->regs).gen->CNT + #define FUEL7_COUNTER (TIMER5->regs).gen->CNT + #define FUEL8_COUNTER (TIMER5->regs).gen->CNT + + #define FUEL5_COMPARE (TIMER5->regs).gen->CCR1 + #define FUEL6_COMPARE (TIMER5->regs).gen->CCR2 + #define FUEL7_COMPARE (TIMER5->regs).gen->CCR3 + #define FUEL8_COMPARE (TIMER5->regs).gen->CCR4 + + #define IGN5_COUNTER (TIMER4->regs).gen->CNT + #define IGN6_COUNTER (TIMER4->regs).gen->CNT + #define IGN7_COUNTER (TIMER4->regs).gen->CNT + #define IGN8_COUNTER (TIMER4->regs).gen->CNT + #define IGN5_COMPARE (TIMER4->regs).gen->CCR1 #define IGN6_COMPARE (TIMER4->regs).gen->CCR2 #define IGN7_COMPARE (TIMER4->regs).gen->CCR3 #define IGN8_COMPARE (TIMER4->regs).gen->CCR4 - +#endif //https://github.com/rogerclarkmelbourne/Arduino_STM32/blob/754bc2969921f1ef262bd69e7faca80b19db7524/STM32F1/system/libmaple/include/libmaple/timer.h#L444 #define FUEL1_TIMER_ENABLE() (TIMER2->regs).gen->CCER |= TIMER_CCER_CC1E #define FUEL2_TIMER_ENABLE() (TIMER2->regs).gen->CCER |= TIMER_CCER_CC2E #define FUEL3_TIMER_ENABLE() (TIMER2->regs).gen->CCER |= TIMER_CCER_CC3E #define FUEL4_TIMER_ENABLE() (TIMER2->regs).gen->CCER |= TIMER_CCER_CC4E - #define FUEL5_TIMER_ENABLE() (TIMER4->regs).gen->CCER |= TIMER_CCER_CC1E - #define FUEL6_TIMER_ENABLE() (TIMER4->regs).gen->CCER |= TIMER_CCER_CC2E - #define FUEL7_TIMER_ENABLE() (TIMER4->regs).gen->CCER |= TIMER_CCER_CC3E - #define FUEL8_TIMER_ENABLE() (TIMER4->regs).gen->CCER |= TIMER_CCER_CC4E - - #define IGN1_TIMER_ENABLE() (TIMER3->regs).gen->CCER |= TIMER_CCER_CC1E - #define IGN2_TIMER_ENABLE() (TIMER3->regs).gen->CCER |= TIMER_CCER_CC2E - #define IGN3_TIMER_ENABLE() (TIMER3->regs).gen->CCER |= TIMER_CCER_CC3E - #define IGN4_TIMER_ENABLE() (TIMER3->regs).gen->CCER |= TIMER_CCER_CC4E - #define IGN5_TIMER_ENABLE() (TIMER4->regs).gen->CCER |= TIMER_CCER_CC1E - #define IGN6_TIMER_ENABLE() (TIMER4->regs).gen->CCER |= TIMER_CCER_CC2E - #define IGN7_TIMER_ENABLE() (TIMER4->regs).gen->CCER |= TIMER_CCER_CC3E - #define IGN8_TIMER_ENABLE() (TIMER4->regs).gen->CCER |= TIMER_CCER_CC4E - + #define FUEL1_TIMER_DISABLE() (TIMER2->regs).gen->CCER &= ~TIMER_CCER_CC1E #define FUEL2_TIMER_DISABLE() (TIMER2->regs).gen->CCER &= ~TIMER_CCER_CC2E #define FUEL3_TIMER_DISABLE() (TIMER2->regs).gen->CCER &= ~TIMER_CCER_CC3E #define FUEL4_TIMER_DISABLE() (TIMER2->regs).gen->CCER &= ~TIMER_CCER_CC4E - #define FUEL5_TIMER_DISABLE() (TIMER4->regs).gen->CCER &= ~TIMER_CCER_CC1E - #define FUEL6_TIMER_DISABLE() (TIMER4->regs).gen->CCER &= ~TIMER_CCER_CC2E - #define FUEL7_TIMER_DISABLE() (TIMER4->regs).gen->CCER &= ~TIMER_CCER_CC3E - #define FUEL8_TIMER_DISABLE() (TIMER4->regs).gen->CCER &= ~TIMER_CCER_CC4E #define IGN1_TIMER_DISABLE() (TIMER3->regs).gen->CCER &= ~TIMER_CCER_CC1E #define IGN2_TIMER_DISABLE() (TIMER3->regs).gen->CCER &= ~TIMER_CCER_CC2E #define IGN3_TIMER_DISABLE() (TIMER3->regs).gen->CCER &= ~TIMER_CCER_CC3E #define IGN4_TIMER_DISABLE() (TIMER3->regs).gen->CCER &= ~TIMER_CCER_CC4E + + #define IGN1_TIMER_ENABLE() (TIMER3->regs).gen->CCER |= TIMER_CCER_CC1E + #define IGN2_TIMER_ENABLE() (TIMER3->regs).gen->CCER |= TIMER_CCER_CC2E + #define IGN3_TIMER_ENABLE() (TIMER3->regs).gen->CCER |= TIMER_CCER_CC3E + #define IGN4_TIMER_ENABLE() (TIMER3->regs).gen->CCER |= TIMER_CCER_CC4E + +#ifndef SMALL_FLASH_MODE + #define FUEL5_TIMER_ENABLE() (TIMER5->regs).gen->CCER |= TIMER_CCER_CC1E + #define FUEL6_TIMER_ENABLE() (TIMER5->regs).gen->CCER |= TIMER_CCER_CC2E + #define FUEL7_TIMER_ENABLE() (TIMER5->regs).gen->CCER |= TIMER_CCER_CC3E + #define FUEL8_TIMER_ENABLE() (TIMER5->regs).gen->CCER |= TIMER_CCER_CC4E + + #define IGN5_TIMER_ENABLE() (TIMER4->regs).gen->CCER |= TIMER_CCER_CC1E + #define IGN6_TIMER_ENABLE() (TIMER4->regs).gen->CCER |= TIMER_CCER_CC2E + #define IGN7_TIMER_ENABLE() (TIMER4->regs).gen->CCER |= TIMER_CCER_CC3E + #define IGN8_TIMER_ENABLE() (TIMER4->regs).gen->CCER |= TIMER_CCER_CC4E + + #define FUEL5_TIMER_DISABLE() (TIMER5->regs).gen->CCER &= ~TIMER_CCER_CC1E + #define FUEL6_TIMER_DISABLE() (TIMER5->regs).gen->CCER &= ~TIMER_CCER_CC2E + #define FUEL7_TIMER_DISABLE() (TIMER5->regs).gen->CCER &= ~TIMER_CCER_CC3E + #define FUEL8_TIMER_DISABLE() (TIMER5->regs).gen->CCER &= ~TIMER_CCER_CC4E + #define IGN5_TIMER_DISABLE() (TIMER4->regs).gen->CCER &= ~TIMER_CCER_CC1E #define IGN6_TIMER_DISABLE() (TIMER4->regs).gen->CCER &= ~TIMER_CCER_CC2E #define IGN7_TIMER_DISABLE() (TIMER4->regs).gen->CCER &= ~TIMER_CCER_CC3E #define IGN8_TIMER_DISABLE() (TIMER4->regs).gen->CCER &= ~TIMER_CCER_CC4E - +#endif #endif #endif diff --git a/speeduino/speeduino.ino b/speeduino/speeduino.ino index 42fc01ac..0e8f3fdd 100644 --- a/speeduino/speeduino.ino +++ b/speeduino/speeduino.ino @@ -166,10 +166,10 @@ void setup() configPage4.bootloaderCaps = 0; Serial.begin(115200); - if (configPage10.enable_canbus == 1) { CANSerial.begin(115200); } + if (configPage9.enable_canbus == 1) { CANSerial.begin(115200); } #if defined(CORE_STM32) || defined(CORE_TEENSY) - else if (configPage10.enable_canbus == 2) + else if (configPage9.enable_canbus == 2) { //Teensy onboard CAN not used currently //enable local can interface @@ -178,6 +178,7 @@ void setup() //static CAN_message_t txmsg,rxmsg; //CANbus0.begin(); } + #endif //Repoint the 2D table structs to the config pages that were just loaded @@ -719,7 +720,7 @@ void loop() if (Serial.available() > 0) { command(); } } //if can or secondary serial interface is enabled then check for requests. - if (configPage10.enable_canbus == 1) //secondary serial interface enabled + if (configPage9.enable_canbus == 1) //secondary serial interface enabled { if ( ((mainLoopCount & 31) == 1) or (CANSerial.available() > SERIAL_BUFFER_THRESHOLD) ) { @@ -727,7 +728,7 @@ void loop() } } #if defined(CORE_TEENSY) || defined(CORE_STM32) - else if (configPage10.enable_canbus == 2) // can module enabled + else if (configPage9.enable_canbus == 2) // can module enabled { //check local can module // if ( BIT_CHECK(LOOP_TIMER, BIT_TIMER_15HZ) or (CANbus0.available()) diff --git a/speeduino/timers.ino b/speeduino/timers.ino index 45bd86a4..00c2e588 100644 --- a/speeduino/timers.ino +++ b/speeduino/timers.ino @@ -40,11 +40,17 @@ void initialiseTimers() lowResTimer.begin(oneMSInterval, 1000); #elif defined(CORE_STM32) +#ifndef SMALL_FLASH_MODE + Timer8.setPeriod(1000); // Set up period + Timer8.setMode(1, TIMER_OUTPUT_COMPARE); + Timer8.attachInterrupt(1, oneMSInterval); + Timer8.resume(); //Start Timer +#else Timer4.setPeriod(1000); // Set up period - // Set up an interrupt Timer4.setMode(1, TIMER_OUTPUT_COMPARE); Timer4.attachInterrupt(1, oneMSInterval); Timer4.resume(); //Start Timer +#endif pinMode(LED_BUILTIN, OUTPUT); //Visual WDT #endif From 7e19e6c4adf92dc57c01aca4951d463ab37cdf9d Mon Sep 17 00:00:00 2001 From: VitorBoss Date: Sun, 18 Mar 2018 03:26:12 -0300 Subject: [PATCH 10/11] Fixes for STM crash --- speeduino/globals.h | 4 ++-- speeduino/scheduler.ino | 16 +++++++++++++--- speeduino/timers.ino | 2 +- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/speeduino/globals.h b/speeduino/globals.h index 2ced573c..ddba6209 100644 --- a/speeduino/globals.h +++ b/speeduino/globals.h @@ -36,12 +36,12 @@ #endif //Specific mode for Bluepill due to its small flash size. This disables a number of strings from being compiled into the flash - #if defined(MCU_STM32F103C8) + #if defined(MCU_STM32F103C8) | defined(MCU_STM32F103CB) #define SMALL_FLASH_MODE #endif extern "C" char* sbrk(int incr); //Used to freeRam - //inline unsigned char digitalPinToInterrupt(unsigned char Interrupt_pin) { return Interrupt_pin; } //This isn't included in the stm32duino libs (yet) + inline unsigned char digitalPinToInterrupt(unsigned char Interrupt_pin) { return Interrupt_pin; } //This isn't included in the stm32duino libs (yet) #if defined(ARDUINO_ARCH_STM32) // STM32GENERIC core #define portOutputRegister(port) (volatile byte *)( &(port->ODR) ) #define portInputRegister(port) (volatile byte *)( &(port->IDR) ) diff --git a/speeduino/scheduler.ino b/speeduino/scheduler.ino index d5cefaad..5adee27b 100644 --- a/speeduino/scheduler.ino +++ b/speeduino/scheduler.ino @@ -246,10 +246,18 @@ void initialiseSchedulers() fuelSchedule2.counter = &FUEL2_COUNTER; fuelSchedule3.counter = &FUEL3_COUNTER; fuelSchedule4.counter = &FUEL4_COUNTER; + #if (INJ_CHANNELS >= 5) fuelSchedule5.counter = &FUEL5_COUNTER; - fuelSchedule6.counter = &FUEL6_COUNTER; - fuelSchedule7.counter = &FUEL7_COUNTER; - fuelSchedule8.counter = &FUEL8_COUNTER; + #endif + #if (INJ_CHANNELS >= 6) + fuelSchedule5.counter = &FUEL6_COUNTER; + #endif + #if (INJ_CHANNELS >= 7) + fuelSchedule5.counter = &FUEL7_COUNTER; + #endif + #if (INJ_CHANNELS >= 8) + fuelSchedule5.counter = &FUEL8_COUNTER; + #endif ignitionSchedule1.Status = OFF; ignitionSchedule2.Status = OFF; @@ -478,6 +486,7 @@ void setFuelSchedule4(unsigned long timeout, unsigned long duration) //Uses time } } +#if INJ_CHANNELS >= 5 void setFuelSchedule5(void (*startCallback)(), unsigned long timeout, unsigned long duration, void(*endCallback)()) { if(fuelSchedule5.Status != RUNNING) //Check that we're not already part way through a schedule @@ -509,6 +518,7 @@ void setFuelSchedule5(void (*startCallback)(), unsigned long timeout, unsigned l fuelSchedule5.hasNextSchedule = true; } } +#endif #if INJ_CHANNELS >= 6 //This uses timer diff --git a/speeduino/timers.ino b/speeduino/timers.ino index 2d7a1e6a..1c29e19e 100644 --- a/speeduino/timers.ino +++ b/speeduino/timers.ino @@ -40,7 +40,7 @@ void initialiseTimers() lowResTimer.begin(oneMSInterval, 1000); #elif defined(CORE_STM32) -#ifndef SMALL_FLASH_MODE +#if defined(ARDUINO_BLACK_F407VE) || defined(STM32F4) || defined(_STM32F4_) Timer8.setPeriod(1000); // Set up period Timer8.setMode(1, TIMER_OUTPUT_COMPARE); Timer8.attachInterrupt(1, oneMSInterval); From bcf3a2922b8ec30539dbcc8d2952c6ab9988c292 Mon Sep 17 00:00:00 2001 From: VitorBoss Date: Sun, 18 Mar 2018 03:39:30 -0300 Subject: [PATCH 11/11] fix for digitalPinToInterrupt on libmaple core --- speeduino/globals.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/speeduino/globals.h b/speeduino/globals.h index ddba6209..cce66531 100644 --- a/speeduino/globals.h +++ b/speeduino/globals.h @@ -41,8 +41,8 @@ #endif extern "C" char* sbrk(int incr); //Used to freeRam - inline unsigned char digitalPinToInterrupt(unsigned char Interrupt_pin) { return Interrupt_pin; } //This isn't included in the stm32duino libs (yet) #if defined(ARDUINO_ARCH_STM32) // STM32GENERIC core + inline unsigned char digitalPinToInterrupt(unsigned char Interrupt_pin) { return Interrupt_pin; } //This isn't included in the stm32duino libs (yet) #define portOutputRegister(port) (volatile byte *)( &(port->ODR) ) #define portInputRegister(port) (volatile byte *)( &(port->IDR) ) #else //libmaple core aka STM32DUINO