From 4c8ebc4edb0138fb9c60e66f45d11a1c0a75dcb4 Mon Sep 17 00:00:00 2001 From: rusefi Date: Tue, 31 Mar 2020 20:08:30 -0400 Subject: [PATCH] CAN progress --- firmware/config/engines/bmw_m73_mre.cpp | 5 +++++ firmware/controllers/algo/rusefi_enums.h | 3 ++- firmware/integration/rusefi_config.txt | 2 +- firmware/tunerstudio/rusefi.ini | 4 ++-- firmware/tunerstudio/rusefi_frankenso.ini | 4 ++-- firmware/tunerstudio/rusefi_kinetis.ini | 4 ++-- firmware/tunerstudio/rusefi_microrusefi.ini | 4 ++-- firmware/tunerstudio/rusefi_prometheus.ini | 4 ++-- firmware/tunerstudio/rusefi_proteus.ini | 4 ++-- 9 files changed, 20 insertions(+), 14 deletions(-) diff --git a/firmware/config/engines/bmw_m73_mre.cpp b/firmware/config/engines/bmw_m73_mre.cpp index fe68fbf95a..b01e425502 100644 --- a/firmware/config/engines/bmw_m73_mre.cpp +++ b/firmware/config/engines/bmw_m73_mre.cpp @@ -49,6 +49,8 @@ * * BMW_M73_MRE * set engine_type 104 + * BMW_M73_MRE_SLAVE + * set engine_type 105 * */ @@ -95,8 +97,11 @@ void setEngineBMW_M73_microRusEfi(DECLARE_CONFIG_PARAMETER_SIGNATURE) { #if EFI_CANBUS_SLAVE engineConfiguration->canReadEnabled = true; + engineConfiguration->canWriteEnabled = false; #else /* EFI_CANBUS_SLAVE */ + engineConfiguration->canReadEnabled = false; engineConfiguration->canWriteEnabled = true; + CONFIG(enableVerboseCanTx) = true; #endif /* EFI_CANBUS_SLAVE */ diff --git a/firmware/controllers/algo/rusefi_enums.h b/firmware/controllers/algo/rusefi_enums.h index cef195556b..c779b79f12 100644 --- a/firmware/controllers/algo/rusefi_enums.h +++ b/firmware/controllers/algo/rusefi_enums.h @@ -776,10 +776,11 @@ typedef enum { * Net Body Computer types */ typedef enum { - CAN_BUS_NBC_BMW = 0, + CAN_BUS_NBC_NONE = 0, CAN_BUS_NBC_FIAT = 1, CAN_BUS_NBC_VAG = 2, CAN_BUS_MAZDA_RX8 = 3, + CAN_BUS_NBC_BMW = 4, Internal_ForceMyEnumIntSize_can_nbc = ENUM_32_BITS, } can_nbc_e; diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index c0e9e32328..79b90cb3eb 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -432,7 +432,7 @@ float fsio_visible fanOffTemperature;+Cooling fan turn-off temperature threshold float vehicleSpeedCoef;+This coefficient translates vehicle speed input frequency (in Hz) into vehicle speed, km/h;"coef", 1, 0, 0.01, 2000.0, 2 -custom can_nbc_e 4 bits, U32, @OFFSET@, [0:7], "BMW", "FIAT", "VAG" , "MAZDA RX8" +custom can_nbc_e 4 bits, U32, @OFFSET@, [0:7], "None", "FIAT", "VAG" , "MAZDA RX8", "BMW" can_nbc_e canNbcType;set can_mode X int canSleepPeriodMs;CANbus thread period, ms;"ms", 1, 0, 0, 1000.0, 2 diff --git a/firmware/tunerstudio/rusefi.ini b/firmware/tunerstudio/rusefi.ini index 76f4e93690..127382858a 100644 --- a/firmware/tunerstudio/rusefi.ini +++ b/firmware/tunerstudio/rusefi.ini @@ -86,7 +86,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Tue Mar 31 16:40:27 EDT 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Tue Mar 31 19:56:03 EDT 2020 pageSize = 20000 page = 1 @@ -191,7 +191,7 @@ page = 1 fanOnTemperature = scalar, F32, 468, "*C", 1, 0, 0, 1000.0, 0 fanOffTemperature = scalar, F32, 472, "*C", 1, 0, 0, 1000.0, 0 vehicleSpeedCoef = scalar, F32, 476, "coef", 1, 0, 0.01, 2000.0, 2 - canNbcType = bits, U32, 480, [0:7], "BMW", "FIAT", "VAG" , "MAZDA RX8" + canNbcType = bits, U32, 480, [0:7], "None", "FIAT", "VAG" , "MAZDA RX8", "BMW" canSleepPeriodMs = scalar, S32, 484, "ms", 1, 0, 0, 1000.0, 2 ambiguousOperationMode = bits, U32, 488, [0:7], "INVALID", "4 stroke without cam sensor", "4 stroke with cam sensor", "2 stroke", "4 stroke with symmetrical crank (requires VVT input)", "INVALID", "INVALID", "INVALID" displayMode = bits, U32, 492, [0:7], "none", "hd44780", "hd44780 over pcf8574", "INVALID" diff --git a/firmware/tunerstudio/rusefi_frankenso.ini b/firmware/tunerstudio/rusefi_frankenso.ini index 59c1baeaed..8d15b31a31 100644 --- a/firmware/tunerstudio/rusefi_frankenso.ini +++ b/firmware/tunerstudio/rusefi_frankenso.ini @@ -86,7 +86,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Tue Mar 31 16:40:36 EDT 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Tue Mar 31 19:56:13 EDT 2020 pageSize = 20000 page = 1 @@ -191,7 +191,7 @@ page = 1 fanOnTemperature = scalar, F32, 468, "*C", 1, 0, 0, 1000.0, 0 fanOffTemperature = scalar, F32, 472, "*C", 1, 0, 0, 1000.0, 0 vehicleSpeedCoef = scalar, F32, 476, "coef", 1, 0, 0.01, 2000.0, 2 - canNbcType = bits, U32, 480, [0:7], "BMW", "FIAT", "VAG" , "MAZDA RX8" + canNbcType = bits, U32, 480, [0:7], "None", "FIAT", "VAG" , "MAZDA RX8", "BMW" canSleepPeriodMs = scalar, S32, 484, "ms", 1, 0, 0, 1000.0, 2 ambiguousOperationMode = bits, U32, 488, [0:7], "INVALID", "4 stroke without cam sensor", "4 stroke with cam sensor", "2 stroke", "4 stroke with symmetrical crank (requires VVT input)", "INVALID", "INVALID", "INVALID" displayMode = bits, U32, 492, [0:7], "none", "hd44780", "hd44780 over pcf8574", "INVALID" diff --git a/firmware/tunerstudio/rusefi_kinetis.ini b/firmware/tunerstudio/rusefi_kinetis.ini index c6eeb7ad57..fa1269e9df 100644 --- a/firmware/tunerstudio/rusefi_kinetis.ini +++ b/firmware/tunerstudio/rusefi_kinetis.ini @@ -86,7 +86,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/rusefi_config.txt Tue Mar 31 16:40:49 EDT 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/rusefi_config.txt Tue Mar 31 19:56:29 EDT 2020 pageSize = 20000 page = 1 @@ -191,7 +191,7 @@ page = 1 fanOnTemperature = scalar, F32, 468, "*C", 1, 0, 0, 1000.0, 0 fanOffTemperature = scalar, F32, 472, "*C", 1, 0, 0, 1000.0, 0 vehicleSpeedCoef = scalar, F32, 476, "coef", 1, 0, 0.01, 2000.0, 2 - canNbcType = bits, U32, 480, [0:7], "BMW", "FIAT", "VAG" , "MAZDA RX8" + canNbcType = bits, U32, 480, [0:7], "None", "FIAT", "VAG" , "MAZDA RX8", "BMW" canSleepPeriodMs = scalar, S32, 484, "ms", 1, 0, 0, 1000.0, 2 ambiguousOperationMode = bits, U32, 488, [0:7], "INVALID", "4 stroke without cam sensor", "4 stroke with cam sensor", "2 stroke", "4 stroke with symmetrical crank (requires VVT input)", "INVALID", "INVALID", "INVALID" displayMode = bits, U32, 492, [0:7], "none", "hd44780", "hd44780 over pcf8574", "INVALID" diff --git a/firmware/tunerstudio/rusefi_microrusefi.ini b/firmware/tunerstudio/rusefi_microrusefi.ini index 2b5cf85fe1..6438904436 100644 --- a/firmware/tunerstudio/rusefi_microrusefi.ini +++ b/firmware/tunerstudio/rusefi_microrusefi.ini @@ -86,7 +86,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Tue Mar 31 16:40:32 EDT 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Tue Mar 31 19:56:08 EDT 2020 pageSize = 20000 page = 1 @@ -191,7 +191,7 @@ page = 1 fanOnTemperature = scalar, F32, 468, "*C", 1, 0, 0, 1000.0, 0 fanOffTemperature = scalar, F32, 472, "*C", 1, 0, 0, 1000.0, 0 vehicleSpeedCoef = scalar, F32, 476, "coef", 1, 0, 0.01, 2000.0, 2 - canNbcType = bits, U32, 480, [0:7], "BMW", "FIAT", "VAG" , "MAZDA RX8" + canNbcType = bits, U32, 480, [0:7], "None", "FIAT", "VAG" , "MAZDA RX8", "BMW" canSleepPeriodMs = scalar, S32, 484, "ms", 1, 0, 0, 1000.0, 2 ambiguousOperationMode = bits, U32, 488, [0:7], "INVALID", "4 stroke without cam sensor", "4 stroke with cam sensor", "2 stroke", "4 stroke with symmetrical crank (requires VVT input)", "INVALID", "INVALID", "INVALID" displayMode = bits, U32, 492, [0:7], "none", "hd44780", "hd44780 over pcf8574", "INVALID" diff --git a/firmware/tunerstudio/rusefi_prometheus.ini b/firmware/tunerstudio/rusefi_prometheus.ini index a375749bd1..4597bd4459 100644 --- a/firmware/tunerstudio/rusefi_prometheus.ini +++ b/firmware/tunerstudio/rusefi_prometheus.ini @@ -86,7 +86,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Tue Mar 31 16:40:40 EDT 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Tue Mar 31 19:56:19 EDT 2020 pageSize = 20000 page = 1 @@ -191,7 +191,7 @@ page = 1 fanOnTemperature = scalar, F32, 468, "*C", 1, 0, 0, 1000.0, 0 fanOffTemperature = scalar, F32, 472, "*C", 1, 0, 0, 1000.0, 0 vehicleSpeedCoef = scalar, F32, 476, "coef", 1, 0, 0.01, 2000.0, 2 - canNbcType = bits, U32, 480, [0:7], "BMW", "FIAT", "VAG" , "MAZDA RX8" + canNbcType = bits, U32, 480, [0:7], "None", "FIAT", "VAG" , "MAZDA RX8", "BMW" canSleepPeriodMs = scalar, S32, 484, "ms", 1, 0, 0, 1000.0, 2 ambiguousOperationMode = bits, U32, 488, [0:7], "INVALID", "4 stroke without cam sensor", "4 stroke with cam sensor", "2 stroke", "4 stroke with symmetrical crank (requires VVT input)", "INVALID", "INVALID", "INVALID" displayMode = bits, U32, 492, [0:7], "none", "hd44780", "hd44780 over pcf8574", "INVALID" diff --git a/firmware/tunerstudio/rusefi_proteus.ini b/firmware/tunerstudio/rusefi_proteus.ini index 3b2b8596f0..986c96488d 100644 --- a/firmware/tunerstudio/rusefi_proteus.ini +++ b/firmware/tunerstudio/rusefi_proteus.ini @@ -86,7 +86,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Tue Mar 31 16:40:45 EDT 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Tue Mar 31 19:56:24 EDT 2020 pageSize = 20000 page = 1 @@ -191,7 +191,7 @@ page = 1 fanOnTemperature = scalar, F32, 468, "*C", 1, 0, 0, 1000.0, 0 fanOffTemperature = scalar, F32, 472, "*C", 1, 0, 0, 1000.0, 0 vehicleSpeedCoef = scalar, F32, 476, "coef", 1, 0, 0.01, 2000.0, 2 - canNbcType = bits, U32, 480, [0:7], "BMW", "FIAT", "VAG" , "MAZDA RX8" + canNbcType = bits, U32, 480, [0:7], "None", "FIAT", "VAG" , "MAZDA RX8", "BMW" canSleepPeriodMs = scalar, S32, 484, "ms", 1, 0, 0, 1000.0, 2 ambiguousOperationMode = bits, U32, 488, [0:7], "INVALID", "4 stroke without cam sensor", "4 stroke with cam sensor", "2 stroke", "4 stroke with symmetrical crank (requires VVT input)", "INVALID", "INVALID", "INVALID" displayMode = bits, U32, 492, [0:7], "none", "hd44780", "hd44780 over pcf8574", "INVALID"