• R/O
  • SSH
  • HTTPS

Commit

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

PJSC(Pump Jet Solenoid Controller)はArduinoを使用したバイク用燃料噴射コントローラです。このプロジェクトは、オープンソースECUプロジェクト『Speeduino』をベースにしています。


Commit MetaInfo

Revision53 (tree)
Time2019-03-30 12:51:19
Authormaharu

Log Message

Support x4 VE table

Change Summary

Incremental Difference

--- branches/Ver1.00_base/reference/PJSC.ini (revision 52)
+++ branches/Ver1.00_base/reference/PJSC.ini (revision 53)
@@ -6,7 +6,8 @@
66 MTversion = 2.25
77
88 queryCommand = "Q"
9- signature = "speeduino - PJSC v1.10" ;[PJSC]
9+;[PJSC v1.10] signature = "speeduino 201902"
10+ signature = "speeduino - PJSC v1.10" ;[PJSC v1.10]
1011 versionInfo = "S" ;This info is what is displayed to user
1112
1213 [TunerStudio]
@@ -58,7 +59,7 @@
5859 ;algorithmUnits = bits, U08, [0:2], $loadSourceUnits
5960 algorithmUnits = bits, U08, [0:2], "kPa", "% TPS", "%", "% TPS", "INVALID", "INVALID", "INVALID", "INVALID"
6061 algorithmUnits2 = bits, U08, [3:5], "kPa", "% TPS", "%", "% TPS", "INVALID", "INVALID", "INVALID", "INVALID" ;[PJSC v1.10] For Secondary Fuel
61- algorithmUnits3 = bits, U08, [0:2], "kPa", "% TPS", "%", "% TPS", "INVALID", "INVALID", "INVALID", "INVALID" ;[PJSC v1.10] For switching table3
62+;[PJSC v1.10] algorithmUnits3 = bits, U08, [0:2], "kPa", "% TPS", "%", "% TPS", "INVALID", "INVALID", "INVALID", "INVALID" ;[PJSC v1.10] For switching table3
6263 algorithmLimits= array, U16, [8], "", 1.0, 0, 0, 511, 0, noMsqSave
6364 #define all_IO_Pins = "Board Default", "INVALID", "INVALID", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "INVALID"
6465 #define IO_Pins_no_def = "INVALID", "INVALID", "INVALID", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "INVALID"
@@ -65,9 +66,9 @@
6566
6667 boostTableLabels = bits, U08, [0:1], "Duty Cycle %", "kPa"
6768
68-;[PJSC v1.10] fuelLoadMax = scalar, U08, "", 1, 0, 0, 511, 0
69+ fuelLoadMax = scalar, U08, "", 1, 0, 0, 511, 0
6970 ;[PJSC v1.10] ignLoadMax = scalar, U08, "", 1, 0, 0, 511, 0
70- fuelLoadMax = scalar, U08, "", 1, 0, 0, 255, 0 ;[PJSC v1.10]
71+;[PJSC v1.10] fuelLoadMax = scalar, U08, "", 1, 0, 0, 255, 0 ;[PJSC v1.10]
7172 ignLoadMax = scalar, U08, "", 1, 0, 0, 255, 0 ;[PJSC v1.10]
7273 AUXin00Alias = string, ASCII, 20
7374 AUXin01Alias = string, ASCII, 20
@@ -161,8 +162,8 @@
161162 ;[PJSC] nPages = 10
162163 ;pageSize = 288, 128, 288, 128, 288, 128, 240, 192, 192, 192
163164 ;[PJSC] pageSize = 128, 288, 288, 128, 288, 128, 240, 192, 192, 192
164- nPages = 12 ;[PJSC]
165- pageSize = 128, 288, 288, 64, 288, 128, 240, 192, 156, 156, 288, 288 ;[PJSC v1.10]
165+ nPages = 11 ;[PJSC]
166+ pageSize = 128, 288, 288, 128, 288, 128, 240, 192, 192, 288, 288 ;[PJSC v1.10]
166167
167168 ;burnCommand = "B"
168169 ;pageActivate = "P\001", "P\002", "P\003", "P\004", "P\005", "P\006", "P\007", "P\010", "P\011", "P\012", "P\013"
@@ -178,11 +179,11 @@
178179 ;[PJSC] pageChunkWrite = "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v"
179180
180181 ;[PJSC] New commands for PJSC
181- pageIdentifier = "\$tsCanId\x01", "\$tsCanId\x02", "\$tsCanId\x03", "\$tsCanId\x04", "\$tsCanId\x05", "\$tsCanId\x06", "\$tsCanId\x07", "\$tsCanId\x08", "\$tsCanId\x09", "\$tsCanId\x0A", "\$tsCanId\x0B", "\$tsCanId\x0C" ;[PJSC v1.10]
182- burnCommand = "b%2i", "b%2i", "b%2i", "b%2i", "b%2i", "b%2i", "b%2i", "b%2i", "b%2i", "b%2i", "b%2i", "b%2i" ;[PJSC v1.10]
183- pageReadCommand = "p%2i%2o%2c%v", "p%2i%2o%2c%v", "p%2i%2o%2c%v", "p%2i%2o%2c%v", "p%2i%2o%2c%v", "p%2i%2o%2c%v", "p%2i%2o%2c%v", "p%2i%2o%2c%v", "p%2i%2o%2c%v", "p%2i%2o%2c%v", "p%2i%2o%2c%v", "p%2i%2o%2c%v" ;[PJSC v1.10]
184- pageValueWrite = "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v" ;[PJSC v1.10]
185- pageChunkWrite = "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v" ;[PJSC v1.10]
182+ pageIdentifier = "\$tsCanId\x01", "\$tsCanId\x02", "\$tsCanId\x03", "\$tsCanId\x04", "\$tsCanId\x05", "\$tsCanId\x06", "\$tsCanId\x07", "\$tsCanId\x08", "\$tsCanId\x09", "\$tsCanId\x0A", "\$tsCanId\x0B" ;[PJSC v1.10]
183+ burnCommand = "b%2i", "b%2i", "b%2i", "b%2i", "b%2i", "b%2i", "b%2i", "b%2i", "b%2i", "b%2i", "b%2i" ;[PJSC v1.10]
184+ pageReadCommand = "p%2i%2o%2c", "p%2i%2o%2c", "p%2i%2o%2c", "p%2i%2o%2c", "p%2i%2o%2c", "p%2i%2o%2c", "p%2i%2o%2c", "p%2i%2o%2c", "p%2i%2o%2c", "p%2i%2o%2c", "p%2i%2o%2c" ;[PJSC v1.10]
185+ pageValueWrite = "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v" ;[PJSC]
186+ pageChunkWrite = "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v", "w%2i%2o%2c%v" ;[PJSC]
186187
187188 blockingFactor = 2048
188189 tableBlockingFactor = 2048
@@ -339,6 +340,7 @@
339340 dutyPulseOnLevel = bits, U08, 77, [2:2], "High", "Low" ; |
340341 dutyPulseOnLevel2 = bits, U08, 77, [3:3], "High", "Low" ; V
341342 unused2_77 = bits, U08, 77, [4:7] ;[PJSC v1.10]
343+#if table4_spark ;[PJSC v1.10] For switching table4
342344 veMapSelection1Pri = bits, U08, 78, [0:3], "VE Table 1","VE Table 2","VE Table 3","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
343345 veMapSelection1Sec = bits, U08, 78, [4:7], "VE Table 1","VE Table 2","VE Table 3","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
344346 veMapSelection2Pri = bits, U08, 79, [0:3], "VE Table 1","VE Table 2","VE Table 3","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
@@ -355,6 +357,25 @@
355357 veMapSelection3_2Sec = bits, U08, 84, [4:7], "VE Table 1","VE Table 2","VE Table 3","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
356358 veMapSelection4_2Pri = bits, U08, 85, [0:3], "VE Table 1","VE Table 2","VE Table 3","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
357359 veMapSelection4_2Sec = bits, U08, 85, [4:7], "VE Table 1","VE Table 2","VE Table 3","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
360+#endif ;[PJSC v1.10] For switching table4
361+#if table4_fuel ;[PJSC v1.10]
362+ veMapSelection1Pri = bits, U08, 78, [0:3], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
363+ veMapSelection1Sec = bits, U08, 78, [4:7], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
364+ veMapSelection2Pri = bits, U08, 79, [0:3], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
365+ veMapSelection2Sec = bits, U08, 79, [4:7], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
366+ veMapSelection3Pri = bits, U08, 80, [0:3], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
367+ veMapSelection3Sec = bits, U08, 80, [4:7], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
368+ veMapSelection4Pri = bits, U08, 81, [0:3], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
369+ veMapSelection4Sec = bits, U08, 81, [4:7], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
370+ veMapSelection1_2Pri = bits, U08, 82, [0:3], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
371+ veMapSelection1_2Sec = bits, U08, 82, [4:7], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
372+ veMapSelection2_2Pri = bits, U08, 83, [0:3], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
373+ veMapSelection2_2Sec = bits, U08, 83, [4:7], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
374+ veMapSelection3_2Pri = bits, U08, 84, [0:3], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
375+ veMapSelection3_2Sec = bits, U08, 84, [4:7], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
376+ veMapSelection4_2Pri = bits, U08, 85, [0:3], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
377+ veMapSelection4_2Sec = bits, U08, 85, [4:7], "VE Table 1","VE Table 2","VE Table 3","VE Table 4","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID"
378+#endif ;[PJSC v1.10] For switching table4
358379 dutyFreqTst1 = scalar, U08, 86, "Hz", 2.0, 0.0, 10, 511, 0 ;[PJSC v1.10]
359380 dutyFreqTst2 = scalar, U08, 87, "Hz", 2.0, 0.0, 10, 511, 0 ; |
360381 dutyFreqTst3 = scalar, U08, 88, "Hz", 2.0, 0.0, 10, 511, 0 ; |
@@ -392,7 +413,7 @@
392413 veTable = array, U08, 0, [16x16],"%", 1.0, 0.0, 0.0, 255.0, 0
393414 rpmBins = array, U08, 256, [ 16], "RPM", 100.0, 0.0, 100.0, 25500.0, 0
394415 ;[PJSC v1.10] fuelLoadBins = array, U08, 272, [ 16], { bitStringValue(algorithmUnits , algorithm) }, 2.0, 0.0, 0.0, {fuelLoadMax}, 0
395- fuelLoadBins = array, U08, 272, [ 16], { bitStringValue(algorithmUnits , algorithm) }, 1.0, 0.0, 0.0, {fuelLoadMax}, 0 ;[PJSC v1.10]
416+ fuelLoadBins = array, U08, 272, [ 16], { bitStringValue(algorithmUnits , algorithm) }, 1.0, 0.0, 0.0, {fuelLoadMax}, 0 ;[PJSC v1.10]
396417 ;fuelLoadBins = array, U08, 272, [ 16], { bitStringValue(algorithmUnits , algorithm) }, 2.0, 0.0, 0.0, { arrayValue(rpmBins , algorithm) }, 0
397418
398419 ;--------------------------------------------------
@@ -399,16 +420,10 @@
399420 ;Start Ignition table (Page 3)
400421 ;--------------------------------------------------
401422 page = 3
402-#if table4_spark ;[PJSC v1.10] For switching table4
403423 advTable1 = array, U08, 0,[16x16], "deg", 1.0, -40, -40, 215.0, 0
404424 rpmBins2 = array, U08, 256,[ 16], "RPM", 100.0, 0.0, 100, 25500, 0
405425 ;[PJSC v1.10] mapBins1= array, U08, 272, [ 16], { bitStringValue(algorithmUnits , ignAlgorithm) }, 2.0, 0.0, 0.0, {ignLoadMax}, 0 ; This name has to be used in order for the table to show up in MLVs table. I can't find the regexs that make this work :(
406- mapBins1= array, U08, 272, [ 16], { bitStringValue(algorithmUnits , ignAlgorithm) }, 1.0, 0.0, 0.0, {ignLoadMax}, 0 ;[PJSC v1.10] For switching table4
407-#else ; |
408- veTable4 = array, U08, 0,[16x16], "%", 1.0, 0.0, 0.0, 255.0, 0 ; |
409- rpmBinsVE4 = array, U08, 256,[ 16], "RPM", 100.0, 0.0, 100.0, 25500.0, 0 ; |
410- fuelLoadBins4 = array, U08, 272, [ 16], { bitStringValue(algorithmUnits , ignAlgorithm) }, 1.0, 0.0, 0.0, {ignLoadMax}, 0 ; V
411-#endif ;[PJSC v1.10] For switching table4
426+ mapBins1= array, U08, 272, [ 16], { bitStringValue(algorithmUnits , ignAlgorithm) }, 1.0, 0.0, 0.0, {ignLoadMax}, 0 ;[PJSC v1.10]
412427
413428 ;--------------------------------------------------
414429 ;Start Page 4
@@ -499,8 +514,7 @@
499514 ADCFILTER_MAP = scalar, U08, 69, "%", 1.0, 0.0, 0, 240, 0
500515 ADCFILTER_BARO = scalar, U08, 70, "%", 1.0, 0.0, 0, 240, 0
501516
502-;[PJSC v1.10] unused4-64 = array, U08, 71, [56], "%", 1.0, 0.0, 0.0, 255, 0
503- unused4-64 = array, U08, 71, [9], "%", 1.0, 0.0, 0.0, 255, 0 ;[PJSC v1.10]
517+ unused4-64 = array, U08, 71, [56], "%", 1.0, 0.0, 0.0, 255, 0
504518 ;--------------------------------------------------
505519 ;Start AFR page
506520 ;--------------------------------------------------
@@ -670,43 +684,44 @@
670684 ;--------------------------------------------------
671685 ;Sequential fuel trim tables (Page 8)
672686 ;--------------------------------------------------
673-page = 8
674- fuelTrim1Table = array, U08, 0,[6x6], "%", 1.0, -128, -50, 50, 0
675- fuelTrim1rpmBins = array, U08, 36,[ 6], "RPM", 100.0, 0.0, 0, 25500, 0
676-#if SPEED_DENSITY
677- fuelTrim1loadBins = array, U08, 42,[ 6], "kPa", 2.0, 0.0, 0.0, 511.0, 0
678-#elif ALPHA_N
679- fuelTrim1loadBins = array, U08, 42,[ 6], "TPS", 2.0, 0.0, 0.0, 100.0, 0
680-#endif
687+;[PJSC v1.10]page = 8
688+;[PJSC v1.10] fuelTrim1Table = array, U08, 0,[6x6], "%", 1.0, -128, -50, 50, 0
689+;[PJSC v1.10] fuelTrim1rpmBins = array, U08, 36,[ 6], "RPM", 100.0, 0.0, 0, 25500, 0
690+;[PJSC v1.10]#if SPEED_DENSITY
691+;[PJSC v1.10] fuelTrim1loadBins = array, U08, 42,[ 6], "kPa", 2.0, 0.0, 0.0, 511.0, 0
692+;[PJSC v1.10]#elif ALPHA_N
693+;[PJSC v1.10] fuelTrim1loadBins = array, U08, 42,[ 6], "TPS", 2.0, 0.0, 0.0, 100.0, 0
694+;[PJSC v1.10]#endif
695+;[PJSC v1.10]
696+;[PJSC v1.10] fuelTrim2Table = array, U08, 48,[6x6], "%", 1.0, -128, -50, 50, 0
697+;[PJSC v1.10] fuelTrim2rpmBins = array, U08, 84,[ 6], "RPM", 100.0, 0.0, 0, 25500, 0
698+;[PJSC v1.10]#if SPEED_DENSITY
699+;[PJSC v1.10] fuelTrim2loadBins = array, U08, 90,[ 6], "kPa", 2.0, 0.0, 0.0, 511.0, 0
700+;[PJSC v1.10]#elif ALPHA_N
701+;[PJSC v1.10] fuelTrim2loadBins = array, U08, 90,[ 6], "TPS", 2.0, 0.0, 0.0, 100.0, 0
702+;[PJSC v1.10]#endif
703+;[PJSC v1.10]
704+;[PJSC v1.10] fuelTrim3Table = array, U08, 96,[6x6], "%", 1.0, -128, -50, 50, 0
705+;[PJSC v1.10] fuelTrim3rpmBins = array, U08, 132,[ 6], "RPM", 100.0, 0.0, 0, 25500, 0
706+;[PJSC v1.10]#if SPEED_DENSITY
707+;[PJSC v1.10] fuelTrim3loadBins = array, U08, 138,[ 6], "kPa", 2.0, 0.0, 0.0, 511.0, 0
708+;[PJSC v1.10]#elif ALPHA_N
709+;[PJSC v1.10] fuelTrim3loadBins = array, U08, 138,[ 6], "TPS", 2.0, 0.0, 0.0, 100.0, 0
710+;[PJSC v1.10]#endif
711+;[PJSC v1.10]
712+;[PJSC v1.10] fuelTrim4Table = array, U08, 144,[6x6], "%", 1.0, -128, -50, 50, 0
713+;[PJSC v1.10] fuelTrim4rpmBins = array, U08, 180,[ 6], "RPM", 100.0, 0.0, 0, 25500, 0
714+;[PJSC v1.10]#if SPEED_DENSITY
715+;[PJSC v1.10] fuelTrim4loadBins = array, U08, 186,[ 6], "kPa", 2.0, 0.0, 0.0, 511.0, 0
716+;[PJSC v1.10]#elif ALPHA_N
717+;[PJSC v1.10] fuelTrim4loadBins = array, U08, 186,[ 6], "TPS", 2.0, 0.0, 0.0, 100.0, 0
718+;[PJSC v1.10]#endif
681719
682- fuelTrim2Table = array, U08, 48,[6x6], "%", 1.0, -128, -50, 50, 0
683- fuelTrim2rpmBins = array, U08, 84,[ 6], "RPM", 100.0, 0.0, 0, 25500, 0
684-#if SPEED_DENSITY
685- fuelTrim2loadBins = array, U08, 90,[ 6], "kPa", 2.0, 0.0, 0.0, 511.0, 0
686-#elif ALPHA_N
687- fuelTrim2loadBins = array, U08, 90,[ 6], "TPS", 2.0, 0.0, 0.0, 100.0, 0
688-#endif
689-
690- fuelTrim3Table = array, U08, 96,[6x6], "%", 1.0, -128, -50, 50, 0
691- fuelTrim3rpmBins = array, U08, 132,[ 6], "RPM", 100.0, 0.0, 0, 25500, 0
692-#if SPEED_DENSITY
693- fuelTrim3loadBins = array, U08, 138,[ 6], "kPa", 2.0, 0.0, 0.0, 511.0, 0
694-#elif ALPHA_N
695- fuelTrim3loadBins = array, U08, 138,[ 6], "TPS", 2.0, 0.0, 0.0, 100.0, 0
696-#endif
697-
698- fuelTrim4Table = array, U08, 144,[6x6], "%", 1.0, -128, -50, 50, 0
699- fuelTrim4rpmBins = array, U08, 180,[ 6], "RPM", 100.0, 0.0, 0, 25500, 0
700-#if SPEED_DENSITY
701- fuelTrim4loadBins = array, U08, 186,[ 6], "kPa", 2.0, 0.0, 0.0, 511.0, 0
702-#elif ALPHA_N
703- fuelTrim4loadBins = array, U08, 186,[ 6], "TPS", 2.0, 0.0, 0.0, 100.0, 0
704-#endif
705-
706720 ;--------------------------------------------------
707721 ;CANBUS control and Auxillary io(Page 9)
708722 ;--------------------------------------------------
709-page = 9
723+;[PJSC v1.10]page = 9
724+page = 8 ;[PJSC v1.10]
710725 enable_secondarySerial = bits, U08, 0, [0:0], "Disable", "Enable"
711726 intcan_available = bits, U08, 0, [1:1], "Disable", "Enable"
712727 enable_intcan = bits, U08, 0, [2:2], "Disable", "Enable"
@@ -953,45 +968,45 @@
953968
954969 unused10_154 = scalar, U08, 154, "", 1, 0, 0, 255, 0
955970 unused10_155 = scalar, U08, 155, "", 1, 0, 0, 255, 0
956-;[PJSC v1.10] unused10_156 = scalar, U08, 156, "", 1, 0, 0, 255, 0
957-;[PJSC v1.10] unused10_157 = scalar, U08, 157, "", 1, 0, 0, 255, 0
958-;[PJSC v1.10] unused10_158 = scalar, U08, 158, "", 1, 0, 0, 255, 0
959-;[PJSC v1.10] unused10_159 = scalar, U08, 159, "", 1, 0, 0, 255, 0
960-;[PJSC v1.10] unused10_160 = scalar, U08, 160, "", 1, 0, 0, 255, 0
961-;[PJSC v1.10] unused10_161 = scalar, U08, 161, "", 1, 0, 0, 255, 0
962-;[PJSC v1.10] unused10_162 = scalar, U08, 162, "", 1, 0, 0, 255, 0
963-;[PJSC v1.10] unused10_163 = scalar, U08, 163, "", 1, 0, 0, 255, 0
964-;[PJSC v1.10] unused10_164 = scalar, U08, 164, "", 1, 0, 0, 255, 0
965-;[PJSC v1.10] unused10_165 = scalar, U08, 165, "", 1, 0, 0, 255, 0
966-;[PJSC v1.10] unused10_166 = scalar, U08, 166, "", 1, 0, 0, 255, 0
967-;[PJSC v1.10] unused10_167 = scalar, U08, 167, "", 1, 0, 0, 255, 0
968-;[PJSC v1.10] unused10_168 = scalar, U08, 168, "", 1, 0, 0, 255, 0
969-;[PJSC v1.10] unused10_169 = scalar, U08, 169, "", 1, 0, 0, 255, 0
970-;[PJSC v1.10] unused10_170 = scalar, U08, 170, "", 1, 0, 0, 255, 0
971-;[PJSC v1.10] unused10_171 = scalar, U08, 171, "", 1, 0, 0, 255, 0
972-;[PJSC v1.10] unused10_172 = scalar, U08, 172, "", 1, 0, 0, 255, 0
973-;[PJSC v1.10] unused10_173 = scalar, U08, 173, "", 1, 0, 0, 255, 0
974-;[PJSC v1.10] unused10_174 = scalar, U08, 174, "", 1, 0, 0, 255, 0
975-;[PJSC v1.10] unused10_175 = scalar, U08, 175, "", 1, 0, 0, 255, 0
976-;[PJSC v1.10] unused10_176 = scalar, U08, 176, "", 1, 0, 0, 255, 0
977-;[PJSC v1.10] unused10_177 = scalar, U08, 177, "", 1, 0, 0, 255, 0
978-;[PJSC v1.10] unused10_178 = scalar, U08, 178, "", 1, 0, 0, 255, 0
979-;[PJSC v1.10] unused10_179 = scalar, U08, 179, "", 1, 0, 0, 255, 0
980-;[PJSC v1.10] unused10_180 = scalar, U08, 180, "", 1, 0, 0, 255, 0
981-;[PJSC v1.10] unused10_181 = scalar, U08, 181, "", 1, 0, 0, 255, 0
982-;[PJSC v1.10] unused10_182 = scalar, U08, 182, "", 1, 0, 0, 255, 0
983-;[PJSC v1.10] unused10_183 = scalar, U08, 183, "", 1, 0, 0, 255, 0
984-;[PJSC v1.10] unused10_184 = scalar, U08, 184, "", 1, 0, 0, 255, 0
985-;[PJSC v1.10] unused10_185 = scalar, U08, 185, "", 1, 0, 0, 255, 0
986-;[PJSC v1.10] unused10_186 = scalar, U08, 186, "", 1, 0, 0, 255, 0
987-;[PJSC v1.10] unused10_187 = scalar, U08, 187, "", 1, 0, 0, 255, 0
988-;[PJSC v1.10] unused10_188 = scalar, U08, 188, "", 1, 0, 0, 255, 0
989-;[PJSC v1.10] unused10_189 = scalar, U08, 189, "", 1, 0, 0, 255, 0
990-;[PJSC v1.10] unused10_190 = scalar, U08, 190, "", 1, 0, 0, 255, 0
991-;[PJSC v1.10] blankfield = bits, U08, 191, [0:0], "",""
992- ;unused10_191 = scalar, U08, 191, "", 1, 0, 0, 255, 0
971+ unused10_156 = scalar, U08, 156, "", 1, 0, 0, 255, 0
972+ unused10_157 = scalar, U08, 157, "", 1, 0, 0, 255, 0
973+ unused10_158 = scalar, U08, 158, "", 1, 0, 0, 255, 0
974+ unused10_159 = scalar, U08, 159, "", 1, 0, 0, 255, 0
975+ unused10_160 = scalar, U08, 160, "", 1, 0, 0, 255, 0
976+ unused10_161 = scalar, U08, 161, "", 1, 0, 0, 255, 0
977+ unused10_162 = scalar, U08, 162, "", 1, 0, 0, 255, 0
978+ unused10_163 = scalar, U08, 163, "", 1, 0, 0, 255, 0
979+ unused10_164 = scalar, U08, 164, "", 1, 0, 0, 255, 0
980+ unused10_165 = scalar, U08, 165, "", 1, 0, 0, 255, 0
981+ unused10_166 = scalar, U08, 166, "", 1, 0, 0, 255, 0
982+ unused10_167 = scalar, U08, 167, "", 1, 0, 0, 255, 0
983+ unused10_168 = scalar, U08, 168, "", 1, 0, 0, 255, 0
984+ unused10_169 = scalar, U08, 169, "", 1, 0, 0, 255, 0
985+ unused10_170 = scalar, U08, 170, "", 1, 0, 0, 255, 0
986+ unused10_171 = scalar, U08, 171, "", 1, 0, 0, 255, 0
987+ unused10_172 = scalar, U08, 172, "", 1, 0, 0, 255, 0
988+ unused10_173 = scalar, U08, 173, "", 1, 0, 0, 255, 0
989+ unused10_174 = scalar, U08, 174, "", 1, 0, 0, 255, 0
990+ unused10_175 = scalar, U08, 175, "", 1, 0, 0, 255, 0
991+ unused10_176 = scalar, U08, 176, "", 1, 0, 0, 255, 0
992+ unused10_177 = scalar, U08, 177, "", 1, 0, 0, 255, 0
993+ unused10_178 = scalar, U08, 178, "", 1, 0, 0, 255, 0
994+ unused10_179 = scalar, U08, 179, "", 1, 0, 0, 255, 0
995+ unused10_180 = scalar, U08, 180, "", 1, 0, 0, 255, 0
996+ unused10_181 = scalar, U08, 181, "", 1, 0, 0, 255, 0
997+ unused10_182 = scalar, U08, 182, "", 1, 0, 0, 255, 0
998+ unused10_183 = scalar, U08, 183, "", 1, 0, 0, 255, 0
999+ unused10_184 = scalar, U08, 184, "", 1, 0, 0, 255, 0
1000+ unused10_185 = scalar, U08, 185, "", 1, 0, 0, 255, 0
1001+ unused10_186 = scalar, U08, 186, "", 1, 0, 0, 255, 0
1002+ unused10_187 = scalar, U08, 187, "", 1, 0, 0, 255, 0
1003+ unused10_188 = scalar, U08, 188, "", 1, 0, 0, 255, 0
1004+ unused10_189 = scalar, U08, 189, "", 1, 0, 0, 255, 0
1005+ unused10_190 = scalar, U08, 190, "", 1, 0, 0, 255, 0
1006+ blankfield = bits, U08, 191, [0:0], "",""
9931007
994-page = 10
1008+;[PJSC v1.10]page = 10
1009+page = 9 ;[PJSC v1.10]
9951010 #if CELSIUS
9961011 crankingEnrichBins = array, U08, 0, [4], "C", 1.0, -40, -40, 215, 0
9971012 #else
@@ -1080,30 +1095,31 @@
10801095 knock_recoveryStepTime = scalar, U08, 120, "Sec", 0.1, 0.0, 0.0, 2.5, 1
10811096 knock_recoveryStep = scalar, U08, 121, "Deg", 1.0, 0.0, 0.0, 50, 0
10821097
1083-;[PJSC v1.10] unused11_122_191 = array, U08, 122,[69],"RPM", 100.0, 0.0, 100, 25500, 0
1084- unused11_122_191 = array, U08, 122,[33],"RPM", 100.0, 0.0, 100, 25500, 0 ;[PJSC v1.10]
1098+ unused11_122_191 = array, U08, 122,[69],"RPM", 100.0, 0.0, 100, 25500, 0
10851099
10861100 ;-------------------------------------------------------
10871101 ;Page 11 is the fuel map and axis bins only [PJSC v1.10]
10881102 ;-------------------------------------------------------
1089-page = 11
1103+;[PJSC v1.10]page = 11
1104+page = 10 ;[PJSC v1.10]
10901105 ; name = bits, type, offset, bits
10911106 ; name = array, type, offset, shape, units, scale, translate, lo, hi, digits
10921107 ; name = scalar, type, offset, units, scale, translate, lo, hi, digits
10931108 veTable2 = array, U08, 0, [16x16],"%", 1.0, 0.0, 0.0, 255.0, 0
1094- rpmBinsVE2 = array, U08, 256, [ 16], "RPM", 100.0, 0.0, 100.0, 25500.0, 0
1109+ rpmBinsVE2 = array, U08, 256, [ 16], "RPM", 100.0, 0.0, 100.0, 25500.0, 0
10951110 fuelLoadBins2 = array, U08, 272, [ 16], { bitStringValue(algorithmUnits2 , algorithm2) }, 1.0, 0.0, 0.0, {fuelLoadMax}, 0
10961111
10971112 ;-------------------------------------------------------
10981113 ;Page 12 is the fuel map and axis bins only [PJSC v1.10]
10991114 ;-------------------------------------------------------
1100-page = 12
1115+;[PJSC v1.10]page = 12
1116+page = 11 ;[PJSC v1.10]
11011117 ; name = bits, type, offset, bits
11021118 ; name = array, type, offset, shape, units, scale, translate, lo, hi, digits
11031119 ; name = scalar, type, offset, units, scale, translate, lo, hi, digits
11041120 veTable3 = array, U08, 0, [16x16],"%", 1.0, 0.0, 0.0, 255.0, 0
11051121 rpmBinsVE3 = array, U08, 256, [ 16], "RPM", 100.0, 0.0, 100.0, 25500.0, 0
1106- fuelLoadBins3 = array, U08, 272, [ 16], { bitStringValue(algorithmUnits3 , algorithm3) }, 1.0, 0.0, 0.0, {fuelLoadMax}, 0
1122+ fuelLoadBins3 = array, U08, 272, [ 16], { bitStringValue(algorithmUnits2 , algorithm3) }, 1.0, 0.0, 0.0, {fuelLoadMax}, 0
11071123
11081124 ;-------------------------------------------------------------------------------
11091125
@@ -1431,7 +1447,7 @@
14311447 #endif ;[PJSC v1.10] For switching table4
14321448 subMenu = afrTable1Tbl, "AFR Table", 5
14331449 subMenu = std_separator
1434- subMenu = inj_trimad, "Sequential fuel trim", 9
1450+;[PJSC v1.10] subMenu = inj_trimad, "Sequential fuel trim", 9
14351451 subMenu = stagingTableDialog, "Staged Injection", 10, { nCylinders <= 4 } ; Can't do staging on more than 4 cylinder engines
14361452
14371453 #if table4_spark ;[PJSC v1.10] For switching table4
@@ -1524,7 +1540,7 @@
15241540 subMenu = veTable2Map, "Fuel Table 2" ;[PJSC]
15251541 subMenu = veTable3Map, "Fuel Table 3" ;[PJSC v1.10] For switching table4
15261542 #if table4_fuel ;[PJSC v1.10] For switching table4
1527- subMenu = veTable4Map, "Fuel Table 4" ;[PJSC v1.10] For switching table4
1543+ subMenu = sparkMap, "Fuel Table 4" ;[PJSC v1.10] For switching table4
15281544 #endif ;[PJSC v1.10] For switching table4
15291545 subMenu = afrTable1Map, "AFR Target Table"
15301546 #if table4_spark ;[PJSC v1.10] For switching table4
@@ -2068,8 +2084,20 @@
20682084 field = "Barometric correction", baroCorr, { useExtBaro } ; |For Barometric correnction
20692085 ; |
20702086 dialog = veTable3Dialog, "VE Table 3" ; |
2071- panel = veTable3Dialog_north, North ; V
2072- panel = veTable3Dialog_south, South ;[PJSC v1.10]
2087+ panel = veTable3Dialog_north, North ; |
2088+ panel = veTable3Dialog_south, South ; |
2089+ ; |
2090+ dialog = veTable4Dialog_north, "" ; |
2091+ panel = sparkTbl ; |
2092+ ; |
2093+ dialog = veTable4Dialog_south, "" ; |
2094+ field = "Multiply VE value by MAP:Baro ratio", multiplyMAP ; |
2095+ field = "Multiply by ratio of AFR to Target AFR", includeAFR, { egoType == 2 } ; |
2096+ field = "Barometric correction", baroCorr, { useExtBaro } ; |
2097+ ; |
2098+ dialog = veTable4Dialog, "VE Table 4" ; |
2099+ panel = veTable4Dialog_north, North ; V
2100+ panel = veTable4Dialog_south, South ;[PJSC v1.10]
20732101
20742102 dialog = injChars, "Injector Characteristics" ;[PJSC]
20752103 field = "Squirt Device", squirtDeviceType ; |
@@ -3378,6 +3406,7 @@
33783406 gridOrient = 250, 0, 340
33793407 upDownLabel = "(RICHER)", "(LEANER)"
33803408
3409+#if table4_spark //[PJSC v1.10]
33813410 table = sparkTbl, sparkMap, "Ignition Advance Table", 3
33823411 xBins = rpmBins2, rpm
33833412 ;yBins = ignLoadBins, ignLoad
@@ -3386,6 +3415,7 @@
33863415 zBins = advTable1
33873416 gridHeight = 3.0
33883417 upDownLabel = "ADVANCING", "RETARDING"
3418+#endif //[PJSC v1.10]
33893419
33903420 ;table = afrTbl, afrTableMap, "AFR Table", 5
33913421 table = afrTable1Tbl, afrTable1Map, "AFR Table", 5
@@ -3431,68 +3461,69 @@
34313461 upDownLabel = "HIGHER", "LOWER"
34323462
34333463 ;--------- Sequential fuel trim maps -----------
3434- table = fuelTrimTable1Tbl, fuelTrimTable1Map, "Fuel trim Table 1", 9
3435- topicHelp = "http://speeduino.com/wiki/index.php/Tuning"
3436- xBins = fuelTrim1rpmBins, rpm
3437- #if SPEED_DENSITY
3438- yBins = fuelTrim1loadBins, map
3439- #else
3440- yBins = fuelTrim1loadBins, throttle
3441- #endif
3442- zBins = fuelTrim1Table
3464+;[PJSC v1.10] table = fuelTrimTable1Tbl, fuelTrimTable1Map, "Fuel trim Table 1", 9
3465+;[PJSC v1.10] topicHelp = "http://speeduino.com/wiki/index.php/Tuning"
3466+;[PJSC v1.10] xBins = fuelTrim1rpmBins, rpm
3467+;[PJSC v1.10] #if SPEED_DENSITY
3468+;[PJSC v1.10] yBins = fuelTrim1loadBins, map
3469+;[PJSC v1.10] #else
3470+;[PJSC v1.10] yBins = fuelTrim1loadBins, throttle
3471+;[PJSC v1.10] #endif
3472+;[PJSC v1.10] zBins = fuelTrim1Table
3473+;[PJSC v1.10]
3474+;[PJSC v1.10] gridHeight = 2.0
3475+;[PJSC v1.10] gridOrient = 250, 0, 340
3476+;[PJSC v1.10] upDownLabel = "(RICHER)", "(LEANER)"
3477+;[PJSC v1.10]
3478+;[PJSC v1.10] table = fuelTrimTable2Tbl, fuelTrimTable2Map, "Fuel trim Table 2", 9
3479+;[PJSC v1.10] topicHelp = "http://speeduino.com/wiki/index.php/Tuning"
3480+;[PJSC v1.10] xBins = fuelTrim2rpmBins, rpm
3481+;[PJSC v1.10] #if SPEED_DENSITY
3482+;[PJSC v1.10] yBins = fuelTrim2loadBins, map
3483+;[PJSC v1.10] #else
3484+;[PJSC v1.10] yBins = fuelTrim2loadBins, throttle
3485+;[PJSC v1.10] #endif
3486+;[PJSC v1.10] zBins = fuelTrim2Table
3487+;[PJSC v1.10]
3488+;[PJSC v1.10] gridHeight = 2.0
3489+;[PJSC v1.10] gridOrient = 250, 0, 340
3490+;[PJSC v1.10] upDownLabel = "(RICHER)", "(LEANER)"
3491+;[PJSC v1.10]
3492+;[PJSC v1.10] table = fuelTrimTable3Tbl, fuelTrimTable3Map, "Fuel trim Table 3", 9
3493+;[PJSC v1.10] topicHelp = "http://speeduino.com/wiki/index.php/Tuning"
3494+;[PJSC v1.10] xBins = fuelTrim3rpmBins, rpm
3495+;[PJSC v1.10] #if SPEED_DENSITY
3496+;[PJSC v1.10] yBins = fuelTrim3loadBins, map
3497+;[PJSC v1.10] #else
3498+;[PJSC v1.10] yBins = fuelTrim3loadBins, throttle
3499+;[PJSC v1.10] #endif
3500+;[PJSC v1.10] zBins = fuelTrim3Table
3501+;[PJSC v1.10]
3502+;[PJSC v1.10] gridHeight = 2.0
3503+;[PJSC v1.10] gridOrient = 250, 0, 340
3504+;[PJSC v1.10] upDownLabel = "(RICHER)", "(LEANER)"
3505+;[PJSC v1.10]
3506+;[PJSC v1.10] table = fuelTrimTable4Tbl, fuelTrimTable4Map, "Fuel trim Table 4", 9
3507+;[PJSC v1.10] topicHelp = "http://speeduino.com/wiki/index.php/Tuning"
3508+;[PJSC v1.10] xBins = fuelTrim4rpmBins, rpm
3509+;[PJSC v1.10] #if SPEED_DENSITY
3510+;[PJSC v1.10] yBins = fuelTrim4loadBins, map
3511+;[PJSC v1.10] #else
3512+;[PJSC v1.10] yBins = fuelTrim4loadBins, throttle
3513+;[PJSC v1.10] #endif
3514+;[PJSC v1.10] zBins = fuelTrim4Table
3515+;[PJSC v1.10]
3516+;[PJSC v1.10] gridHeight = 2.0
3517+;[PJSC v1.10] gridOrient = 250, 0, 340
3518+;[PJSC v1.10] upDownLabel = "(RICHER)", "(LEANER)"
34433519
3444- gridHeight = 2.0
3445- gridOrient = 250, 0, 340
3446- upDownLabel = "(RICHER)", "(LEANER)"
3447-
3448- table = fuelTrimTable2Tbl, fuelTrimTable2Map, "Fuel trim Table 2", 9
3449- topicHelp = "http://speeduino.com/wiki/index.php/Tuning"
3450- xBins = fuelTrim2rpmBins, rpm
3451- #if SPEED_DENSITY
3452- yBins = fuelTrim2loadBins, map
3453- #else
3454- yBins = fuelTrim2loadBins, throttle
3455- #endif
3456- zBins = fuelTrim2Table
3457-
3458- gridHeight = 2.0
3459- gridOrient = 250, 0, 340
3460- upDownLabel = "(RICHER)", "(LEANER)"
3461-
3462- table = fuelTrimTable3Tbl, fuelTrimTable3Map, "Fuel trim Table 3", 9
3463- topicHelp = "http://speeduino.com/wiki/index.php/Tuning"
3464- xBins = fuelTrim3rpmBins, rpm
3465- #if SPEED_DENSITY
3466- yBins = fuelTrim3loadBins, map
3467- #else
3468- yBins = fuelTrim3loadBins, throttle
3469- #endif
3470- zBins = fuelTrim3Table
3471-
3472- gridHeight = 2.0
3473- gridOrient = 250, 0, 340
3474- upDownLabel = "(RICHER)", "(LEANER)"
3475-
3476- table = fuelTrimTable4Tbl, fuelTrimTable4Map, "Fuel trim Table 4", 9
3477- topicHelp = "http://speeduino.com/wiki/index.php/Tuning"
3478- xBins = fuelTrim4rpmBins, rpm
3479- #if SPEED_DENSITY
3480- yBins = fuelTrim4loadBins, map
3481- #else
3482- yBins = fuelTrim4loadBins, throttle
3483- #endif
3484- zBins = fuelTrim4Table
3485-
3486- gridHeight = 2.0
3487- gridOrient = 250, 0, 340
3488- upDownLabel = "(RICHER)", "(LEANER)"
3489-
34903520 ;[PJSC]------------------------------------------------------------------------
3491- table = veTable2Tbl, veTable2Map, "VE Table 2", 12
3521+ table = veTable2Tbl, veTable2Map, "VE Table 2", 10
34923522 topicHelp = "http://speeduino.com/wiki/index.php/Tuning"
34933523 ; constant, variable
34943524 xBins = rpmBinsVE2, rpm
34953525 yBins = fuelLoadBins2, fuelLoad2
3526+ xyLabels = "RPM", "Fuel Load: "
34963527 zBins = veTable2
34973528
34983529 gridHeight = 2.0
@@ -3502,11 +3533,12 @@
35023533 ;[PJSC]-------------------------------------------------------------------------
35033534
35043535 ;[PJSC v1.10]-------------------------------------------------------------------
3505- table = veTable3Tbl, veTable3Map, "VE Table 3", 12
3536+ table = veTable3Tbl, veTable3Map, "VE Table 3", 11
35063537 topicHelp = "http://speeduino.com/wiki/index.php/Tuning"
35073538 ; constant, variable
35083539 xBins = rpmBinsVE3, rpm
35093540 yBins = fuelLoadBins3, fuelLoad3
3541+ xyLabels = "RPM", "Fuel Load: "
35103542 zBins = veTable3
35113543
35123544 gridHeight = 2.0
@@ -3514,12 +3546,14 @@
35143546 upDownLabel = "(RICHER)", "(LEANER)"
35153547
35163548 #if table4_fuel
3517- table = veTable4Tbl, veTable4Map, "VE Table 4", 12
3549+ table = sparkTbl, sparkMap, "VE Table 4", 3
35183550 topicHelp = "http://speeduino.com/wiki/index.php/Tuning"
35193551 ; constant, variable
3520- xBins = rpmBinsVE4, rpm
3521- yBins = fuelLoadBins4, ignLoad
3522- zBins = veTable4
3552+ xBins = rpmBins2, rpm
3553+ ;yBins = ignLoadBins, ignLoad
3554+ yBins = mapBins1, ignLoad
3555+ xyLabels = "RPM", "Fuel Load: "
3556+ zBins = advTable1
35233557
35243558 gridHeight = 2.0
35253559 gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
@@ -3797,7 +3831,7 @@
37973831 testCnt = scalar, U16, 105, "", 1.000, 0.000 ;[PJSC v1.10]For test mode
37983832 afr2 = scalar, U08, 107, "O2", 0.100, 0.000 ;[PJSC v1.10]
37993833 fuelLoad2 = scalar, S16, 108, { bitStringValue( algorithmUnits2 , algorithm2 ) }, 1.000, 0.000 ;[PJSC v1.10]For dual fuel load
3800- fuelLoad3 = scalar, S16, 110, { bitStringValue( algorithmUnits3 , algorithm3 ) }, 1.000, 0.000 ;[PJSC v1.10]For dual fuel load
3834+ fuelLoad3 = scalar, S16, 110, { bitStringValue( algorithmUnits2 , algorithm3 ) }, 1.000, 0.000 ;[PJSC v1.10]For dual fuel load
38013835
38023836
38033837 #if CELSIUS
@@ -4056,4 +4090,26 @@
40564090 filter = aseFilter, "ASE Flag" , engine, & , 4, , false
40574091 filter = overrunFilter, "Overrun" , pulseWidth, = , 0, , false
40584092 filter = std_Custom ; Standard Custom Expression Filter.
4093+
4094+#if table4_fuel
4095+; tableName, lambdaTargetTableName, lambdaChannel, egoCorrectionChannel, activeCondition
4096+ veAnalyzeMap = sparkTbl, afrTable1Tbl, afr, egoCorrection
4097+ lambdaTargetTables = afrTable1Tbl, afrTSCustom,
4098+ filter = std_xAxisMin ; Auto build with appropriate axis channels
4099+ ;filter = minRPMFilter, "Minimum RPM", rpm, < , 500, , true
4100+ filter = std_xAxisMax ; Auto build with appropriate axis channels
4101+ filter = std_yAxisMin ; Auto build with appropriate axis channels
4102+ filter = std_yAxisMax ; Auto build with appropriate axis channels
4103+ filter = std_DeadLambda ; Auto build
4104+
4105+ #if CELSIUS
4106+ filter = minCltFilter, "Minimum CLT", coolant, < , 71, , true
4107+ #else
4108+ filter = minCltFilter, "Minimum CLT", coolant, < , 160, , true
4109+ #endif
4110+ filter = accelFilter, "Accel Flag" , engine, & , 16, , false
4111+ filter = aseFilter, "ASE Flag" , engine, & , 4, , false
4112+ filter = overrunFilter, "Overrun" , pulseWidth, = , 0, , false
4113+ filter = std_Custom ; Standard Custom Expression Filter.
4114+#endif
40594115 ;[PJSC v1.10]-------------------------------------------------------------------------
--- branches/Ver1.00_base/speeduino/comms.h (revision 52)
+++ branches/Ver1.00_base/speeduino/comms.h (revision 53)
@@ -8,11 +8,15 @@
88 #define afrMapPage 5
99 #define afrSetPage 6//Config Page 3
1010 #define boostvvtPage 7
11-#define seqFuelPage 8
12-#define canbusPage 9//Config Page 9
13-#define warmupPage 10 //Config Page 10
14-#define ve2MapPage 11 //[PJSC] Config Page 11
15-#define ve3MapPage 12 //[PJSC v1.10] Config Page 12
11+//[PJSC v1.10]#define seqFuelPage 8
12+//[PJSC v1.10]#define canbusPage 9//Config Page 9
13+//[PJSC v1.10]#define warmupPage 10 //Config Page 10
14+//[PJSC v1.10]#define ve2MapPage 11 //[PJSC] Config Page 11
15+//[PJSC v1.10]#define ve3MapPage 12 //[PJSC v1.10] Config Page 12
16+#define canbusPage 8//Config Page 9
17+#define warmupPage 9 //Config Page 10
18+#define ve2MapPage 10 //[PJSC] Config Page 11
19+#define ve3MapPage 11 //[PJSC v1.10] Config Page 12
1620
1721 //[PJSC]#define SERIAL_PACKET_SIZE 90 //Must match ochBlockSize in ini file
1822 #define SERIAL_PACKET_SIZE 112 //[PJSC v1.10] Extend serial packet block size for Test mode
@@ -44,9 +48,7 @@
4448 "\nVVT Map\0"//102-No need to put a trailing null because it's the last string and the compliler does it for you.
4549 "\nPg 10 Config"
4650 "\nVE2 Map\0" //[PJSC]
47- "\nPg 11 Config\0"//[PJSC]
4851 "\nVE3 Map\0" //[PJSC v1.10]
49- "\nPg 12 Config\0"//[PJSC v1.10]
5052 };
5153
5254 void command();//This is the heart of the Command Line Interpeter. All that needed to be done was to make it human readable.
--- branches/Ver1.00_base/speeduino/globals.h (revision 52)
+++ branches/Ver1.00_base/speeduino/globals.h (revision 53)
@@ -243,7 +243,7 @@
243243 const byte data_structure_version = 2; //This identifies the data structure when reading / writing.
244244 //const byte page_size = 64;
245245 //[PJSC]const int16_t npage_size[11] PROGMEM = {0,288,128,288,128,288,128,240,192,192,192};
246-const int16_t npage_size[12] = {0,288,128,288,128,288,128,240,192,192,192,288}; //[PJSC]
246+const int16_t npage_size[12] PROGMEM = {0,288,128,288,128,288,128,240,192,192,288,288}; //[PJSC v1.10]
247247 //const byte page11_size = 128;
248248 #define MAP_PAGE_SIZE 288
249249
@@ -277,10 +277,10 @@
277277 struct table3D stagingTable; //8x8 fuel staging table
278278 struct table3D boostTable; //8x8 boost map
279279 struct table3D vvtTable; //8x8 vvt map
280-struct table3D trim1Table; //6x6 Fuel trim 1 map
281-struct table3D trim2Table; //6x6 Fuel trim 2 map
282-struct table3D trim3Table; //6x6 Fuel trim 3 map
283-struct table3D trim4Table; //6x6 Fuel trim 4 map
280+//[PJSC v1.10]struct table3D trim1Table; //6x6 Fuel trim 1 map
281+//[PJSC v1.10]struct table3D trim2Table; //6x6 Fuel trim 2 map
282+//[PJSC v1.10]struct table3D trim3Table; //6x6 Fuel trim 3 map
283+//[PJSC v1.10]struct table3D trim4Table; //6x6 Fuel trim 4 map
284284 struct table2D taeTable; //4 bin TPS Acceleration Enrichment map (2D)
285285 struct table2D WUETable; //10 bin Warm Up Enrichment map (2D)
286286 struct table2D crankingEnrichTable; //4 bin cranking Enrichment map (2D)
@@ -758,8 +758,7 @@
758758 byte ADCFILTER_MAP; //This is only used on Instantaneous MAP readings and is intentionally very weak to allow for faster response
759759 byte ADCFILTER_BARO;
760760
761-//[PJSC v1.10] byte unused2_64[57];
762- byte unused2_71[9];
761+ byte unused2_64[57];
763762
764763 #if defined(CORE_AVR)
765764 };
@@ -896,7 +895,6 @@
896895 byte unused10_153;
897896 byte unused10_154;
898897 byte unused10_155;
899-/* [PJSC v1.10] byte unused10_156;
900898 byte unused10_157;
901899 byte unused10_158;
902900 byte unused10_159;
@@ -932,8 +930,6 @@
932930 byte unused10_189;
933931 byte unused10_190;
934932 byte unused10_191;
935-*/
936-//[PJSC v1.10]
937933
938934 #if defined(CORE_AVR)
939935 };
@@ -1021,8 +1017,7 @@
10211017 byte knock_recoveryStepTime;
10221018 byte knock_recoveryStep;
10231019
1024-//[PJSC v1.10] byte unused11_122_191[69];
1025- byte unused11_122_155[33]; //[PJSC v1.10]
1020+ byte unused11_122_191[69];
10261021
10271022 #if defined(CORE_AVR)
10281023 };
@@ -1114,7 +1109,6 @@
11141109 extern struct config6 configPage6;
11151110 extern struct config9 configPage9;
11161111 extern struct config10 configPage10;
1117-extern struct config11 configPage11; //[PJSC]
11181112 extern unsigned long currentLoopTime; //The time the current loop started (uS)
11191113 extern unsigned long previousLoopTime; //The time the previous loop started (uS)
11201114 volatile uint16_t ignitionCount; //The count of ignition events that have taken place since the engine started
--- branches/Ver1.00_base/speeduino/storage.h (revision 52)
+++ branches/Ver1.00_base/speeduino/storage.h (revision 53)
@@ -93,7 +93,6 @@
9393 #define EEPROM_CONFIG3_XBINS 677
9494 #define EEPROM_CONFIG3_YBINS 693
9595 #define EEPROM_CONFIG4_START 709
96-/* [PJSC v1.10] Change EEPROM layout for preparing VE table 4 support
9796 #define EEPROM_CONFIG4_END 837
9897 #define EEPROM_CONFIG5_XSIZE 837
9998 #define EEPROM_CONFIG5_YSIZE 838
@@ -120,6 +119,7 @@
120119 #define EEPROM_CONFIG7_XBINS3 1485
121120 #define EEPROM_CONFIG7_YBINS3 1493
122121 #define EEPROM_CONFIG7_END 1501
122+/* [PJSC v1.10] Change EEPROM layout for preparing VE table 4 support
123123 #define EEPROM_CONFIG8_XSIZE1 1501
124124 #define EEPROM_CONFIG8_YSIZE1 1502
125125 #define EEPROM_CONFIG8_MAP1 1503
@@ -154,68 +154,22 @@
154154
155155 //=============================================
156156 //[PJSC v1.10] New EEPROM layout for preparing VE table 4 support
157-#define EEPROM_CONFIG4_END 789
158-#define EEPROM_CONFIG5_XSIZE 789
159-#define EEPROM_CONFIG5_YSIZE 790
160-#define EEPROM_CONFIG5_MAP 791
161-#define EEPROM_CONFIG5_XBINS 1047
162-#define EEPROM_CONFIG5_YBINS 1063
163-#define EEPROM_CONFIG6_START 1079
164-#define EEPROM_CONFIG6_END 1207
165-#define EEPROM_CONFIG7_XSIZE1 1207
166-#define EEPROM_CONFIG7_YSIZE1 1208
167-#define EEPROM_CONFIG7_MAP1 1209
168-#define EEPROM_CONFIG7_XBINS1 1273
169-#define EEPROM_CONFIG7_YBINS1 1281
170-#define EEPROM_CONFIG7_XSIZE2 1289
171-#define EEPROM_CONFIG7_YSIZE2 1290
172-#define EEPROM_CONFIG7_MAP2 1291
173-#define EEPROM_CONFIG7_XBINS2 1355
174-#define EEPROM_CONFIG7_YBINS2 1363
175-
176-#define EEPROM_CONFIG7_XSIZE3 1371
177-#define EEPROM_CONFIG7_YSIZE3 1372
178-#define EEPROM_CONFIG7_MAP3 1373
179-
180-#define EEPROM_CONFIG7_XBINS3 1437
181-#define EEPROM_CONFIG7_YBINS3 1445
182-#define EEPROM_CONFIG7_END 1453
183-#define EEPROM_CONFIG8_XSIZE1 1453
184-#define EEPROM_CONFIG8_YSIZE1 1454
185-#define EEPROM_CONFIG8_MAP1 1455
186-#define EEPROM_CONFIG8_XBINS1 1491
187-#define EEPROM_CONFIG8_YBINS1 1497
188-#define EEPROM_CONFIG8_XSIZE2 1503
189-#define EEPROM_CONFIG8_YSIZE2 1504
190-#define EEPROM_CONFIG8_MAP2 1505
191-#define EEPROM_CONFIG8_XBINS2 1541
192-#define EEPROM_CONFIG8_YBINS2 1547
193-#define EEPROM_CONFIG8_XSIZE3 1553
194-#define EEPROM_CONFIG8_YSIZE3 1554
195-#define EEPROM_CONFIG8_MAP3 1555
196-#define EEPROM_CONFIG8_XBINS3 1591
197-#define EEPROM_CONFIG8_YBINS3 1597
198-#define EEPROM_CONFIG8_XSIZE4 1603
199-#define EEPROM_CONFIG8_YSIZE4 1604
200-#define EEPROM_CONFIG8_MAP4 1605
201-#define EEPROM_CONFIG8_XBINS4 1641
202-#define EEPROM_CONFIG8_YBINS4 1647
203-#define EEPROM_CONFIG9_START 1662
204-#define EEPROM_CONFIG9_END 1818
205-#define EEPROM_CONFIG10_START 1818
206-#define EEPROM_CONFIG10_END 1974
207-#define EEPROM_CONFIG11_XSIZE 1974
208-#define EEPROM_CONFIG11_YSIZE 1975
209-#define EEPROM_CONFIG11_MAP 1976
210-#define EEPROM_CONFIG11_XBINS 2232
211-#define EEPROM_CONFIG11_YBINS 2248
212-#define EEPROM_CONFIG11_END 2264
213-#define EEPROM_CONFIG12_XSIZE 2264
214-#define EEPROM_CONFIG12_YSIZE 2265
215-#define EEPROM_CONFIG12_MAP 2266
216-#define EEPROM_CONFIG12_XBINS 2522
217-#define EEPROM_CONFIG12_YBINS 2538
218-#define EEPROM_CONFIG12_END 2554
157+#define EEPROM_CONFIG9_START 1501
158+#define EEPROM_CONFIG9_END 1693
159+#define EEPROM_CONFIG10_START 1693
160+#define EEPROM_CONFIG10_END 1885
161+#define EEPROM_CONFIG11_XSIZE 1885
162+#define EEPROM_CONFIG11_YSIZE 1886
163+#define EEPROM_CONFIG11_MAP 1887
164+#define EEPROM_CONFIG11_XBINS 2143
165+#define EEPROM_CONFIG11_YBINS 2159
166+#define EEPROM_CONFIG11_END 2175
167+#define EEPROM_CONFIG12_XSIZE 2175
168+#define EEPROM_CONFIG12_YSIZE 2176
169+#define EEPROM_CONFIG12_MAP 2177
170+#define EEPROM_CONFIG12_XBINS 2433
171+#define EEPROM_CONFIG12_YBINS 2449
172+#define EEPROM_CONFIG12_END 2465
219173 //=============================================
220174
221175 //Calibration data is stored at the end of the EEPROM (This is in case any further calibration tables are needed as they are large blocks)
--- branches/Ver1.00_base/speeduino/table.h (revision 52)
+++ branches/Ver1.00_base/speeduino/table.h (revision 53)
@@ -5,7 +5,8 @@
55 #define TABLE_H
66
77 #define TABLE_RPM_MULTIPLIER 100
8-#define TABLE_LOAD_MULTIPLIER 2
8+//[PJSC v1.10]#define TABLE_LOAD_MULTIPLIER 2
9+#define TABLE_LOAD_MULTIPLIER 1 //[PJSC v1.10]
910
1011 /*
1112 The 2D table can contain either 8-bit (byte) or 16-bit (int) values