Basic Datalog - What To Put In It?? Your thoughts!

Official FreeEMS vanilla firmware development, the heart and soul of the system!
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Basic Datalog - What To Put In It?? Your thoughts!

Post by Fred »

VERY soon I'll be implementing a datalog packet for simple use. This one will be fixed format throughout time and needs to be right up front.

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 :
  1. ------------ Current Core Vars ------------
  2. 2 IAT
  3. 2 CHT
  4. 2 TPS
  5. 2 EGO (lambda actual)
  6. 2 MAP
  7. 2 AAP
  8. 2 BRV
  9. 2 MAT
  10. 2 EGO2 (lambda actual)
  11. 2 IAP
  12. 2 MAF
  13. 2 DMAP
  14. 2 DTPS
  15. 2 RPM
  16. 2 DRPM
  17. 2 DDRPM
  18. ------------ Current Derived Vars ------------
  19. 2 LoadMain
  20. 2 VEMain
  21. 2 Lambda (target)
  22. 2 AirFlow
  23. 2 densityAndFuel
  24. 2 BasePW
  25. 2 IDT
  26. 2 ETE
  27. 2 TFCTotal
  28. 2 FinalPW
  29. 2 RefPW
  30. ------------ Suggested Definites --------------
  31. Ignition advance base
  32. Dwell
  33. Time - See below
  34. Datalog sequence number incremented per log sent - 8 bits is enough, only looking for discontinuity anyway
  35. Spare variable fields to be somehow user configurable without code change 4 x 16 bits enough?)
  36. Flag vars = bit fields = on/off or yes/no or 0/1 for specific states of various things
  37. ----------- Specific Flags ------------
  38. Fully closed throttle on/off
  39. Fully open throttle on/off
  40. Fuel pump on/off
  41. AC input on/off
  42. AC output on/off
  43. Brake on/off
  44. Clutch on/off
  45. Idle bypass on/off
  46. Box in neutral on/off
  47. VVT - fixed - on/off
  48. VICS - fixed - on/off
  49. Power steer on/off
  50. Fans (1 or 2?) on/off
  51. CEL (how many) on/off
  52. Primary sync on/off
  53. Secondary sync on/off
  54. What else? Go nuts... I can only say no :-)
  55. Bank left/right of a V engine for the entire log
  56. ------------ Suggested To Be Discussed ------------
  57. Injection advance figures - v twin, siamese, standard, all to be considered, may require two fields.
  58. TFC - per algorithm ?
  59. ------------ Non core, but desirable ---------------
  60. Idle valve Duty - should be generic enough to cover stepper and pwm, ie, not sure if duty is the right term
  61. Knock count
  62. Knock level
  63. Vehicle speed sensor
  64. Boost control duty
  65. Cooling fan duty (1 or 2)
  66. VVT angle value or duty value or both
  67. EGT sensor
  68. Fuel pressure
  69. Fuel temperature
  70. All fuel pulsewidths
  71. All ign advances
  72. Staged pulsewidth
  73. Timing error
  74. O2 Correction level
  75. Trigger input angle logging - primary and secondary
  76. What else? Go nuts... I can only say no :-)
Additionally, the following fields are also available :

RAW ADCs (useful to see noise pre averaging) :
  1. 2 IAT
  2. 2 CHT
  3. 2 TPS
  4. 2 EGO
  5. 2 BRV
  6. 2 MAP
  7. 2 AAP
  8. 2 MAT
  9. 2 EGO2
  10. 2 IAP
  11. 2 MAF
  12. 2 SpareADC3
  13. 2 SpareADC4
  14. 2 SpareADC5
  15. 2 SpareADC6
  16. 2 SpareADC7

Clocks :
  1. 2 realTimeClockMain
  2. 2 realTimeClockMillis
  3. 2 realTimeClockTenths
  4. 2 realTimeClockSeconds
  5. 2 realTimeClockMinutes
  6. 2 millisToTenths
  7. 2 tenthsToSeconds
  8. 2 secondsToMinutes
  9. 2 timeoutADCreadingClock
ISR Latencies :
  1. 2 primaryInputLatency
  2. 2 secondaryInputLatency
  3. 2 Injector1Latency
  4. 2 Injector2Latency
  5. 2 Injector3Latency
  6. 2 Injector4Latency
  7. 2 Injector5Latency
  8. 2 Injector6Latency
  9. 2 DwellLatency
  10. 2 IgniteLatency
  11. 2 mathLatency ??
  12. 2 mathSampleTimeStamp [2] ??
