From 3d44f6d2c01564e7b9b2163405348ad2bc8ebf08 Mon Sep 17 00:00:00 2001 From: rusefillc Date: Sun, 17 Apr 2022 22:28:36 -0400 Subject: [PATCH] logging of live data structs was: data points #3614 alpha version of TS UI --- .../binary/generated/fancy_content.ini | 290 ++++++++ .../console/binary/generated/fancy_menu.ini | 16 + firmware/console/binary/generated/wip.ini | 702 ------------------ firmware/gen_config_common.sh | 2 + firmware/tunerstudio/rusefi.input | 5 + java_tools/ConfigDefinition.jar | Bin 5530568 -> 5510644 bytes .../java/com/rusefi/ldmp/UsagesReader.java | 14 +- .../rusefi/output/FragmentDialogConsumer.java | 24 +- .../test/FragmentDialogConsumerTest.java | 4 +- 9 files changed, 346 insertions(+), 711 deletions(-) create mode 100644 firmware/console/binary/generated/fancy_content.ini create mode 100644 firmware/console/binary/generated/fancy_menu.ini delete mode 100644 firmware/console/binary/generated/wip.ini diff --git a/firmware/console/binary/generated/fancy_content.ini b/firmware/console/binary/generated/fancy_content.ini new file mode 100644 index 0000000000..3cab84eb63 --- /dev/null +++ b/firmware/console/binary/generated/fancy_content.ini @@ -0,0 +1,290 @@ +indicatorPanel = high_pressure_fuel_pumpIndicatorPanel, 2 + indicator = {noValve}, "No", "Yes" + indicator = {angleAboveMin}, "No", "Yes" + indicator = {isHpfpInactive}, "No", "Yes" + +liveGraph = high_pressure_fuel_pumpGraph, "Graph", South + graphLine = m_requested_pump + graphLine = fuel_requested_percent + graphLine = fuel_requested_percent_pi + graphLine = noValve + graphLine = angleAboveMin + graphLine = isHpfpInactive + graphLine = nextLobe + graphLine = nextStart + +dialog = high_pressure_fuel_pumpDialog, "high_pressure_fuel_pump" + panel = high_pressure_fuel_pumpIndicatorPanel + panel = high_pressure_fuel_pumpGraph + +liveGraph = injector_modelGraph, "Graph", South + graphLine = m_deadtime + graphLine = pressureDelta + graphLine = pressureRatio + +dialog = injector_modelDialog, "injector_model" + panel = injector_modelGraph +indicatorPanel = launch_control_stateIndicatorPanel, 2 + indicator = {combinedConditions}, "No", "Yes" + indicator = {launchActivatePinState}, "No", "Yes" + indicator = {isLaunchCondition}, "No", "Yes" + indicator = {isSwitchActivated}, "No", "Yes" + indicator = {isClutchActivated}, "No", "Yes" + indicator = {isValidInputPin}, "No", "Yes" + indicator = {activateSwitchCondition}, "No", "Yes" + indicator = {rpmCondition}, "No", "Yes" + indicator = {speedCondition}, "No", "Yes" + indicator = {tpsCondition}, "No", "Yes" + +liveGraph = launch_control_stateGraph, "Graph", South + graphLine = retardThresholdRpm + graphLine = combinedConditions + graphLine = launchActivatePinState + graphLine = isLaunchCondition + graphLine = isSwitchActivated + graphLine = isClutchActivated + graphLine = isValidInputPin + graphLine = activateSwitchCondition + graphLine = rpmCondition + graphLine = speedCondition + graphLine = tpsCondition + +dialog = launch_control_stateDialog, "launch_control_state" + panel = launch_control_stateIndicatorPanel + panel = launch_control_stateGraph +indicatorPanel = boost_controlIndicatorPanel, 2 + indicator = {isTpsInvalid}, "No", "Yes" + indicator = {m_shouldResetPid}, "No", "Yes" + indicator = {isBelowClosedLoopThreshold}, "No", "Yes" + indicator = {isNotClosedLoop}, "No", "Yes" + indicator = {isZeroRpm}, "No", "Yes" + +liveGraph = boost_controlGraph, "Graph", South + graphLine = isTpsInvalid + graphLine = m_shouldResetPid + graphLine = isBelowClosedLoopThreshold + graphLine = isNotClosedLoop + graphLine = isZeroRpm + graphLine = openLoopPart + graphLine = closedLoopPart + +dialog = boost_controlDialog, "boost_control" + panel = boost_controlIndicatorPanel + panel = boost_controlGraph +indicatorPanel = ac_controlIndicatorPanel, 2 + indicator = {engineTooSlow}, "No", "Yes" + indicator = {engineTooFast}, "No", "Yes" + indicator = {noClt}, "No", "Yes" + indicator = {engineTooHot}, "No", "Yes" + indicator = {tpsTooHigh}, "No", "Yes" + indicator = {acButtonState}, "No", "Yes" + indicator = {isDisabledByLua}, "No", "Yes" + +liveGraph = ac_controlGraph, "Graph", South + graphLine = engineTooSlow + graphLine = engineTooFast + graphLine = noClt + graphLine = engineTooHot + graphLine = tpsTooHigh + graphLine = acButtonState + graphLine = isDisabledByLua + graphLine = latest_usage_ac_control + graphLine = acSwitchLastChangeTimeMs + +dialog = ac_controlDialog, "ac_control" + panel = ac_controlIndicatorPanel + panel = ac_controlGraph +indicatorPanel = fan_controlIndicatorPanel, 2 + indicator = {cranking}, "No", "Yes" + indicator = {notRunning}, "No", "Yes" + indicator = {disabledWhileEngineStopped}, "No", "Yes" + indicator = {brokenClt}, "No", "Yes" + indicator = {enabledForAc}, "No", "Yes" + indicator = {hot}, "No", "Yes" + indicator = {cold}, "No", "Yes" + +liveGraph = fan_controlGraph, "Graph", South + graphLine = cranking + graphLine = notRunning + graphLine = disabledWhileEngineStopped + graphLine = brokenClt + graphLine = enabledForAc + graphLine = hot + graphLine = cold + +dialog = fan_controlDialog, "fan_control" + panel = fan_controlIndicatorPanel + panel = fan_controlGraph +indicatorPanel = fuel_pump_controlIndicatorPanel, 2 + indicator = {isPrime}, "No", "Yes" + indicator = {engineTurnedRecently}, "No", "Yes" + indicator = {isPumpOn}, "No", "Yes" + indicator = {ignitionOn}, "No", "Yes" + +liveGraph = fuel_pump_controlGraph, "Graph", South + graphLine = isPrime + graphLine = engineTurnedRecently + graphLine = isPumpOn + graphLine = ignitionOn + +dialog = fuel_pump_controlDialog, "fuel_pump_control" + panel = fuel_pump_controlIndicatorPanel + panel = fuel_pump_controlGraph +indicatorPanel = main_relayIndicatorPanel, 2 + indicator = {isBenchTest}, "No", "Yes" + indicator = {hasIgnitionVoltage}, "No", "Yes" + indicator = {mainRelayState}, "No", "Yes" + indicator = {delayedShutoffRequested}, "No", "Yes" + +liveGraph = main_relayGraph, "Graph", South + graphLine = isBenchTest + graphLine = hasIgnitionVoltage + graphLine = mainRelayState + graphLine = delayedShutoffRequested + +dialog = main_relayDialog, "main_relay" + panel = main_relayIndicatorPanel + panel = main_relayGraph + +liveGraph = engine_stateGraph, "Graph", South + graphLine = sd + graphLine = targetAFR + graphLine = engineCycleDurationMs + graphLine = minRpmKcurrentTPS + graphLine = currentTpsAdc + graphLine = tpsVoltageMCU + graphLine = tpsVoltageBoard + graphLine = currentBaroCorrectedVE + graphLine = injectorFlowCorrection + graphLine = baroCorrection + graphLine = cranking + graphLine = running + graphLine = etbFeedForward + graphLine = targetFromTable + graphLine = sparkDwell + graphLine = dwellAngle + graphLine = cltTimingCorrection + +dialog = engine_stateDialog, "engine_state" + panel = engine_stateGraph +indicatorPanel = tps_accel_stateIndicatorPanel, 2 + indicator = {isAboveAccelThreshold}, "No", "Yes" + indicator = {isBelowDecelThreshold}, "No", "Yes" + indicator = {isTimeToResetAccumulator}, "No", "Yes" + indicator = {isFractionalEnrichment}, "No", "Yes" + indicator = {belowEpsilon}, "No", "Yes" + indicator = {tooShort}, "No", "Yes" + +liveGraph = tps_accel_stateGraph, "Graph", South + graphLine = tpsFrom + graphLine = tpsTo + graphLine = deltaTps + graphLine = extraFuel + graphLine = valueFromTable + graphLine = isAboveAccelThreshold + graphLine = isBelowDecelThreshold + graphLine = isTimeToResetAccumulator + graphLine = isFractionalEnrichment + graphLine = belowEpsilon + graphLine = tooShort + graphLine = fractionalInjFuel + graphLine = accumulatedValue + graphLine = maxExtraPerCycle + graphLine = maxExtraPerPeriod + graphLine = maxInjectedPerPeriod + graphLine = cycleCnt + +dialog = tps_accel_stateDialog, "tps_accel_state" + panel = tps_accel_stateIndicatorPanel + panel = tps_accel_stateGraph + +liveGraph = trigger_centralGraph, "Graph", South + graphLine = hwEventCounters1 + graphLine = hwEventCounters2 + graphLine = hwEventCounters3 + graphLine = hwEventCounters4 + graphLine = hwEventCounters5 + graphLine = hwEventCounters6 + graphLine = vvtCamCounter + +dialog = trigger_centralDialog, "trigger_central" + panel = trigger_centralGraph + +liveGraph = trigger_stateGraph, "Graph", South + graphLine = currentGap + graphLine = totalRevolutionCounter + +dialog = trigger_stateDialog, "trigger_state" + panel = trigger_stateGraph + +liveGraph = wall_fuel_stateGraph, "Graph", South + graphLine = wallFuelCorrection + graphLine = wallFuel + +dialog = wall_fuel_stateDialog, "wall_fuel_state" + panel = wall_fuel_stateGraph +indicatorPanel = idle_stateIndicatorPanel, 2 + indicator = {mightResetPid}, "No", "Yes" + indicator = {shouldResetPid}, "No", "Yes" + indicator = {wasResetPid}, "No", "Yes" + indicator = {mustResetPid}, "No", "Yes" + indicator = {isCoasting}, "No", "Yes" + indicator = {useIacTableForCoasting}, "No", "Yes" + indicator = {notIdling}, "No", "Yes" + indicator = {needReset}, "No", "Yes" + indicator = {isInDeadZone}, "No", "Yes" + indicator = {isBlipping}, "No", "Yes" + indicator = {useClosedLoop}, "No", "Yes" + indicator = {badTps}, "No", "Yes" + indicator = {looksLikeRunning}, "No", "Yes" + indicator = {looksLikeCoasting}, "No", "Yes" + indicator = {looksLikeCrankToIdle}, "No", "Yes" + indicator = {useInstantRpmForIdle}, "No", "Yes" + indicator = {isVerboseIAC}, "No", "Yes" + +liveGraph = idle_stateGraph, "Graph", South + graphLine = idleState + graphLine = currentIdlePosition + graphLine = baseIdlePosition + graphLine = iacByTpsTaper + graphLine = throttlePedalUpState + graphLine = mightResetPid + graphLine = shouldResetPid + graphLine = wasResetPid + graphLine = mustResetPid + graphLine = isCoasting + graphLine = useIacTableForCoasting + graphLine = notIdling + graphLine = needReset + graphLine = isInDeadZone + graphLine = isBlipping + graphLine = useClosedLoop + graphLine = badTps + graphLine = looksLikeRunning + graphLine = looksLikeCoasting + graphLine = looksLikeCrankToIdle + graphLine = useInstantRpmForIdle + graphLine = isVerboseIAC + graphLine = targetRpmByClt + graphLine = targetRpmAcBump + +dialog = idle_stateDialog, "idle_state" + panel = idle_stateIndicatorPanel + panel = idle_stateGraph + +liveGraph = ignition_stateGraph, "Graph", South + graphLine = baseDwell + graphLine = dwellVoltageCorrection + graphLine = luaTimingAdd + graphLine = luaTimingMult + +dialog = ignition_stateDialog, "ignition_state" + panel = ignition_stateGraph + +liveGraph = electronic_throttleGraph, "Graph", South + graphLine = idlePosition + graphLine = trim + graphLine = luaAdjustment + +dialog = electronic_throttleDialog, "electronic_throttle" + panel = electronic_throttleGraph diff --git a/firmware/console/binary/generated/fancy_menu.ini b/firmware/console/binary/generated/fancy_menu.ini new file mode 100644 index 0000000000..ad315230f5 --- /dev/null +++ b/firmware/console/binary/generated/fancy_menu.ini @@ -0,0 +1,16 @@ + subMenu = high_pressure_fuel_pumpDialog, "high_pressure_fuel_pump" + subMenu = injector_modelDialog, "injector_model" + subMenu = launch_control_stateDialog, "launch_control_state" + subMenu = boost_controlDialog, "boost_control" + subMenu = ac_controlDialog, "ac_control" + subMenu = fan_controlDialog, "fan_control" + subMenu = fuel_pump_controlDialog, "fuel_pump_control" + subMenu = main_relayDialog, "main_relay" + subMenu = engine_stateDialog, "engine_state" + subMenu = tps_accel_stateDialog, "tps_accel_state" + subMenu = trigger_centralDialog, "trigger_central" + subMenu = trigger_stateDialog, "trigger_state" + subMenu = wall_fuel_stateDialog, "wall_fuel_state" + subMenu = idle_stateDialog, "idle_state" + subMenu = ignition_stateDialog, "ignition_state" + subMenu = electronic_throttleDialog, "electronic_throttle" diff --git a/firmware/console/binary/generated/wip.ini b/firmware/console/binary/generated/wip.ini deleted file mode 100644 index 95403ddb0a..0000000000 --- a/firmware/console/binary/generated/wip.ini +++ /dev/null @@ -1,702 +0,0 @@ -indicatorPanel = output_channelsIndicatorPanel, 2 - indicator = {sd_present}, "No", "Yes" - indicator = {isIgnitionEnabledIndicator}, "No", "Yes" - indicator = {isInjectionEnabledIndicator}, "No", "Yes" - indicator = {sd_logging_internal}, "No", "Yes" - indicator = {unusedb4}, "No", "Yes" - indicator = {isFuelPumpOn}, "No", "Yes" - indicator = {isFanOn}, "No", "Yes" - indicator = {isO2HeaterOn}, "No", "Yes" - indicator = {checkEngine}, "No", "Yes" - indicator = {needBurn}, "No", "Yes" - indicator = {sd_msd}, "No", "Yes" - indicator = {clutchUpState}, "No", "Yes" - indicator = {clutchDownState}, "No", "Yes" - indicator = {isFan2On}, "No", "Yes" - indicator = {alternatorOnOff}, "No", "Yes" - indicator = {brakePedalState}, "No", "Yes" - indicator = {toothLogReady}, "No", "Yes" - indicator = {acSwitchState}, "No", "Yes" - indicator = {isTpsError}, "No", "Yes" - indicator = {isCltError}, "No", "Yes" - indicator = {isMapError}, "No", "Yes" - indicator = {isIatError}, "No", "Yes" - indicator = {acState}, "No", "Yes" - indicator = {isTriggerError}, "No", "Yes" - indicator = {hasCriticalError}, "No", "Yes" - indicator = {isWarnNow}, "No", "Yes" - indicator = {isPedalError}, "No", "Yes" - indicator = {isKnockChipOk}, "No", "Yes" - indicator = {launchTriggered}, "No", "Yes" - indicator = {isTps2Error}, "No", "Yes" - indicator = {isIdleClosedLoop}, "No", "Yes" - indicator = {isIdleCoasting}, "No", "Yes" - indicator = {isMainRelayOn}, "No", "Yes" - indicator = {isUsbConnected}, "No", "Yes" - indicator = {launchSpeedCondition}, "No", "Yes" - indicator = {launchRpmCondition}, "No", "Yes" - indicator = {launchTpsCondition}, "No", "Yes" - indicator = {launchActivateSwitchCondition}, "No", "Yes" - indicator = {launchIsLaunchCondition}, "No", "Yes" - indicator = {launchCombinedConditions}, "No", "Yes" - indicator = {launchActivatePinState}, "No", "Yes" - indicator = {dfcoActive}, "No", "Yes" - indicator = {tpsAccelActive}, "No", "Yes" - -liveGraph = output_channelsGraph, "Graph", South - graphLine = sd_present - graphLine = isIgnitionEnabledIndicator - graphLine = isInjectionEnabledIndicator - graphLine = sd_logging_internal - graphLine = unusedb4 - graphLine = isFuelPumpOn - graphLine = isFanOn - graphLine = isO2HeaterOn - graphLine = checkEngine - graphLine = needBurn - graphLine = sd_msd - graphLine = clutchUpState - graphLine = clutchDownState - graphLine = isFan2On - graphLine = alternatorOnOff - graphLine = brakePedalState - graphLine = toothLogReady - graphLine = acSwitchState - graphLine = isTpsError - graphLine = isCltError - graphLine = isMapError - graphLine = isIatError - graphLine = acState - graphLine = isTriggerError - graphLine = hasCriticalError - graphLine = isWarnNow - graphLine = isPedalError - graphLine = isKnockChipOk - graphLine = launchTriggered - graphLine = isTps2Error - graphLine = isIdleClosedLoop - graphLine = isIdleCoasting - graphLine = RPMValue - graphLine = rpmAcceleration - graphLine = speedToRpmRatio - graphLine = vehicleSpeedKph - graphLine = internalMcuTemperature - graphLine = coolant - graphLine = intake - graphLine = auxTemp1 - graphLine = auxTemp2 - graphLine = TPSValue - graphLine = throttlePedalPosition - graphLine = tpsADC - graphLine = rawMaf - graphLine = mafMeasured - graphLine = MAPValue - graphLine = baroPressure - graphLine = lambdaValue - graphLine = knockRetard - graphLine = idleCurrentPosition - graphLine = VBatt - graphLine = oilPressure - graphLine = vvtPositionB1I - graphLine = chargeAirMass - graphLine = crankingFuelMs - graphLine = currentTargetAfr - graphLine = baseFuel - graphLine = fuelRunning - graphLine = actualLastInjection - graphLine = injectorDutyCycle - graphLine = veValue - graphLine = injectionOffset - graphLine = tCharge - graphLine = injectorLagMs - graphLine = iatCorrection - graphLine = cltCorrection - graphLine = baroCorrection - graphLine = currentEnginePhase - graphLine = wallFuelAmount - graphLine = wallFuelCorrection - graphLine = revolutionCounterSinceStart - graphLine = deltaTps - graphLine = canReadCounter - graphLine = tpsAccelFuel - graphLine = ignitionAdvance - graphLine = sparkDwellValue - graphLine = coilDutyCycle - graphLine = idleAirValvePosition - graphLine = etbTarget - graphLine = etb1DutyCycle - graphLine = etb1Error - graphLine = fuelTankLevel - graphLine = totalFuelConsumption - graphLine = fuelFlowRate - graphLine = veTableYAxis - graphLine = afrTableYAxis - graphLine = knockLevel - graphLine = seconds - graphLine = engineMode - graphLine = firmwareVersion - graphLine = tsConfigVersion - graphLine = calibrationValue - graphLine = calibrationMode - graphLine = idleTargetPosition - graphLine = fuelingLoad - graphLine = ignitionLoad - graphLine = engineMakeCodeNameCrc16 - graphLine = totalTriggerErrorCounter - graphLine = orderingErrorCounter - graphLine = warningCounter - graphLine = lastErrorCode - graphLine = recentErrorCode1 - graphLine = recentErrorCode2 - graphLine = recentErrorCode3 - graphLine = recentErrorCode4 - graphLine = recentErrorCode5 - graphLine = recentErrorCode6 - graphLine = recentErrorCode7 - graphLine = recentErrorCode8 - graphLine = debugFloatField1 - graphLine = debugFloatField2 - graphLine = debugFloatField3 - graphLine = debugFloatField4 - graphLine = debugFloatField5 - graphLine = debugFloatField6 - graphLine = debugFloatField7 - graphLine = debugIntField1 - graphLine = debugIntField2 - graphLine = debugIntField3 - graphLine = debugIntField4 - graphLine = debugIntField5 - graphLine = accelerationX - graphLine = accelerationY - graphLine = egt1 - graphLine = egt2 - graphLine = egt3 - graphLine = egt4 - graphLine = egt5 - graphLine = egt6 - graphLine = egt7 - graphLine = egt8 - graphLine = TPS2Value - graphLine = rawTps1Primary - graphLine = rawPpsPrimary - graphLine = rawClt - graphLine = rawIat - graphLine = rawOilPressure - graphLine = tuneCrc16 - graphLine = fuelClosedLoopBinIdx - graphLine = tcuCurrentGear - graphLine = rawPpsSecondary - graphLine = knock1 - graphLine = knock2 - graphLine = knock3 - graphLine = knock4 - graphLine = knock5 - graphLine = knock6 - graphLine = knock7 - graphLine = knock8 - graphLine = knock9 - graphLine = knock10 - graphLine = knock11 - graphLine = knock12 - graphLine = tcuDesiredGear - graphLine = flexPercent - graphLine = rawIdlePositionSensor - graphLine = rawWastegatePosition - graphLine = wastegatePositionSensor - graphLine = idlePositionSensor - graphLine = rawLowFuelPressure - graphLine = rawHighFuelPressure - graphLine = lowFuelPressure - graphLine = highFuelPressure - graphLine = targetLambda - graphLine = AFRValue - graphLine = VssAcceleration - graphLine = lambdaValue2 - graphLine = AFRValue2 - graphLine = vvtPositionB1E - graphLine = vvtPositionB2I - graphLine = vvtPositionB2E - graphLine = fuelPidCorrection1 - graphLine = fuelPidCorrection2 - graphLine = rawTps1Secondary - graphLine = rawTps2Primary - graphLine = rawTps2Secondary - graphLine = knockCount - graphLine = accelerationZ - graphLine = accelerationRoll - graphLine = accelerationYaw - graphLine = vvtTargets1 - graphLine = vvtTargets2 - graphLine = vvtTargets3 - graphLine = vvtTargets4 - graphLine = turboSpeed - graphLine = wbTemperature1 - graphLine = wbTemperature2 - graphLine = wbHeaterDuty1 - graphLine = wbHeaterDuty2 - graphLine = tps1Split - graphLine = tps2Split - graphLine = tps12Split - graphLine = accPedalSplit - graphLine = m_requested_pump - graphLine = boostControlTarget - graphLine = sparkCutReason - graphLine = fuelCutReason - graphLine = fuel_requested_percent - graphLine = fuel_requested_percent_pi - graphLine = m_I_sum_percent - graphLine = m_pressureTarget_kPa - graphLine = mafEstimate - graphLine = instantRpm - graphLine = di_nextStart - graphLine = systemEventReuse - graphLine = rawMap - graphLine = rawAfr - graphLine = tpsAccelFrom - graphLine = tpsAccelTo - graphLine = calibrationValue2 - graphLine = isMainRelayOn - graphLine = isUsbConnected - graphLine = luaInvocationCounter - graphLine = luaLastCycleDuration - graphLine = testBenchIter - graphLine = unusedInTheMiddle1 - graphLine = unusedInTheMiddle2 - graphLine = unusedInTheMiddle3 - graphLine = unusedInTheMiddle4 - graphLine = unusedInTheMiddle5 - graphLine = unusedInTheMiddle6 - graphLine = unusedInTheMiddle7 - graphLine = unusedInTheMiddle8 - graphLine = unusedInTheMiddle9 - graphLine = unusedInTheMiddle10 - graphLine = unusedInTheMiddle11 - graphLine = unusedInTheMiddle12 - graphLine = unusedInTheMiddle13 - graphLine = unusedInTheMiddle14 - graphLine = unusedInTheMiddle15 - graphLine = auxLinear1 - graphLine = auxLinear2 - graphLine = launchSpeedCondition - graphLine = launchRpmCondition - graphLine = launchTpsCondition - graphLine = launchActivateSwitchCondition - graphLine = launchIsLaunchCondition - graphLine = launchCombinedConditions - graphLine = launchActivatePinState - graphLine = dfcoActive - graphLine = tpsAccelActive - graphLine = TEMPLOG_MAP_AT_CYCLE_COUNT - graphLine = TEMPLOG_map_peak - graphLine = boostControllerOutput - graphLine = boostControllerOpenLoopPart - graphLine = TEMPLOG_MAP_AT_SPECIAL_POINT - graphLine = TEMPLOG_MAP_AT_DIFF - graphLine = vvtSyncGapRatio - graphLine = vvtCurrentPosition - graphLine = triggerSyncGapRatio - graphLine = triggerStateIndex - graphLine = vvtCounter - graphLine = vvtSyncCounter - graphLine = vvtStateIndex - graphLine = fallbackMap - graphLine = boostControllerClosedLoopPart - graphLine = detectedGear - graphLine = timingCltCorrection - graphLine = timingIatCorrection - graphLine = timingPidCorrection - graphLine = instantMAPValue - graphLine = mostRecentTimeBetweenSparkEvents - graphLine = mostRecentTimeBetweenIgnitionEvents - graphLine = maxLockedDuration - graphLine = maxTriggerReentrant - graphLine = canWriteOk - graphLine = canWriteNotOk - graphLine = triggerPrimaryFall - graphLine = triggerPrimaryRise - graphLine = triggerSecondaryFall - graphLine = triggerSecondaryRise - graphLine = triggerVvtFall - graphLine = triggerVvtRise - graphLine = startStopStateToggleCounter - graphLine = starterState - graphLine = starterRelayDisable - graphLine = multiSparkCounter - graphLine = idleState - graphLine = injectorFlowPressureRatio - graphLine = injectorFlowPressureDelta - graphLine = etbFeedForward - graphLine = etbIntegralError - graphLine = etbCurrentTarget - graphLine = alternatorStatus - graphLine = idleStatus - graphLine = etbStatus - graphLine = boostStatus - graphLine = auxSpeed1 - graphLine = auxSpeed2 - graphLine = unusedAtTheEnd1 - graphLine = unusedAtTheEnd2 - graphLine = unusedAtTheEnd3 - graphLine = unusedAtTheEnd4 - graphLine = unusedAtTheEnd5 - graphLine = unusedAtTheEnd6 - graphLine = unusedAtTheEnd7 - graphLine = unusedAtTheEnd8 - graphLine = unusedAtTheEnd9 - graphLine = unusedAtTheEnd10 - graphLine = unusedAtTheEnd11 - graphLine = unusedAtTheEnd12 - graphLine = unusedAtTheEnd13 - graphLine = unusedAtTheEnd14 - graphLine = unusedAtTheEnd15 - graphLine = unusedAtTheEnd16 - graphLine = unusedAtTheEnd17 - graphLine = unusedAtTheEnd18 - graphLine = unusedAtTheEnd19 - graphLine = unusedAtTheEnd20 - graphLine = unusedAtTheEnd21 - graphLine = unusedAtTheEnd22 - graphLine = unusedAtTheEnd23 - graphLine = unusedAtTheEnd24 - graphLine = unusedAtTheEnd25 - graphLine = unusedAtTheEnd26 - graphLine = unusedAtTheEnd27 - graphLine = unusedAtTheEnd28 - graphLine = unusedAtTheEnd29 - graphLine = unusedAtTheEnd30 - graphLine = unusedAtTheEnd31 - graphLine = unusedAtTheEnd32 - graphLine = unusedAtTheEnd33 - graphLine = unusedAtTheEnd34 - graphLine = unusedAtTheEnd35 - graphLine = unusedAtTheEnd36 - graphLine = unusedAtTheEnd37 - graphLine = unusedAtTheEnd38 - graphLine = unusedAtTheEnd39 - graphLine = unusedAtTheEnd40 - graphLine = unusedAtTheEnd41 - graphLine = unusedAtTheEnd42 - graphLine = unusedAtTheEnd43 - graphLine = unusedAtTheEnd44 - graphLine = unusedAtTheEnd45 - graphLine = unusedAtTheEnd46 - graphLine = unusedAtTheEnd47 - graphLine = unusedAtTheEnd48 - graphLine = unusedAtTheEnd49 - graphLine = unusedAtTheEnd50 - graphLine = unusedAtTheEnd51 - graphLine = unusedAtTheEnd52 - graphLine = unusedAtTheEnd53 - graphLine = unusedAtTheEnd54 - graphLine = unusedAtTheEnd55 - graphLine = unusedAtTheEnd56 - graphLine = unusedAtTheEnd57 - graphLine = unusedAtTheEnd58 - graphLine = unusedAtTheEnd59 - graphLine = unusedAtTheEnd60 - graphLine = unusedAtTheEnd61 - graphLine = unusedAtTheEnd62 - graphLine = unusedAtTheEnd63 - graphLine = unusedAtTheEnd64 - graphLine = unusedAtTheEnd65 - graphLine = unusedAtTheEnd66 - graphLine = unusedAtTheEnd67 - graphLine = unusedAtTheEnd68 - graphLine = unusedAtTheEnd69 - graphLine = unusedAtTheEnd70 - graphLine = unusedAtTheEnd71 - graphLine = unusedAtTheEnd72 - -dialog = output_channelsDialog, "output_channels" - panel = output_channelsIndicatorPanel - panel = output_channelsGraph -indicatorPanel = high_pressure_fuel_pumpIndicatorPanel, 2 - indicator = {noValve}, "No", "Yes" - indicator = {angleAboveMin}, "No", "Yes" - indicator = {isHpfpInactive}, "No", "Yes" - -liveGraph = high_pressure_fuel_pumpGraph, "Graph", South - graphLine = m_requested_pump - graphLine = fuel_requested_percent - graphLine = fuel_requested_percent_pi - graphLine = noValve - graphLine = angleAboveMin - graphLine = isHpfpInactive - graphLine = nextLobe - graphLine = nextStart - -dialog = high_pressure_fuel_pumpDialog, "high_pressure_fuel_pump" - panel = high_pressure_fuel_pumpIndicatorPanel - panel = high_pressure_fuel_pumpGraph - -liveGraph = injector_modelGraph, "Graph", South - graphLine = m_deadtime - graphLine = pressureDelta - graphLine = pressureRatio - -dialog = injector_modelDialog, "injector_model" - panel = injector_modelGraph -indicatorPanel = launch_control_stateIndicatorPanel, 2 - indicator = {combinedConditions}, "No", "Yes" - indicator = {launchActivatePinState}, "No", "Yes" - indicator = {isLaunchCondition}, "No", "Yes" - indicator = {isSwitchActivated}, "No", "Yes" - indicator = {isClutchActivated}, "No", "Yes" - indicator = {isValidInputPin}, "No", "Yes" - indicator = {activateSwitchCondition}, "No", "Yes" - indicator = {rpmCondition}, "No", "Yes" - indicator = {speedCondition}, "No", "Yes" - indicator = {tpsCondition}, "No", "Yes" - -liveGraph = launch_control_stateGraph, "Graph", South - graphLine = retardThresholdRpm - graphLine = combinedConditions - graphLine = launchActivatePinState - graphLine = isLaunchCondition - graphLine = isSwitchActivated - graphLine = isClutchActivated - graphLine = isValidInputPin - graphLine = activateSwitchCondition - graphLine = rpmCondition - graphLine = speedCondition - graphLine = tpsCondition - -dialog = launch_control_stateDialog, "launch_control_state" - panel = launch_control_stateIndicatorPanel - panel = launch_control_stateGraph -indicatorPanel = boost_controlIndicatorPanel, 2 - indicator = {isTpsInvalid}, "No", "Yes" - indicator = {m_shouldResetPid}, "No", "Yes" - indicator = {isBelowClosedLoopThreshold}, "No", "Yes" - indicator = {isNotClosedLoop}, "No", "Yes" - indicator = {isZeroRpm}, "No", "Yes" - -liveGraph = boost_controlGraph, "Graph", South - graphLine = isTpsInvalid - graphLine = m_shouldResetPid - graphLine = isBelowClosedLoopThreshold - graphLine = isNotClosedLoop - graphLine = isZeroRpm - graphLine = openLoopPart - graphLine = closedLoopPart - -dialog = boost_controlDialog, "boost_control" - panel = boost_controlIndicatorPanel - panel = boost_controlGraph -indicatorPanel = ac_controlIndicatorPanel, 2 - indicator = {engineTooSlow}, "No", "Yes" - indicator = {engineTooFast}, "No", "Yes" - indicator = {noClt}, "No", "Yes" - indicator = {engineTooHot}, "No", "Yes" - indicator = {tpsTooHigh}, "No", "Yes" - indicator = {acButtonState}, "No", "Yes" - indicator = {isDisabledByLua}, "No", "Yes" - -liveGraph = ac_controlGraph, "Graph", South - graphLine = engineTooSlow - graphLine = engineTooFast - graphLine = noClt - graphLine = engineTooHot - graphLine = tpsTooHigh - graphLine = acButtonState - graphLine = isDisabledByLua - graphLine = latest_usage_ac_control - graphLine = acSwitchLastChangeTimeMs - -dialog = ac_controlDialog, "ac_control" - panel = ac_controlIndicatorPanel - panel = ac_controlGraph -indicatorPanel = fan_controlIndicatorPanel, 2 - indicator = {cranking}, "No", "Yes" - indicator = {notRunning}, "No", "Yes" - indicator = {disabledWhileEngineStopped}, "No", "Yes" - indicator = {brokenClt}, "No", "Yes" - indicator = {enabledForAc}, "No", "Yes" - indicator = {hot}, "No", "Yes" - indicator = {cold}, "No", "Yes" - -liveGraph = fan_controlGraph, "Graph", South - graphLine = cranking - graphLine = notRunning - graphLine = disabledWhileEngineStopped - graphLine = brokenClt - graphLine = enabledForAc - graphLine = hot - graphLine = cold - -dialog = fan_controlDialog, "fan_control" - panel = fan_controlIndicatorPanel - panel = fan_controlGraph -indicatorPanel = fuel_pump_controlIndicatorPanel, 2 - indicator = {isPrime}, "No", "Yes" - indicator = {engineTurnedRecently}, "No", "Yes" - indicator = {isPumpOn}, "No", "Yes" - indicator = {ignitionOn}, "No", "Yes" - -liveGraph = fuel_pump_controlGraph, "Graph", South - graphLine = isPrime - graphLine = engineTurnedRecently - graphLine = isPumpOn - graphLine = ignitionOn - -dialog = fuel_pump_controlDialog, "fuel_pump_control" - panel = fuel_pump_controlIndicatorPanel - panel = fuel_pump_controlGraph -indicatorPanel = main_relayIndicatorPanel, 2 - indicator = {isBenchTest}, "No", "Yes" - indicator = {hasIgnitionVoltage}, "No", "Yes" - indicator = {mainRelayState}, "No", "Yes" - indicator = {delayedShutoffRequested}, "No", "Yes" - -liveGraph = main_relayGraph, "Graph", South - graphLine = isBenchTest - graphLine = hasIgnitionVoltage - graphLine = mainRelayState - graphLine = delayedShutoffRequested - -dialog = main_relayDialog, "main_relay" - panel = main_relayIndicatorPanel - panel = main_relayGraph - -liveGraph = engine_stateGraph, "Graph", South - graphLine = sd - graphLine = targetAFR - graphLine = engineCycleDurationMs - graphLine = minRpmKcurrentTPS - graphLine = currentTpsAdc - graphLine = tpsVoltageMCU - graphLine = tpsVoltageBoard - graphLine = currentBaroCorrectedVE - graphLine = injectorFlowCorrection - graphLine = baroCorrection - graphLine = cranking - graphLine = running - graphLine = etbFeedForward - graphLine = targetFromTable - graphLine = sparkDwell - graphLine = dwellAngle - graphLine = cltTimingCorrection - -dialog = engine_stateDialog, "engine_state" - panel = engine_stateGraph -indicatorPanel = tps_accel_stateIndicatorPanel, 2 - indicator = {isAboveAccelThreshold}, "No", "Yes" - indicator = {isBelowDecelThreshold}, "No", "Yes" - indicator = {isTimeToResetAccumulator}, "No", "Yes" - indicator = {isFractionalEnrichment}, "No", "Yes" - indicator = {belowEpsilon}, "No", "Yes" - indicator = {tooShort}, "No", "Yes" - -liveGraph = tps_accel_stateGraph, "Graph", South - graphLine = tpsFrom - graphLine = tpsTo - graphLine = deltaTps - graphLine = extraFuel - graphLine = valueFromTable - graphLine = isAboveAccelThreshold - graphLine = isBelowDecelThreshold - graphLine = isTimeToResetAccumulator - graphLine = isFractionalEnrichment - graphLine = belowEpsilon - graphLine = tooShort - graphLine = fractionalInjFuel - graphLine = accumulatedValue - graphLine = maxExtraPerCycle - graphLine = maxExtraPerPeriod - graphLine = maxInjectedPerPeriod - graphLine = cycleCnt - -dialog = tps_accel_stateDialog, "tps_accel_state" - panel = tps_accel_stateIndicatorPanel - panel = tps_accel_stateGraph - -liveGraph = trigger_centralGraph, "Graph", South - graphLine = hwEventCounters1 - graphLine = hwEventCounters2 - graphLine = hwEventCounters3 - graphLine = hwEventCounters4 - graphLine = hwEventCounters5 - graphLine = hwEventCounters6 - graphLine = vvtCamCounter - -dialog = trigger_centralDialog, "trigger_central" - panel = trigger_centralGraph - -liveGraph = trigger_stateGraph, "Graph", South - graphLine = currentGap - graphLine = totalRevolutionCounter - -dialog = trigger_stateDialog, "trigger_state" - panel = trigger_stateGraph - -liveGraph = wall_fuel_stateGraph, "Graph", South - graphLine = wallFuelCorrection - graphLine = wallFuel - -dialog = wall_fuel_stateDialog, "wall_fuel_state" - panel = wall_fuel_stateGraph -indicatorPanel = idle_stateIndicatorPanel, 2 - indicator = {mightResetPid}, "No", "Yes" - indicator = {shouldResetPid}, "No", "Yes" - indicator = {wasResetPid}, "No", "Yes" - indicator = {mustResetPid}, "No", "Yes" - indicator = {isCoasting}, "No", "Yes" - indicator = {useIacTableForCoasting}, "No", "Yes" - indicator = {notIdling}, "No", "Yes" - indicator = {needReset}, "No", "Yes" - indicator = {isInDeadZone}, "No", "Yes" - indicator = {isBlipping}, "No", "Yes" - indicator = {useClosedLoop}, "No", "Yes" - indicator = {badTps}, "No", "Yes" - indicator = {looksLikeRunning}, "No", "Yes" - indicator = {looksLikeCoasting}, "No", "Yes" - indicator = {looksLikeCrankToIdle}, "No", "Yes" - indicator = {useInstantRpmForIdle}, "No", "Yes" - indicator = {isVerboseIAC}, "No", "Yes" - -liveGraph = idle_stateGraph, "Graph", South - graphLine = idleState - graphLine = currentIdlePosition - graphLine = baseIdlePosition - graphLine = iacByTpsTaper - graphLine = throttlePedalUpState - graphLine = mightResetPid - graphLine = shouldResetPid - graphLine = wasResetPid - graphLine = mustResetPid - graphLine = isCoasting - graphLine = useIacTableForCoasting - graphLine = notIdling - graphLine = needReset - graphLine = isInDeadZone - graphLine = isBlipping - graphLine = useClosedLoop - graphLine = badTps - graphLine = looksLikeRunning - graphLine = looksLikeCoasting - graphLine = looksLikeCrankToIdle - graphLine = useInstantRpmForIdle - graphLine = isVerboseIAC - graphLine = targetRpmByClt - graphLine = targetRpmAcBump - -dialog = idle_stateDialog, "idle_state" - panel = idle_stateIndicatorPanel - panel = idle_stateGraph - -liveGraph = ignition_stateGraph, "Graph", South - graphLine = baseDwell - graphLine = dwellVoltageCorrection - graphLine = luaTimingAdd - graphLine = luaTimingMult - -dialog = ignition_stateDialog, "ignition_state" - panel = ignition_stateGraph - -liveGraph = electronic_throttleGraph, "Graph", South - graphLine = idlePosition - graphLine = trim - graphLine = luaAdjustment - -dialog = electronic_throttleDialog, "electronic_throttle" - panel = electronic_throttleGraph diff --git a/firmware/gen_config_common.sh b/firmware/gen_config_common.sh index 3a4678e75c..b989d98a82 100755 --- a/firmware/gen_config_common.sh +++ b/firmware/gen_config_common.sh @@ -6,6 +6,8 @@ COMMON_GEN_CONFIG=" -enumInputFile controllers/algo/rusefi_enums.h \ -readfile OUTPUTS_SECTION console/binary/generated/output_channels.ini \ -readfile DATALOG_SECTION console/binary/generated/data_logs.ini \ + -readfile LIVE_DATA_MENU_FROM_FILE console/binary/generated/fancy_menu.ini \ + -readfile LIVE_DATA_PANELS_FROM_FILE console/binary/generated/fancy_content.ini \ -ts_destination tunerstudio \ -firing_order controllers/algo/firing_order.h \ -triggerFolder ../unit_tests \ diff --git a/firmware/tunerstudio/rusefi.input b/firmware/tunerstudio/rusefi.input index e41c5d932c..99d5c811d7 100644 --- a/firmware/tunerstudio/rusefi.input +++ b/firmware/tunerstudio/rusefi.input @@ -1474,6 +1474,9 @@ menuDialog = main subMenu = idleVeTableTbl, "Idle VE", 0, {useSeparateVeForIdle == 1} subMenu = idleAdvanceCurve, "Ignition advance", 0, {useSeparateAdvanceForIdle == 1} + menu = "&View" +@@LIVE_DATA_MENU_FROM_FILE@@ + menu = "&Advanced" subMenu = ignitionCylExtra, "Cylinder offsets", 0 subMenu = gearDetection, "Gear detection", 0 @@ -3138,6 +3141,8 @@ cmd_set_engine_type_default = "@@TS_IO_TEST_COMMAND_char@@\x00\x31\x00\x00" panel = speedSensorAnalog, { enableCanVss == 0 } panel = speedSensorCan +@@LIVE_DATA_PANELS_FROM_FILE@@ + dialog = gearDetection, "Gear Detection" field = "Wheel revolutions per kilometer", driveWheelRevPerKm field = "Final drive ratio", finalGearRatio diff --git a/java_tools/ConfigDefinition.jar b/java_tools/ConfigDefinition.jar index 6bab83274b93806d001d1198602196120e0fdfbd..090a60569ebbeb702c135d57e75f4fcd305f59ae 100644 GIT binary patch delta 157216 zcmaHyWl-DS+OE;!?q1y8g1fsr6nBRr1yYIzN^o~8ngRs^#aaju+}&EBI25N)XgT@s zea_6g-ev_^}^i6gg* zqXgdJSGS}a&)yHj#i1i1#p2{5XAlYjv)=?7sZb^WwS3pbyytnVLo_*O$YbTPNzn!g z6=^WB{B$i9qcc9ZYiN*QA`f-fhN>C&aC2>u@zc^e=cN;Ty}-J`xyO2%zl`kQ7IKZ9 z1x8JWZJm}}PnB$D(g1C{@n4BXH7b&(Y7BB+0!nHJ@TDz4#Q@%x!iTIu`u%wzG5IwW zR$-Vb(^Q11L*7HtAm()#sCR;bg?NI3^-j<(gVMQ=r=>K^bO-603=}gFNbERa#)>a! zm#HpfmrLndlB+KGEiLa=A7{EtAFJSKgq1_m19;GWznhq9{|)i{#4lE`fLz*$5Wo6_ zfLzvypj^g?uv`vcjN3omY=;C0*8BXFKPb3=Kz9G`!5O`;{_8S|X!+qQ0QDzFL2hCi zA~#Ugm2lqxX!mIJJ%9GJj?0ILb)lov!T5E!4~{uh-a>@@J)um;v6A2%*PGm-IbN8RltN127bjOfyBg9&Hd5!Dfu&+Y(tb&Jy8@mQbz zbAT(P|D5lp8>eA2PW0!1Wr+P(8}kFcPO01O|2AhKA!~ZYVk(EX7I)?w*tqe-DE%$3 zcs$NQDrg0$3Z5)p7zs>mobQyP4_}SopW~jjp^YV=riUi-S*o3Xf&j|oVB2id- zBVj1j{ZGmTVwxg2S{s?k&V`5tZq9o!hDjdhhX`;C^F9h&vik3HtOW_ zBz^K+dDCP#4?HqDKHAQc*Y%B0AVscTUYK}&uc+Hl(3R6%43n<$cNzk|Z7YI4*f09Q z=JA+K+BX0m{6gj_LEwboKua!je@m)kmZKaT85~3FNSgr2pxveA1Y?0k;4E-bxIGvb zE&?Y4^T2V{z|7N^Ft3_i89%?Fm`ZD@c$=H6pUwC5r1Hrf_i~Wpx49I9!rIWX9VQEb@!eG9GHb;kV*9 z=+|UF;8(g`yB!5XjmN-);}TG@;lc5Y;z{D&VHz+_7%ZL&<_=?yw}4T>itM*8YPSWI z)`A8l2qS>Q9C{fKiSNvzH?E1}zYj1t#)A!Z6f~z#k%|VCy6!H%WomumK-c?Rx1R;z z;QX94$IW51$5U;|mF2`aZ&+7vKGtr`O`sK*Lv1q7)V{#UpB(bqy4P^c1w*X%^O}pA zSbf+USG#DPi?_*|rEvq)!`r*wrcli)p`Zz(YE=WYEQ6R@#EnN+jxzBxfM2ef3_@#7!>M37R2<{x%QTqsvvfdrKLvi6w3yP%KBT& z8i>hycyJR`%$sIG)%$EstnRTb*loS>=dzfcmAv=tQXOwC)D(beGX(7_6$nLF;yTUl zpa4SOQ2c#IhgD$c!m3GUYz`8_$TqFmP-xFC8x=Ku=dxgd#h-nQW$gJL2_@;!uyAN`iMnXLIzGM}aFst4 z_REoFl4teMk25u{Owb+h_=MzfL}H`{|E8t(sbnf~fJ)@M^!^SL_0jn&`j3@Z;