I need to know what you would expect to find in a basic datalog. Even if we don't have those vars yet, space can be reserved for them now.
Obviously we want the core ADC sensor values after transfer.
RPM
What else?
I'd like to see everyone involved in this thread as it doesn't require any tech knowledge to participate in really :-)
First cut of list :
- ------------ Current Core Vars ------------
- 2 IAT
- 2 CHT
- 2 TPS
- 2 EGO (lambda actual)
- 2 MAP
- 2 AAP
- 2 BRV
- 2 MAT
- 2 EGO2 (lambda actual)
- 2 IAP
- 2 MAF
- 2 DMAP
- 2 DTPS
- 2 RPM
- 2 DRPM
- 2 DDRPM
- ------------ Current Derived Vars ------------
- 2 LoadMain
- 2 VEMain
- 2 Lambda (target)
- 2 AirFlow
- 2 densityAndFuel
- 2 BasePW
- 2 IDT
- 2 ETE
- 2 TFCTotal
- 2 FinalPW
- 2 RefPW
- ------------ Suggested Definites --------------
- Ignition advance base
- Dwell
- Time - See below
- Datalog sequence number incremented per log sent - 8 bits is enough, only looking for discontinuity anyway
- Spare variable fields to be somehow user configurable without code change 4 x 16 bits enough?)
- Flag vars = bit fields = on/off or yes/no or 0/1 for specific states of various things
- ----------- Specific Flags ------------
- Fully closed throttle on/off
- Fully open throttle on/off
- Fuel pump on/off
- AC input on/off
- AC output on/off
- Brake on/off
- Clutch on/off
- Idle bypass on/off
- Box in neutral on/off
- VVT - fixed - on/off
- VICS - fixed - on/off
- Power steer on/off
- Fans (1 or 2?) on/off
- CEL (how many) on/off
- Primary sync on/off
- Secondary sync on/off
- What else? Go nuts... I can only say no :-)
- Bank left/right of a V engine for the entire log
- ------------ Suggested To Be Discussed ------------
- Injection advance figures - v twin, siamese, standard, all to be considered, may require two fields.
- TFC - per algorithm ?
- ------------ Non core, but desirable ---------------
- Idle valve Duty - should be generic enough to cover stepper and pwm, ie, not sure if duty is the right term
- Knock count
- Knock level
- Vehicle speed sensor
- Boost control duty
- Cooling fan duty (1 or 2)
- VVT angle value or duty value or both
- EGT sensor
- Fuel pressure
- Fuel temperature
- All fuel pulsewidths
- All ign advances
- Staged pulsewidth
- Timing error
- O2 Correction level
- Trigger input angle logging - primary and secondary
- What else? Go nuts... I can only say no :-)
RAW ADCs (useful to see noise pre averaging) :
- 2 IAT
- 2 CHT
- 2 TPS
- 2 EGO
- 2 BRV
- 2 MAP
- 2 AAP
- 2 MAT
- 2 EGO2
- 2 IAP
- 2 MAF
- 2 SpareADC3
- 2 SpareADC4
- 2 SpareADC5
- 2 SpareADC6
- 2 SpareADC7
Clocks :
- 2 realTimeClockMain
- 2 realTimeClockMillis
- 2 realTimeClockTenths
- 2 realTimeClockSeconds
- 2 realTimeClockMinutes
- 2 millisToTenths
- 2 tenthsToSeconds
- 2 secondsToMinutes
- 2 timeoutADCreadingClock
- 2 primaryInputLatency
- 2 secondaryInputLatency
- 2 Injector1Latency
- 2 Injector2Latency
- 2 Injector3Latency
- 2 Injector4Latency
- 2 Injector5Latency
- 2 Injector6Latency
- 2 DwellLatency
- 2 IgniteLatency
- 2 mathLatency ??
- 2 mathSampleTimeStamp [2] ??
Runtimes :
- 2 primaryInputLeadingRuntime
- 2 primaryInputTrailingRuntime
- 2 secondaryInputLeadingRuntime
- 2 secondaryInputTrailingRuntime
- 2 calcsRuntime
- 2 genCoreVarsRuntime
- 2 genDerivedVarsRuntime
- 2 mathTotalRuntime
- 2 mathSumRuntime
- 2 RTCRuntime
- 2 mainLoopRuntime
- 2 logSendingRuntime
- 2 serialISRRuntime
- 2 UISRCounter
- 2 lowVoltISRCounter
- 2 lostCrankSyncCounter
- 2 lostCamSyncCounter
- 2 lostRPMValidityCounter
- 2 primaryTeethDroppedFromLackOfSync
- 2 primaryTeethCounter
- 2 secondaryTeethCounter
- 2 syncedADCreadingCounter
- 2 timeoutADCreadingCounter
- 2 calcsPerformedCounter
- 2 logsSentCounter
- 2 serialPacketOverLengthCounter
- 2 serialStartInsidePacketCounter
- 2 serialEscapePairMismatchCounter
- 2 serialChecksumMismatchCounter
- 2 serialNoiseErrorCounter
- 2 serialOverrunErrorCounter
- 2 serialFramingErrorCounter
- 2 serialParityErrorCounter
- 2 serialDebugUnsentCounter
Fred.