From dbd3d5ae283f116206a752d4e7dd5a7d2e8ceaae Mon Sep 17 00:00:00 2001 From: rusEfi Date: Wed, 17 Sep 2014 11:03:04 -0500 Subject: [PATCH] auto-sync --- firmware/console/tunerstudio/tunerstudio.cpp | 2 +- .../tunerstudio/tunerstudio_configuration.h | 3 +-- .../controllers/algo/engine_configuration.h | 4 +++ firmware/hw_layer/hardware.cpp | 4 +++ firmware/hw_layer/hw_layer.mk | 1 + firmware/hw_layer/max31855.c | 16 ++++++++++++ firmware/hw_layer/max31855.h | 25 +++++++++++++++++++ firmware/rusefi.cpp | 2 +- firmware/tunerstudio/rusefi.ini | 19 +++++++------- 9 files changed, 63 insertions(+), 13 deletions(-) create mode 100644 firmware/hw_layer/max31855.c create mode 100644 firmware/hw_layer/max31855.h diff --git a/firmware/console/tunerstudio/tunerstudio.cpp b/firmware/console/tunerstudio/tunerstudio.cpp index b0920a7d62..783b35927f 100644 --- a/firmware/console/tunerstudio/tunerstudio.cpp +++ b/firmware/console/tunerstudio/tunerstudio.cpp @@ -53,7 +53,7 @@ static SerialConfig tsSerialConfig = { TS_SERIAL_SPEED, 0, USART_CR2_STOP1_BITS #endif /* EFI_PROD_CODE */ #define MAX_PAGE_ID 0 -#define PAGE_0_SIZE 5928 +#define PAGE_0_SIZE 6328 #define TS_OUTPUT_SIZE 116 // in MS, that's 10 seconds diff --git a/firmware/console/tunerstudio/tunerstudio_configuration.h b/firmware/console/tunerstudio/tunerstudio_configuration.h index 7eb0fe9ffb..fe223d00ed 100644 --- a/firmware/console/tunerstudio/tunerstudio_configuration.h +++ b/firmware/console/tunerstudio/tunerstudio_configuration.h @@ -14,8 +14,7 @@ /** * this is used to confirm that firmware and TunerStudio are using the same rusefi.ini version */ -#define TS_FILE_VERSION 20140910 - +#define TS_FILE_VERSION 20140917 /** * please be aware that 'float' (F32) type requires TunerStudio version 2.6 and later diff --git a/firmware/controllers/algo/engine_configuration.h b/firmware/controllers/algo/engine_configuration.h index 06a643ced8..a64771d956 100644 --- a/firmware/controllers/algo/engine_configuration.h +++ b/firmware/controllers/algo/engine_configuration.h @@ -31,6 +31,8 @@ typedef struct { #define INJECTION_PIN_COUNT 12 #define IGNITION_PIN_COUNT 12 +#define MAX31855_CS_COUNT 8 + #define FUEL_RPM_COUNT 16 #define FUEL_LOAD_COUNT 16 #define VE_RPM_COUNT 16 @@ -199,6 +201,8 @@ typedef struct { pin_output_mode_e mainRelayPinMode; + int unusedbs[100]; + } board_configuration_s; diff --git a/firmware/hw_layer/hardware.cpp b/firmware/hw_layer/hardware.cpp index f464209439..8e322f9baa 100644 --- a/firmware/hw_layer/hardware.cpp +++ b/firmware/hw_layer/hardware.cpp @@ -22,6 +22,7 @@ #include "mcp3208.h" #include "HIP9011.h" +#include "max31855.h" #include "can_hw.h" #include "histogram.h" #include "mmc_card.h" @@ -206,6 +207,9 @@ void initHardware(Logging *logger, Engine *engine) { initHip9011(); #endif /* EFI_HIP_9011 */ + initMax31855(boardConfiguration); + + #if EFI_CAN_SUPPORT initCan(); #endif /* EFI_CAN_SUPPORT */ diff --git a/firmware/hw_layer/hw_layer.mk b/firmware/hw_layer/hw_layer.mk index 89c54dec85..cabba24a5c 100644 --- a/firmware/hw_layer/hw_layer.mk +++ b/firmware/hw_layer/hw_layer.mk @@ -2,6 +2,7 @@ HW_LAYERSRC = $(PROJECT_DIR)/hw_layer/pin_repository.c \ $(PROJECT_DIR)/hw_layer/io_pins.c \ $(PROJECT_DIR)/hw_layer/mcp3208.c \ + $(PROJECT_DIR)/hw_layer/max31855.c \ $(PROJECT_DIR)/hw_layer/lcd/lcd_HD44780.c \ $(PROJECT_DIR)/hw_layer/HIP9011.c \ $(PROJECT_DIR)/hw_layer/microsecond_timer.c \ diff --git a/firmware/hw_layer/max31855.c b/firmware/hw_layer/max31855.c new file mode 100644 index 0000000000..dfb13bb4b6 --- /dev/null +++ b/firmware/hw_layer/max31855.c @@ -0,0 +1,16 @@ +/** + * @file max31855.c + * @brief MAX31855 Thermocouple-to-Digital Converter driver + * + * + * http://datasheets.maximintegrated.com/en/ds/MAX31855.pdf + * + * @date Sep 17, 2014 + * @author Andrey Belomutskiy, (c) 2012-2014 + */ + +#include "max31855.h" + +void initMax31855(board_configuration_s *boardConfiguration) { + +} diff --git a/firmware/hw_layer/max31855.h b/firmware/hw_layer/max31855.h new file mode 100644 index 0000000000..267c64a9c3 --- /dev/null +++ b/firmware/hw_layer/max31855.h @@ -0,0 +1,25 @@ +/** + * @file max31855.h + * + * @date Sep 17, 2014 + * @author Andrey Belomutskiy, (c) 2012-2014 + */ + +#ifndef MAX31855_H_ +#define MAX31855_H_ + +#include "main.h" +#include "engine_configuration.h" + +#ifdef __cplusplus +extern "C" +{ +#endif /* __cplusplus */ + +void initMax31855(board_configuration_s *boardConfiguration); + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + +#endif /* MAX31855_H_ */ diff --git a/firmware/rusefi.cpp b/firmware/rusefi.cpp index 496ece332f..3ee7f2fad9 100644 --- a/firmware/rusefi.cpp +++ b/firmware/rusefi.cpp @@ -235,5 +235,5 @@ void firmwareError(const char *fmt, ...) { } int getRusEfiVersion(void) { - return 20140916; + return 20140917; } diff --git a/firmware/tunerstudio/rusefi.ini b/firmware/tunerstudio/rusefi.ini index 24aba990ee..79bbbd7c00 100644 --- a/firmware/tunerstudio/rusefi.ini +++ b/firmware/tunerstudio/rusefi.ini @@ -285,18 +285,19 @@ enable2ndByteCanID = false logicAnalyzerPin2 = bits, U32, 5860, [0:6], "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "GPIOA_5", "INVALID", "INVALID", "GPIOA_8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "GPIOC_6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "GPIOE_5", "INVALID", "GPIOE_7", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" logicAnalyzerPin3 = bits, U32, 5864, [0:6], "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "GPIOA_5", "INVALID", "INVALID", "GPIOA_8", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "GPIOC_6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "GPIOE_5", "INVALID", "GPIOE_7", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" - ; idle mode 5888 - isInjectionEnabled = bits, U32, 5892, [0:0], "false", "true" - isIgnitionEnabled = bits, U32, 5892, [1:1], "false", "true" - isCylinderCleanupEnabled= bits, U32, 5892, [2:2], "false", "true" - secondTriggerChannelEnabled= bits, U32, 5892, [3:3], "false", "true" - needSecondTriggerInput = bits, U32, 5892, [4:4], "false", "true" - digitalChartSize = scalar, U32, 5896, "count", 1, 0, 0, 300, 0 ; size 4 - injectorFlow = scalar, F32, 5900, "cm3/min", 1, 0, 0, 1000, 2; size 4 + ; idle mode 6288 + + isInjectionEnabled = bits, U32, 6292, [0:0], "false", "true" + isIgnitionEnabled = bits, U32, 6292, [1:1], "false", "true" + isCylinderCleanupEnabled= bits, U32, 6292, [2:2], "false", "true" + secondTriggerChannelEnabled= bits, U32, 6292, [3:3], "false", "true" + needSecondTriggerInput = bits, U32, 6292, [4:4], "false", "true" + digitalChartSize = scalar, U32, 6296, "count", 1, 0, 0, 300, 0 ; size 4 + injectorFlow = scalar, F32, 6300, "cm3/min", 1, 0, 0, 1000, 2; size 4 [OutputChannels] -fileVersion = { 20140910 } +fileVersion = { 20140917 } ochGetCommand = "O"