diff --git a/firmware/config/engines/dodge_neon.cpp b/firmware/config/engines/dodge_neon.cpp index 8fa9fc8da6..fd42b19611 100644 --- a/firmware/config/engines/dodge_neon.cpp +++ b/firmware/config/engines/dodge_neon.cpp @@ -488,7 +488,7 @@ void setDodgeNeonNGCEngineConfiguration(DECLARE_ENGINE_PARAMETER_SIGNATURE) { engineConfiguration->alternatorControl.pFactor = 20; engineConfiguration->alternatorControl.iFactor = 0.2; engineConfiguration->alternatorControl.dFactor = 0.1; - engineConfiguration->alternatorDT = 10; + engineConfiguration->alternatorControl.period = 10; // enableFrankensoCan(); engineConfiguration->canWriteEnabled = true; diff --git a/firmware/config/engines/mazda_miata_vvt.cpp b/firmware/config/engines/mazda_miata_vvt.cpp index db20b27ccc..9518400512 100644 --- a/firmware/config/engines/mazda_miata_vvt.cpp +++ b/firmware/config/engines/mazda_miata_vvt.cpp @@ -251,14 +251,14 @@ void setMazdaMiata2003EngineConfiguration(DECLARE_ENGINE_PARAMETER_SIGNATURE) { engineConfiguration->alternatorControl.pFactor = 14; engineConfiguration->alternatorControl.iFactor = 0.1; engineConfiguration->alternatorControl.dFactor = 0; - engineConfiguration->alternatorDT = 10; + engineConfiguration->alternatorControl.period = 10; engineConfiguration->auxPid[0].pFactor = 2; engineConfiguration->auxPid[0].iFactor = 0.005; engineConfiguration->auxPid[0].dFactor = 0; engineConfiguration->auxPid[0].offset = 33; - engineConfiguration->aux1PidMin = 24; - engineConfiguration->aux1PidMax = 44; + engineConfiguration->auxPid[0].minValue = 24; + engineConfiguration->auxPid[0].maxValue = 44; // set idle_position 35 boardConfiguration->manIdlePosition = 35; diff --git a/firmware/controllers/algo/aux_pid.cpp b/firmware/controllers/algo/aux_pid.cpp index bac177d291..72179fcd87 100644 --- a/firmware/controllers/algo/aux_pid.cpp +++ b/firmware/controllers/algo/aux_pid.cpp @@ -54,16 +54,13 @@ static bool isEnabled(int index) { static void pidReset(void) { auxPid.reset(); - auxPid.minResult = engineConfiguration->aux1PidMin; - auxPid.maxResult = engineConfiguration->aux1PidMax; } static msg_t auxPidThread(int param) { UNUSED(param); chRegSetThreadName("AuxPidController"); while (true) { - int dt = maxI(10, engineConfiguration->auxPidDT[0]); - chThdSleepMilliseconds(dt); + auxPid.sleep(); if (parametersVersion.isOld()) { pidReset(); diff --git a/firmware/controllers/algo/engine_configuration.cpp b/firmware/controllers/algo/engine_configuration.cpp index f0774054b3..23df107b2a 100644 --- a/firmware/controllers/algo/engine_configuration.cpp +++ b/firmware/controllers/algo/engine_configuration.cpp @@ -542,14 +542,14 @@ void setDefaultConfiguration(DECLARE_ENGINE_PARAMETER_SIGNATURE) { engineConfiguration->tachPulseDuractionMs = 4; engineConfiguration->tachPulseTriggerIndex = 4; - engineConfiguration->aux1PidMin = 10; - engineConfiguration->aux1PidMax = 90; + engineConfiguration->auxPid[0].minValue = 10; + engineConfiguration->auxPid[0].maxValue = 90; - engineConfiguration->etbPidMin = 0; - engineConfiguration->etbPidMax = 99; + engineConfiguration->etb.minValue = 0; + engineConfiguration->etb.maxValue = 99; - boardConfiguration->alternatorPidMin = 10; - boardConfiguration->alternatorPidMax = 90; + engineConfiguration->alternatorControl.minValue = 10; + engineConfiguration->alternatorControl.maxValue = 90; setTableBin2(engineConfiguration->cltTimingBins, CLT_TIMING_CURVE_SIZE, -40, 120, 1); setTableBin2(engineConfiguration->cltTimingExtra, CLT_TIMING_CURVE_SIZE, 0, 0, 1); @@ -658,14 +658,14 @@ void setDefaultConfiguration(DECLARE_ENGINE_PARAMETER_SIGNATURE) { engineConfiguration->fuelClosedLoopCltThreshold = 70; engineConfiguration->fuelClosedLoopRpmThreshold = 900; engineConfiguration->fuelClosedLoopTpsThreshold = 80; - engineConfiguration->fuelClosedLoopAfrLowThreshold = 10.3; + boardConfiguration->fuelClosedLoopAfrLowThreshold = 10.3; engineConfiguration->fuelClosedLoopAfrHighThreshold = 19.8; engineConfiguration->fuelClosedLoopPid.pFactor = -0.1; engineConfiguration->cranking.baseFuel = 5; - engineConfiguration->idleValvePidMin = 5; - engineConfiguration->idleValvePidMax = 95; + engineConfiguration->idleRpmPid.minValue = 5; + engineConfiguration->idleRpmPid.maxValue = 95; boardConfiguration->idlePidDeactivationTpsThreshold = 2; engineConfiguration->analogInputDividerCoefficient = 2; diff --git a/firmware/controllers/algo/engine_configuration_generated_structures.h b/firmware/controllers/algo/engine_configuration_generated_structures.h index 56689ca6da..ceed1b28cf 100644 --- a/firmware/controllers/algo/engine_configuration_generated_structures.h +++ b/firmware/controllers/algo/engine_configuration_generated_structures.h @@ -1,4 +1,4 @@ -// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun May 28 13:44:34 EDT 2017 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun May 28 22:30:58 EDT 2017 // begin #ifndef ENGINE_CONFIGURATION_GENERATED_H_ #define ENGINE_CONFIGURATION_GENERATED_H_ @@ -20,8 +20,21 @@ typedef struct { * Linear addition to PID logic * offset 12 */ - float offset; - /** total size 16*/ + int16_t offset; + /** + * PID dTime + * offset 14 + */ + int16_t period; + /** + * offset 16 + */ + int16_t minValue; + /** + * offset 18 + */ + int16_t maxValue; + /** total size 20*/ } pid_s; typedef struct { @@ -471,7 +484,7 @@ typedef struct { /** * offset 272 */ - int etbDT; + float fuelClosedLoopAfrLowThreshold; /** * offset 276 */ @@ -644,11 +657,7 @@ typedef struct { /** * offset 576 */ - int16_t alternatorPidMin; - /** - * offset 578 - */ - int16_t alternatorPidMax; + int unused1; /** * offset 580 */ @@ -1455,19 +1464,17 @@ typedef struct { */ float suckedOffCoef; /** - * TODO make suckedOffCoef an array by RPM * offset 1828 */ - float unused71[7]; + pid_s alternatorControl; /** - * offset 1856 + * offset 1848 */ - float addedToWallCoef; + pid_s etb; /** - * TODO make addedToWallCoef an array by RPM - * offset 1860 + * offset 1868 */ - float unused72[7]; + pid_s warmupAfrPid; /** * kPa value which is too low to be true * offset 1888 @@ -1487,14 +1494,10 @@ typedef struct { * offset 1900 */ pid_s idleRpmPid; - /** - * offset 1916 - */ - int idleDT; /** * offset 1920 */ - int unusedIdleControl; + float addedToWallCoef; /** * blue LED on discovery by default * offset 1924 @@ -1535,7 +1538,7 @@ typedef struct { /** * offset 2012 */ - pid_s etb; + float unusedetb[4]; /** * CLT-based target RPM for automatic idle controller * offset 2028 @@ -1555,14 +1558,9 @@ typedef struct { */ float alternatorOffAboveTps; /** - * PID dTime * offset 2164 */ - int alternatorDT; - /** - * offset 2168 - */ - pid_s alternatorControl; + float unusedalternatorControl[5]; /** * offset 2184 */ @@ -1634,7 +1632,7 @@ typedef struct { /** * offset 2248 */ - pid_s warmupAfrPid; + float unusedwarmupAfrPid[4]; /** * CLT-based target AFR for PID-based control * offset 2264 @@ -1701,7 +1699,7 @@ typedef struct { /** * offset 2412 */ - pid_dt auxPidDT[AUX_PID_COUNT]; + int unused4[4]; /** * IAC cranking position * offset 2428 @@ -1750,7 +1748,7 @@ typedef struct { /** * offset 2488 */ - pid_s auxPid[AUX_PID_COUNT]; + float unusedauxPid[16]; /** * set vvt_mode X * offset 2552 @@ -1825,10 +1823,6 @@ typedef struct { * offset 2740 */ pid_s fuelClosedLoopPid; - /** - * offset 2756 - */ - float fuelClosedLoopAfrLowThreshold; /** * offset 2760 */ @@ -1854,19 +1848,11 @@ typedef struct { /** * offset 2824 */ - int16_t aux1PidMin; - /** - * offset 2826 - */ - int16_t aux1PidMax; + pin_input_mode_e brakePedalPinMode; /** * offset 2828 */ - int16_t etbPidMin; - /** - * offset 2830 - */ - int16_t etbPidMax; + float idlePidActivationTime; /** * offset 2832 */ @@ -1902,23 +1888,11 @@ typedef struct { /** * offset 2864 */ - pin_input_mode_e brakePedalPinMode; + pid_s auxPid[AUX_PID_COUNT]; /** - * offset 2868 + * offset 2944 */ - int16_t idleValvePidMin; - /** - * offset 2870 - */ - int16_t idleValvePidMax; - /** - * offset 2872 - */ - float idlePidActivationTime; - /** - * offset 2876 - */ - int unused[43]; + int unusedEnd[26]; /** total size 3048*/ } engine_configuration_s; @@ -2133,4 +2107,4 @@ typedef struct { #endif // end -// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun May 28 13:44:34 EDT 2017 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun May 28 22:30:58 EDT 2017 diff --git a/firmware/controllers/algo/rusefi_generated.h b/firmware/controllers/algo/rusefi_generated.h index 3fdcaaacc2..40c5448ba2 100644 --- a/firmware/controllers/algo/rusefi_generated.h +++ b/firmware/controllers/algo/rusefi_generated.h @@ -491,8 +491,8 @@ #define fuelLevelFullTankVoltage_offset_hex 378 #define afr_type_offset 892 #define afr_type_offset_hex 37c -#define etbDT_offset 896 -#define etbDT_offset_hex 380 +#define fuelClosedLoopAfrLowThreshold_offset 896 +#define fuelClosedLoopAfrLowThreshold_offset_hex 380 #define hip9011CsPinMode_offset 900 #define hip9011CsPinMode_offset_hex 384 #define tachOutputPin_offset 904 @@ -677,10 +677,8 @@ #define gpioPinModes16_offset_hex 4a8 #define consoleUartDevice_offset 1196 #define consoleUartDevice_offset_hex 4ac -#define alternatorPidMin_offset 1200 -#define alternatorPidMin_offset_hex 4b0 -#define alternatorPidMax_offset 1202 -#define alternatorPidMax_offset_hex 4b2 +#define unused1_offset 1200 +#define unused1_offset_hex 4b0 #define idlePidDeactivationTpsThreshold_offset 1204 #define idlePidDeactivationTpsThreshold_offset_hex 4b4 #define unusedHere_offset 1206 @@ -1011,12 +1009,54 @@ #define tachPulseTriggerIndex_offset_hex 71c #define suckedOffCoef_offset 1824 #define suckedOffCoef_offset_hex 720 -#define unused71_offset 1828 -#define unused71_offset_hex 724 -#define addedToWallCoef_offset 1856 -#define addedToWallCoef_offset_hex 740 -#define unused72_offset 1860 -#define unused72_offset_hex 744 +#define alternatorControl_offset 1828 +#define alternatorControl_offset_hex 724 +#define alternatorControl_pFactor_offset 1828 +#define alternatorControl_pFactor_offset_hex 724 +#define alternatorControl_iFactor_offset 1832 +#define alternatorControl_iFactor_offset_hex 728 +#define alternatorControl_dFactor_offset 1836 +#define alternatorControl_dFactor_offset_hex 72c +#define alternatorControl_offset_offset 1840 +#define alternatorControl_offset_offset_hex 730 +#define alternatorControl_period_offset 1842 +#define alternatorControl_period_offset_hex 732 +#define alternatorControl_minValue_offset 1844 +#define alternatorControl_minValue_offset_hex 734 +#define alternatorControl_maxValue_offset 1846 +#define alternatorControl_maxValue_offset_hex 736 +#define etb_offset 1848 +#define etb_offset_hex 738 +#define etb_pFactor_offset 1848 +#define etb_pFactor_offset_hex 738 +#define etb_iFactor_offset 1852 +#define etb_iFactor_offset_hex 73c +#define etb_dFactor_offset 1856 +#define etb_dFactor_offset_hex 740 +#define etb_offset_offset 1860 +#define etb_offset_offset_hex 744 +#define etb_period_offset 1862 +#define etb_period_offset_hex 746 +#define etb_minValue_offset 1864 +#define etb_minValue_offset_hex 748 +#define etb_maxValue_offset 1866 +#define etb_maxValue_offset_hex 74a +#define warmupAfrPid_offset 1868 +#define warmupAfrPid_offset_hex 74c +#define warmupAfrPid_pFactor_offset 1868 +#define warmupAfrPid_pFactor_offset_hex 74c +#define warmupAfrPid_iFactor_offset 1872 +#define warmupAfrPid_iFactor_offset_hex 750 +#define warmupAfrPid_dFactor_offset 1876 +#define warmupAfrPid_dFactor_offset_hex 754 +#define warmupAfrPid_offset_offset 1880 +#define warmupAfrPid_offset_offset_hex 758 +#define warmupAfrPid_period_offset 1882 +#define warmupAfrPid_period_offset_hex 75a +#define warmupAfrPid_minValue_offset 1884 +#define warmupAfrPid_minValue_offset_hex 75c +#define warmupAfrPid_maxValue_offset 1886 +#define warmupAfrPid_maxValue_offset_hex 75e #define mapErrorDetectionTooLow_offset 1888 #define mapErrorDetectionTooLow_offset_hex 760 #define mapErrorDetectionTooHigh_offset 1892 @@ -1033,10 +1073,14 @@ #define idleRpmPid_dFactor_offset_hex 774 #define idleRpmPid_offset_offset 1912 #define idleRpmPid_offset_offset_hex 778 -#define idleDT_offset 1916 -#define idleDT_offset_hex 77c -#define unusedIdleControl_offset 1920 -#define unusedIdleControl_offset_hex 780 +#define idleRpmPid_period_offset 1914 +#define idleRpmPid_period_offset_hex 77a +#define idleRpmPid_minValue_offset 1916 +#define idleRpmPid_minValue_offset_hex 77c +#define idleRpmPid_maxValue_offset 1918 +#define idleRpmPid_maxValue_offset_hex 77e +#define addedToWallCoef_offset 1920 +#define addedToWallCoef_offset_hex 780 #define communicationPin_offset 1924 #define communicationPin_offset_hex 784 #define runningPin_offset 1928 @@ -1053,16 +1097,8 @@ #define knockNoise_offset_hex 79c #define knockNoiseRpmBins_offset 1980 #define knockNoiseRpmBins_offset_hex 7bc -#define etb_offset 2012 -#define etb_offset_hex 7dc -#define etb_pFactor_offset 2012 -#define etb_pFactor_offset_hex 7dc -#define etb_iFactor_offset 2016 -#define etb_iFactor_offset_hex 7e0 -#define etb_dFactor_offset 2020 -#define etb_dFactor_offset_hex 7e4 -#define etb_offset_offset 2024 -#define etb_offset_offset_hex 7e8 +#define unusedetb_offset 2012 +#define unusedetb_offset_hex 7dc #define cltIdleRpmBins_offset 2028 #define cltIdleRpmBins_offset_hex 7ec #define cltIdleRpm_offset 2092 @@ -1071,18 +1107,8 @@ #define targetVBatt_offset_hex 86c #define alternatorOffAboveTps_offset 2160 #define alternatorOffAboveTps_offset_hex 870 -#define alternatorDT_offset 2164 -#define alternatorDT_offset_hex 874 -#define alternatorControl_offset 2168 -#define alternatorControl_offset_hex 878 -#define alternatorControl_pFactor_offset 2168 -#define alternatorControl_pFactor_offset_hex 878 -#define alternatorControl_iFactor_offset 2172 -#define alternatorControl_iFactor_offset_hex 87c -#define alternatorControl_dFactor_offset 2176 -#define alternatorControl_dFactor_offset_hex 880 -#define alternatorControl_offset_offset 2180 -#define alternatorControl_offset_offset_hex 884 +#define unusedalternatorControl_offset 2164 +#define unusedalternatorControl_offset_hex 874 #define tpsAccelLength_offset 2184 #define tpsAccelLength_offset_hex 888 #define tpsAccelEnrichmentThreshold_offset 2188 @@ -1115,16 +1141,8 @@ #define slowAdcAlpha_offset_hex 8c0 #define debugMode_offset 2244 #define debugMode_offset_hex 8c4 -#define warmupAfrPid_offset 2248 -#define warmupAfrPid_offset_hex 8c8 -#define warmupAfrPid_pFactor_offset 2248 -#define warmupAfrPid_pFactor_offset_hex 8c8 -#define warmupAfrPid_iFactor_offset 2252 -#define warmupAfrPid_iFactor_offset_hex 8cc -#define warmupAfrPid_dFactor_offset 2256 -#define warmupAfrPid_dFactor_offset_hex 8d0 -#define warmupAfrPid_offset_offset 2260 -#define warmupAfrPid_offset_offset_hex 8d4 +#define unusedwarmupAfrPid_offset 2248 +#define unusedwarmupAfrPid_offset_hex 8c8 #define warmupTargetAfrBins_offset 2264 #define warmupTargetAfrBins_offset_hex 8d8 #define warmupTargetAfr_offset 2280 @@ -1159,14 +1177,8 @@ #define egoValueShift_offset_hex 964 #define camInput_offset 2408 #define camInput_offset_hex 968 -#define auxPidDT1_offset 2412 -#define auxPidDT1_offset_hex 96c -#define auxPidDT2_offset 2416 -#define auxPidDT2_offset_hex 970 -#define auxPidDT3_offset 2420 -#define auxPidDT3_offset_hex 974 -#define auxPidDT4_offset 2424 -#define auxPidDT4_offset_hex 978 +#define unused4_offset 2412 +#define unused4_offset_hex 96c #define crankingIACposition_offset 2428 #define crankingIACposition_offset_hex 97c #define tChargeMinRpmMinTps_offset 2432 @@ -1201,46 +1213,8 @@ #define cj125SpiDevice_offset_hex 9b0 #define cj125CsPinMode_offset 2484 #define cj125CsPinMode_offset_hex 9b4 -#define auxPid1_offset 2488 -#define auxPid1_offset_hex 9b8 -#define auxPid1_pFactor_offset 2488 -#define auxPid1_pFactor_offset_hex 9b8 -#define auxPid1_iFactor_offset 2492 -#define auxPid1_iFactor_offset_hex 9bc -#define auxPid1_dFactor_offset 2496 -#define auxPid1_dFactor_offset_hex 9c0 -#define auxPid1_offset_offset 2500 -#define auxPid1_offset_offset_hex 9c4 -#define auxPid2_offset 2504 -#define auxPid2_offset_hex 9c8 -#define auxPid2_pFactor_offset 2504 -#define auxPid2_pFactor_offset_hex 9c8 -#define auxPid2_iFactor_offset 2508 -#define auxPid2_iFactor_offset_hex 9cc -#define auxPid2_dFactor_offset 2512 -#define auxPid2_dFactor_offset_hex 9d0 -#define auxPid2_offset_offset 2516 -#define auxPid2_offset_offset_hex 9d4 -#define auxPid3_offset 2520 -#define auxPid3_offset_hex 9d8 -#define auxPid3_pFactor_offset 2520 -#define auxPid3_pFactor_offset_hex 9d8 -#define auxPid3_iFactor_offset 2524 -#define auxPid3_iFactor_offset_hex 9dc -#define auxPid3_dFactor_offset 2528 -#define auxPid3_dFactor_offset_hex 9e0 -#define auxPid3_offset_offset 2532 -#define auxPid3_offset_offset_hex 9e4 -#define auxPid4_offset 2536 -#define auxPid4_offset_hex 9e8 -#define auxPid4_pFactor_offset 2536 -#define auxPid4_pFactor_offset_hex 9e8 -#define auxPid4_iFactor_offset 2540 -#define auxPid4_iFactor_offset_hex 9ec -#define auxPid4_dFactor_offset 2544 -#define auxPid4_dFactor_offset_hex 9f0 -#define auxPid4_offset_offset 2548 -#define auxPid4_offset_offset_hex 9f4 +#define unusedauxPid_offset 2488 +#define unusedauxPid_offset_hex 9b8 #define vvtMode_offset 2552 #define vvtMode_offset_hex 9f8 #define biQuad_offset 2556 @@ -1331,8 +1305,12 @@ #define fuelClosedLoopPid_dFactor_offset_hex abc #define fuelClosedLoopPid_offset_offset 2752 #define fuelClosedLoopPid_offset_offset_hex ac0 -#define fuelClosedLoopAfrLowThreshold_offset 2756 -#define fuelClosedLoopAfrLowThreshold_offset_hex ac4 +#define fuelClosedLoopPid_period_offset 2754 +#define fuelClosedLoopPid_period_offset_hex ac2 +#define fuelClosedLoopPid_minValue_offset 2756 +#define fuelClosedLoopPid_minValue_offset_hex ac4 +#define fuelClosedLoopPid_maxValue_offset 2758 +#define fuelClosedLoopPid_maxValue_offset_hex ac6 #define fuelClosedLoopAfrHighThreshold_offset 2760 #define fuelClosedLoopAfrHighThreshold_offset_hex ac8 #define stepperEnablePinMode_offset 2764 @@ -1365,14 +1343,10 @@ #define timing_offset_cylinder11_offset_hex b00 #define timing_offset_cylinder12_offset 2820 #define timing_offset_cylinder12_offset_hex b04 -#define aux1PidMin_offset 2824 -#define aux1PidMin_offset_hex b08 -#define aux1PidMax_offset 2826 -#define aux1PidMax_offset_hex b0a -#define etbPidMin_offset 2828 -#define etbPidMin_offset_hex b0c -#define etbPidMax_offset 2830 -#define etbPidMax_offset_hex b0e +#define brakePedalPinMode_offset 2824 +#define brakePedalPinMode_offset_hex b08 +#define idlePidActivationTime_offset 2828 +#define idlePidActivationTime_offset_hex b0c #define sdCardSpiDevice_offset 2832 #define sdCardSpiDevice_offset_hex b10 #define spi3SckMode_offset 2836 @@ -1389,16 +1363,72 @@ #define spi1MisoMode_offset_hex b28 #define brakePedalPin_offset 2860 #define brakePedalPin_offset_hex b2c -#define brakePedalPinMode_offset 2864 -#define brakePedalPinMode_offset_hex b30 -#define idleValvePidMin_offset 2868 -#define idleValvePidMin_offset_hex b34 -#define idleValvePidMax_offset 2870 -#define idleValvePidMax_offset_hex b36 -#define idlePidActivationTime_offset 2872 -#define idlePidActivationTime_offset_hex b38 -#define unused_offset 2876 -#define unused_offset_hex b3c +#define auxPid1_offset 2864 +#define auxPid1_offset_hex b30 +#define auxPid1_pFactor_offset 2864 +#define auxPid1_pFactor_offset_hex b30 +#define auxPid1_iFactor_offset 2868 +#define auxPid1_iFactor_offset_hex b34 +#define auxPid1_dFactor_offset 2872 +#define auxPid1_dFactor_offset_hex b38 +#define auxPid1_offset_offset 2876 +#define auxPid1_offset_offset_hex b3c +#define auxPid1_period_offset 2878 +#define auxPid1_period_offset_hex b3e +#define auxPid1_minValue_offset 2880 +#define auxPid1_minValue_offset_hex b40 +#define auxPid1_maxValue_offset 2882 +#define auxPid1_maxValue_offset_hex b42 +#define auxPid2_offset 2884 +#define auxPid2_offset_hex b44 +#define auxPid2_pFactor_offset 2884 +#define auxPid2_pFactor_offset_hex b44 +#define auxPid2_iFactor_offset 2888 +#define auxPid2_iFactor_offset_hex b48 +#define auxPid2_dFactor_offset 2892 +#define auxPid2_dFactor_offset_hex b4c +#define auxPid2_offset_offset 2896 +#define auxPid2_offset_offset_hex b50 +#define auxPid2_period_offset 2898 +#define auxPid2_period_offset_hex b52 +#define auxPid2_minValue_offset 2900 +#define auxPid2_minValue_offset_hex b54 +#define auxPid2_maxValue_offset 2902 +#define auxPid2_maxValue_offset_hex b56 +#define auxPid3_offset 2904 +#define auxPid3_offset_hex b58 +#define auxPid3_pFactor_offset 2904 +#define auxPid3_pFactor_offset_hex b58 +#define auxPid3_iFactor_offset 2908 +#define auxPid3_iFactor_offset_hex b5c +#define auxPid3_dFactor_offset 2912 +#define auxPid3_dFactor_offset_hex b60 +#define auxPid3_offset_offset 2916 +#define auxPid3_offset_offset_hex b64 +#define auxPid3_period_offset 2918 +#define auxPid3_period_offset_hex b66 +#define auxPid3_minValue_offset 2920 +#define auxPid3_minValue_offset_hex b68 +#define auxPid3_maxValue_offset 2922 +#define auxPid3_maxValue_offset_hex b6a +#define auxPid4_offset 2924 +#define auxPid4_offset_hex b6c +#define auxPid4_pFactor_offset 2924 +#define auxPid4_pFactor_offset_hex b6c +#define auxPid4_iFactor_offset 2928 +#define auxPid4_iFactor_offset_hex b70 +#define auxPid4_dFactor_offset 2932 +#define auxPid4_dFactor_offset_hex b74 +#define auxPid4_offset_offset 2936 +#define auxPid4_offset_offset_hex b78 +#define auxPid4_period_offset 2938 +#define auxPid4_period_offset_hex b7a +#define auxPid4_minValue_offset 2940 +#define auxPid4_minValue_offset_hex b7c +#define auxPid4_maxValue_offset 2942 +#define auxPid4_maxValue_offset_hex b7e +#define unusedEnd_offset 2944 +#define unusedEnd_offset_hex b80 #define le_formulas1_offset 3048 #define le_formulas1_offset_hex be8 #define le_formulas2_offset 3248 diff --git a/firmware/controllers/alternatorController.cpp b/firmware/controllers/alternatorController.cpp index c501699a20..d46d19cca8 100644 --- a/firmware/controllers/alternatorController.cpp +++ b/firmware/controllers/alternatorController.cpp @@ -44,8 +44,6 @@ static bool shouldResetPid = false; static void pidReset(void) { altPid.reset(); - altPid.minResult = engineConfiguration->bc.alternatorPidMin; - altPid.maxResult = engineConfiguration->bc.alternatorPidMax; } static msg_t AltCtrlThread(int param) { @@ -60,8 +58,7 @@ static msg_t AltCtrlThread(int param) { } #endif - int dt = maxI(10, engineConfiguration->alternatorDT); - chThdSleepMilliseconds(dt); + altPid.sleep(); #if ! EFI_UNIT_TEST || defined(__DOXYGEN__) if (engineConfiguration->debugMode == DBG_ALTERNATOR_PID) { @@ -120,7 +117,7 @@ static msg_t AltCtrlThread(int param) { void showAltInfo(void) { scheduleMsg(logger, "alt=%s @%s t=%dms", boolToString(engineConfiguration->isAlternatorControlEnabled), hwPortname(boardConfiguration->alternatorControlPin), - engineConfiguration->alternatorDT); + engineConfiguration->alternatorControl.period); scheduleMsg(logger, "p=%f/i=%f/d=%f offset=%f", engineConfiguration->alternatorControl.pFactor, 0, 0, engineConfiguration->alternatorControl.offset); // todo: i & d scheduleMsg(logger, "vbatt=%f/duty=%f/target=%f", getVBatt(PASS_ENGINE_PARAMETER_SIGNATURE), currentAltDuty, @@ -155,13 +152,11 @@ void setDefaultAlternatorParameters(void) { engineConfiguration->alternatorControl.offset = 0; engineConfiguration->alternatorControl.pFactor = 30; - engineConfiguration->alternatorDT = 100; + engineConfiguration->alternatorControl.period = 100; } void onConfigurationChangeAlternatorCallback(engine_configuration_s *previousConfiguration) { - shouldResetPid = !altPid.isSame(&previousConfiguration->alternatorControl) || - engineConfiguration->bc.alternatorPidMin != previousConfiguration->bc.alternatorPidMin || - engineConfiguration->bc.alternatorPidMax != previousConfiguration->bc.alternatorPidMax; + shouldResetPid = !altPid.isSame(&previousConfiguration->alternatorControl); } void initAlternatorCtrl(Logging *sharedLogger) { diff --git a/firmware/controllers/electronic_throttle.cpp b/firmware/controllers/electronic_throttle.cpp index 43928cb60f..91e81bcd40 100644 --- a/firmware/controllers/electronic_throttle.cpp +++ b/firmware/controllers/electronic_throttle.cpp @@ -111,7 +111,7 @@ static msg_t etbThread(void *arg) { pid.postState(&tsOutputChannels); } if (engineConfiguration->isVerboseETB) { - pid.showPidStatus(&logger, "ETB", boardConfiguration->etbDT); + pid.showPidStatus(&logger, "ETB", engineConfiguration->etb.period); } @@ -121,7 +121,7 @@ static msg_t etbThread(void *arg) { // } // this thread is activated 10 times per second - chThdSleepMilliseconds(boardConfiguration->etbDT); + pid.sleep(); } #if defined __GNUC__ return -1; @@ -150,7 +150,7 @@ static void showEthInfo(void) { scheduleMsg(&logger, "etb P=%f I=%f D=%f dT=%d", engineConfiguration->etb.pFactor, engineConfiguration->etb.iFactor, 0.0, - boardConfiguration->etbDT); + engineConfiguration->etb.period); } static void apply(void) { @@ -173,7 +173,7 @@ void setDefaultEtbParameters(void) { engineConfiguration->pedalPositionMax = 6; engineConfiguration->etb.pFactor = 1; engineConfiguration->etb.iFactor = 0.5; - boardConfiguration->etbDT = 100; + engineConfiguration->etb.period = 100; } void stopETBPins(void) { @@ -185,8 +185,6 @@ void stopETBPins(void) { void onConfigurationChangeElectronicThrottleCallback(engine_configuration_s *previousConfiguration) { shouldResetPid = !pid.isSame(&previousConfiguration->etb); - pid.minResult = engineConfiguration->etbPidMin; - pid.maxResult = engineConfiguration->etbPidMax; } void startETBPins(void) { diff --git a/firmware/controllers/idle_thread.cpp b/firmware/controllers/idle_thread.cpp index 5ab8139d83..6e1de475ed 100644 --- a/firmware/controllers/idle_thread.cpp +++ b/firmware/controllers/idle_thread.cpp @@ -83,7 +83,7 @@ static void showIdleInfo(void) { if (engineConfiguration->idleMode == IM_AUTO) { - idlePid.showPidStatus(logger, "idle", engineConfiguration->idleDT); + idlePid.showPidStatus(logger, "idle", engineConfiguration->idleRpmPid.period); } } @@ -166,7 +166,7 @@ static float autoIdle(float cltCorrection) { adjustedTargetRpm = engineConfiguration->targetIdleRpm * cltCorrection; - percent_t newValue = idlePid.getValue(adjustedTargetRpm, getRpmE(engine), engineConfiguration->idleDT); + percent_t newValue = idlePid.getValue(adjustedTargetRpm, getRpmE(engine), engineConfiguration->idleRpmPid.period); return newValue; } @@ -182,8 +182,7 @@ static msg_t ivThread(int param) { */ while (true) { - // todo: in auto mode, speel should be taken from idleDTe - chThdSleepMilliseconds(boardConfiguration->idleThreadPeriod); + idlePid.sleep(); // in both manual and auto mode same period is used if (shouldResetPid) { idlePid.reset(); @@ -239,7 +238,7 @@ static msg_t ivThread(int param) { } if (engineConfiguration->isVerboseIAC && engineConfiguration->idleMode == IM_AUTO) { - idlePid.showPidStatus(logger, "idle", engineConfiguration->idleDT); + idlePid.showPidStatus(logger, "idle", engineConfiguration->idleRpmPid.period); } @@ -286,15 +285,13 @@ void setIdleDFactor(float value) { } void setIdleDT(int value) { - engineConfiguration->idleDT = value; + engineConfiguration->idleRpmPid.period = value; apply(); showIdleInfo(); } void onConfigurationChangeIdleCallback(engine_configuration_s *previousConfiguration) { shouldResetPid = !idlePid.isSame(&previousConfiguration->idleRpmPid); - idlePid.minResult = engineConfiguration->idleValvePidMin; - idlePid.maxResult = engineConfiguration->idleValvePidMax; } void startIdleBench(void) { @@ -307,7 +304,7 @@ void setDefaultIdleParameters(void) { engineConfiguration->idleRpmPid.pFactor = 0.1f; engineConfiguration->idleRpmPid.iFactor = 0.05f; engineConfiguration->idleRpmPid.dFactor = 0.0f; - engineConfiguration->idleDT = 10; + engineConfiguration->idleRpmPid.period = 10; } static void applyIdleSolenoidPinState(PwmConfig *state, int stateIndex) { diff --git a/firmware/controllers/math/pid.cpp b/firmware/controllers/math/pid.cpp index 101cef2a90..61f2f46497 100644 --- a/firmware/controllers/math/pid.cpp +++ b/firmware/controllers/math/pid.cpp @@ -29,7 +29,7 @@ void Pid::init(pid_s *pid, float minResult, float maxResult) { } bool Pid::isSame(pid_s *pid) { - return this->pid->dFactor == pid->dFactor && this->pid->iFactor == pid->iFactor && + return this->pid->dFactor == pid->dFactor && this->pid->iFactor == pid->iFactor && this->pid->offset == pid->offset && this->pid->pFactor == pid->pFactor; } @@ -119,8 +119,10 @@ void Pid::postState(TunerStudioOutputChannels *tsOutputChannels) { #endif void Pid::sleep() { - int period = maxI(10, 10); +#if !EFI_UNIT_TEST || defined(__DOXYGEN__) + int period = maxI(10, pid->period); chThdSleepMilliseconds(period); +#endif /* EFI_UNIT_TEST */ } void Pid::showPidStatus(Logging *logging, const char*msg, int dTime) { diff --git a/firmware/controllers/settings.cpp b/firmware/controllers/settings.cpp index bd6b209b44..4b9254a4d0 100644 --- a/firmware/controllers/settings.cpp +++ b/firmware/controllers/settings.cpp @@ -981,8 +981,8 @@ typedef struct { #if ! EFI_UNIT_TEST || defined(__DOXYGEN__) plain_get_short_s getS_plain[] = { - {"idle_pid_min", (uint16_t *)&engineConfiguration->idleValvePidMin}, - {"idle_pid_max", (uint16_t *)&engineConfiguration->idleValvePidMax}, + {"idle_pid_min", (uint16_t *)&engineConfiguration->idleRpmPid.minValue}, + {"idle_pid_max", (uint16_t *)&engineConfiguration->idleRpmPid.maxValue}, }; plain_get_integer_s getI_plain[] = { @@ -1210,7 +1210,7 @@ static void setValue(const char *paramStr, const char *valueStr) { #if EFI_PROD_CODE || defined(__DOXYGEN__) } else if (strEqualCaseInsensitive(paramStr, "alt_t")) { if (valueI > 10) { - engineConfiguration->alternatorDT = valueI; + engineConfiguration->alternatorControl.period = valueI; } showAltInfo(); } else if (strEqualCaseInsensitive(paramStr, "alt_offset")) { diff --git a/firmware/controllers/trigger/main_trigger_callback.cpp b/firmware/controllers/trigger/main_trigger_callback.cpp index 3482777627..004e1b1790 100644 --- a/firmware/controllers/trigger/main_trigger_callback.cpp +++ b/firmware/controllers/trigger/main_trigger_callback.cpp @@ -331,7 +331,7 @@ static void fuelClosedLoopCorrection(DECLARE_ENGINE_PARAMETER_SIGNATURE) { if (ENGINE(rpmCalculator.rpmValue) < CONFIG(fuelClosedLoopRpmThreshold) || ENGINE(sensors.clt) < CONFIG(fuelClosedLoopCltThreshold) || getTPS(PASS_ENGINE_PARAMETER_SIGNATURE) > CONFIG(fuelClosedLoopTpsThreshold) || - ENGINE(sensors.currentAfr) < engineConfiguration->fuelClosedLoopAfrLowThreshold || + ENGINE(sensors.currentAfr) < boardConfiguration->fuelClosedLoopAfrLowThreshold || ENGINE(sensors.currentAfr) > engineConfiguration->fuelClosedLoopAfrHighThreshold) { engine->engineState.fuelPidCorrection = 0; fuelPid.reset(); diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index c76ad2445b..a4f6b155aa 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -105,7 +105,10 @@ struct pid_s float pFactor;;"value", 1, 0, -1000, 1000, 5 float iFactor;;"value", 1, 0, -1000, 1000, 5 float dFactor;;"value", 1, 0, -1000, 1000, 5 - float offset;Linear addition to PID logic;"value", 1, 0, 0, 1000, 3 + int16_t offset;Linear addition to PID logic;"value", 1, 0, 0, 1000, 0 + int16_t period;PID dTime;"ms", 1, 0, 0, 3000, 0 + int16_t minValue;;"v", 1, 0, 0, 3000.0, 3 + int16_t maxValue;;"v", 1, 0, 0, 3000.0, 3 end_struct struct cranking_parameters_s @@ -460,7 +463,7 @@ custom adc_channel_mode_e 4 bits, U32, @OFFSET@, [0:1], "Off", "Slow", "Fas float fuelLevelEmptyTankVoltage;;"V", 1, 0, 0,10, 2 float fuelLevelFullTankVoltage;;"V", 1, 0, 0,10, 2 ego_sensor_e afr_type;AFR, WBO, EGO - whatever you like to call it; - int etbDT; + float fuelClosedLoopAfrLowThreshold;;"ratio", 1, 0, 0, 100, 1 pin_output_mode_e hip9011CsPinMode; brain_pin_e tachOutputPin;+This implementation produces one pulse per engine cycle. See also dizzySparkOutputPin. pin_output_mode_e tachOutputPinMode; @@ -524,8 +527,7 @@ bit is_enabled_spi_2 custom uart_device_e 4 bits,U32, @OFFSET@, [0:1], "Off", "UART1", "UART2", "UART3" uart_device_e consoleUartDevice; - int16_t alternatorPidMin;;"v", 1, 0, 0, 3000.0, 3 - int16_t alternatorPidMax;;"v", 1, 0, 0, 3000.0, 3 + int unused1; int16_t idlePidDeactivationTpsThreshold;;"%", 1, 0, 0, 100.0, 0 int16_t unusedHere; float nb2ratioFrom;;"value", 1, 0, 0, 1000, 5 @@ -685,17 +687,16 @@ custom pin_mode_e 4 bits, U32, @OFFSET@, [0:5], @@pin_mode_e_enum@@ int tachPulseTriggerIndex;+Trigger cycle index at which we start tach pulse (performance consideration);"index", 1, 0, 0.0, 360.0, 0 float suckedOffCoef;;"%", 1, 0, 0.0, 300.0, 2 - float[7] unused71;TODO make suckedOffCoef an array by RPM; - float addedToWallCoef;;"%", 1, 0, 0.0, 300.0, 2 - float[7] unused72;TODO make addedToWallCoef an array by RPM; + pid_s alternatorControl; + pid_s etb; + pid_s warmupAfrPid; ! todo: mapErrorDetectionIdleTooLow? 30kPa is usually lowest on idle float mapErrorDetectionTooLow;kPa value which is too low to be true;"kPa", 1, 0, -100.0, 100.0, 2 float mapErrorDetectionTooHigh;kPa value which is too high to be true;"kPa", 1, 0, -100.0, 800.0, 2 int step1RpmWindow;RPMs prior to step1rpm point where ignition advance is retarded;"rpm", 1, 0, 0, 3000.0, 2 pid_s idleRpmPid; - int idleDT; - int unusedIdleControl; + float addedToWallCoef;;"%", 1, 0, 0.0, 300.0, 2 brain_pin_e communicationPin;blue LED on discovery by default brain_pin_e runningPin;green LED on discovery by default brain_pin_e binarySerialTxPin; @@ -704,15 +705,14 @@ custom pin_mode_e 4 bits, U32, @OFFSET@, [0:5], @@pin_mode_e_enum@@ brain_pin_e consoleSerialRxPin;todo: finish pin migration from hard-coded to configurable? float[ENGINE_NOISE_CURVE_SIZE] knockNoise;Knock sensor output knock detection threshold depending on current RPM;"v", 1, 0, 0.0, 10, 2 float[ENGINE_NOISE_CURVE_SIZE] knockNoiseRpmBins;;"RPM", 1, 0, 0.0, 18000, 2 - pid_s etb; + float[4] unusedetb; float[CLT_CURVE_SIZE] cltIdleRpmBins;CLT-based target RPM for automatic idle controller;"C", 1, 0, -100.0, 250.0, 2 float[CLT_CURVE_SIZE] cltIdleRpm;;"RPM", 1, 0, 0.0, 400.0, 0 float targetVBatt;;"Volts", 1, 0, 0,30, 1 float alternatorOffAboveTps;Turn off alternator output above specified TPS;"%", 1, 0, 0, 200, 2 - int alternatorDT;PID dTime;"ms", 1, 0, 0, 3000, 0 - pid_s alternatorControl; + float[5] unusedalternatorControl; int tpsAccelLength;;"cycles", 1, 0, 1, 200, 0 float tpsAccelEnrichmentThreshold;;"roc", 1, 0, 0, 200, 3 @@ -734,7 +734,7 @@ custom pin_mode_e 4 bits, U32, @OFFSET@, [0:5], @@pin_mode_e_enum@@ float tpsDecelEnleanmentMultiplier;;"coeff", 1, 0, 0, 200, 3 float slowAdcAlpha;+ExpAverage alpha coefficient;"coeff", 1, 0, 0, 200, 3 debug_mode_e debugMode; - pid_s warmupAfrPid; + float[4] unusedwarmupAfrPid; float[WARMUP_TARGET_AFR_SIZE] warmupTargetAfrBins;CLT-based target AFR for PID-based control;"C", 1, 0, -100.0, 250.0, 2 float[WARMUP_TARGET_AFR_SIZE] warmupTargetAfr;;"AFR", 1, 0, 0.0, 20.0, 2 @@ -753,7 +753,7 @@ float[MAP_ACCEL_TAPER] mapAccelTaperMult;;"mult", 1, 0, 0.0, 300, float mapHighValueVoltage;MAP voltage for low point;"v", 1, 0, 0.0, 10, 2 float egoValueShift;EGO value correction;"value", 1, 0, -10.0, 10, 2 brain_input_pin_e camInput; - pid_dt[AUX_PID_COUNT iterate] auxPidDT; + int[4] unused4; int crankingIACposition;IAC cranking position;"percent", 1, 0, -100.0, 100, float tChargeMinRpmMinTps;;"mult", 1, 0, 0, 3, 4 float tChargeMinRpmMaxTps;;"mult", 1, 0, 0, 3, 4 @@ -765,7 +765,7 @@ float[MAP_ACCEL_TAPER] mapAccelTaperMult;;"mult", 1, 0, 0.0, 300, mass_storage_e storageMode; spi_device_e cj125SpiDevice; pin_output_mode_e cj125CsPinMode; - pid_s[AUX_PID_COUNT iterate] auxPid; + float[16] unusedauxPid; vvt_mode_e vvtMode;set vvt_mode X bi_quard_s biQuad; float[CLT_TIMING_CURVE_SIZE] cltTimingBins;CLT-based timing correction;"C", 1, 0, -100.0, 250.0, 1 @@ -784,7 +784,6 @@ float[MAP_ACCEL_TAPER] mapAccelTaperMult;;"mult", 1, 0, 0.0, 300, int16_t fuelClosedLoopRpmThreshold;;"rpm", 1, 0, 0, 5000, 0 int16_t etbFreq;;"Hz", 1, 0, 0, 500, 10 pid_s fuelClosedLoopPid; - float fuelClosedLoopAfrLowThreshold;;"ratio", 1, 0, 0, 100, 1 float fuelClosedLoopAfrHighThreshold;;"ratio", 1, 0, 0, 100, 1 pin_mode_e stepperEnablePinMode; adc_channel_e cj125ua;lampda input @@ -792,11 +791,10 @@ int16_t etbFreq;;"Hz", 1, 0, 0, 500, 10 custom cfg_float_t_1f 4 scalar, F32, @OFFSET@, "Val", 1, 0, -20000000, 20000000, 1 cfg_float_t_1f[IGNITION_PIN_COUNT iterate] timing_offset_cylinder; - - int16_t aux1PidMin;;"v", 1, 0, 0, 100.0, 0 - int16_t aux1PidMax;;"v", 1, 0, 0, 100.0, 0 - int16_t etbPidMin;;"v", 1, 0, 0, 3000.0, 3 - int16_t etbPidMax;;"v", 1, 0, 0, 3000.0, 3 + + pin_input_mode_e brakePedalPinMode; + float idlePidActivationTime;;"seconds", 1, 0, 0, 60, 1 + spi_device_e sdCardSpiDevice; pin_mode_e spi3SckMode; @@ -806,11 +804,8 @@ spi_device_e sdCardSpiDevice; pin_mode_e spi1MosiMode; pin_mode_e spi1MisoMode; brain_pin_e brakePedalPin - pin_input_mode_e brakePedalPinMode; - int16_t idleValvePidMin;;"%", 1, 0, 0, 100.0, 0 - int16_t idleValvePidMax;;"%", 1, 0, 0, 100.0, 0 - float idlePidActivationTime;;"seconds", 1, 0, 0, 60, 1 - int[43] unused; + pid_s[AUX_PID_COUNT iterate] auxPid; + int[26] unusedEnd; end_struct diff --git a/firmware/tunerstudio/rusefi.ini b/firmware/tunerstudio/rusefi.ini index 3c149170db..ddafc5f1ca 100644 --- a/firmware/tunerstudio/rusefi.ini +++ b/firmware/tunerstudio/rusefi.ini @@ -45,7 +45,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun May 28 14:28:26 EDT 2017 +; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun May 28 22:30:58 EDT 2017 pageSize = 16376 page = 1 @@ -251,7 +251,7 @@ page = 1 fuelLevelEmptyTankVoltage = scalar, F32, 884, "V", 1, 0, 0,10, 2 fuelLevelFullTankVoltage = scalar, F32, 888, "V", 1, 0, 0,10, 2 afr_type = bits, S32, 892, [0:2], "BPSX", "Innovate", "14Point7", "Narrow", "PLX" -;skipping etbDT offset 896 + fuelClosedLoopAfrLowThreshold = scalar, F32, 896, "ratio", 1, 0, 0, 100, 1 hip9011CsPinMode = bits, U32, 900, [0:1], "default", "default inverted", "open collector", "open collector inverted" tachOutputPin = bits, U32, 904, [0:6], "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "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" tachOutputPinMode = bits, U32, 908, [0:1], "default", "default inverted", "open collector", "open collector inverted" @@ -344,8 +344,7 @@ page = 1 gpioPinModes15 = bits, U32, 1188, [0:1], "default", "default inverted", "open collector", "open collector inverted" gpioPinModes16 = bits, U32, 1192, [0:1], "default", "default inverted", "open collector", "open collector inverted" consoleUartDevice = bits,U32, 1196, [0:1], "Off", "UART1", "UART2", "UART3" - alternatorPidMin = scalar, S16, 1200, "v", 1, 0, 0, 3000.0, 3 - alternatorPidMax = scalar, S16, 1202, "v", 1, 0, 0, 3000.0, 3 +;skipping unused1 offset 1200 idlePidDeactivationTpsThreshold = scalar, S16, 1204, "%", 1, 0, 0, 100.0, 0 ;skipping unusedHere offset 1206 nb2ratioFrom = scalar, F32, 1208, "value", 1, 0, 0, 1000, 5 @@ -511,18 +510,38 @@ page = 1 tachPulseDuractionMs = scalar, F32, 1816, "ms", 1, 0, 0.0, 100.0, 2 tachPulseTriggerIndex = scalar, S32, 1820, "index", 1, 0, 0.0, 360.0, 0 suckedOffCoef = scalar, F32, 1824, "%", 1, 0, 0.0, 300.0, 2 - unused71 = array, F32, 1828, [7], - addedToWallCoef = scalar, F32, 1856, "%", 1, 0, 0.0, 300.0, 2 - unused72 = array, F32, 1860, [7], + alternatorControl_pFactor = scalar, F32, 1828, "value", 1, 0, -1000, 1000, 5 + alternatorControl_iFactor = scalar, F32, 1832, "value", 1, 0, -1000, 1000, 5 + alternatorControl_dFactor = scalar, F32, 1836, "value", 1, 0, -1000, 1000, 5 + alternatorControl_offset = scalar, S16, 1840, "value", 1, 0, 0, 1000, 0 + alternatorControl_period = scalar, S16, 1842, "ms", 1, 0, 0, 3000, 0 + alternatorControl_minValue = scalar, S16, 1844, "v", 1, 0, 0, 3000.0, 3 + alternatorControl_maxValue = scalar, S16, 1846, "v", 1, 0, 0, 3000.0, 3 + etb_pFactor = scalar, F32, 1848, "value", 1, 0, -1000, 1000, 5 + etb_iFactor = scalar, F32, 1852, "value", 1, 0, -1000, 1000, 5 + etb_dFactor = scalar, F32, 1856, "value", 1, 0, -1000, 1000, 5 + etb_offset = scalar, S16, 1860, "value", 1, 0, 0, 1000, 0 + etb_period = scalar, S16, 1862, "ms", 1, 0, 0, 3000, 0 + etb_minValue = scalar, S16, 1864, "v", 1, 0, 0, 3000.0, 3 + etb_maxValue = scalar, S16, 1866, "v", 1, 0, 0, 3000.0, 3 + warmupAfrPid_pFactor = scalar, F32, 1868, "value", 1, 0, -1000, 1000, 5 + warmupAfrPid_iFactor = scalar, F32, 1872, "value", 1, 0, -1000, 1000, 5 + warmupAfrPid_dFactor = scalar, F32, 1876, "value", 1, 0, -1000, 1000, 5 + warmupAfrPid_offset = scalar, S16, 1880, "value", 1, 0, 0, 1000, 0 + warmupAfrPid_period = scalar, S16, 1882, "ms", 1, 0, 0, 3000, 0 + warmupAfrPid_minValue = scalar, S16, 1884, "v", 1, 0, 0, 3000.0, 3 + warmupAfrPid_maxValue = scalar, S16, 1886, "v", 1, 0, 0, 3000.0, 3 mapErrorDetectionTooLow = scalar, F32, 1888, "kPa", 1, 0, -100.0, 100.0, 2 mapErrorDetectionTooHigh = scalar, F32, 1892, "kPa", 1, 0, -100.0, 800.0, 2 step1RpmWindow = scalar, S32, 1896, "rpm", 1, 0, 0, 3000.0, 2 idleRpmPid_pFactor = scalar, F32, 1900, "value", 1, 0, -1000, 1000, 5 idleRpmPid_iFactor = scalar, F32, 1904, "value", 1, 0, -1000, 1000, 5 idleRpmPid_dFactor = scalar, F32, 1908, "value", 1, 0, -1000, 1000, 5 - idleRpmPid_offset = scalar, F32, 1912, "value", 1, 0, 0, 1000, 3 -;skipping idleDT offset 1916 -;skipping unusedIdleControl offset 1920 + idleRpmPid_offset = scalar, S16, 1912, "value", 1, 0, 0, 1000, 0 + idleRpmPid_period = scalar, S16, 1914, "ms", 1, 0, 0, 3000, 0 + idleRpmPid_minValue = scalar, S16, 1916, "v", 1, 0, 0, 3000.0, 3 + idleRpmPid_maxValue = scalar, S16, 1918, "v", 1, 0, 0, 3000.0, 3 + addedToWallCoef = scalar, F32, 1920, "%", 1, 0, 0.0, 300.0, 2 communicationPin = bits, U32, 1924, [0:6], "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "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" runningPin = bits, U32, 1928, [0:6], "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "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" binarySerialTxPin = bits, U32, 1932, [0:6], "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "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" @@ -531,19 +550,12 @@ page = 1 consoleSerialRxPin = bits, U32, 1944, [0:6], "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "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" knockNoise = array, F32, 1948, [8], "v", 1, 0, 0.0, 10, 2 knockNoiseRpmBins = array, F32, 1980, [8], "RPM", 1, 0, 0.0, 18000, 2 - etb_pFactor = scalar, F32, 2012, "value", 1, 0, -1000, 1000, 5 - etb_iFactor = scalar, F32, 2016, "value", 1, 0, -1000, 1000, 5 - etb_dFactor = scalar, F32, 2020, "value", 1, 0, -1000, 1000, 5 - etb_offset = scalar, F32, 2024, "value", 1, 0, 0, 1000, 3 +;skipping unusedetb offset 2012 cltIdleRpmBins = array, F32, 2028, [16], "C", 1, 0, -100.0, 250.0, 2 cltIdleRpm = array, F32, 2092, [16], "RPM", 1, 0, 0.0, 400.0, 0 targetVBatt = scalar, F32, 2156, "Volts", 1, 0, 0,30, 1 alternatorOffAboveTps = scalar, F32, 2160, "%", 1, 0, 0, 200, 2 - alternatorDT = scalar, S32, 2164, "ms", 1, 0, 0, 3000, 0 - alternatorControl_pFactor = scalar, F32, 2168, "value", 1, 0, -1000, 1000, 5 - alternatorControl_iFactor = scalar, F32, 2172, "value", 1, 0, -1000, 1000, 5 - alternatorControl_dFactor = scalar, F32, 2176, "value", 1, 0, -1000, 1000, 5 - alternatorControl_offset = scalar, F32, 2180, "value", 1, 0, 0, 1000, 3 +;skipping unusedalternatorControl offset 2164 tpsAccelLength = scalar, S32, 2184, "cycles", 1, 0, 1, 200, 0 tpsAccelEnrichmentThreshold = scalar, F32, 2188, "roc", 1, 0, 0, 200, 3 vvtOffset = scalar, F32, 2192, "value", 1, 0, -720, 1000, 5 @@ -560,10 +572,7 @@ page = 1 tpsDecelEnleanmentMultiplier = scalar, F32, 2236, "coeff", 1, 0, 0, 200, 3 slowAdcAlpha = scalar, F32, 2240, "coeff", 1, 0, 0, 200, 3 debugMode = bits, U32, 2244, [0:4], "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", "VSS", "SD card", "sr5", "Knock", "Trigger Sync", "Electronic Throttle", "mode18", "mode19", "mode20", "mode21", "mode22" - warmupAfrPid_pFactor = scalar, F32, 2248, "value", 1, 0, -1000, 1000, 5 - warmupAfrPid_iFactor = scalar, F32, 2252, "value", 1, 0, -1000, 1000, 5 - warmupAfrPid_dFactor = scalar, F32, 2256, "value", 1, 0, -1000, 1000, 5 - warmupAfrPid_offset = scalar, F32, 2260, "value", 1, 0, 0, 1000, 3 +;skipping unusedwarmupAfrPid offset 2248 warmupTargetAfrBins = array, F32, 2264, [4], "C", 1, 0, -100.0, 250.0, 2 warmupTargetAfr = array, F32, 2280, [4], "AFR", 1, 0, 0.0, 20.0, 2 warmupAfrThreshold = scalar, F32, 2296, "tempterature", 1, 0, 0, 200, 3 @@ -581,10 +590,7 @@ page = 1 mapHighValueVoltage = scalar, F32, 2400, "v", 1, 0, 0.0, 10, 2 egoValueShift = scalar, F32, 2404, "value", 1, 0, -10.0, 10, 2 camInput = bits, U32, 2408, [0:6], "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" - auxPidDT1 = scalar, U32, 2412, "ms", 1, 0, 0, 3000, 0 - auxPidDT2 = scalar, U32, 2416, "ms", 1, 0, 0, 3000, 0 - auxPidDT3 = scalar, U32, 2420, "ms", 1, 0, 0, 3000, 0 - auxPidDT4 = scalar, U32, 2424, "ms", 1, 0, 0, 3000, 0 +;skipping unused4 offset 2412 crankingIACposition = scalar, S32, 2428, "percent", 1, 0, -100.0, 100, tChargeMinRpmMinTps = scalar, F32, 2432, "mult", 1, 0, 0, 3, 4 tChargeMinRpmMaxTps = scalar, F32, 2436, "mult", 1, 0, 0, 3, 4 @@ -602,22 +608,7 @@ page = 1 storageMode = bits, U32, 2476, [0:1], "Auto", "Always", "Never" cj125SpiDevice = bits,U32, 2480, [0:1], "Off", "SPI1", "SPI2", "SPI3" cj125CsPinMode = bits, U32, 2484, [0:1], "default", "default inverted", "open collector", "open collector inverted" - auxPid1_pFactor = scalar, F32, 2488, "value", 1, 0, -1000, 1000, 5 - auxPid1_iFactor = scalar, F32, 2492, "value", 1, 0, -1000, 1000, 5 - auxPid1_dFactor = scalar, F32, 2496, "value", 1, 0, -1000, 1000, 5 - auxPid1_offset = scalar, F32, 2500, "value", 1, 0, 0, 1000, 3 - auxPid2_pFactor = scalar, F32, 2504, "value", 1, 0, -1000, 1000, 5 - auxPid2_iFactor = scalar, F32, 2508, "value", 1, 0, -1000, 1000, 5 - auxPid2_dFactor = scalar, F32, 2512, "value", 1, 0, -1000, 1000, 5 - auxPid2_offset = scalar, F32, 2516, "value", 1, 0, 0, 1000, 3 - auxPid3_pFactor = scalar, F32, 2520, "value", 1, 0, -1000, 1000, 5 - auxPid3_iFactor = scalar, F32, 2524, "value", 1, 0, -1000, 1000, 5 - auxPid3_dFactor = scalar, F32, 2528, "value", 1, 0, -1000, 1000, 5 - auxPid3_offset = scalar, F32, 2532, "value", 1, 0, 0, 1000, 3 - auxPid4_pFactor = scalar, F32, 2536, "value", 1, 0, -1000, 1000, 5 - auxPid4_iFactor = scalar, F32, 2540, "value", 1, 0, -1000, 1000, 5 - auxPid4_dFactor = scalar, F32, 2544, "value", 1, 0, -1000, 1000, 5 - auxPid4_offset = scalar, F32, 2548, "value", 1, 0, 0, 1000, 3 +;skipping unusedauxPid offset 2488 vvtMode = bits, U32, 2552, [0:2], "First half", "Second half", "2GZ", "Miata NB2", "mode4", "mode5", "mode6", "mode7" biQuad_a0 = scalar, F32, 2556, "v", 1, 0, -1000, 1000, 9 biQuad_a1 = scalar, F32, 2560, "v", 1, 0, -1000, 1000, 9 @@ -656,8 +647,10 @@ page = 1 fuelClosedLoopPid_pFactor = scalar, F32, 2740, "value", 1, 0, -1000, 1000, 5 fuelClosedLoopPid_iFactor = scalar, F32, 2744, "value", 1, 0, -1000, 1000, 5 fuelClosedLoopPid_dFactor = scalar, F32, 2748, "value", 1, 0, -1000, 1000, 5 - fuelClosedLoopPid_offset = scalar, F32, 2752, "value", 1, 0, 0, 1000, 3 - fuelClosedLoopAfrLowThreshold = scalar, F32, 2756, "ratio", 1, 0, 0, 100, 1 + fuelClosedLoopPid_offset = scalar, S16, 2752, "value", 1, 0, 0, 1000, 0 + fuelClosedLoopPid_period = scalar, S16, 2754, "ms", 1, 0, 0, 3000, 0 + fuelClosedLoopPid_minValue = scalar, S16, 2756, "v", 1, 0, 0, 3000.0, 3 + fuelClosedLoopPid_maxValue = scalar, S16, 2758, "v", 1, 0, 0, 3000.0, 3 fuelClosedLoopAfrHighThreshold = scalar, F32, 2760, "ratio", 1, 0, 0, 100, 1 stepperEnablePinMode = bits, U32, 2764, [0:5], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "mode12", "mode13", "mode14", "mode15", "mode16", "mode17", "mode18", "mode19", "mode20", "mode21", "mode22", "mode23", "mode24", "mode25", "mode26", "mode27", "mode28", "mode29", "mode30", "mode31", "PULLUP", "mode33", "mode34", "mode35" cj125ua = bits, U32, 2768, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" @@ -674,10 +667,8 @@ page = 1 timing_offset_cylinder10 = scalar, F32, 2812, "Val", 1, 0, -20000000, 20000000, 1 timing_offset_cylinder11 = scalar, F32, 2816, "Val", 1, 0, -20000000, 20000000, 1 timing_offset_cylinder12 = scalar, F32, 2820, "Val", 1, 0, -20000000, 20000000, 1 - aux1PidMin = scalar, S16, 2824, "v", 1, 0, 0, 100.0, 0 - aux1PidMax = scalar, S16, 2826, "v", 1, 0, 0, 100.0, 0 - etbPidMin = scalar, S16, 2828, "v", 1, 0, 0, 3000.0, 3 - etbPidMax = scalar, S16, 2830, "v", 1, 0, 0, 3000.0, 3 + brakePedalPinMode = scalar, F32, 2824, "ms", 1, 0, 0, 200, 1 + idlePidActivationTime = scalar, F32, 2828, "seconds", 1, 0, 0, 60, 1 sdCardSpiDevice = bits,U32, 2832, [0:1], "Off", "SPI1", "SPI2", "SPI3" spi3SckMode = bits, U32, 2836, [0:5], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "mode12", "mode13", "mode14", "mode15", "mode16", "mode17", "mode18", "mode19", "mode20", "mode21", "mode22", "mode23", "mode24", "mode25", "mode26", "mode27", "mode28", "mode29", "mode30", "mode31", "PULLUP", "mode33", "mode34", "mode35" spi3MosiMode = bits, U32, 2840, [0:5], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "mode12", "mode13", "mode14", "mode15", "mode16", "mode17", "mode18", "mode19", "mode20", "mode21", "mode22", "mode23", "mode24", "mode25", "mode26", "mode27", "mode28", "mode29", "mode30", "mode31", "PULLUP", "mode33", "mode34", "mode35" @@ -686,11 +677,35 @@ page = 1 spi1MosiMode = bits, U32, 2852, [0:5], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "mode12", "mode13", "mode14", "mode15", "mode16", "mode17", "mode18", "mode19", "mode20", "mode21", "mode22", "mode23", "mode24", "mode25", "mode26", "mode27", "mode28", "mode29", "mode30", "mode31", "PULLUP", "mode33", "mode34", "mode35" spi1MisoMode = bits, U32, 2856, [0:5], "default", "INVALID", "INVALID", "INVALID", "opendrain", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "mode12", "mode13", "mode14", "mode15", "mode16", "mode17", "mode18", "mode19", "mode20", "mode21", "mode22", "mode23", "mode24", "mode25", "mode26", "mode27", "mode28", "mode29", "mode30", "mode31", "PULLUP", "mode33", "mode34", "mode35" brakePedalPin = bits, U32, 2860, [0:6], "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "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" - brakePedalPinMode = scalar, F32, 2864, "ms", 1, 0, 0, 200, 1 - idleValvePidMin = scalar, S16, 2868, "%", 1, 0, 0, 100.0, 0 - idleValvePidMax = scalar, S16, 2870, "%", 1, 0, 0, 100.0, 0 - idlePidActivationTime = scalar, F32, 2872, "seconds", 1, 0, 0, 60, 1 -;skipping unused offset 2876 + auxPid1_pFactor = scalar, F32, 2864, "value", 1, 0, -1000, 1000, 5 + auxPid1_iFactor = scalar, F32, 2868, "value", 1, 0, -1000, 1000, 5 + auxPid1_dFactor = scalar, F32, 2872, "value", 1, 0, -1000, 1000, 5 + auxPid1_offset = scalar, S16, 2876, "value", 1, 0, 0, 1000, 0 + auxPid1_period = scalar, S16, 2878, "ms", 1, 0, 0, 3000, 0 + auxPid1_minValue = scalar, S16, 2880, "v", 1, 0, 0, 3000.0, 3 + auxPid1_maxValue = scalar, S16, 2882, "v", 1, 0, 0, 3000.0, 3 + auxPid2_pFactor = scalar, F32, 2884, "value", 1, 0, -1000, 1000, 5 + auxPid2_iFactor = scalar, F32, 2888, "value", 1, 0, -1000, 1000, 5 + auxPid2_dFactor = scalar, F32, 2892, "value", 1, 0, -1000, 1000, 5 + auxPid2_offset = scalar, S16, 2896, "value", 1, 0, 0, 1000, 0 + auxPid2_period = scalar, S16, 2898, "ms", 1, 0, 0, 3000, 0 + auxPid2_minValue = scalar, S16, 2900, "v", 1, 0, 0, 3000.0, 3 + auxPid2_maxValue = scalar, S16, 2902, "v", 1, 0, 0, 3000.0, 3 + auxPid3_pFactor = scalar, F32, 2904, "value", 1, 0, -1000, 1000, 5 + auxPid3_iFactor = scalar, F32, 2908, "value", 1, 0, -1000, 1000, 5 + auxPid3_dFactor = scalar, F32, 2912, "value", 1, 0, -1000, 1000, 5 + auxPid3_offset = scalar, S16, 2916, "value", 1, 0, 0, 1000, 0 + auxPid3_period = scalar, S16, 2918, "ms", 1, 0, 0, 3000, 0 + auxPid3_minValue = scalar, S16, 2920, "v", 1, 0, 0, 3000.0, 3 + auxPid3_maxValue = scalar, S16, 2922, "v", 1, 0, 0, 3000.0, 3 + auxPid4_pFactor = scalar, F32, 2924, "value", 1, 0, -1000, 1000, 5 + auxPid4_iFactor = scalar, F32, 2928, "value", 1, 0, -1000, 1000, 5 + auxPid4_dFactor = scalar, F32, 2932, "value", 1, 0, -1000, 1000, 5 + auxPid4_offset = scalar, S16, 2936, "value", 1, 0, 0, 1000, 0 + auxPid4_period = scalar, S16, 2938, "ms", 1, 0, 0, 3000, 0 + auxPid4_minValue = scalar, S16, 2940, "v", 1, 0, 0, 3000.0, 3 + auxPid4_maxValue = scalar, S16, 2942, "v", 1, 0, 0, 3000.0, 3 +;skipping unusedEnd offset 2944 le_formulas1 = array, U08, 3048, [200],"char", 1, 0, 0.0, 3.0, 2 le_formulas2 = array, U08, 3248, [200],"char", 1, 0, 0.0, 3.0, 2 le_formulas3 = array, U08, 3448, [200],"char", 1, 0, 0.0, 3.0, 2 @@ -1968,8 +1983,8 @@ cmd_call_from_pit = "w\x00\x20\x34\x56" field = "idle I", idleRpmPid_iFactor, { idleMode == 0} field = "idle D", idleRpmPid_dFactor, { idleMode == 0} field = "idle offset", idleRpmPid_offset, { idleMode == 0} - field = "pid min", idleValvePidMin, { idleMode == 0} - field = "pid max", idleValvePidMax, { idleMode == 0} + field = "pid min", idleRpmPid_minValue, { idleMode == 0} + field = "pid max", idleRpmPid_maxValue, { idleMode == 0} field = "pid TPS deactivation", idlePidDeactivationTpsThreshold, { idleMode == 0} field = "verbose", isVerboseIAC slider = "Manual Idle Position", manIdlePosition, horizontal @@ -2075,14 +2090,14 @@ cmd_call_from_pit = "w\x00\x20\x34\x56" field = "PWM Frequency", auxPidFrequency1 field = "verbose", isVerboseAuxPid1 field = "#target based on FSIO map#1" - field = "control period", auxPidDT1, {activateAuxPid1 == 1} + field = "control period", auxPid1_period, {activateAuxPid1 == 1} field = "#PID control" field = "offset", auxPid1_offset, {activateAuxPid1 == 1} field = "P factor", auxPid1_pFactor, {activateAuxPid1 == 1} field = "I factor", auxPid1_iFactor, {activateAuxPid1 == 1} field = "D factor", auxPid1_dFactor, {activateAuxPid1 == 1} - field = "Min", aux1PidMin - field = "Max", aux1PidMax + field = "Min", auxPid1_minValue, {activateAuxPid1 == 1} + field = "Max", auxPid1_maxValue, {activateAuxPid1 == 1} field = "FSIO pin #2", auxPidPins2 field = "FSIO pin #3", auxPidPins3 field = "FSIO pin #4", auxPidPins4 @@ -2100,14 +2115,14 @@ cmd_call_from_pit = "w\x00\x20\x34\x56" field = "PWM frequency", alternatorPwmFrequency, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "Off Above TPS", alternatorOffAboveTps, {isAlternatorControlEnabled == 1} field = "Verbose", isVerboseAlternator, {isAlternatorControlEnabled == 1} - field = "control period", alternatorDT, {isAlternatorControlEnabled == 1} + field = "control period", alternatorControl_period, {isAlternatorControlEnabled == 1} field = "#PID control" field = "offset", alternatorControl_offset, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "P factor", alternatorControl_pFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "I factor", alternatorControl_iFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "D factor", alternatorControl_dFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} - field = "Min", alternatorPidMin - field = "Max", alternatorPidMax + field = "Min", alternatorControl_minValue, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} + field = "Max", alternatorControl_maxValue, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "#% duty = Pterm + Iterm + Dterm + offset%" @@ -2384,8 +2399,8 @@ cmd_call_from_pit = "w\x00\x20\x34\x56" field = "iFactor", etb_iFactor field = "dFactor", etb_dFactor field = "offset", etb_offset - field = "pid min", etbPidMin - field = "pid max", etbPidMax + field = "pid min", etb_minValue + field = "pid max", etb_maxValue dialog = testSpark, "Spark" commandButton = "Spark #1", cmd_test_spk1 diff --git a/firmware/tunerstudio/rusefi.input b/firmware/tunerstudio/rusefi.input index 31aa83bb50..898094618b 100644 --- a/firmware/tunerstudio/rusefi.input +++ b/firmware/tunerstudio/rusefi.input @@ -1221,8 +1221,8 @@ cmd_call_from_pit = "w\x00\x20\x34\x56" field = "idle I", idleRpmPid_iFactor, { idleMode == 0} field = "idle D", idleRpmPid_dFactor, { idleMode == 0} field = "idle offset", idleRpmPid_offset, { idleMode == 0} - field = "pid min", idleValvePidMin, { idleMode == 0} - field = "pid max", idleValvePidMax, { idleMode == 0} + field = "pid min", idleRpmPid_minValue, { idleMode == 0} + field = "pid max", idleRpmPid_maxValue, { idleMode == 0} field = "pid TPS deactivation", idlePidDeactivationTpsThreshold, { idleMode == 0} field = "verbose", isVerboseIAC slider = "Manual Idle Position", manIdlePosition, horizontal @@ -1328,14 +1328,14 @@ cmd_call_from_pit = "w\x00\x20\x34\x56" field = "PWM Frequency", auxPidFrequency1 field = "verbose", isVerboseAuxPid1 field = "#target based on FSIO map#1" - field = "control period", auxPidDT1, {activateAuxPid1 == 1} + field = "control period", auxPid1_period, {activateAuxPid1 == 1} field = "#PID control" field = "offset", auxPid1_offset, {activateAuxPid1 == 1} field = "P factor", auxPid1_pFactor, {activateAuxPid1 == 1} field = "I factor", auxPid1_iFactor, {activateAuxPid1 == 1} field = "D factor", auxPid1_dFactor, {activateAuxPid1 == 1} - field = "Min", aux1PidMin - field = "Max", aux1PidMax + field = "Min", auxPid1_minValue, {activateAuxPid1 == 1} + field = "Max", auxPid1_maxValue, {activateAuxPid1 == 1} field = "FSIO pin #2", auxPidPins2 field = "FSIO pin #3", auxPidPins3 field = "FSIO pin #4", auxPidPins4 @@ -1353,14 +1353,14 @@ cmd_call_from_pit = "w\x00\x20\x34\x56" field = "PWM frequency", alternatorPwmFrequency, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "Off Above TPS", alternatorOffAboveTps, {isAlternatorControlEnabled == 1} field = "Verbose", isVerboseAlternator, {isAlternatorControlEnabled == 1} - field = "control period", alternatorDT, {isAlternatorControlEnabled == 1} + field = "control period", alternatorControl_period, {isAlternatorControlEnabled == 1} field = "#PID control" field = "offset", alternatorControl_offset, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "P factor", alternatorControl_pFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "I factor", alternatorControl_iFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "D factor", alternatorControl_dFactor, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} - field = "Min", alternatorPidMin - field = "Max", alternatorPidMax + field = "Min", alternatorControl_minValue, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} + field = "Max", alternatorControl_maxValue, {isAlternatorControlEnabled == 1 && onOffAlternatorLogic == 0} field = "#% duty = Pterm + Iterm + Dterm + offset%" @@ -1637,8 +1637,8 @@ cmd_call_from_pit = "w\x00\x20\x34\x56" field = "iFactor", etb_iFactor field = "dFactor", etb_dFactor field = "offset", etb_offset - field = "pid min", etbPidMin - field = "pid max", etbPidMax + field = "pid min", etb_minValue + field = "pid max", etb_maxValue dialog = testSpark, "Spark" commandButton = "Spark #1", cmd_test_spk1 diff --git a/java_console/models/src/com/rusefi/config/Fields.java b/java_console/models/src/com/rusefi/config/Fields.java index 504174c2f8..507b65555d 100644 --- a/java_console/models/src/com/rusefi/config/Fields.java +++ b/java_console/models/src/com/rusefi/config/Fields.java @@ -1,6 +1,6 @@ package com.rusefi.config; -// this file was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sat May 27 23:31:01 EDT 2017 +// this file was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun May 28 22:30:58 EDT 2017 public class Fields { public static final int LE_COMMAND_LENGTH = 200; public static final int FSIO_ADC_COUNT = 4; @@ -381,8 +381,8 @@ public class Fields { public static final int fuelLevelFullTankVoltage_offset = 888; public static final int fuelLevelFullTankVoltage_offset_hex = 378; public static final int afr_type_offset = 892; - public static final int etbDT_offset = 896; - public static final int etbDT_offset_hex = 380; + public static final int fuelClosedLoopAfrLowThreshold_offset = 896; + public static final int fuelClosedLoopAfrLowThreshold_offset_hex = 380; public static final int hip9011CsPinMode_offset = 900; public static final int hip9011CsPinMode_offset_hex = 384; public static final int tachOutputPin_offset = 904; @@ -510,8 +510,7 @@ public class Fields { public static final int gpioPinModes15_offset = 1188; public static final int gpioPinModes16_offset = 1192; public static final int consoleUartDevice_offset = 1196; - public static final int alternatorPidMin_offset = 1200; - public static final int alternatorPidMax_offset = 1202; + public static final int unused1_offset = 1200; public static final int idlePidDeactivationTpsThreshold_offset = 1204; public static final int unusedHere_offset = 1206; public static final int nb2ratioFrom_offset = 1208; @@ -728,12 +727,46 @@ public class Fields { public static final int tachPulseTriggerIndex_offset = 1820; public static final int suckedOffCoef_offset = 1824; public static final int suckedOffCoef_offset_hex = 720; - public static final int unused71_offset = 1828; - public static final int unused71_offset_hex = 724; - public static final int addedToWallCoef_offset = 1856; - public static final int addedToWallCoef_offset_hex = 740; - public static final int unused72_offset = 1860; - public static final int unused72_offset_hex = 744; + public static final int alternatorControl_offset = 1828; + public static final int alternatorControl_offset_hex = 724; + public static final int alternatorControl_pFactor_offset = 1828; + public static final int alternatorControl_pFactor_offset_hex = 724; + public static final int alternatorControl_iFactor_offset = 1832; + public static final int alternatorControl_iFactor_offset_hex = 728; + public static final int alternatorControl_dFactor_offset = 1836; + public static final int alternatorControl_offset_offset = 1840; + public static final int alternatorControl_offset_offset_hex = 730; + public static final int alternatorControl_period_offset = 1842; + public static final int alternatorControl_period_offset_hex = 732; + public static final int alternatorControl_minValue_offset = 1844; + public static final int alternatorControl_minValue_offset_hex = 734; + public static final int alternatorControl_maxValue_offset = 1846; + public static final int alternatorControl_maxValue_offset_hex = 736; + public static final int etb_offset = 1848; + public static final int etb_offset_hex = 738; + public static final int etb_pFactor_offset = 1848; + public static final int etb_pFactor_offset_hex = 738; + public static final int etb_iFactor_offset = 1852; + public static final int etb_dFactor_offset = 1856; + public static final int etb_dFactor_offset_hex = 740; + public static final int etb_offset_offset = 1860; + public static final int etb_offset_offset_hex = 744; + public static final int etb_period_offset = 1862; + public static final int etb_period_offset_hex = 746; + public static final int etb_minValue_offset = 1864; + public static final int etb_minValue_offset_hex = 748; + public static final int etb_maxValue_offset = 1866; + public static final int warmupAfrPid_offset = 1868; + public static final int warmupAfrPid_pFactor_offset = 1868; + public static final int warmupAfrPid_iFactor_offset = 1872; + public static final int warmupAfrPid_iFactor_offset_hex = 750; + public static final int warmupAfrPid_dFactor_offset = 1876; + public static final int warmupAfrPid_dFactor_offset_hex = 754; + public static final int warmupAfrPid_offset_offset = 1880; + public static final int warmupAfrPid_offset_offset_hex = 758; + public static final int warmupAfrPid_period_offset = 1882; + public static final int warmupAfrPid_minValue_offset = 1884; + public static final int warmupAfrPid_maxValue_offset = 1886; public static final int mapErrorDetectionTooLow_offset = 1888; public static final int mapErrorDetectionTooLow_offset_hex = 760; public static final int mapErrorDetectionTooHigh_offset = 1892; @@ -748,9 +781,11 @@ public class Fields { public static final int idleRpmPid_dFactor_offset_hex = 774; public static final int idleRpmPid_offset_offset = 1912; public static final int idleRpmPid_offset_offset_hex = 778; - public static final int idleDT_offset = 1916; - public static final int unusedIdleControl_offset = 1920; - public static final int unusedIdleControl_offset_hex = 780; + public static final int idleRpmPid_period_offset = 1914; + public static final int idleRpmPid_minValue_offset = 1916; + public static final int idleRpmPid_maxValue_offset = 1918; + public static final int addedToWallCoef_offset = 1920; + public static final int addedToWallCoef_offset_hex = 780; public static final int communicationPin_offset = 1924; public static final int communicationPin_offset_hex = 784; public static final int runningPin_offset = 1928; @@ -764,27 +799,14 @@ public class Fields { public static final int consoleSerialRxPin_offset_hex = 798; public static final int knockNoise_offset = 1948; public static final int knockNoiseRpmBins_offset = 1980; - public static final int etb_offset = 2012; - public static final int etb_pFactor_offset = 2012; - public static final int etb_iFactor_offset = 2016; - public static final int etb_dFactor_offset = 2020; - public static final int etb_offset_offset = 2024; + public static final int unusedetb_offset = 2012; public static final int cltIdleRpmBins_offset = 2028; public static final int cltIdleRpm_offset = 2092; public static final int targetVBatt_offset = 2156; public static final int alternatorOffAboveTps_offset = 2160; public static final int alternatorOffAboveTps_offset_hex = 870; - public static final int alternatorDT_offset = 2164; - public static final int alternatorDT_offset_hex = 874; - public static final int alternatorControl_offset = 2168; - public static final int alternatorControl_offset_hex = 878; - public static final int alternatorControl_pFactor_offset = 2168; - public static final int alternatorControl_pFactor_offset_hex = 878; - public static final int alternatorControl_iFactor_offset = 2172; - public static final int alternatorControl_dFactor_offset = 2176; - public static final int alternatorControl_dFactor_offset_hex = 880; - public static final int alternatorControl_offset_offset = 2180; - public static final int alternatorControl_offset_offset_hex = 884; + public static final int unusedalternatorControl_offset = 2164; + public static final int unusedalternatorControl_offset_hex = 874; public static final int tpsAccelLength_offset = 2184; public static final int tpsAccelLength_offset_hex = 888; public static final int tpsAccelEnrichmentThreshold_offset = 2188; @@ -805,11 +827,7 @@ public class Fields { public static final int tpsDecelEnleanmentMultiplier_offset = 2236; public static final int slowAdcAlpha_offset = 2240; public static final int debugMode_offset = 2244; - public static final int warmupAfrPid_offset = 2248; - public static final int warmupAfrPid_pFactor_offset = 2248; - public static final int warmupAfrPid_iFactor_offset = 2252; - public static final int warmupAfrPid_dFactor_offset = 2256; - public static final int warmupAfrPid_offset_offset = 2260; + public static final int unusedwarmupAfrPid_offset = 2248; public static final int warmupTargetAfrBins_offset = 2264; public static final int warmupTargetAfr_offset = 2280; public static final int warmupAfrThreshold_offset = 2296; @@ -838,13 +856,7 @@ public class Fields { public static final int egoValueShift_offset_hex = 964; public static final int camInput_offset = 2408; public static final int camInput_offset_hex = 968; - public static final int auxPidDT1_offset = 2412; - public static final int auxPidDT2_offset = 2416; - public static final int auxPidDT2_offset_hex = 970; - public static final int auxPidDT3_offset = 2420; - public static final int auxPidDT3_offset_hex = 974; - public static final int auxPidDT4_offset = 2424; - public static final int auxPidDT4_offset_hex = 978; + public static final int unused4_offset = 2412; public static final int crankingIACposition_offset = 2428; public static final int tChargeMinRpmMinTps_offset = 2432; public static final int tChargeMinRpmMinTps_offset_hex = 980; @@ -868,26 +880,7 @@ public class Fields { public static final int storageMode_offset = 2476; public static final int cj125SpiDevice_offset = 2480; public static final int cj125CsPinMode_offset = 2484; - public static final int auxPid1_offset = 2488; - public static final int auxPid1_pFactor_offset = 2488; - public static final int auxPid1_iFactor_offset = 2492; - public static final int auxPid1_dFactor_offset = 2496; - public static final int auxPid1_offset_offset = 2500; - public static final int auxPid2_offset = 2504; - public static final int auxPid2_pFactor_offset = 2504; - public static final int auxPid2_iFactor_offset = 2508; - public static final int auxPid2_dFactor_offset = 2512; - public static final int auxPid2_offset_offset = 2516; - public static final int auxPid3_offset = 2520; - public static final int auxPid3_pFactor_offset = 2520; - public static final int auxPid3_iFactor_offset = 2524; - public static final int auxPid3_dFactor_offset = 2528; - public static final int auxPid3_offset_offset = 2532; - public static final int auxPid4_offset = 2536; - public static final int auxPid4_pFactor_offset = 2536; - public static final int auxPid4_iFactor_offset = 2540; - public static final int auxPid4_dFactor_offset = 2544; - public static final int auxPid4_offset_offset = 2548; + public static final int unusedauxPid_offset = 2488; public static final int vvtMode_offset = 2552; public static final int biQuad_offset = 2556; public static final int biQuad_a0_offset = 2556; @@ -933,7 +926,9 @@ public class Fields { public static final int fuelClosedLoopPid_iFactor_offset = 2744; public static final int fuelClosedLoopPid_dFactor_offset = 2748; public static final int fuelClosedLoopPid_offset_offset = 2752; - public static final int fuelClosedLoopAfrLowThreshold_offset = 2756; + public static final int fuelClosedLoopPid_period_offset = 2754; + public static final int fuelClosedLoopPid_minValue_offset = 2756; + public static final int fuelClosedLoopPid_maxValue_offset = 2758; public static final int fuelClosedLoopAfrHighThreshold_offset = 2760; public static final int stepperEnablePinMode_offset = 2764; public static final int cj125ua_offset = 2768; @@ -950,9 +945,8 @@ public class Fields { public static final int timing_offset_cylinder10_offset = 2812; public static final int timing_offset_cylinder11_offset = 2816; public static final int timing_offset_cylinder12_offset = 2820; - public static final int aux1PidMin_offset = 2824; - public static final int aux1PidMax_offset = 2826; - public static final int unusedThere_offset = 2828; + public static final int brakePedalPinMode_offset = 2824; + public static final int idlePidActivationTime_offset = 2828; public static final int sdCardSpiDevice_offset = 2832; public static final int spi3SckMode_offset = 2836; public static final int spi3MosiMode_offset = 2840; @@ -961,11 +955,39 @@ public class Fields { public static final int spi1MosiMode_offset = 2852; public static final int spi1MisoMode_offset = 2856; public static final int brakePedalPin_offset = 2860; - public static final int brakePedalPinMode_offset = 2864; - public static final int idleValvePidMin_offset = 2868; - public static final int idleValvePidMax_offset = 2870; - public static final int idlePidActivationTime_offset = 2872; - public static final int unused_offset = 2876; + public static final int auxPid1_offset = 2864; + public static final int auxPid1_pFactor_offset = 2864; + public static final int auxPid1_iFactor_offset = 2868; + public static final int auxPid1_dFactor_offset = 2872; + public static final int auxPid1_offset_offset = 2876; + public static final int auxPid1_period_offset = 2878; + public static final int auxPid1_minValue_offset = 2880; + public static final int auxPid1_maxValue_offset = 2882; + public static final int auxPid2_offset = 2884; + public static final int auxPid2_pFactor_offset = 2884; + public static final int auxPid2_iFactor_offset = 2888; + public static final int auxPid2_dFactor_offset = 2892; + public static final int auxPid2_offset_offset = 2896; + public static final int auxPid2_period_offset = 2898; + public static final int auxPid2_minValue_offset = 2900; + public static final int auxPid2_maxValue_offset = 2902; + public static final int auxPid3_offset = 2904; + public static final int auxPid3_pFactor_offset = 2904; + public static final int auxPid3_iFactor_offset = 2908; + public static final int auxPid3_dFactor_offset = 2912; + public static final int auxPid3_offset_offset = 2916; + public static final int auxPid3_period_offset = 2918; + public static final int auxPid3_minValue_offset = 2920; + public static final int auxPid3_maxValue_offset = 2922; + public static final int auxPid4_offset = 2924; + public static final int auxPid4_pFactor_offset = 2924; + public static final int auxPid4_iFactor_offset = 2928; + public static final int auxPid4_dFactor_offset = 2932; + public static final int auxPid4_offset_offset = 2936; + public static final int auxPid4_period_offset = 2938; + public static final int auxPid4_minValue_offset = 2940; + public static final int auxPid4_maxValue_offset = 2942; + public static final int unusedEnd_offset = 2944; public static final int le_formulas1_offset = 3048; public static final int le_formulas2_offset = 3248; public static final int le_formulas3_offset = 3448; @@ -1270,7 +1292,7 @@ public class Fields { public static final Field FUELLEVELFULLTANKVOLTAGE = Field.create("FUELLEVELFULLTANKVOLTAGE", 888, FieldType.FLOAT); public static final String[] ego_sensor_e = {"BPSX", "Innovate", "14Point7", "Narrow", "PLX"}; public static final Field AFR_TYPE = Field.create("AFR_TYPE", 892, FieldType.INT, ego_sensor_e); - public static final Field ETBDT = Field.create("ETBDT", 896, FieldType.INT); + public static final Field FUELCLOSEDLOOPAFRLOWTHRESHOLD = Field.create("FUELCLOSEDLOOPAFRLOWTHRESHOLD", 896, FieldType.FLOAT); public static final Field HIP9011CSPINMODE = Field.create("HIP9011CSPINMODE", 900, FieldType.INT, pin_output_mode_e); public static final Field TACHOUTPUTPIN = Field.create("TACHOUTPUTPIN", 904, FieldType.INT, brain_pin_e); public static final Field TACHOUTPUTPINMODE = Field.create("TACHOUTPUTPINMODE", 908, FieldType.INT, pin_output_mode_e); @@ -1363,8 +1385,7 @@ public class Fields { public static final Field GPIOPINMODES15 = Field.create("GPIOPINMODES15", 1188, FieldType.INT, pin_output_mode_e); public static final Field GPIOPINMODES16 = Field.create("GPIOPINMODES16", 1192, FieldType.INT, pin_output_mode_e); public static final Field CONSOLEUARTDEVICE = Field.create("CONSOLEUARTDEVICE", 1196, FieldType.INT); - public static final Field ALTERNATORPIDMIN = Field.create("ALTERNATORPIDMIN", 1200, FieldType.INT); - public static final Field ALTERNATORPIDMAX = Field.create("ALTERNATORPIDMAX", 1202, FieldType.INT); + public static final Field UNUSED1 = Field.create("UNUSED1", 1200, FieldType.INT); public static final Field IDLEPIDDEACTIVATIONTPSTHRESHOLD = Field.create("IDLEPIDDEACTIVATIONTPSTHRESHOLD", 1204, FieldType.INT); public static final Field UNUSEDHERE = Field.create("UNUSEDHERE", 1206, FieldType.INT); public static final Field NB2RATIOFROM = Field.create("NB2RATIOFROM", 1208, FieldType.FLOAT); @@ -1527,33 +1548,46 @@ public class Fields { public static final Field TACHPULSEDURACTIONMS = Field.create("TACHPULSEDURACTIONMS", 1816, FieldType.FLOAT); public static final Field TACHPULSETRIGGERINDEX = Field.create("TACHPULSETRIGGERINDEX", 1820, FieldType.INT); public static final Field SUCKEDOFFCOEF = Field.create("SUCKEDOFFCOEF", 1824, FieldType.FLOAT); - public static final Field ADDEDTOWALLCOEF = Field.create("ADDEDTOWALLCOEF", 1856, FieldType.FLOAT); + public static final Field ALTERNATORCONTROL_PFACTOR = Field.create("ALTERNATORCONTROL_PFACTOR", 1828, FieldType.FLOAT); + public static final Field ALTERNATORCONTROL_IFACTOR = Field.create("ALTERNATORCONTROL_IFACTOR", 1832, FieldType.FLOAT); + public static final Field ALTERNATORCONTROL_DFACTOR = Field.create("ALTERNATORCONTROL_DFACTOR", 1836, FieldType.FLOAT); + public static final Field ALTERNATORCONTROL_OFFSET = Field.create("ALTERNATORCONTROL_OFFSET", 1840, FieldType.INT); + public static final Field ALTERNATORCONTROL_PERIOD = Field.create("ALTERNATORCONTROL_PERIOD", 1842, FieldType.INT); + public static final Field ALTERNATORCONTROL_MINVALUE = Field.create("ALTERNATORCONTROL_MINVALUE", 1844, FieldType.INT); + public static final Field ALTERNATORCONTROL_MAXVALUE = Field.create("ALTERNATORCONTROL_MAXVALUE", 1846, FieldType.INT); + public static final Field ETB_PFACTOR = Field.create("ETB_PFACTOR", 1848, FieldType.FLOAT); + public static final Field ETB_IFACTOR = Field.create("ETB_IFACTOR", 1852, FieldType.FLOAT); + public static final Field ETB_DFACTOR = Field.create("ETB_DFACTOR", 1856, FieldType.FLOAT); + public static final Field ETB_OFFSET = Field.create("ETB_OFFSET", 1860, FieldType.INT); + public static final Field ETB_PERIOD = Field.create("ETB_PERIOD", 1862, FieldType.INT); + public static final Field ETB_MINVALUE = Field.create("ETB_MINVALUE", 1864, FieldType.INT); + public static final Field ETB_MAXVALUE = Field.create("ETB_MAXVALUE", 1866, FieldType.INT); + public static final Field WARMUPAFRPID_PFACTOR = Field.create("WARMUPAFRPID_PFACTOR", 1868, FieldType.FLOAT); + public static final Field WARMUPAFRPID_IFACTOR = Field.create("WARMUPAFRPID_IFACTOR", 1872, FieldType.FLOAT); + public static final Field WARMUPAFRPID_DFACTOR = Field.create("WARMUPAFRPID_DFACTOR", 1876, FieldType.FLOAT); + public static final Field WARMUPAFRPID_OFFSET = Field.create("WARMUPAFRPID_OFFSET", 1880, FieldType.INT); + public static final Field WARMUPAFRPID_PERIOD = Field.create("WARMUPAFRPID_PERIOD", 1882, FieldType.INT); + public static final Field WARMUPAFRPID_MINVALUE = Field.create("WARMUPAFRPID_MINVALUE", 1884, FieldType.INT); + public static final Field WARMUPAFRPID_MAXVALUE = Field.create("WARMUPAFRPID_MAXVALUE", 1886, FieldType.INT); public static final Field MAPERRORDETECTIONTOOLOW = Field.create("MAPERRORDETECTIONTOOLOW", 1888, FieldType.FLOAT); public static final Field MAPERRORDETECTIONTOOHIGH = Field.create("MAPERRORDETECTIONTOOHIGH", 1892, FieldType.FLOAT); public static final Field STEP1RPMWINDOW = Field.create("STEP1RPMWINDOW", 1896, FieldType.INT); public static final Field IDLERPMPID_PFACTOR = Field.create("IDLERPMPID_PFACTOR", 1900, FieldType.FLOAT); public static final Field IDLERPMPID_IFACTOR = Field.create("IDLERPMPID_IFACTOR", 1904, FieldType.FLOAT); public static final Field IDLERPMPID_DFACTOR = Field.create("IDLERPMPID_DFACTOR", 1908, FieldType.FLOAT); - public static final Field IDLERPMPID_OFFSET = Field.create("IDLERPMPID_OFFSET", 1912, FieldType.FLOAT); - public static final Field IDLEDT = Field.create("IDLEDT", 1916, FieldType.INT); - public static final Field UNUSEDIDLECONTROL = Field.create("UNUSEDIDLECONTROL", 1920, FieldType.INT); + public static final Field IDLERPMPID_OFFSET = Field.create("IDLERPMPID_OFFSET", 1912, FieldType.INT); + public static final Field IDLERPMPID_PERIOD = Field.create("IDLERPMPID_PERIOD", 1914, FieldType.INT); + public static final Field IDLERPMPID_MINVALUE = Field.create("IDLERPMPID_MINVALUE", 1916, FieldType.INT); + public static final Field IDLERPMPID_MAXVALUE = Field.create("IDLERPMPID_MAXVALUE", 1918, FieldType.INT); + public static final Field ADDEDTOWALLCOEF = Field.create("ADDEDTOWALLCOEF", 1920, FieldType.FLOAT); public static final Field COMMUNICATIONPIN = Field.create("COMMUNICATIONPIN", 1924, FieldType.INT, brain_pin_e); public static final Field RUNNINGPIN = Field.create("RUNNINGPIN", 1928, FieldType.INT, brain_pin_e); public static final Field BINARYSERIALTXPIN = Field.create("BINARYSERIALTXPIN", 1932, FieldType.INT, brain_pin_e); public static final Field BINARYSERIALRXPIN = Field.create("BINARYSERIALRXPIN", 1936, FieldType.INT, brain_pin_e); public static final Field CONSOLESERIALTXPIN = Field.create("CONSOLESERIALTXPIN", 1940, FieldType.INT, brain_pin_e); public static final Field CONSOLESERIALRXPIN = Field.create("CONSOLESERIALRXPIN", 1944, FieldType.INT, brain_pin_e); - public static final Field ETB_PFACTOR = Field.create("ETB_PFACTOR", 2012, FieldType.FLOAT); - public static final Field ETB_IFACTOR = Field.create("ETB_IFACTOR", 2016, FieldType.FLOAT); - public static final Field ETB_DFACTOR = Field.create("ETB_DFACTOR", 2020, FieldType.FLOAT); - public static final Field ETB_OFFSET = Field.create("ETB_OFFSET", 2024, FieldType.FLOAT); public static final Field TARGETVBATT = Field.create("TARGETVBATT", 2156, FieldType.FLOAT); public static final Field ALTERNATOROFFABOVETPS = Field.create("ALTERNATOROFFABOVETPS", 2160, FieldType.FLOAT); - public static final Field ALTERNATORDT = Field.create("ALTERNATORDT", 2164, FieldType.INT); - public static final Field ALTERNATORCONTROL_PFACTOR = Field.create("ALTERNATORCONTROL_PFACTOR", 2168, FieldType.FLOAT); - public static final Field ALTERNATORCONTROL_IFACTOR = Field.create("ALTERNATORCONTROL_IFACTOR", 2172, FieldType.FLOAT); - public static final Field ALTERNATORCONTROL_DFACTOR = Field.create("ALTERNATORCONTROL_DFACTOR", 2176, FieldType.FLOAT); - public static final Field ALTERNATORCONTROL_OFFSET = Field.create("ALTERNATORCONTROL_OFFSET", 2180, FieldType.FLOAT); public static final Field TPSACCELLENGTH = Field.create("TPSACCELLENGTH", 2184, FieldType.INT); public static final Field TPSACCELENRICHMENTTHRESHOLD = Field.create("TPSACCELENRICHMENTTHRESHOLD", 2188, FieldType.FLOAT); public static final Field VVTOFFSET = Field.create("VVTOFFSET", 2192, FieldType.FLOAT); @@ -1571,10 +1605,6 @@ public class Fields { public static final Field SLOWADCALPHA = Field.create("SLOWADCALPHA", 2240, 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", "VSS", "SD card", "sr5", "Knock", "Trigger Sync", "Electronic Throttle", "mode18", "mode19", "mode20", "mode21", "mode22"}; public static final Field DEBUGMODE = Field.create("DEBUGMODE", 2244, FieldType.INT, debug_mode_e); - public static final Field WARMUPAFRPID_PFACTOR = Field.create("WARMUPAFRPID_PFACTOR", 2248, FieldType.FLOAT); - public static final Field WARMUPAFRPID_IFACTOR = Field.create("WARMUPAFRPID_IFACTOR", 2252, FieldType.FLOAT); - public static final Field WARMUPAFRPID_DFACTOR = Field.create("WARMUPAFRPID_DFACTOR", 2256, FieldType.FLOAT); - public static final Field WARMUPAFRPID_OFFSET = Field.create("WARMUPAFRPID_OFFSET", 2260, FieldType.FLOAT); public static final Field WARMUPAFRTHRESHOLD = Field.create("WARMUPAFRTHRESHOLD", 2296, FieldType.FLOAT); public static final Field BOOSTCUTPRESSURE = Field.create("BOOSTCUTPRESSURE", 2300, FieldType.FLOAT); public static final Field DIZZYSPARKOUTPUTPIN = Field.create("DIZZYSPARKOUTPUTPIN", 2368, FieldType.INT, brain_pin_e); @@ -1588,10 +1618,6 @@ public class Fields { public static final Field MAPHIGHVALUEVOLTAGE = Field.create("MAPHIGHVALUEVOLTAGE", 2400, FieldType.FLOAT); public static final Field EGOVALUESHIFT = Field.create("EGOVALUESHIFT", 2404, FieldType.FLOAT); public static final Field CAMINPUT = Field.create("CAMINPUT", 2408, FieldType.INT, brain_input_pin_e); - public static final Field AUXPIDDT1 = Field.create("AUXPIDDT1", 2412, FieldType.INT); - public static final Field AUXPIDDT2 = Field.create("AUXPIDDT2", 2416, FieldType.INT); - public static final Field AUXPIDDT3 = Field.create("AUXPIDDT3", 2420, FieldType.INT); - public static final Field AUXPIDDT4 = Field.create("AUXPIDDT4", 2424, FieldType.INT); public static final Field CRANKINGIACPOSITION = Field.create("CRANKINGIACPOSITION", 2428, FieldType.INT); public static final Field TCHARGEMINRPMMINTPS = Field.create("TCHARGEMINRPMMINTPS", 2432, FieldType.FLOAT); public static final Field TCHARGEMINRPMMAXTPS = Field.create("TCHARGEMINRPMMAXTPS", 2436, FieldType.FLOAT); @@ -1610,22 +1636,6 @@ public class Fields { public static final Field STORAGEMODE = Field.create("STORAGEMODE", 2476, FieldType.INT, mass_storage_e); public static final Field CJ125SPIDEVICE = Field.create("CJ125SPIDEVICE", 2480, FieldType.INT); public static final Field CJ125CSPINMODE = Field.create("CJ125CSPINMODE", 2484, FieldType.INT, pin_output_mode_e); - public static final Field AUXPID1_PFACTOR = Field.create("AUXPID1_PFACTOR", 2488, FieldType.FLOAT); - public static final Field AUXPID1_IFACTOR = Field.create("AUXPID1_IFACTOR", 2492, FieldType.FLOAT); - public static final Field AUXPID1_DFACTOR = Field.create("AUXPID1_DFACTOR", 2496, FieldType.FLOAT); - public static final Field AUXPID1_OFFSET = Field.create("AUXPID1_OFFSET", 2500, FieldType.FLOAT); - public static final Field AUXPID2_PFACTOR = Field.create("AUXPID2_PFACTOR", 2504, FieldType.FLOAT); - public static final Field AUXPID2_IFACTOR = Field.create("AUXPID2_IFACTOR", 2508, FieldType.FLOAT); - public static final Field AUXPID2_DFACTOR = Field.create("AUXPID2_DFACTOR", 2512, FieldType.FLOAT); - public static final Field AUXPID2_OFFSET = Field.create("AUXPID2_OFFSET", 2516, FieldType.FLOAT); - public static final Field AUXPID3_PFACTOR = Field.create("AUXPID3_PFACTOR", 2520, FieldType.FLOAT); - public static final Field AUXPID3_IFACTOR = Field.create("AUXPID3_IFACTOR", 2524, FieldType.FLOAT); - public static final Field AUXPID3_DFACTOR = Field.create("AUXPID3_DFACTOR", 2528, FieldType.FLOAT); - public static final Field AUXPID3_OFFSET = Field.create("AUXPID3_OFFSET", 2532, FieldType.FLOAT); - public static final Field AUXPID4_PFACTOR = Field.create("AUXPID4_PFACTOR", 2536, FieldType.FLOAT); - public static final Field AUXPID4_IFACTOR = Field.create("AUXPID4_IFACTOR", 2540, FieldType.FLOAT); - public static final Field AUXPID4_DFACTOR = Field.create("AUXPID4_DFACTOR", 2544, FieldType.FLOAT); - public static final Field AUXPID4_OFFSET = Field.create("AUXPID4_OFFSET", 2548, FieldType.FLOAT); public static final String[] vvt_mode_e = {"First half", "Second half", "2GZ", "Miata NB2", "mode4", "mode5", "mode6", "mode7"}; public static final Field VVTMODE = Field.create("VVTMODE", 2552, FieldType.INT, vvt_mode_e); public static final Field BIQUAD_A0 = Field.create("BIQUAD_A0", 2556, FieldType.FLOAT); @@ -1663,8 +1673,10 @@ public class Fields { public static final Field FUELCLOSEDLOOPPID_PFACTOR = Field.create("FUELCLOSEDLOOPPID_PFACTOR", 2740, FieldType.FLOAT); public static final Field FUELCLOSEDLOOPPID_IFACTOR = Field.create("FUELCLOSEDLOOPPID_IFACTOR", 2744, FieldType.FLOAT); public static final Field FUELCLOSEDLOOPPID_DFACTOR = Field.create("FUELCLOSEDLOOPPID_DFACTOR", 2748, FieldType.FLOAT); - public static final Field FUELCLOSEDLOOPPID_OFFSET = Field.create("FUELCLOSEDLOOPPID_OFFSET", 2752, FieldType.FLOAT); - public static final Field FUELCLOSEDLOOPAFRLOWTHRESHOLD = Field.create("FUELCLOSEDLOOPAFRLOWTHRESHOLD", 2756, FieldType.FLOAT); + public static final Field FUELCLOSEDLOOPPID_OFFSET = Field.create("FUELCLOSEDLOOPPID_OFFSET", 2752, FieldType.INT); + public static final Field FUELCLOSEDLOOPPID_PERIOD = Field.create("FUELCLOSEDLOOPPID_PERIOD", 2754, FieldType.INT); + public static final Field FUELCLOSEDLOOPPID_MINVALUE = Field.create("FUELCLOSEDLOOPPID_MINVALUE", 2756, FieldType.INT); + public static final Field FUELCLOSEDLOOPPID_MAXVALUE = Field.create("FUELCLOSEDLOOPPID_MAXVALUE", 2758, FieldType.INT); public static final Field FUELCLOSEDLOOPAFRHIGHTHRESHOLD = Field.create("FUELCLOSEDLOOPAFRHIGHTHRESHOLD", 2760, FieldType.FLOAT); public static final Field STEPPERENABLEPINMODE = Field.create("STEPPERENABLEPINMODE", 2764, FieldType.INT, pin_mode_e); public static final Field CJ125UA = Field.create("CJ125UA", 2768, FieldType.INT, adc_channel_e); @@ -1681,9 +1693,8 @@ public class Fields { public static final Field TIMING_OFFSET_CYLINDER10 = Field.create("TIMING_OFFSET_CYLINDER10", 2812, FieldType.INT); public static final Field TIMING_OFFSET_CYLINDER11 = Field.create("TIMING_OFFSET_CYLINDER11", 2816, FieldType.INT); public static final Field TIMING_OFFSET_CYLINDER12 = Field.create("TIMING_OFFSET_CYLINDER12", 2820, FieldType.INT); - public static final Field AUX1PIDMIN = Field.create("AUX1PIDMIN", 2824, FieldType.INT); - public static final Field AUX1PIDMAX = Field.create("AUX1PIDMAX", 2826, FieldType.INT); - public static final Field UNUSEDTHERE = Field.create("UNUSEDTHERE", 2828, FieldType.INT); + public static final Field BRAKEPEDALPINMODE = Field.create("BRAKEPEDALPINMODE", 2824, FieldType.INT); + public static final Field IDLEPIDACTIVATIONTIME = Field.create("IDLEPIDACTIVATIONTIME", 2828, FieldType.FLOAT); public static final Field SDCARDSPIDEVICE = Field.create("SDCARDSPIDEVICE", 2832, FieldType.INT); public static final Field SPI3SCKMODE = Field.create("SPI3SCKMODE", 2836, FieldType.INT, pin_mode_e); public static final Field SPI3MOSIMODE = Field.create("SPI3MOSIMODE", 2840, FieldType.INT, pin_mode_e); @@ -1692,10 +1703,34 @@ public class Fields { public static final Field SPI1MOSIMODE = Field.create("SPI1MOSIMODE", 2852, FieldType.INT, pin_mode_e); public static final Field SPI1MISOMODE = Field.create("SPI1MISOMODE", 2856, FieldType.INT, pin_mode_e); public static final Field BRAKEPEDALPIN = Field.create("BRAKEPEDALPIN", 2860, FieldType.INT, brain_pin_e); - public static final Field BRAKEPEDALPINMODE = Field.create("BRAKEPEDALPINMODE", 2864, FieldType.INT); - public static final Field IDLEVALVEPIDMIN = Field.create("IDLEVALVEPIDMIN", 2868, FieldType.INT); - public static final Field IDLEVALVEPIDMAX = Field.create("IDLEVALVEPIDMAX", 2870, FieldType.INT); - public static final Field IDLEPIDACTIVATIONTIME = Field.create("IDLEPIDACTIVATIONTIME", 2872, FieldType.FLOAT); + public static final Field AUXPID1_PFACTOR = Field.create("AUXPID1_PFACTOR", 2864, FieldType.FLOAT); + public static final Field AUXPID1_IFACTOR = Field.create("AUXPID1_IFACTOR", 2868, FieldType.FLOAT); + public static final Field AUXPID1_DFACTOR = Field.create("AUXPID1_DFACTOR", 2872, FieldType.FLOAT); + public static final Field AUXPID1_OFFSET = Field.create("AUXPID1_OFFSET", 2876, FieldType.INT); + public static final Field AUXPID1_PERIOD = Field.create("AUXPID1_PERIOD", 2878, FieldType.INT); + public static final Field AUXPID1_MINVALUE = Field.create("AUXPID1_MINVALUE", 2880, FieldType.INT); + public static final Field AUXPID1_MAXVALUE = Field.create("AUXPID1_MAXVALUE", 2882, FieldType.INT); + public static final Field AUXPID2_PFACTOR = Field.create("AUXPID2_PFACTOR", 2884, FieldType.FLOAT); + public static final Field AUXPID2_IFACTOR = Field.create("AUXPID2_IFACTOR", 2888, FieldType.FLOAT); + public static final Field AUXPID2_DFACTOR = Field.create("AUXPID2_DFACTOR", 2892, FieldType.FLOAT); + public static final Field AUXPID2_OFFSET = Field.create("AUXPID2_OFFSET", 2896, FieldType.INT); + public static final Field AUXPID2_PERIOD = Field.create("AUXPID2_PERIOD", 2898, FieldType.INT); + public static final Field AUXPID2_MINVALUE = Field.create("AUXPID2_MINVALUE", 2900, FieldType.INT); + public static final Field AUXPID2_MAXVALUE = Field.create("AUXPID2_MAXVALUE", 2902, FieldType.INT); + public static final Field AUXPID3_PFACTOR = Field.create("AUXPID3_PFACTOR", 2904, FieldType.FLOAT); + public static final Field AUXPID3_IFACTOR = Field.create("AUXPID3_IFACTOR", 2908, FieldType.FLOAT); + public static final Field AUXPID3_DFACTOR = Field.create("AUXPID3_DFACTOR", 2912, FieldType.FLOAT); + public static final Field AUXPID3_OFFSET = Field.create("AUXPID3_OFFSET", 2916, FieldType.INT); + public static final Field AUXPID3_PERIOD = Field.create("AUXPID3_PERIOD", 2918, FieldType.INT); + public static final Field AUXPID3_MINVALUE = Field.create("AUXPID3_MINVALUE", 2920, FieldType.INT); + public static final Field AUXPID3_MAXVALUE = Field.create("AUXPID3_MAXVALUE", 2922, FieldType.INT); + public static final Field AUXPID4_PFACTOR = Field.create("AUXPID4_PFACTOR", 2924, FieldType.FLOAT); + public static final Field AUXPID4_IFACTOR = Field.create("AUXPID4_IFACTOR", 2928, FieldType.FLOAT); + public static final Field AUXPID4_DFACTOR = Field.create("AUXPID4_DFACTOR", 2932, FieldType.FLOAT); + public static final Field AUXPID4_OFFSET = Field.create("AUXPID4_OFFSET", 2936, FieldType.INT); + public static final Field AUXPID4_PERIOD = Field.create("AUXPID4_PERIOD", 2938, FieldType.INT); + public static final Field AUXPID4_MINVALUE = Field.create("AUXPID4_MINVALUE", 2940, FieldType.INT); + public static final Field AUXPID4_MAXVALUE = Field.create("AUXPID4_MAXVALUE", 2942, FieldType.INT); public static final Field LE_FORMULAS1 = Field.create("LE_FORMULAS1", 3048, FieldType.INT); public static final Field LE_FORMULAS2 = Field.create("LE_FORMULAS2", 3248, FieldType.INT); public static final Field LE_FORMULAS3 = Field.create("LE_FORMULAS3", 3448, FieldType.INT);