PJSC(Pump Jet Solenoid Controller)はArduinoを使用したバイク用燃料噴射コントローラです。このプロジェクトは、オープンソースECUプロジェクト『Speeduino』をベースにしています。
[PJSC v1.10]
- ベーシックディストリビュータ―デコーダーの独立トリガー数モードで回転数が2倍になる問題を修正
- 排気ガス温度の計測値が間違っている問題を修正
@@ -2864,13 +2864,13 @@ | ||
2864 | 2864 | dialog = analogInputPort1_controls, "", border ; | |
2865 | 2865 | panel = analogInputPort1select, West ; | |
2866 | 2866 | field = "" ; | |
2867 | - panel = captExValveSetting, East, { analogInputPortSelect == 1 } ; | | |
2867 | + panel = captExValveSetting, East, { analogInputPortSelect == 1 || pinLayout != 70 } ; | | |
2868 | 2868 | ; | |
2869 | 2869 | dialog = analogInputPort1,"Analog Input Port1", xAxis ; | |
2870 | 2870 | panel = analogInputPort1_controls ; | |
2871 | 2871 | ; | |
2872 | 2872 | dialog = analogInputPort2_settings, "" ; |[PJSC v1.03] |
2873 | - panel = calibrateEGTsetting, { analogInputPortSelect2 == 2 } ; | | |
2873 | + panel = calibrateEGTsetting, { analogInputPortSelect2 == 2 || pinLayout != 70 } ; | | |
2874 | 2874 | ; | |
2875 | 2875 | dialog = analogInputPort2_controls, "", border ; |[PJSC v1.03] |
2876 | 2876 | panel = analogInputPort2select, West ; | | |
@@ -5950,15 +5950,16 @@ | ||
5950 | 5950 | AuxInGauge15 = auxin_gauge15, { stringValue(AUXin15Alias) }, "", 0, 1024, -1, -1, 1025, 1025, 0, 0 |
5951 | 5951 | |
5952 | 5952 | gaugeCategory = "System Data" |
5953 | - clockGauge = secl, "Clock", "Seconds", 0, 255, 10, 10, 245, 245, 0, 0 | |
5954 | - loopGauge = loopsPerSecond,"Main loop speed", "Loops/S" , 0, 5000, 750, 900, 100000, 100000, 0, 0 | |
5955 | - loopsPerRevGauge = loopsPerRev, "Main loops per revolution", "Loops/rev", 0, 100, 10, 15, 10000, 10000, 2, 0 | |
5956 | - memoryGauge = freeRAM, "Free memory", "bytes" , 0, 8000, -1, 1000,8000, 1000, 0, 0 | |
5957 | - reqFuelGauge = req_fuel, "Req. Fuel", "ms", 0, 35.0, 1.0, 1.2, 20, 25, 2, 2 | |
5958 | - mapMultiplyGauge = map_multiply_amt, "MAP Multiply", "%", 0, 200, 130, 140, 140, 150, 0, 0 | |
5959 | - nSquirtsGauge = nSquirts, "# Squirts", "", 0, 10, 130, 140, 140, 150, 0, 0 | |
5960 | - syncLossGauge = syncLossCounter, "# Sync Losses", "", 0, 255, -1, -1, 10, 50, 0, 0 | |
5961 | - injcountGauge = testCnt, "Pulse Count", "pulses", 0, 1000, -1, -1, 65535, 65535, 0, 0 ;[PJSC v1.01] For test mode | |
5953 | + clockGauge = secl, "Clock", "Seconds", 0, 255, 10, 10, 245, 245, 0, 0 | |
5954 | + loopGauge = loopsPerSecond,"Main loop speed", "Loops/S" , 0, 5000, 750, 900, 100000, 100000, 0, 0 | |
5955 | + loopsPerRevGauge = loopsPerRev, "Main loops per revolution", "Loops/rev", 0, 100, 10, 15, 10000, 10000, 2, 0 | |
5956 | + memoryGauge = freeRAM, "Free memory", "bytes" , 0, 8000, -1, 1000, 8000, 1000, 0, 0 | |
5957 | + reqFuelGauge = req_fuel, "Req. Fuel", "ms", 0, 35.0, 1.0, 1.2, 20, 25, 2, 2 ;[PJSC v1.10] | |
5958 | + reqFuelUsGauge = req_fuel_uS, "Req. Fuel us", "us", 0, 10000, 0, 0, 10000, 10000, 0, 0 ;[PJSC v1.10] | |
5959 | + mapMultiplyGauge = map_multiply_amt, "MAP Multiply", "%", 0, 200, 130, 140, 140, 150, 0, 0 | |
5960 | + nSquirtsGauge = nSquirts, "# Squirts", "", 0, 10, 130, 140, 140, 150, 0, 0 | |
5961 | + syncLossGauge = syncLossCounter, "# Sync Losses", "", 0, 255, -1, -1, 10, 50, 0, 0 | |
5962 | + injcountGauge = testCnt, "Pulse Count", "pulses", 0, 1000, -1, -1, 65535, 65535, 0, 0 ;[PJSC v1.01] For test mode | |
5962 | 5963 | ;------------------------------------------------------------------------------- |
5963 | 5964 | |
5964 | 5965 | [FrontPage] |
@@ -6047,7 +6048,7 @@ | ||
6047 | 6048 | |
6048 | 6049 | ochGetCommand = "r\$tsCanId\x30%2o%2c" |
6049 | 6050 | ;[PJSC v1.10] ochBlockSize = 127 |
6050 | - ochBlockSize = 162 ;[PJSC v1.10] | |
6051 | + ochBlockSize = 165 ;[PJSC v1.10] | |
6051 | 6052 | |
6052 | 6053 | secl = scalar, U08, 0, "sec", 1.000, 0.000 |
6053 | 6054 | status1 = scalar, U08, 1, "bits", 1.000, 0.000 |
@@ -6219,13 +6220,14 @@ | ||
6219 | 6220 | dutyRatio2 = scalar, U16, 143, "%", 1.000, 0.000 |
6220 | 6221 | extTriggerAngle = scalar, U16, 145, "deg", 1.000, 0.000 |
6221 | 6222 | extTriggerAngle_last = scalar, U16, 147, "deg", 1.000, 0.000 |
6222 | - EGTADC = scalar, U08, 149, "ADC", 1.000, 0.000 | |
6223 | - fuelLoad3 = scalar, S16, 150, { bitStringValue( algorithmUnits , algorithm ) }, fuelLoadFeedBack, 0.000 | |
6224 | - fuelLoad4 = scalar, S16, 152, { bitStringValue( algorithmUnits , algorithm ) }, fuelLoadFeedBack, 0.000 | |
6225 | - extTriggerRPM = scalar, U16, 154, "rpm", 1.000, 0.000 | |
6226 | - extTriggerLoad = scalar, S16, 156, { bitStringValue( algorithmUnits , ignAlgorithm ) }, ignLoadFeedBack, 0.000 | |
6227 | - testCnt = scalar, U16, 158, "", 1.000, 0.000 | |
6228 | - ignGap = scalar, U16, 160, "us", 1.000, 0.000 | |
6223 | + EGTADC = scalar, U16, 149, "ADC", 1.000, 0.000 | |
6224 | + fuelLoad3 = scalar, S16, 151, { bitStringValue( algorithmUnits , algorithm ) }, fuelLoadFeedBack, 0.000 | |
6225 | + fuelLoad4 = scalar, S16, 153, { bitStringValue( algorithmUnits , algorithm ) }, fuelLoadFeedBack, 0.000 | |
6226 | + extTriggerRPM = scalar, U16, 155, "rpm", 1.000, 0.000 | |
6227 | + extTriggerLoad = scalar, S16, 157, { bitStringValue( algorithmUnits , ignAlgorithm ) }, ignLoadFeedBack, 0.000 | |
6228 | + testCnt = scalar, U16, 159, "", 1.000, 0.000 | |
6229 | + ignGap = scalar, U16, 161, "us", 1.000, 0.000 | |
6230 | + req_fuel_uS = scalar, U16, 163, "us", 1.000, 0.000 | |
6229 | 6231 | ;******************** [PJSC v1.10] ******************** |
6230 | 6232 | ;sd_filenum = scalar, U16, 125, "", 1, 0 |
6231 | 6233 | ;sd_error = scalar, U08, 127, "", 1, 0 |
@@ -6375,46 +6377,46 @@ | ||
6375 | 6377 | entry = TPSdot, "TPS DOT", int, "%d", { aeMode == 0 } |
6376 | 6378 | entry = advance, "Advance (Current)",int, "%d" |
6377 | 6379 | entry = dwell, "Dwell", float, "%.3f" |
6378 | - entry = dwellActual, "Dwell (Measured)", float, "%.3f", { perToothIgn } | |
6380 | + entry = dwellActual, "Dwell (Measured)", float, "%.3f", { perToothIgn } | |
6379 | 6381 | entry = batteryVoltage, "Battery V", float, "%.1f" |
6380 | 6382 | entry = rpmDOT, "rpm/s", int, "%d" |
6381 | - entry = flex, "Eth %", int, "%d", { flexEnabled } | |
6382 | - entry = flexFuelCor, "GflexFuel", int, "%d", { flexEnabled } | |
6383 | - entry = fuelTemp, "Fuel Temp", int, "%d", { flexEnabled } | |
6384 | - entry = fuelTempCor, "GfuelTemp", int, "%d", { flexEnabled } | |
6385 | - entry = errorNum, "Error #", int, "%d", { errorNum } | |
6386 | - entry = currentError, "Error ID", int, "%d", { errorNum } | |
6383 | + entry = flex, "Eth %", int, "%d", { flexEnabled } | |
6384 | + entry = flexFuelCor, "GflexFuel", int, "%d", { flexEnabled } | |
6385 | + entry = fuelTemp, "Fuel Temp", int, "%d", { flexEnabled } | |
6386 | + entry = fuelTempCor, "GfuelTemp", int, "%d", { flexEnabled } | |
6387 | + entry = errorNum, "Error #", int, "%d", { errorNum } | |
6388 | + entry = currentError, "Error ID", int, "%d", { errorNum } | |
6387 | 6389 | entry = map_psi, "Boost PSI", float, "%.1f" |
6388 | - entry = boostTarget, "Boost Target", int, "%d", { boostEnabled } | |
6389 | - entry = boostDuty, "Boost Duty", int, "%d", { boostEnabled } | |
6390 | + entry = boostTarget, "Boost Target", int, "%d", { boostEnabled } | |
6391 | + entry = boostDuty, "Boost Duty", int, "%d", { boostEnabled } | |
6390 | 6392 | entry = boostCutOut , "Boost cut", int, "%d" |
6391 | 6393 | entry = launchHard , "Hard Launch", int, "%d" |
6392 | 6394 | entry = hardLimitOn , "Hard Limiter", int, "%d" |
6393 | 6395 | entry = idleControlOn, "Idle Control", int, "%d" |
6394 | 6396 | entry = idleLoad, "IAC value", int, "%d" |
6395 | - entry = CLIdleTarget, "Idle Target RPM", int, "%d", { iacAlgorithm == 3 || iacAlgorithm == 5 || iacAlgorithm == 6 || iacAlgorithm == 7 || idleAdvEnabled >= 1 } ;Only show for closed loop idle modes and if idle advance is enabled | |
6396 | - entry = CLIdleDelta, "Idle RPM Delta", int, "%d", { iacAlgorithm == 3 || iacAlgorithm == 5 || iacAlgorithm == 6 || iacAlgorithm == 7 || idleAdvEnabled >= 1 } ;Only show for closed loop idle modes and if idle advance is enabled | |
6397 | + entry = CLIdleTarget, "Idle Target RPM", int, "%d", { iacAlgorithm == 3 || iacAlgorithm == 5 || iacAlgorithm == 6 || iacAlgorithm == 7 || idleAdvEnabled >= 1 } ;Only show for closed loop idle modes and if idle advance is enabled | |
6398 | + entry = CLIdleDelta, "Idle RPM Delta", int, "%d", { iacAlgorithm == 3 || iacAlgorithm == 5 || iacAlgorithm == 6 || iacAlgorithm == 7 || idleAdvEnabled >= 1 } ;Only show for closed loop idle modes and if idle advance is enabled | |
6397 | 6399 | entry = baro, "Baro Pressure", int, "%d" |
6398 | - entry = nitrousOn, "Nitrous", int, "%d", { n2o_enable > 0 } | |
6400 | + entry = nitrousOn, "Nitrous", int, "%d", { n2o_enable > 0 } | |
6399 | 6401 | entry = fanStatus, "Fan", int, "%d" |
6400 | 6402 | entry = syncLossCounter, "Sync Loss #", int, "%d" |
6401 | - entry = vvt1Angle, "VVT1 Angle", int, "%.1f", { vvtEnabled > 0 } | |
6402 | - entry = vvt1Target, "VVT1 Target Angle",int, "%.1f", { vvtEnabled > 0 && vvtMode == 2 } ;;Only show when using close loop vvt | |
6403 | - entry = vvt1Duty, "VVT1 Duty", int, "%.1f", { vvtEnabled > 0 } | |
6404 | - entry = vss, "Wheel Speed (kph)",int, "%d", { vssMode > 1 } | |
6405 | - entry = vssMPH, "Wheel Speed (mph)",int, "%d", { vssMode > 1 } | |
6406 | - entry = gear, "Gear", int, "%d", { vssMode > 1 } | |
6407 | - entry = fuelPressure, "Fuel Pressure", int, "%d", { fuelPressureEnable > 0 } | |
6408 | - entry = oilPressure, "Oil Pressure", int, "%d", { oilPressureEnable > 0 } | |
6409 | - entry = vvt2Angle, "VVT2 Angle", int, "%.1f", { vvt2Enabled > 0 } | |
6410 | - entry = vvt2Target, "VVT2 Target Angle",int, "%.1f", { vvt2Enabled > 0 && vvtMode == 2 } ;;Only show when using close loop vvt | |
6411 | - entry = vvt2Duty, "VVT2 Duty", int, "%.1f", { vvt2Enabled > 0 && vvtMode == 2 } | |
6412 | - entry = fanDuty, "FAN Duty", int, "%.1f", { fanEnable == 2 } | |
6403 | + entry = vvt1Angle, "VVT1 Angle", int, "%.1f", { vvtEnabled > 0 } | |
6404 | + entry = vvt1Target, "VVT1 Target Angle",int, "%.1f", { vvtEnabled > 0 && vvtMode == 2 } ;;Only show when using close loop vvt | |
6405 | + entry = vvt1Duty, "VVT1 Duty", int, "%.1f", { vvtEnabled > 0 } | |
6406 | + entry = vss, "Wheel Speed (kph)",int, "%d", { vssMode > 1 } | |
6407 | + entry = vssMPH, "Wheel Speed (mph)",int, "%d", { vssMode > 1 } | |
6408 | + entry = gear, "Gear", int, "%d", { vssMode > 1 } | |
6409 | + entry = fuelPressure, "Fuel Pressure", int, "%d", { fuelPressureEnable > 0 } | |
6410 | + entry = oilPressure, "Oil Pressure", int, "%d", { oilPressureEnable > 0 } | |
6411 | + entry = vvt2Angle, "VVT2 Angle", int, "%.1f", { vvt2Enabled > 0 } | |
6412 | + entry = vvt2Target, "VVT2 Target Angle",int, "%.1f", { vvt2Enabled > 0 && vvtMode == 2 } ;;Only show when using close loop vvt | |
6413 | + entry = vvt2Duty, "VVT2 Duty", int, "%.1f", { vvt2Enabled > 0 && vvtMode == 2 } | |
6414 | + entry = fanDuty, "FAN Duty", int, "%.1f", { fanEnable == 2 } | |
6413 | 6415 | entry = loopsPerSecond, "Loops/s", int, "%d" |
6414 | 6416 | entry = loopsPerRev, "Loops/rev", int, "%.2f" |
6415 | - entry = wmiPW, "WMI Duty Cycle", int, "%d", { wmiEnabled == 1 } | |
6416 | - entry = MAPdot, "MAP DOT", int, "%d", { aeMode == 1 } | |
6417 | - entry = exValvePosition, "ExValve Pos", int, "%d", { analogInputPortSelect == 1 } ;[PJSC v1.02] | |
6417 | + entry = wmiPW, "WMI Duty Cycle", int, "%d", { wmiEnabled == 1 } | |
6418 | + entry = MAPdot, "MAP DOT", int, "%d", { aeMode == 1 } | |
6419 | + entry = exValvePosition, "ExValve Pos", int, "%d", { analogInputPortSelect == 1 || pinLayout != 70 } ;[PJSC v1.02] | |
6418 | 6420 | entry = extTriggerAngle, "External Trigger Angle", float, "%.1f", { exTrigModeSelect == 1 } ;[PJSC] |
6419 | 6421 | entry = extTriggerRPM, "External Trigger RPM", int, "%d", { exTrigModeSelect == 1 || exTrigModeSelect == 3 } ;[PJSC] |
6420 | 6422 | entry = extTriggerLoad, "External Trigger Load", float, "%.1f", { exTrigModeSelect == 1 } ;[PJSC] |
@@ -6423,8 +6425,9 @@ | ||
6423 | 6425 | entry = dutyFreq2, "Duty Frequency2", int, "%d", { dutyPulseCaptureEnabled2 } ;[PJSC] |
6424 | 6426 | entry = dutyRatio2, "Duty Ratio2", int, "%d", { dutyPulseCaptureEnabled2 } ;[PJSC] |
6425 | 6427 | entry = fuelLoad, "Load", int, "%d", ;[PJSC v1.03] |
6426 | - entry = EGT, "EGT", int, "%d", { analogInputPortSelect2 == 2 } ;[PJSC v1.03] For Exhaust gas temperature input | |
6428 | + entry = EGT, "EGT", int, "%d", { analogInputPortSelect2 == 2 || pinLayout != 70 } ;[PJSC v1.10] | |
6427 | 6429 | entry = ignGap, "Ign Gap Time", int, "%d", { exTrigModeSelect == 3 } ;[PJSC v1.03] For misfire detection |
6430 | + entry = afr2, "AFR2", float, "%.3f", { analogInputPortSelect == 2 || pinLayout != 70 } ;[PJSC v1.10] | |
6428 | 6431 | |
6429 | 6432 | entry = auxin_gauge0, { stringValue(AUXin00Alias) }, int, "%d", {(caninput_sel0b != 0)} |
6430 | 6433 | entry = auxin_gauge1, { stringValue(AUXin01Alias) }, int, "%d", { (caninput_sel1b != 0)} |
@@ -2,7 +2,7 @@ | ||
2 | 2 | #define CANCOMMS_H |
3 | 3 | |
4 | 4 | //[PJSC v1.10]#define NEW_CAN_PACKET_SIZE 123 |
5 | -#define NEW_CAN_PACKET_SIZE 159 //[PJSC v1.10] | |
5 | +#define NEW_CAN_PACKET_SIZE 160 //[PJSC v1.10] | |
6 | 6 | #define CAN_PACKET_SIZE 75 |
7 | 7 | |
8 | 8 | #if ( defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) ) |
@@ -15,8 +15,8 @@ | ||
15 | 15 | #ifndef UNIT_TEST // Scope guard for unit testing |
16 | 16 | //[PJSC v1.10] #define LOG_ENTRY_SIZE 125 /**< The size of the live data packet. This MUST match ochBlockSize setting in the ini file */ |
17 | 17 | //[PJSC v1.10] #define SD_LOG_ENTRY_SIZE 125 /**< The size of the live data packet used by the SD card.*/ |
18 | - #define LOG_ENTRY_SIZE 162 //[PJSC v1.10] | |
19 | - #define SD_LOG_ENTRY_SIZE 162 //[PJSC v1.10] | |
18 | + #define LOG_ENTRY_SIZE 165 //[PJSC v1.10] | |
19 | + #define SD_LOG_ENTRY_SIZE 165 //[PJSC v1.10] | |
20 | 20 | #else |
21 | 21 | #define LOG_ENTRY_SIZE 1 /**< The size of the live data packet. This MUST match ochBlockSize setting in the ini file */ |
22 | 22 | #define SD_LOG_ENTRY_SIZE 1 /**< The size of the live data packet used by the SD card.*/ |
@@ -23,7 +23,7 @@ | ||
23 | 23 | #endif |
24 | 24 | |
25 | 25 | //[PJSC v1.10]#define SD_LOG_NUM_FIELDS 90 /**< The number of fields that are in the log. This is always smaller than the entry size due to some fields being 2 bytes */ |
26 | -#define SD_LOG_NUM_FIELDS 113 //[PJSC v1.10] | |
26 | +#define SD_LOG_NUM_FIELDS 115 //[PJSC v1.10] | |
27 | 27 | |
28 | 28 | byte getTSLogEntry(uint16_t byteNum); |
29 | 29 | int16_t getReadableLogEntry(uint16_t logIndex); |
@@ -48,7 +48,7 @@ | ||
48 | 48 | // This array MUST remain in ascending order |
49 | 49 | // !!!! WARNING: If any value above 255 is required in this array, changes MUST be made to is2ByteEntry() function !!!! |
50 | 50 | //[PJSC v1.10]const byte PROGMEM fsIntIndex[] = {4, 14, 17, 22, 26, 28, 33, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 76, 78, 80, 82, 86, 88, 90, 93, 95, 99, 104, 111, 121 }; |
51 | -const byte PROGMEM fsIntIndex[] = {4, 14, 17, 22, 26, 28, 33, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 76, 78, 80, 82, 86, 88, 90, 93, 95, 99, 104, 111, 121, 125, 137, 139, 141, 143, 145, 147, 150, 152, 154, 156, 158, 160}; //[PJSC v1.10] | |
51 | +const byte PROGMEM fsIntIndex[] = {4, 14, 17, 22, 26, 28, 33, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 76, 78, 80, 82, 86, 88, 90, 93, 95, 99, 104, 111, 121, 125, 137, 139, 141, 143, 145, 147, 149, 151, 153, 155, 157, 159, 161, 163}; //[PJSC v1.10] | |
52 | 52 | |
53 | 53 | //List of logger field names. This must be in the same order and length as logger_updateLogdataCSV() |
54 | 54 | const char header_0[] PROGMEM = "secl"; |
@@ -141,32 +141,32 @@ | ||
141 | 141 | const char header_87[] PROGMEM = "EMAP"; |
142 | 142 | const char header_88[] PROGMEM = "Fan Duty"; |
143 | 143 | const char header_89[] PROGMEM = "AirConStatus"; |
144 | -const char header_90[] PROGMEM = "Exhaust Valve Position"; | |
145 | -const char header_91[] PROGMEM = "Exhaust Valve Position ADC"; | |
146 | -const char header_92[] PROGMEM = "Selected AFR sensor for VE1"; | |
147 | -const char header_93[] PROGMEM = "Selected AFR sensor for VE2"; | |
148 | -const char header_94[] PROGMEM = "Selected AFR sensor for VE3"; | |
149 | -const char header_95[] PROGMEM = "Selected AFR sensor for VE4"; | |
150 | -const char header_96[] PROGMEM = "Combined VE1"; | |
151 | -const char header_97[] PROGMEM = "Combined VE2"; | |
152 | -const char header_98[] PROGMEM = "Combined VE3"; | |
153 | -const char header_99[] PROGMEM = "Combined VE4"; | |
154 | -const char header_100[] PROGMEM = "Duty Frequency of captured signal"; | |
155 | -const char header_101[] PROGMEM = "Duty Frequency of captured signal2"; | |
156 | -const char header_102[] PROGMEM = "Duty Ratio of captured signal"; | |
157 | -const char header_103[] PROGMEM = "Duty Ratio of captured signal2"; | |
158 | -const char header_104[] PROGMEM = "External trigger angle"; | |
159 | -const char header_105[] PROGMEM = "External trigger last angle"; | |
160 | -const char header_106[] PROGMEM = "Exhaust Gas Temperature ADC"; | |
161 | -const char header_107[] PROGMEM = "Fuel Load3"; | |
162 | -const char header_108[] PROGMEM = "Fuel Load4"; | |
163 | -const char header_109[] PROGMEM = "RPM triggered external signal"; | |
164 | -const char header_110[] PROGMEM = "RPM calculated from Spark interval"; | |
165 | -const char header_111[] PROGMEM = "Test Count"; | |
166 | -const char header_112[] PROGMEM = "Ignition interval"; | |
144 | +const char header_90[] PROGMEM = "Dwell Time"; | |
145 | +const char header_91[] PROGMEM = "Exhaust Valve Position"; | |
146 | +const char header_92[] PROGMEM = "Exhaust Valve Position ADC"; | |
147 | +const char header_93[] PROGMEM = "Selected AFR sensor for VE1"; | |
148 | +const char header_94[] PROGMEM = "Selected AFR sensor for VE2"; | |
149 | +const char header_95[] PROGMEM = "Selected AFR sensor for VE3"; | |
150 | +const char header_96[] PROGMEM = "Selected AFR sensor for VE4"; | |
151 | +const char header_97[] PROGMEM = "Combined VE1"; | |
152 | +const char header_98[] PROGMEM = "Combined VE2"; | |
153 | +const char header_99[] PROGMEM = "Combined VE3"; | |
154 | +const char header_100[] PROGMEM = "Combined VE4"; | |
155 | +const char header_101[] PROGMEM = "Duty Frequency of captured signal"; | |
156 | +const char header_102[] PROGMEM = "Duty Frequency of captured signal2"; | |
157 | +const char header_103[] PROGMEM = "Duty Ratio of captured signal"; | |
158 | +const char header_104[] PROGMEM = "Duty Ratio of captured signal2"; | |
159 | +const char header_105[] PROGMEM = "External trigger angle"; | |
160 | +const char header_106[] PROGMEM = "External trigger last angle"; | |
161 | +const char header_107[] PROGMEM = "Exhaust Gas Temperature ADC"; | |
162 | +const char header_108[] PROGMEM = "Fuel Load3"; | |
163 | +const char header_109[] PROGMEM = "Fuel Load4"; | |
164 | +const char header_110[] PROGMEM = "RPM triggered external signal"; | |
165 | +const char header_111[] PROGMEM = "RPM calculated from Spark interval"; | |
166 | +const char header_112[] PROGMEM = "Test Count"; | |
167 | +const char header_113[] PROGMEM = "Ignition interval"; | |
168 | +const char header_114[] PROGMEM = "Require Fuel"; | |
167 | 169 | /* |
168 | -const char header_113[] PROGMEM = ""; | |
169 | -const char header_114[] PROGMEM = ""; | |
170 | 170 | const char header_115[] PROGMEM = ""; |
171 | 171 | const char header_116[] PROGMEM = ""; |
172 | 172 | const char header_117[] PROGMEM = ""; |
@@ -304,9 +304,9 @@ | ||
304 | 304 | header_110,\ |
305 | 305 | header_111,\ |
306 | 306 | header_112,\ |
307 | - /* | |
308 | 307 | header_113,\ |
309 | 308 | header_114,\ |
309 | + /* | |
310 | 310 | header_115,\ |
311 | 311 | header_116,\ |
312 | 312 | header_117,\ |