// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on (unknown script) console/binary/output_channels.txt Mon May 09 09:39:55 UTC 2022 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once #include "rusefi_types.h" // start of pid_status_s struct pid_status_s { /** * offset 0 */ scaled_channel iTerm = (int16_t)0; /** * offset 2 */ scaled_channel dTerm = (int16_t)0; /** * offset 4 */ scaled_channel output = (int16_t)0; /** * offset 6 */ scaled_channel error = (int16_t)0; /** * offset 8 */ uint32_t resetCounter = (uint32_t)0; }; static_assert(sizeof(pid_status_s) == 12); // start of output_channels_s struct output_channels_s { /** offset 0 bit 0 */ bool sd_present : 1 {}; /** offset 0 bit 1 */ bool isIgnitionEnabledIndicator : 1 {}; /** offset 0 bit 2 */ bool isInjectionEnabledIndicator : 1 {}; /** offset 0 bit 3 */ bool sd_logging_internal : 1 {}; /** offset 0 bit 4 */ bool unusedb4 : 1 {}; /** offset 0 bit 5 */ bool isFuelPumpOn : 1 {}; /** * "radiator fan" offset 0 bit 6 */ bool isFanOn : 1 {}; /** offset 0 bit 7 */ bool isO2HeaterOn : 1 {}; /** offset 0 bit 8 */ bool checkEngine : 1 {}; /** offset 0 bit 9 */ bool needBurn : 1 {}; /** offset 0 bit 10 */ bool sd_msd : 1 {}; /** * @@INDICATOR_NAME_CLUTCH_UP@@ offset 0 bit 11 */ bool clutchUpState : 1 {}; /** * @@INDICATOR_NAME_CLUTCH_DOWN@@ offset 0 bit 12 */ bool clutchDownState : 1 {}; /** offset 0 bit 13 */ bool isFan2On : 1 {}; /** offset 0 bit 14 */ bool alternatorOnOff : 1 {}; /** * @@INDICATOR_NAME_BRAKE_DOWN@@ offset 0 bit 15 */ bool brakePedalState : 1 {}; /** offset 0 bit 16 */ bool toothLogReady : 1 {}; /** offset 0 bit 17 */ bool unused3123 : 1 {}; /** offset 0 bit 18 */ bool isTpsError : 1 {}; /** offset 0 bit 19 */ bool isCltError : 1 {}; /** offset 0 bit 20 */ bool isMapError : 1 {}; /** offset 0 bit 21 */ bool isIatError : 1 {}; /** offset 0 bit 22 */ bool unused131313 : 1 {}; /** offset 0 bit 23 */ bool isTriggerError : 1 {}; /** offset 0 bit 24 */ bool hasCriticalError : 1 {}; /** offset 0 bit 25 */ bool isWarnNow : 1 {}; /** offset 0 bit 26 */ bool isPedalError : 1 {}; /** offset 0 bit 27 */ bool isKnockChipOk : 1 {}; /** offset 0 bit 28 */ bool launchTriggered : 1 {}; /** offset 0 bit 29 */ bool isTps2Error : 1 {}; /** offset 0 bit 30 */ bool isIdleClosedLoop : 1 {}; /** offset 0 bit 31 */ bool isIdleCoasting : 1 {}; /** * @@GAUGE_NAME_RPM@@ RPM * offset 4 */ scaled_channel RPMValue = (uint16_t)0; /** * dRPM RPM/s * offset 6 */ uint16_t rpmAcceleration = (uint16_t)0; /** * @@GAUGE_NAME_GEAR_RATIO@@ value * offset 8 */ scaled_channel speedToRpmRatio = (uint16_t)0; /** * @@GAUGE_NAME_VVS@@ kph * offset 10 */ scaled_channel vehicleSpeedKph = (uint8_t)0; /** * @@GAUGE_NAME_CPU_TEMP@@ deg C * offset 11 */ scaled_channel internalMcuTemperature = (int8_t)0; /** * @@GAUGE_NAME_CLT@@ deg C * offset 12 */ scaled_channel coolant = (int16_t)0; /** * @@GAUGE_NAME_IAT@@ deg C * offset 14 */ scaled_channel intake = (int16_t)0; /** deg C * offset 16 */ scaled_channel auxTemp1 = (int16_t)0; /** deg C * offset 18 */ scaled_channel auxTemp2 = (int16_t)0; /** * @@GAUGE_NAME_TPS@@ % * offset 20 */ scaled_channel TPSValue = (int16_t)0; /** * @@GAUGE_NAME_THROTTLE_PEDAL@@ % * offset 22 */ scaled_channel throttlePedalPosition = (int16_t)0; /** ADC * offset 24 */ uint16_t tpsADC = (uint16_t)0; /** V * offset 26 */ scaled_channel rawMaf = (uint16_t)0; /** * @@GAUGE_NAME_AIR_FLOW_MEASURED@@ kg/h * offset 28 */ scaled_channel mafMeasured = (uint16_t)0; /** * @@GAUGE_NAME_MAP@@ kPa * offset 30 */ scaled_channel MAPValue = (uint16_t)0; /** kPa * offset 32 */ scaled_channel baroPressure = (uint16_t)0; /** * @@GAUGE_NAME_LAMBDA@@ * offset 34 */ scaled_channel lambdaValue = (uint16_t)0; /** * @@GAUGE_NAME_KNOCK_RETARD@@ deg * offset 36 */ scaled_channel knockRetard = (uint8_t)0; /** % * offset 37 */ scaled_channel idleCurrentPosition = (uint8_t)0; /** * @@GAUGE_NAME_VBAT@@ V * offset 38 */ scaled_channel VBatt = (uint16_t)0; /** * @@GAUGE_NAME_OIL_PRESSURE@@ kPa * offset 40 */ scaled_channel oilPressure = (uint16_t)0; /** * @@GAUGE_NAME_VVT_B1I@@ deg * offset 42 */ scaled_channel vvtPositionB1I = (int16_t)0; /** * @@GAUGE_NAME_AIR_MASS@@ g * offset 44 */ scaled_channel chargeAirMass = (uint16_t)0; /** * crankingFuelMs * airmass in mg, 0-65 grams ms * offset 46 */ scaled_channel crankingFuelMs = (uint16_t)0; /** * @@GAUGE_NAME_TARGET_AFR@@ ratio * offset 48 */ scaled_channel currentTargetAfr = (uint16_t)0; /** * @@GAUGE_NAME_FUEL_BASE@@ * This is the raw value we take from the fuel map or base fuel algorithm, before the corrections mg * offset 50 */ scaled_channel baseFuel = (uint16_t)0; /** * @@GAUGE_NAME_FUEL_RUNNING@@ * Total fuel with CLT IAT and TPS acceleration without injector lag corrections per cycle, as pulse per cycle mg * offset 52 */ scaled_channel fuelRunning = (uint16_t)0; /** * @@GAUGE_NAME_FUEL_LAST_INJECTION@@ * Actual last injection time - including all compensation and injection mode ms * offset 54 */ scaled_channel actualLastInjection = (uint16_t)0; /** * @@GAUGE_NAME_FUEL_INJ_DUTY@@ % * offset 56 */ scaled_channel injectorDutyCycle = (uint8_t)0; /** * @@GAUGE_NAME_FUEL_VE@@ ratio * offset 57 */ scaled_channel veValue = (uint8_t)0; /** deg * offset 58 */ scaled_channel injectionOffset = (int16_t)0; /** deg C * offset 60 */ scaled_channel tCharge = (int16_t)0; /** * @@GAUGE_NAME_INJECTOR_LAG@@ ms * offset 62 */ scaled_channel injectorLagMs = (uint16_t)0; /** * @@GAUGE_NAME_FUEL_IAT_CORR@@ % * offset 64 */ scaled_channel iatCorrection = (uint16_t)0; /** * @@GAUGE_NAME_FUEL_CLT_CORR@@ % * offset 66 */ scaled_channel cltCorrection = (uint16_t)0; /** * @@GAUGE_NAME_FUEL_BARO_CORR@@ % * offset 68 */ scaled_channel baroCorrection = (uint16_t)0; /** * "Engine Phase" deg * offset 70 */ scaled_channel currentEnginePhase = (uint16_t)0; /** * @@GAUGE_NAME_FUEL_WALL_AMOUNT@@ mg * offset 72 */ scaled_channel wallFuelAmount = (uint16_t)0; /** * @@GAUGE_NAME_FUEL_WALL_CORRECTION@@ mg * offset 74 */ scaled_channel wallFuelCorrection = (int16_t)0; /** * offset 76 */ uint16_t revolutionCounterSinceStart = (uint16_t)0; /** * @@GAUGE_NAME_FUEL_TPS_ROC@@ ratio * offset 78 */ scaled_channel deltaTps = (int16_t)0; /** * offset 80 */ uint16_t canReadCounter = (uint16_t)0; /** * @@GAUGE_NAME_FUEL_TPS_EXTRA@@ ms * offset 82 */ scaled_channel tpsAccelFuel = (int16_t)0; /** * @@GAUGE_NAME_TIMING_ADVANCE@@ deg * offset 84 */ scaled_channel ignitionAdvance = (int16_t)0; /** * @@GAUGE_COIL_DWELL_TIME@@ ms * offset 86 */ scaled_channel sparkDwellValue = (uint16_t)0; /** * @@GAUGE_NAME_DWELL_DUTY@@ % * offset 88 */ scaled_channel coilDutyCycle = (uint16_t)0; /** * @@GAUGE_NAME_IAC@@ % * offset 90 */ scaled_channel idleAirValvePosition = (uint16_t)0; /** * "ETB Target" % * offset 92 */ scaled_channel etbTarget = (int16_t)0; /** * @@GAUGE_NAME_ETB_DUTY@@ % * offset 94 */ scaled_channel etb1DutyCycle = (int16_t)0; /** * "ETB Error" % * offset 96 */ scaled_channel etb1Error = (int16_t)0; /** * "Fuel level" % * offset 98 */ scaled_channel fuelTankLevel = (int16_t)0; /** * @@GAUGE_NAME_FUEL_CONSUMPTION@@ grams * offset 100 */ scaled_channel totalFuelConsumption = (uint16_t)0; /** * @@GAUGE_NAME_FUEL_FLOW@@ gram/s * offset 102 */ scaled_channel fuelFlowRate = (uint16_t)0; /** % * offset 104 */ scaled_channel veTableYAxis = (uint16_t)0; /** % * offset 106 */ scaled_channel afrTableYAxis = (uint16_t)0; /** * @@GAUGE_NAME_KNOCK_LEVEL@@ Volts * offset 108 */ scaled_channel knockLevel = (float)0; /** * @@GAUGE_NAME_UPTIME@@ sec * offset 112 */ scaled_channel seconds = (uint32_t)0; /** * "Engine Mode" em * offset 116 */ scaled_channel engineMode = (uint32_t)0; /** * @@GAUGE_NAME_VERSION@@ version_f * offset 120 */ scaled_channel firmwareVersion = (uint32_t)0; /** * offset 124 */ scaled_channel tsConfigVersion = (uint32_t)0; /** * offset 128 */ scaled_channel calibrationValue = (float)0; /** * offset 132 */ scaled_channel calibrationMode = (uint8_t)0; /** * offset 133 */ scaled_channel idleTargetPosition = (uint8_t)0; /** * @@GAUGE_NAME_FUEL_LOAD@@ % * offset 134 */ scaled_channel fuelingLoad = (uint16_t)0; /** * @@GAUGE_NAME_IGNITION_LOAD@@ % * offset 136 */ scaled_channel ignitionLoad = (uint16_t)0; /** * @@GAUGE_NAME_ENGINE_CRC16@@ crc16 * offset 138 */ scaled_channel engineMakeCodeNameCrc16 = (uint16_t)0; /** * @@GAUGE_NAME_TRG_ERR@@ counter * offset 140 */ scaled_channel totalTriggerErrorCounter = (uint32_t)0; /** * offset 144 */ uint32_t orderingErrorCounter = (uint32_t)0; /** * @@GAUGE_NAME_WARNING_COUNTER@@ count * offset 148 */ scaled_channel warningCounter = (uint16_t)0; /** * @@GAUGE_NAME_WARNING_LAST@@ error * offset 150 */ scaled_channel lastErrorCode = (uint16_t)0; /** error * offset 152 */ uint16_t recentErrorCode[8]; /** val * offset 168 */ scaled_channel debugFloatField1 = (float)0; /** val * offset 172 */ scaled_channel debugFloatField2 = (float)0; /** val * offset 176 */ scaled_channel debugFloatField3 = (float)0; /** val * offset 180 */ scaled_channel debugFloatField4 = (float)0; /** val * offset 184 */ scaled_channel debugFloatField5 = (float)0; /** val * offset 188 */ scaled_channel debugFloatField6 = (float)0; /** val * offset 192 */ scaled_channel debugFloatField7 = (float)0; /** val * offset 196 */ scaled_channel debugIntField1 = (uint32_t)0; /** val * offset 200 */ scaled_channel debugIntField2 = (uint32_t)0; /** val * offset 204 */ scaled_channel debugIntField3 = (uint32_t)0; /** val * offset 208 */ scaled_channel debugIntField4 = (int16_t)0; /** val * offset 210 */ scaled_channel debugIntField5 = (int16_t)0; /** * @@GAUGE_NAME_ACCEL_X@@ G * offset 212 */ scaled_channel accelerationX = (int16_t)0; /** * @@GAUGE_NAME_ACCEL_Y@@ G * offset 214 */ scaled_channel accelerationY = (int16_t)0; /** deg C * offset 216 */ uint16_t egt[EGT_CHANNEL_COUNT]; /** * @@GAUGE_NAME_TPS2@@ % * offset 232 */ scaled_channel TPS2Value = (int16_t)0; /** V * offset 234 */ scaled_channel rawTps1Primary = (int16_t)0; /** V * offset 236 */ scaled_channel rawPpsPrimary = (int16_t)0; /** V * offset 238 */ scaled_channel rawClt = (int16_t)0; /** V * offset 240 */ scaled_channel rawIat = (int16_t)0; /** V * offset 242 */ scaled_channel rawOilPressure = (int16_t)0; /** * @@GAUGE_NAME_TUNE_CRC16@@ crc16 * offset 244 */ scaled_channel tuneCrc16 = (uint16_t)0; /** * offset 246 */ scaled_channel fuelClosedLoopBinIdx = (uint8_t)0; /** * @@GAUGE_NAME_CURRENT_GEAR@@ gear * offset 247 */ scaled_channel tcuCurrentGear = (int8_t)0; /** V * offset 248 */ scaled_channel rawPpsSecondary = (int16_t)0; /** dBv * offset 250 */ scaled_channel knock[12]; /** * @@GAUGE_NAME_DESIRED_GEAR@@ gear * offset 262 */ scaled_channel tcuDesiredGear = (int8_t)0; /** * @@GAUGE_NAME_FLEX@@ % * offset 263 */ scaled_channel flexPercent = (uint8_t)0; /** V * offset 264 */ scaled_channel rawIdlePositionSensor = (int16_t)0; /** V * offset 266 */ scaled_channel rawWastegatePosition = (int16_t)0; /** * @@GAUGE_NAME_WG_POSITION@@ % * offset 268 */ scaled_channel wastegatePositionSensor = (int16_t)0; /** * @@GAUGE_NAME_IDLE_POSITION@@ % * offset 270 */ scaled_channel idlePositionSensor = (int16_t)0; /** V * offset 272 */ scaled_channel rawLowFuelPressure = (int16_t)0; /** V * offset 274 */ scaled_channel rawHighFuelPressure = (int16_t)0; /** * @@GAUGE_NAME_FUEL_PRESSURE_LOW@@ kpa * offset 276 */ scaled_channel lowFuelPressure = (int16_t)0; /** * @@GAUGE_NAME_FUEL_PRESSURE_HIGH@@ bar * offset 278 */ scaled_channel highFuelPressure = (int16_t)0; /** * @@GAUGE_NAME_TARGET_LAMBDA@@ * offset 280 */ scaled_channel targetLambda = (uint16_t)0; /** * @@GAUGE_NAME_AFR@@ AFR * offset 282 */ scaled_channel AFRValue = (uint16_t)0; /** * "Vss Accel" m/s2 * offset 284 */ scaled_channel VssAcceleration = (uint16_t)0; /** * @@GAUGE_NAME_LAMBDA2@@ * offset 286 */ scaled_channel lambdaValue2 = (uint16_t)0; /** * @@GAUGE_NAME_AFR2@@ AFR * offset 288 */ scaled_channel AFRValue2 = (uint16_t)0; /** * @@GAUGE_NAME_VVT_B1E@@ deg * offset 290 */ scaled_channel vvtPositionB1E = (int16_t)0; /** * @@GAUGE_NAME_VVT_B2I@@ deg * offset 292 */ scaled_channel vvtPositionB2I = (int16_t)0; /** * @@GAUGE_NAME_VVT_B2E@@ deg * offset 294 */ scaled_channel vvtPositionB2E = (int16_t)0; /** % * offset 296 */ scaled_channel fuelPidCorrection[2]; /** V * offset 300 */ scaled_channel rawTps1Secondary = (int16_t)0; /** V * offset 302 */ scaled_channel rawTps2Primary = (int16_t)0; /** V * offset 304 */ scaled_channel rawTps2Secondary = (int16_t)0; /** * @@GAUGE_NAME_KNOCK_COUNTER@@ * offset 306 */ scaled_channel knockCount = (uint16_t)0; /** * @@GAUGE_NAME_ACCEL_Z@@ G * offset 308 */ scaled_channel accelerationZ = (int16_t)0; /** * @@GAUGE_NAME_ACCEL_ROLL@@ G * offset 310 */ scaled_channel accelerationRoll = (int16_t)0; /** * @@GAUGE_NAME_ACCEL_YAW@@ G * offset 312 */ scaled_channel accelerationYaw = (int16_t)0; /** deg * offset 314 */ scaled_channel vvtTargets[4]; /** * @@GAUGE_NAME_TURBO_SPEED@@ hz * offset 318 */ uint16_t turboSpeed = (uint16_t)0; /** deg C * offset 320 */ uint16_t wbTemperature[2]; /** % * offset 324 */ uint8_t wbHeaterDuty[2]; /** % * offset 326 */ scaled_channel tps1Split = (int16_t)0; /** % * offset 328 */ scaled_channel tps2Split = (int16_t)0; /** % * offset 330 */ scaled_channel tps12Split = (int16_t)0; /** % * offset 332 */ scaled_channel accPedalSplit = (int16_t)0; /** * "DI: Pump Angle" deg * offset 334 */ scaled_channel m_requested_pump = (int16_t)0; /** * @@GAUGE_NAME_BOOST_TARGET@@ kPa * offset 336 */ scaled_channel boostControlTarget = (int16_t)0; /** * "Spark Cut Code" code * offset 338 */ scaled_channel sparkCutReason = (int8_t)0; /** * "Fuel Cut Code" code * offset 339 */ scaled_channel fuelCutReason = (int8_t)0; /** * "DI: fuel_requested_percent" v * offset 340 */ float fuel_requested_percent = (float)0; /** * "DI: fuel_requested_percent_pi" v * offset 344 */ float fuel_requested_percent_pi = (float)0; /** * "DI: m_I_sum_percent" v * offset 348 */ float m_I_sum_percent = (float)0; /** * "DI: m_pressureTarget_kPa" v * offset 352 */ float m_pressureTarget_kPa = (float)0; /** * @@GAUGE_NAME_AIR_FLOW_ESTIMATE@@ kg/h * offset 356 */ scaled_channel mafEstimate = (uint16_t)0; /** rpm * offset 358 */ uint16_t instantRpm = (uint16_t)0; /** * "DI: next start" v * offset 360 */ float di_nextStart = (float)0; /** counter * offset 364 */ uint16_t systemEventReuse = (uint16_t)0; /** V * offset 366 */ scaled_channel rawMap = (uint16_t)0; /** V * offset 368 */ scaled_channel rawAfr = (uint16_t)0; /** % * offset 370 */ uint8_t tpsAccelFrom = (uint8_t)0; /** % * offset 371 */ uint8_t tpsAccelTo = (uint8_t)0; /** * offset 372 */ scaled_channel calibrationValue2 = (float)0; /** offset 376 bit 0 */ bool isMainRelayOn : 1 {}; /** * Original reason for this is to check if USB is connected from Lua offset 376 bit 1 */ bool isUsbConnected : 1 {}; /** offset 376 bit 2 */ bool unusedBit_182_2 : 1 {}; /** offset 376 bit 3 */ bool unusedBit_182_3 : 1 {}; /** offset 376 bit 4 */ bool unusedBit_182_4 : 1 {}; /** offset 376 bit 5 */ bool unusedBit_182_5 : 1 {}; /** offset 376 bit 6 */ bool unusedBit_182_6 : 1 {}; /** offset 376 bit 7 */ bool unusedBit_182_7 : 1 {}; /** offset 376 bit 8 */ bool unusedBit_182_8 : 1 {}; /** offset 376 bit 9 */ bool unusedBit_182_9 : 1 {}; /** offset 376 bit 10 */ bool unusedBit_182_10 : 1 {}; /** offset 376 bit 11 */ bool unusedBit_182_11 : 1 {}; /** offset 376 bit 12 */ bool unusedBit_182_12 : 1 {}; /** offset 376 bit 13 */ bool unusedBit_182_13 : 1 {}; /** offset 376 bit 14 */ bool unusedBit_182_14 : 1 {}; /** offset 376 bit 15 */ bool unusedBit_182_15 : 1 {}; /** offset 376 bit 16 */ bool unusedBit_182_16 : 1 {}; /** offset 376 bit 17 */ bool unusedBit_182_17 : 1 {}; /** offset 376 bit 18 */ bool unusedBit_182_18 : 1 {}; /** offset 376 bit 19 */ bool unusedBit_182_19 : 1 {}; /** offset 376 bit 20 */ bool unusedBit_182_20 : 1 {}; /** offset 376 bit 21 */ bool unusedBit_182_21 : 1 {}; /** offset 376 bit 22 */ bool unusedBit_182_22 : 1 {}; /** offset 376 bit 23 */ bool unusedBit_182_23 : 1 {}; /** offset 376 bit 24 */ bool unusedBit_182_24 : 1 {}; /** offset 376 bit 25 */ bool unusedBit_182_25 : 1 {}; /** offset 376 bit 26 */ bool unusedBit_182_26 : 1 {}; /** offset 376 bit 27 */ bool unusedBit_182_27 : 1 {}; /** offset 376 bit 28 */ bool unusedBit_182_28 : 1 {}; /** offset 376 bit 29 */ bool unusedBit_182_29 : 1 {}; /** offset 376 bit 30 */ bool unusedBit_182_30 : 1 {}; /** offset 376 bit 31 */ bool unusedBit_182_31 : 1 {}; /** count * offset 380 */ int luaInvocationCounter = (int)0; /** nt * offset 384 */ int luaLastCycleDuration = (int)0; /** count * offset 388 */ uint8_t testBenchIter = (uint8_t)0; /** * offset 389 */ uint8_t unusedWat = (uint8_t)0; /** * @@GAUGE_NAME_TC_RATIO@@ value * offset 390 */ scaled_channel tcRatio = (uint16_t)0; /** * "S" * offset 392 */ float lastShiftTime = (float)0; /** * offset 396 */ uint8_t unusedInTheMiddle[8]; /** * @@GAUGE_NAME_AUX_LINEAR_1@@ * offset 404 */ scaled_channel auxLinear1 = (int16_t)0; /** * @@GAUGE_NAME_AUX_LINEAR_2@@ * offset 406 */ scaled_channel auxLinear2 = (int16_t)0; /** offset 408 bit 0 */ bool launchSpeedCondition : 1 {}; /** offset 408 bit 1 */ bool launchRpmCondition : 1 {}; /** offset 408 bit 2 */ bool launchTpsCondition : 1 {}; /** offset 408 bit 3 */ bool launchActivateSwitchCondition : 1 {}; /** offset 408 bit 4 */ bool launchIsLaunchCondition : 1 {}; /** offset 408 bit 5 */ bool launchCombinedConditions : 1 {}; /** offset 408 bit 6 */ bool dfcoActive : 1 {}; /** offset 408 bit 7 */ bool tpsAccelActive : 1 {}; /** offset 408 bit 8 */ bool unusedBit_229_8 : 1 {}; /** offset 408 bit 9 */ bool unusedBit_229_9 : 1 {}; /** offset 408 bit 10 */ bool unusedBit_229_10 : 1 {}; /** offset 408 bit 11 */ bool unusedBit_229_11 : 1 {}; /** offset 408 bit 12 */ bool unusedBit_229_12 : 1 {}; /** offset 408 bit 13 */ bool unusedBit_229_13 : 1 {}; /** offset 408 bit 14 */ bool unusedBit_229_14 : 1 {}; /** offset 408 bit 15 */ bool unusedBit_229_15 : 1 {}; /** offset 408 bit 16 */ bool unusedBit_229_16 : 1 {}; /** offset 408 bit 17 */ bool unusedBit_229_17 : 1 {}; /** offset 408 bit 18 */ bool unusedBit_229_18 : 1 {}; /** offset 408 bit 19 */ bool unusedBit_229_19 : 1 {}; /** offset 408 bit 20 */ bool unusedBit_229_20 : 1 {}; /** offset 408 bit 21 */ bool unusedBit_229_21 : 1 {}; /** offset 408 bit 22 */ bool unusedBit_229_22 : 1 {}; /** offset 408 bit 23 */ bool unusedBit_229_23 : 1 {}; /** offset 408 bit 24 */ bool unusedBit_229_24 : 1 {}; /** offset 408 bit 25 */ bool unusedBit_229_25 : 1 {}; /** offset 408 bit 26 */ bool unusedBit_229_26 : 1 {}; /** offset 408 bit 27 */ bool unusedBit_229_27 : 1 {}; /** offset 408 bit 28 */ bool unusedBit_229_28 : 1 {}; /** offset 408 bit 29 */ bool unusedBit_229_29 : 1 {}; /** offset 408 bit 30 */ bool unusedBit_229_30 : 1 {}; /** offset 408 bit 31 */ bool unusedBit_229_31 : 1 {}; /** * @@GAUGE_NAME_BOOST_OUTPUT@@ % * offset 412 */ scaled_channel boostControllerOutput = (uint8_t)0; /** * @@GAUGE_NAME_BOOST_OPEN_LOOP@@ % * offset 413 */ scaled_channel boostControllerOpenLoopPart = (uint8_t)0; /** kPa * offset 414 */ scaled_channel fallbackMap = (uint16_t)0; /** * @@GAUGE_NAME_BOOST_CLOSED_LOOP@@ % * offset 416 */ scaled_channel boostControllerClosedLoopPart = (int8_t)0; /** * @@GAUGE_NAME_DETECTED_GEAR@@ * offset 417 */ uint8_t detectedGear = (uint8_t)0; /** deg * offset 418 */ scaled_channel timingCltCorrection = (int16_t)0; /** deg * offset 420 */ scaled_channel timingIatCorrection = (int16_t)0; /** deg * offset 422 */ scaled_channel timingPidCorrection = (int16_t)0; /** * Instant MAP kPa * offset 424 */ scaled_channel instantMAPValue = (uint16_t)0; /** * offset 426 */ uint16_t mostRecentTimeBetweenSparkEvents = (uint16_t)0; /** * offset 428 */ uint16_t mostRecentTimeBetweenIgnitionEvents = (uint16_t)0; /** * offset 430 */ uint16_t maxLockedDuration = (uint16_t)0; /** * offset 432 */ uint16_t maxTriggerReentrant = (uint16_t)0; /** * offset 434 */ uint16_t canWriteOk = (uint16_t)0; /** * offset 436 */ uint16_t canWriteNotOk = (uint16_t)0; /** * need 4 byte alignment units * offset 438 */ uint8_t alignmentFill_at_438[2]; /** * offset 440 */ int triggerPrimaryFall = (int)0; /** * offset 444 */ int triggerPrimaryRise = (int)0; /** * offset 448 */ int triggerSecondaryFall = (int)0; /** * offset 452 */ int triggerSecondaryRise = (int)0; /** * offset 456 */ int triggerVvtFall = (int)0; /** * offset 460 */ int triggerVvtRise = (int)0; /** * offset 464 */ uint8_t startStopStateToggleCounter = (uint8_t)0; /** * offset 465 */ uint8_t starterState = (uint8_t)0; /** * offset 466 */ uint8_t starterRelayDisable = (uint8_t)0; /** * offset 467 */ uint8_t multiSparkCounter = (uint8_t)0; /** * offset 468 */ float injectorFlowPressureRatio = (float)0; /** kPa * offset 472 */ float injectorFlowPressureDelta = (float)0; /** * offset 476 */ float etbIntegralError = (float)0; /** % * offset 480 */ float etbCurrentTarget = (float)0; /** * offset 484 */ pid_status_s alternatorStatus; /** * offset 496 */ pid_status_s idleStatus; /** * offset 508 */ pid_status_s etbStatus; /** * offset 520 */ pid_status_s boostStatus; /** * "aux speed 1" s * offset 532 */ uint16_t auxSpeed1 = (uint16_t)0; /** * "aux speed 2" s * offset 534 */ uint16_t auxSpeed2 = (uint16_t)0; /** * @@GAUGE_NAME_ISS@@ RPM * offset 536 */ scaled_channel ISSValue = (uint16_t)0; /** * offset 538 */ uint8_t unusedAtTheEnd[78]; }; static_assert(sizeof(output_channels_s) == 616); // end // this section was generated automatically by rusEFI tool ConfigDefinition.jar based on (unknown script) console/binary/output_channels.txt Mon May 09 09:39:55 UTC 2022