(Can't remember what the story with those last math ones is)

Runtimes :
  1. 2 primaryInputLeadingRuntime
  2. 2 primaryInputTrailingRuntime
  3. 2 secondaryInputLeadingRuntime
  4. 2 secondaryInputTrailingRuntime
  5. 2 calcsRuntime
  6. 2 genCoreVarsRuntime
  7. 2 genDerivedVarsRuntime
  8. 2 mathTotalRuntime
  9. 2 mathSumRuntime
  10. 2 RTCRuntime
  11. 2 mainLoopRuntime
  12. 2 logSendingRuntime
  13. 2 serialISRRuntime
Counters :
  1. 2 UISRCounter
  2. 2 lowVoltISRCounter
  3. 2 lostCrankSyncCounter
  4. 2 lostCamSyncCounter
  5. 2 lostRPMValidityCounter
  6. 2 primaryTeethDroppedFromLackOfSync
  7. 2 primaryTeethCounter
  8. 2 secondaryTeethCounter
  9. 2 syncedADCreadingCounter
  10. 2 timeoutADCreadingCounter
  11. 2 calcsPerformedCounter
  12. 2 logsSentCounter
  13. 2 serialPacketOverLengthCounter
  14. 2 serialStartInsidePacketCounter
  15. 2 serialEscapePairMismatchCounter
  16. 2 serialChecksumMismatchCounter
  17. 2 serialNoiseErrorCounter
  18. 2 serialOverrunErrorCounter
  19. 2 serialFramingErrorCounter
  20. 2 serialParityErrorCounter
  21. 2 serialDebugUnsentCounter
NumBytes Description

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Basic Datalog - What To Put In It?? Your thoughts!

Post by Fred »

One idea :

We can define the format to be variable length. Older devices can ignore newer fields. That way if we are a bit wrong we can tag stuff on the end later.

Pulling stuff out won't be OK though, so we should think carefully about this anyway.

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
deviousKA
QFP80 - Contributor
Posts: 43
Joined: Tue Apr 01, 2008 10:36 pm
Location: Id, USA
Contact:

Re: Basic Datalog - What To Put In It?? Your thoughts!

Post by deviousKA »

A couple obvious ones besides rpm and ADC,

-Injection Pulsewidth
-Ignition timing

Some that might not fit "basic" stream but just throwing them out,

-Idle valve Duty
-Knock count
-O2 self learn
-Vehicle speed sensor

Some other bits,

-Closed throttle on/off
-Fuel pump on/off
-Cranking(startup) on/off
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Basic Datalog - What To Put In It?? Your thoughts!

Post by Fred »

Thank you!
deviousKA wrote:A couple obvious ones besides rpm and ADC,
-Injection Pulsewidth
-Ignition timing
Is anything obvious to me? lol, also, injection timing and dwell right. What else like this ?
Some that might not fit "basic" stream but just throwing them out,
-Idle valve Duty
-Knock count
-O2 self learn
-Vehicle speed sensor
Well, the idea of basic is to keep them short (and more frequent for the general case). There is intended to be an all knowing fully configurable datalog, but configurable isn't easy to do on a simple datalogger or digi dash. I'm unsure, but some may be a good move.
Some other bits,
-Closed throttle on/off
-Fuel pump on/off
-Cranking(startup) on/off
OK, so several bytes of the core flags at least (and maybe some spares)

Spares! spare byte/word 1 2 3 etc?

Also, core generated vars, VE, transient correction, warm up correction, etc. (what are etc??)

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
Chen
TO220 - Visibile
Posts: 14
Joined: Thu Nov 13, 2008 2:52 am

Re: Basic Datalog - What To Put In It?? Your thoughts!

Post by Chen »

Brake and clutch pedal must monitoring too.
it`s good for datalog and telemetry and also this flag can be used for "launch-control", "full thortle shift" and another things.
deviousKA
QFP80 - Contributor
Posts: 43
Joined: Tue Apr 01, 2008 10:36 pm
Location: Id, USA
Contact:

Re: Basic Datalog - What To Put In It?? Your thoughts!

Post by deviousKA »

Here is a Nissan data list, example
http://plmsdevelopments.com/images_ms/G ... _Ver_2.pdf
WTDeuce
QFP80 - Contributor
Posts: 40
Joined: Thu Sep 04, 2008 1:54 pm

Re: Basic Datalog - What To Put In It?? Your thoughts!

Post by WTDeuce »

RPM, Time (Seconds CPU has been running? Or real time if theres a clock?), TPS, CLT, MAP, IAT, Baro (If theres a second sensor, or if its updating at WOT like ive seen suggested), Pulse Width1/2/etc (sequential injection would need 4 or 6 or whatever I guess, or staged would need two), Duty Cycle1/2/etc (see left), AFR1 and AFR2, Lambda1 and Lambda2 (dual O2 sensors for some people), Dwell, Timing Advance, Battery Volts, Knock info of some sort, Idle PWM/Duty, Boost PWM/Duty.... Oh and Timing Error or similar. And im blanking on anything else.
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Basic Datalog - What To Put In It?? Your thoughts!

Post by Fred »

Good work guys, I'll draw up a list in the first post later this evening and bump it then :-)

I'll put some maybes in a separate list with reasoning too.

Everything is open for discussion, but bear in mind that this should be stuff you can't do without. There is a LOT of optional stuff in FreeEMs already and most of it won't be in this datalog.

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Basic Datalog - What To Put In It?? Your thoughts!

Post by Fred »

Chen wrote:Brake and clutch pedal must monitoring too.
it`s good for datalog and telemetry and also this flag can be used for "launch-control", "full thortle shift" and another things.
Those types of features would be done internal to the EMS though, it would be easy to add them as flags in the log, sure, but I can't see why you want that on your dash for example :-)

The data we are talking about here is a smallish subset of the full amount available.

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
jharvey
1N4001 - Signed up
Posts: 1607
Joined: Tue Jun 10, 2008 5:17 pm

Re: Basic Datalog - What To Put In It?? Your thoughts!

Post by jharvey »

Perhaps the datalog features should be split into three sections. First run "min required", second pass "stuff you will likely want" and third pass "future stuff".

We may also want "up time" for two other processors as well. One for the ion sensor board, and the other for the potential second inject / ignition board. Remember the one that would be a near cut and past, but has the signals run from the first so you don't need another set of sensors, ect, and gets the 8/12cyl option. I think that board will need it's own processor.

Any how, these parts may want to be put in catagory 3, future stuff.
Post Reply