CAN debug field #26

This commit is contained in:
rusefi 2018-01-29 19:41:39 -05:00
parent fb8a50e22e
commit b8bca64807
12 changed files with 33 additions and 25 deletions

View File

@ -12,6 +12,7 @@ current binaries are always available at http://rusefi.com/build_server/
| Release date | Revision | Details |
| ------------ | --------- | ------- |
| 01/29/2018 | r15514 | improvement #215: CJ125 wideband contoller |
| 01/23/2018 | r15442 | improvement #463: ChibiOS 17 / 4 |
| 01/07/2018 | r14952 | usability & minor bugfix #532 idle defaults are broken |
| 12/17/2017 | r14892 | bugfix #513: console: erase on older chips does not work |

View File

@ -57,8 +57,8 @@
#include "engine.h"
#include "lcd_controller.h"
#include "settings.h"
#include "can_hw.h"
extern fuel_Map3D_t veMap;
extern afr_Map3D_t afrMap;
extern bool main_loop_started;
@ -808,6 +808,11 @@ void updateTunerStudioState(TunerStudioOutputChannels *tsOutputChannels DECLARE_
cjPostState(tsOutputChannels);
break;
#endif /* EFI_CJ125 */
#if EFI_CAN_SUPPORT || defined(__DOXYGEN__)
case DBG_CAN:
postCanState(tsOutputChannels);
break;
#endif /* EFI_CAN_SUPPORT */
case DBG_ADC:
tsOutputChannels->debugFloatField1 = (engineConfiguration->vbattAdcChannel != EFI_ADC_NONE) ? getVoltageDivided("vbatt", engineConfiguration->vbattAdcChannel) : 0.0f;
tsOutputChannels->debugFloatField2 = (engineConfiguration->tpsAdcChannel != EFI_ADC_NONE) ? getVoltageDivided("tps", engineConfiguration->tpsAdcChannel) : 0.0f;

View File

@ -709,8 +709,8 @@ const char *getDebug_mode_e(debug_mode_e value){
switch(value) {
case DBG_CJ125:
return "DBG_CJ125";
case DBG_26:
return "DBG_26";
case DBG_CAN:
return "DBG_CAN";
case DBG_27:
return "DBG_27";
case DBG_28:

View File

@ -755,7 +755,7 @@ typedef enum {
DBG_FSIO_EXPRESSION = 23,
DBG_STATUS = 24,
DBG_CJ125 = 25,
DBG_26 = 26,
DBG_CAN = 26,
DBG_27 = 27,
DBG_28 = 28,
DBG_29 = 29,

View File

@ -54,7 +54,7 @@
#define MAP_ACCEL_TAPER 8
#define BARO_CORR_SIZE 4
#define MAF_DECODING_COUNT 256
#define debug_mode_e_enum "Alternator_PID", "TPS accel enrich", "Warmup PID", "IDLE", "EL accl enrich", "Trigger Counters", "FSIO_ADC", "AUX_PID_1", "VVT PID", "Cranking", "Timing", "Closed-loop fuel corr PID", "VSS", "SD card", "sr5", "Knock", "Trigger Sync", "Electronic Throttle", "Executor", "Bench Test", "Aux Valves", "ADC", "INSTANT_RPM", "FSIO_EXPRESSION", "Status", "CJ125", "mode26", "mode27", "mode28", "mode29"
#define debug_mode_e_enum "Alternator_PID", "TPS accel enrich", "Warmup PID", "IDLE", "EL accl enrich", "Trigger Counters", "FSIO_ADC", "AUX_PID_1", "VVT PID", "Cranking", "Timing", "Closed-loop fuel corr PID", "VSS", "SD card", "sr5", "Knock", "Trigger Sync", "Electronic Throttle", "Executor", "Bench Test", "Aux Valves", "ADC", "INSTANT_RPM", "FSIO_EXPRESSION", "Status", "CJ125", "CAN", "mode27", "mode28", "mode29"
#define vvt_mode_e_enum "First half", "Second half", "2GZ", "Miata NB2", "mode4", "mode5", "mode6", "mode7"
#define mass_storage_e_enum "Auto", "Always", "Never"
#define brain_input_pin_e_enum "INVALID", "PA1", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "PA9", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PA15", "INVALID", "INVALID", "INVALID", "PB3", "PB4", "PB5", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "PC7", "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", "PE5", "PE6", "INVALID", "INVALID", "PE9", "INVALID", "PE11", "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"

View File

@ -16,14 +16,16 @@
#if EFI_PROD_CODE || defined(__DOXYGEN__)
#endif /* EFI_PROD_CODE */
#if EFI_CAN_SUPPORT || defined(__DOXYGEN__)
#include "pin_repository.h"
#include "mpu_util.h"
#include "engine_state.h"
#include "engine_configuration.h"
#include "vehicle_speed.h"
#endif /* EFI_PROD_CODE */
#if EFI_CAN_SUPPORT || defined(__DOXYGEN__)
EXTERN_ENGINE
;
@ -114,8 +116,6 @@ void sendCanMessage() {
sendCanMessage2(8);
}
#if EFI_PROD_CODE || defined(__DOXYGEN__)
static void canDashboardBMW(void) {
//BMW Dashboard
commonTxInit(CAN_BMW_E46_SPEED);
@ -278,7 +278,11 @@ void setCanType(int type) {
canInfo();
}
#endif /* EFI_PROD_CODE */
void postCanState(TunerStudioOutputChannels *tsOutputChannels) {
tsOutputChannels->debugIntField1 = isCanEnabled ? canReadCounter : -1;
tsOutputChannels->debugIntField2 = isCanEnabled ? canWriteOk : -1;
tsOutputChannels->debugIntField3 = isCanEnabled ? canWriteNotOk : -1;
}
void enableFrankensoCan(DECLARE_ENGINE_PARAMETER_SIGNATURE) {
boardConfiguration->canTxPin = GPIOB_6;
@ -305,12 +309,9 @@ void initCan(void) {
firmwareError(CUSTOM_OBD_70, "invalid CAN RX %s", hwPortname(boardConfiguration->canRxPin));
}
#if EFI_PROD_CODE || defined(__DOXYGEN__)
addConsoleAction("caninfo", canInfo);
if (!isCanEnabled)
return;
#endif /* EFI_PROD_CODE */
#if STM32_CAN_USE_CAN2 || defined(__DOXYGEN__)
// CAN1 is required for CAN2
@ -320,13 +321,10 @@ void initCan(void) {
canStart(&CAND1, &canConfig);
#endif /* STM32_CAN_USE_CAN2 */
#if EFI_PROD_CODE || defined(__DOXYGEN__)
chThdCreateStatic(canTreadStack, sizeof(canTreadStack), NORMALPRIO, (tfunc_t) canThread, NULL);
startCanPins();
#endif /* EFI_PROD_CODE */
}
#endif /* EFI_CAN_SUPPORT */

View File

@ -8,6 +8,8 @@
#ifndef CAN_HW_H_
#define CAN_HW_H_
#include "tunerstudio_configuration.h"
// CAN Bus ID for broadcast
/**
* e46 data is from http://forums.bimmerforums.com/forum/showthread.php?1887229
@ -35,5 +37,6 @@ void sendCanMessage();
void setCanType(int type);
void setTxBit(int offset, int index);
void enableFrankensoCan(DECLARE_ENGINE_PARAMETER_SIGNATURE);
void postCanState(TunerStudioOutputChannels *tsOutputChannels);
#endif /* CAN_HW_H_ */

View File

@ -147,7 +147,7 @@ float baseFuel;+Fuel squirt duration while cranking\nA number of curves adjust t
int16_t rpm;+Cranking mode threshold. Special cranking logic controls fuel and spark while RPM is below this threshold\nset cranking_rpm X;"RPM", 1, 0, 0, 3000, 0
end_struct
#define debug_mode_e_enum "Alternator_PID", "TPS accel enrich", "Warmup PID", "IDLE", "EL accl enrich", "Trigger Counters", "FSIO_ADC", "AUX_PID_1", "VVT PID", "Cranking", "Timing", "Closed-loop fuel corr PID", "VSS", "SD card", "sr5", "Knock", "Trigger Sync", "Electronic Throttle", "Executor", "Bench Test", "Aux Valves", "ADC", "INSTANT_RPM", "FSIO_EXPRESSION", "Status", "CJ125", "mode26", "mode27", "mode28", "mode29"
#define debug_mode_e_enum "Alternator_PID", "TPS accel enrich", "Warmup PID", "IDLE", "EL accl enrich", "Trigger Counters", "FSIO_ADC", "AUX_PID_1", "VVT PID", "Cranking", "Timing", "Closed-loop fuel corr PID", "VSS", "SD card", "sr5", "Knock", "Trigger Sync", "Electronic Throttle", "Executor", "Bench Test", "Aux Valves", "ADC", "INSTANT_RPM", "FSIO_EXPRESSION", "Status", "CJ125", "CAN", "mode27", "mode28", "mode29"
custom debug_mode_e 4 bits, U32, @OFFSET@, [0:4], @@debug_mode_e_enum@@
#define vvt_mode_e_enum "First half", "Second half", "2GZ", "Miata NB2", "mode4", "mode5", "mode6", "mode7"

View File

@ -275,5 +275,5 @@ int getRusEfiVersion(void) {
if (initBootloader() != 0)
return 123;
#endif /* EFI_BOOTLOADER_INCLUDE_CODE */
return 20180127;
return 20180129;
}

View File

@ -1,5 +1,5 @@
// This file was generated by Version2Header
// Wed Jan 24 14:21:24 EST 2018
// Mon Jan 29 19:31:59 EST 2018
#ifndef VCS_VERSION
#define VCS_VERSION "15455"
#define VCS_VERSION "15514"
#endif

View File

@ -1,6 +1,6 @@
package com.rusefi.config;
// this file was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Jan 28 21:16:58 EET 2018
// this file was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Mon Jan 29 19:16:26 EST 2018
public class Fields {
public static final int LE_COMMAND_LENGTH = 200;
public static final int BLOCKING_FACTOR = 400;
@ -399,7 +399,7 @@ public class Fields {
public static final int isCJ125Enabled_offset = 984;
public static final int vvtCamSensorUseRise_offset = 984;
public static final int measureMapOnlyInOneCylinder_offset = 984;
public static final int unused_board_984_19_offset = 984;
public static final int stepperForceParkingEveryRestart_offset = 984;
public static final int unused_board_984_20_offset = 984;
public static final int unused_board_984_21_offset = 984;
public static final int unused_board_984_22_offset = 984;
@ -1393,7 +1393,7 @@ public class Fields {
public static final Field ISCJ125ENABLED = Field.create("ISCJ125ENABLED", 984, FieldType.BIT, 16);
public static final Field VVTCAMSENSORUSERISE = Field.create("VVTCAMSENSORUSERISE", 984, FieldType.BIT, 17);
public static final Field MEASUREMAPONLYINONECYLINDER = Field.create("MEASUREMAPONLYINONECYLINDER", 984, FieldType.BIT, 18);
public static final Field UNUSED_BOARD_984_19 = Field.create("UNUSED_BOARD_984_19", 984, FieldType.BIT, 19);
public static final Field STEPPERFORCEPARKINGEVERYRESTART = Field.create("STEPPERFORCEPARKINGEVERYRESTART", 984, FieldType.BIT, 19);
public static final Field UNUSED_BOARD_984_20 = Field.create("UNUSED_BOARD_984_20", 984, FieldType.BIT, 20);
public static final Field UNUSED_BOARD_984_21 = Field.create("UNUSED_BOARD_984_21", 984, FieldType.BIT, 21);
public static final Field UNUSED_BOARD_984_22 = Field.create("UNUSED_BOARD_984_22", 984, FieldType.BIT, 22);
@ -1694,7 +1694,7 @@ public class Fields {
public static final Field TPSDECELENLEANMENTTHRESHOLD = Field.create("TPSDECELENLEANMENTTHRESHOLD", 2208, FieldType.FLOAT);
public static final Field TPSDECELENLEANMENTMULTIPLIER = Field.create("TPSDECELENLEANMENTMULTIPLIER", 2212, FieldType.FLOAT);
public static final Field SLOWADCALPHA = Field.create("SLOWADCALPHA", 2216, FieldType.FLOAT);
public static final String[] debug_mode_e = {"Alternator_PID", "TPS accel enrich", "Warmup PID", "IDLE", "EL accl enrich", "Trigger Counters", "FSIO_ADC", "AUX_PID_1", "VVT PID", "Cranking", "Timing", "Closed-loop fuel corr PID", "VSS", "SD card", "sr5", "Knock", "Trigger Sync", "Electronic Throttle", "Executor", "Bench Test", "Aux Valves", "ADC", "INSTANT_RPM", "FSIO_EXPRESSION", "Status", "CJ125", "mode26", "mode27", "mode28", "mode29"};
public static final String[] debug_mode_e = {"Alternator_PID", "TPS accel enrich", "Warmup PID", "IDLE", "EL accl enrich", "Trigger Counters", "FSIO_ADC", "AUX_PID_1", "VVT PID", "Cranking", "Timing", "Closed-loop fuel corr PID", "VSS", "SD card", "sr5", "Knock", "Trigger Sync", "Electronic Throttle", "Executor", "Bench Test", "Aux Valves", "ADC", "INSTANT_RPM", "FSIO_EXPRESSION", "Status", "CJ125", "CAN", "mode27", "mode28", "mode29"};
public static final Field DEBUGMODE = Field.create("DEBUGMODE", 2220, FieldType.INT, debug_mode_e);
public static final Field AUXVALVES1 = Field.create("AUXVALVES1", 2224, FieldType.INT, brain_pin_e);
public static final Field AUXVALVES2 = Field.create("AUXVALVES2", 2228, FieldType.INT, brain_pin_e);

View File

@ -60,6 +60,7 @@
#define EFI_MAIN_RELAY_CONTROL FALSE
#define EFI_HIP_9011 FALSE
#define EFI_CJ125 FALSE
#define EFI_CAN_SUPPORT FALSE
#define EFI_ELECTRONIC_THROTTLE_BODY FALSE
#define EFI_AUX_PID FALSE
#define EFI_HAS_RESET FALSE