mirror of https://github.com/rusefi/wideband.git
Ini and ts (#144)
* ini: update rev2 ini file * f1_dual: add ini file * f1_dual: signature Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
This commit is contained in:
parent
a57682a4b6
commit
7688b367e8
|
@ -143,7 +143,7 @@ int GetConfiguratiuonSize()
|
|||
return sizeof(config);
|
||||
}
|
||||
|
||||
#define TS_SIGNATURE "rusEFI 2022.05.29.wideband_rev2"
|
||||
#define TS_SIGNATURE "rusEFI 2022.05.29.wideband_dual"
|
||||
|
||||
const char *getTsSignature() {
|
||||
return TS_SIGNATURE;
|
||||
|
|
|
@ -0,0 +1,250 @@
|
|||
; This is a TunerStudio project for the rusEFI.com engine management system
|
||||
|
||||
; this should stop TS from looking for the CAN ID in the 2nd byte location and allow the page reads to work correctly.
|
||||
enable2ndByteCanID = false
|
||||
|
||||
[SettingGroups]
|
||||
; the referenceName will over-ride previous, so if you are creating a
|
||||
; settingGroup with a reference name of lambdaSensor, it will replace the
|
||||
; setting group defined in the settingGroups.xml of the TunerStudio config
|
||||
; folder. If is is an undefined referenceName, it will be added.
|
||||
; keyword = referenceName, DisplayName
|
||||
|
||||
[MegaTune]
|
||||
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
|
||||
signature = "rusEFI 2022.05.29.wideband_dual"
|
||||
|
||||
[TunerStudio]
|
||||
queryCommand = "S"
|
||||
versionInfo = "V" ; firmware version for title bar.
|
||||
signature = "rusEFI 2022.05.29.wideband_dual" ; signature is expected to be 7 or more characters.
|
||||
|
||||
; TS will try to use legacy temp units in some cases, showing "deg F" on a CLT gauge that's actually deg C
|
||||
useLegacyFTempUnits = false
|
||||
ignoreMissingBitOptions = true
|
||||
|
||||
; Optimize comms for fast rusEFI ECUs
|
||||
noCommReadDelay = true;
|
||||
defaultRuntimeRecordPerSec = 100;
|
||||
maxUnusedRuntimeRange = 1000;
|
||||
|
||||
; Set default IP/port to our IP/port
|
||||
defaultIpAddress = 192.168.10.1;
|
||||
defaultIpPort = 29000;
|
||||
|
||||
[Constants]
|
||||
; new packet serial format with CRC
|
||||
messageEnvelopeFormat = msEnvelope_1.0
|
||||
|
||||
endianness = little
|
||||
nPages = 1
|
||||
|
||||
pageIdentifier = "\x00\x00"
|
||||
pageReadCommand = "R%2o%2c"
|
||||
burnCommand = "B"
|
||||
pageActivate = "P"
|
||||
pageValueWrite = "W%2o%v"
|
||||
pageChunkWrite = "C%2o%2c%v"
|
||||
crc32CheckCommand = "k%2o%2c"
|
||||
retrieveConfigError = "e"
|
||||
|
||||
; communication settings
|
||||
pageActivationDelay = 500 ; Milliseconds delay after burn command. See https://sourceforge.net/p/rusefi/tickets/77/
|
||||
; e.g. put writeblocks off and add an interwrite delay
|
||||
writeBlocks = on
|
||||
interWriteDelay = 10
|
||||
blockReadTimeout = 3000; Milliseconds general timeout
|
||||
; delayAfterPortOpen = 500
|
||||
blockingFactor = 256 ; max chunk size
|
||||
; end communication settings
|
||||
|
||||
; name = bits, type, offset, bits
|
||||
; name = array, type, offset, shape, units, scale, translate, lo, hi, digits
|
||||
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
|
||||
|
||||
; CONFIG_DEFINITION_START
|
||||
|
||||
pageSize = 128
|
||||
page = 1
|
||||
|
||||
test = scalar, U08, 6, "test", 50.0, 0, 0, 20000, 2
|
||||
|
||||
; total TS size = 1
|
||||
|
||||
[SettingContextHelp]
|
||||
|
||||
; SettingContextHelpEnd
|
||||
|
||||
[LoggerDefinition]
|
||||
; valid logger types: composite, tooth, trigger, csv
|
||||
; loggerDef = compositeLogger, "Primary Trigger Logger", tooth
|
||||
loggerDef = compositeLogger, "Trigger Logger", composite
|
||||
startCommand = "l\x01"
|
||||
stopCommand = "l\x02"
|
||||
dataReadCommand = "L"
|
||||
dataReadTimeout = 10000 ; time in ms
|
||||
dataReadyCondition = { toothLogReady }
|
||||
continuousRead = true
|
||||
; each packet is 5 and we have 500 of those
|
||||
dataLength = 1250
|
||||
|
||||
|
||||
; recordDef = headerLen, footerLen, recordLen
|
||||
recordDef = 0, 0, 5
|
||||
|
||||
; these names are hard-coded inside TS
|
||||
recordField = priLevel, "PriLevel", 0, 1, 1.0, "Flag"
|
||||
recordField = secLevel, "SecLevel", 1, 1, 1.0, "Flag"
|
||||
recordField = trigger, "Trigger", 2, 1, 1.0, "Flag"
|
||||
recordField = sync, "Sync", 3, 1, 1.0, "Flag"
|
||||
recordField = coil, "Coil", 4, 1, 1.0, "Flag"
|
||||
recordField = inj, "Injector", 5, 1, 1.0, "Flag"
|
||||
recordField = time, "Time", 8, 32, 0.001, "ms"
|
||||
|
||||
; it seems that TS also needs to know the diff.size of a tooth
|
||||
calcField = toothTime, "ToothTime", "ms", { time - pastValue(time, 1) }
|
||||
|
||||
;
|
||||
; in order to add new TunerStudio gauge you need to chagne two places
|
||||
; 1) add a line here in '[OutputChannels]'
|
||||
; 2) in rusEFI firmware make a change to output_channels.txt
|
||||
|
||||
[OutputChannels]
|
||||
ochGetCommand = "O%2o%2c"
|
||||
; see TS_OUTPUT_SIZE in console source code
|
||||
ochBlockSize = 1016
|
||||
|
||||
; Common
|
||||
TestValue = scalar, U32, 0, "na", 1, 0, 0, 65535, 0
|
||||
VBatt = scalar, F32, 4, "V", 1, 0, 0.0, 30.0, 2
|
||||
|
||||
; AFR0
|
||||
AFR0_in = scalar, F32, 32, "", 14.7, 0, 0.0, 20.0, 2
|
||||
AFR0_temp = scalar, F32, 36, "C", 1, 0, 0.0, 1050.0, 0
|
||||
AFR0_Nernst = scalar, F32, 40, "V", 1, 0, 0.0, 1.0, 2
|
||||
AFR0_PumpITarget = scalar, F32, 44, "mA", 1, 0, -5.0, 5.0, 2
|
||||
AFR0_PumpIMeasure = scalar, F32, 48, "mA", 1, 0, -5.0, 5.0, 2
|
||||
AFR0_HeaterDuty = scalar, F32, 52, "%", 100, 0, 0.0, 100.0, 0
|
||||
|
||||
; AFR1
|
||||
AFR1_in = scalar, F32, 64, "", 14.7, 0, 0.0, 20.0, 2
|
||||
AFR1_temp = scalar, F32, 68, "C", 1, 0, 0.0, 1050.0, 0
|
||||
AFR1_Nernst = scalar, F32, 72, "V", 1, 0, 0.0, 1.0, 2
|
||||
AFR1_PumpITarget = scalar, F32, 76, "mA", 1, 0, -5.0, 5.0, 2
|
||||
AFR1_PumpIMeasure = scalar, F32, 80, "mA", 1, 0, -5.0, 5.0, 2
|
||||
AFR1_HeaterDuty = scalar, F32, 84, "%", 100, 0, 0.0, 100.0, 0
|
||||
|
||||
; EGT0
|
||||
EGT0_temp = scalar, F32, 96, "C", 1, 0, -250.0, 1600.0, 0
|
||||
EGT0_coldJunction = scalar, F32, 100, "C", 1, 0, -55.0, 127.0, 0
|
||||
|
||||
; EGT1
|
||||
EGT1_temp = scalar, F32, 112, "C", 1, 0, -250.0, 1600.0, 0
|
||||
EGT1_coldJunction = scalar, F32, 116, "C", 1, 0, -55.0, 127.0, 0
|
||||
|
||||
seconds = scalar, U32, 124, "sec", 1, 0
|
||||
|
||||
[PcVariables]
|
||||
|
||||
[TableEditor]
|
||||
|
||||
[GaugeConfigurations]
|
||||
|
||||
gaugeCategory = Common
|
||||
; Name = Channel, Title, Units, Lo, Hi, LoD, LoW, HiW, HiD, vd, ld, Active
|
||||
TestGauge = TestValue, "TestValue", "", -10000.0, 10000.0, -10000.0, 10000.0, -10000.0, 10000.0, 3, 3
|
||||
; Name = Channel, Title, Units, Lo, Hi, LoD, LoW, HiW, HiD, vd, ld, Active
|
||||
VBattGauge = VBatt, "Battery", "V", 3.0, 24.0, 9.0, 11.0, 15.0, 16.0, 2, 2
|
||||
|
||||
; AFR0
|
||||
gaugeCategory = AFR channel 0
|
||||
; Name = Channel, Title, Units, Lo, Hi, LoD, LoW, HiW, HiD, vd, ld, Active
|
||||
AFR0_Gauge = AFR0_in, "0: AFR", "", 6.5, 20.0, 9.0, 10.0, 16.0, 17.0, 2, 2
|
||||
AFR0_TempGauge = AFR0_temp, "0: AFR t", "C", 500, 1050, 500, 650, 800, 950, 2, 2
|
||||
AFR0_NernstGauge = AFR0_Nernst, "0: nernst", "V", 0.0, 1.0, 0.0, 0.0, 0.9, 0.95, 2, 2
|
||||
AFR0_HeaterDutyGauge = AFR0_HeaterDuty, "0: Heater", "%", 0.0, 100.0, 1.0, 3.0, 90, 95, 2, 2
|
||||
AFR0_PumpITargetGauge = AFR0_PumpITarget, "0: Ipump Target", "mA", -5.0, 5.0, -4.0, -3.0, 3.0, 4.0, 2, 2
|
||||
AFR0_PumpIMeasureGauge = AFR0_PumpIMeasure, "0: Ipump Actual", "mA", -5.0, 5.0, -4.0, -3.0, 3.0, 4.0, 2, 2
|
||||
|
||||
; AFR1
|
||||
gaugeCategory = AFR channel 1
|
||||
; Name = Channel, Title, Units, Lo, Hi, LoD, LoW, HiW, HiD, vd, ld, Active
|
||||
AFR1_Gauge = AFR1_in, "1: AFR", "", 6.5, 20.0, 9.0, 10.0, 16.0, 17.0, 2, 2
|
||||
AFR1_TempGauge = AFR1_temp, "1: AFR t", "C", 500, 1050, 500, 650, 800, 950, 2, 2
|
||||
AFR1_NernstGauge = AFR1_Nernst, "1: nernst", "V", 0.0, 1.0, 0.0, 0.0, 0.9, 0.95, 2, 2
|
||||
AFR1_HeaterDutyGauge = AFR1_HeaterDuty, "1: Heater", "%", 0.0, 100.0, 1.0, 3.0, 90, 95, 2, 2
|
||||
AFR1_PumpITargetGauge = AFR1_PumpITarget, "1: Ipump Target", "mA", -5.0, 5.0, -4.0, -3.0, 3.0, 4.0, 2, 2
|
||||
AFR1_PumpIMeasureGauge = AFR1_PumpIMeasure, "1: Ipump Actual", "mA", -5.0, 5.0, -4.0, -3.0, 3.0, 4.0, 2, 2
|
||||
|
||||
; EGT0
|
||||
gaugeCategory = EGT channel 0
|
||||
; Name = Channel, Title, Units, Lo, Hi, LoD, LoW, HiW, HiD, vd, ld, Active
|
||||
EGT0_Gauge = EGT0_temp, "0: EGT", "C", 0.0, 1600.0, 100.0, 250.0, 900.0, 1000.0, 2, 2
|
||||
EGT0_ColdJunctionGauge = EGT0_coldJunction, "0: EGT CJ", "C", 0.0, 130.0, -55.0, -20.0, 95.0, 105.0, 2, 2
|
||||
|
||||
; EGT1
|
||||
gaugeCategory = EGT channel 1
|
||||
; Name = Channel, Title, Units, Lo, Hi, LoD, LoW, HiW, HiD, vd, ld, Active
|
||||
EGT1_Gauge = EGT1_temp, "1: EGT", "C", 0.0, 1600.0, 100.0, 250.0, 900.0, 1000.0, 2, 2
|
||||
EGT1_ColdJunctionGauge = EGT1_coldJunction, "1: EGT CJ", "C", 0.0, 130.0, -55.0, -20.0, 95.0, 105.0, 2, 2
|
||||
|
||||
[FrontPage]
|
||||
; Gauges are numbered left to right, top to bottom.
|
||||
;
|
||||
; 1 2 3 4
|
||||
; 5 6 7 8
|
||||
|
||||
gauge1 = AFR0_TempGauge
|
||||
gauge2 = AFR0_Gauge
|
||||
gauge3 = AFR1_Gauge
|
||||
gauge4 = AFR1_TempGauge
|
||||
gauge5 = VBattGauge
|
||||
gauge6 = EGT0_Gauge
|
||||
gauge7 = EGT1_Gauge
|
||||
gauge8 = TestGauge
|
||||
|
||||
[KeyActions]
|
||||
|
||||
[Datalog]
|
||||
; Channel Label Type Format
|
||||
entry = time, "Time", float, "%.3f"
|
||||
entry = TestValue, "TestValue", int, "%d"
|
||||
|
||||
[Menu]
|
||||
|
||||
menuDialog = main
|
||||
|
||||
menu = "&Base &Engine"
|
||||
|
||||
menu = "Fuel"
|
||||
|
||||
menu = "Ignition"
|
||||
|
||||
menu = "&Cranking"
|
||||
|
||||
menu = "&Idle"
|
||||
|
||||
menu = "&View"
|
||||
|
||||
menu = "&Advanced"
|
||||
|
||||
menu = "&Sensors"
|
||||
|
||||
[ControllerCommands]
|
||||
; commandName = command1, command2, commandn...
|
||||
; command in standard ini format, a command name can be assigned to 1 to n commands that will be executed in order.
|
||||
; This does not include any resultant protocol envelope data, only the response data itself.
|
||||
|
||||
; WARNING!! These commands bypass TunerStudio's normal memory synchronization. If these commands
|
||||
; alter mapped settings (Constant) memory in the controller, TunerStudio will have an out of sync condition
|
||||
; and may create error messages.
|
||||
; It is expected that these commands would not typically alter any ram mapped to a Constant.
|
||||
|
||||
; reboot ECU
|
||||
cmd_reset_controller = "Z\x00\xbb\x00\x00"
|
||||
; jump to DFU mode
|
||||
cmd_dfu = "Z\x00\xba\x00\x00"
|
||||
|
||||
[UserDefined]
|
||||
|
||||
[Tools]
|
|
@ -118,13 +118,13 @@ test = scalar, U08, 6, "test", 50.0, 0, 0, 20000, 2
|
|||
TestValue = scalar, U32, 0, "na", 1, 0, 0, 65535, 0
|
||||
VBatt = scalar, F32, 4, "V", 1, 0, 0.0, 30.0, 2
|
||||
|
||||
; AFR
|
||||
AFRin = scalar, F32, 32, "", 14.7, 0, 0.0, 20.0, 2
|
||||
AFRtemp = scalar, F32, 36, "C", 1, 0, 0.0, 1050.0, 0
|
||||
Nernst = scalar, F32, 40, "V", 1, 0, 0.0, 1.0, 2
|
||||
PumpITarget = scalar, F32, 44, "mA", 1, 0, -5.0, 5.0, 2
|
||||
PumpIMeasure = scalar, F32, 48, "mA", 1, 0, -5.0, 5.0, 2
|
||||
HeaterDuty = scalar, F32, 52, "%", 100, 0, 0.0, 100.0, 0
|
||||
; AFR0
|
||||
AFR0_in = scalar, F32, 32, "", 14.7, 0, 0.0, 20.0, 2
|
||||
AFR0_temp = scalar, F32, 36, "C", 1, 0, 0.0, 1050.0, 0
|
||||
AFR0_Nernst = scalar, F32, 40, "V", 1, 0, 0.0, 1.0, 2
|
||||
AFR0_PumpITarget = scalar, F32, 44, "mA", 1, 0, -5.0, 5.0, 2
|
||||
AFR0_PumpIMeasure = scalar, F32, 48, "mA", 1, 0, -5.0, 5.0, 2
|
||||
AFR0_HeaterDuty = scalar, F32, 52, "%", 100, 0, 0.0, 100.0, 0
|
||||
|
||||
seconds = scalar, U32, 124, "sec", 1, 0
|
||||
|
||||
|
@ -135,16 +135,16 @@ seconds = scalar, U32, 124, "sec", 1, 0
|
|||
[GaugeConfigurations]
|
||||
|
||||
gaugeCategory = Test
|
||||
; Name = Channel, Title, Units, Lo, Hi, LoD, LoW, HiW, HiD, vd, ld, Active
|
||||
TestGauge = TestValue, "TestValue", "", -10000.0, 10000.0, -10000.0, 10000.0, -10000.0, 10000.0, 3, 3
|
||||
; Name = Channel, Title, Units, Lo, Hi, LoD, LoW, HiW, HiD, vd, ld, Active
|
||||
VBattGauge = VBatt, "Battery", "V", 3.0, 24.0, 9.0, 11.0, 15.0, 16.0, 2, 2
|
||||
AFRGauge = AFRin, "AFR", "", 6.5, 20.0, 9.0, 10.0, 16.0, 17.0, 2, 2
|
||||
AFRTempGauge = AFRtemp, "AFR t", "C", 500, 1050, 500, 650, 800, 950, 2, 2
|
||||
NernstGauge = Nernst, "nernst", "V", 0.0, 1.0, 0.0, 0.0, 0.9, 0.95, 2, 2
|
||||
HeaterDutyGauge = HeaterDuty, "Heater", "%", 0.0, 100.0, 1.0, 3.0, 90, 95, 2, 2
|
||||
PumpITargetGauge = PumpITarget, "Ipump Target", "mA", -5.0, 5.0, -4.0, -3.0, 3.0, 4.0, 2, 2
|
||||
PumpIMeasureGauge = PumpIMeasure, "Ipump Actual", "mA", -5.0, 5.0, -4.0, -3.0, 3.0, 4.0, 2, 2
|
||||
; Name = Channel, Title, Units, Lo, Hi, LoD, LoW, HiW, HiD, vd, ld, Active
|
||||
TestGauge = TestValue, "TestValue", "", -10000.0, 10000.0, -10000.0, 10000.0, -10000.0, 10000.0, 3, 3
|
||||
; Name = Channel, Title, Units, Lo, Hi, LoD, LoW, HiW, HiD, vd, ld, Active
|
||||
VBattGauge = VBatt, "Battery", "V", 3.0, 24.0, 9.0, 11.0, 15.0, 16.0, 2, 2
|
||||
AFR0_Gauge = AFR0_in, "AFR", "", 6.5, 20.0, 9.0, 10.0, 16.0, 17.0, 2, 2
|
||||
AFR0_TempGauge = AFR0_temp, "AFR t", "C", 500, 1050, 500, 650, 800, 950, 2, 2
|
||||
AFR0_NernstGauge = AFR0_Nernst, "nernst", "V", 0.0, 1.0, 0.0, 0.0, 0.9, 0.95, 2, 2
|
||||
AFR0_HeaterDutyGauge = AFR0_HeaterDuty, "Heater", "%", 0.0, 100.0, 1.0, 3.0, 90, 95, 2, 2
|
||||
AFR0_PumpITargetGauge = AFR0_PumpITarget, "Ipump Target", "mA", -5.0, 5.0, -4.0, -3.0, 3.0, 4.0, 2, 2
|
||||
AFR0_PumpIMeasureGauge = AFR0_PumpIMeasure, "Ipump Actual", "mA", -5.0, 5.0, -4.0, -3.0, 3.0, 4.0, 2, 2
|
||||
|
||||
|
||||
[FrontPage]
|
||||
|
@ -154,12 +154,12 @@ PumpIMeasureGauge = PumpIMeasure, "Ipump Actual", "mA", -5.0, 5.0,
|
|||
; 5 6 7 8
|
||||
|
||||
gauge1 = VBattGauge
|
||||
gauge2 = AFRGauge
|
||||
gauge3 = AFRTempGauge
|
||||
gauge4 = HeaterDutyGauge
|
||||
gauge5 = NernstGauge
|
||||
gauge6 = PumpITargetGauge
|
||||
gauge7 = PumpIMeasureGauge
|
||||
gauge2 = AFR0_Gauge
|
||||
gauge3 = AFR0_TempGauge
|
||||
gauge4 = AFR0_HeaterDutyGauge
|
||||
gauge5 = AFR0_NernstGauge
|
||||
gauge6 = AFR0_PumpITargetGauge
|
||||
gauge7 = AFR0_PumpIMeasureGauge
|
||||
gauge8 = TestGauge
|
||||
|
||||
[KeyActions]
|
||||
|
|
Loading…
Reference in New Issue