Runtime Data for DDFI and DDFI-2 ECM Types

As mentioned in the chapter above, the ECM can be triggered to send a record of runtime data. These data consist of the current state (at the time of the query) of many input and output values, for example temperature sensores, injector pulsewidth and lots of other usefull information. These records can be stored in a binary or textual information (as done by the EcmSpy software) and looked at using a application like the MegaLogViewer software. The amount of data delivered by the ECM require some experience in reading the logs, which can quickly gained by doing it frequently enough and trying to predict future logfile values from the preceding ones.

The record length of the runtime records differs between the various ecm types. The tube frame ECMs (first generation DDFI) emit the shortest runtime records, followed by the second generation DDFI-2 types of the fuel frame models.

Offset * Description Units Type Size * Scaling Factor Translation Export
1 System Configuration Byte
Bitfield 1

2 10 Millisecond Time Seconds Scalar 1 0.01 0 MilliSec
3 Seconds since Engine Running Seconds Scalar 2 1 0 seconds
5 Engine Speed RPM Scalar 2 1 0 RPM
7 Spark Advance, Front Degrees Scalar 2 0.0025 0 spark1
9 Spark Advance, Rear Degrees Scalar 2 0.0025 0 spark2
11 Table Fuel, Front Milliseconds Scalar 2 0.00133 0 veCurr1
13 Table Fuel, Rear Milliseconds Scalar 2 0.00133 0 veCurr2
15 Fuel Pulsewidth, Front Milliseconds Scalar 2 0.00133 0 pw1
17 Fuel Pulsewidth, Rear Milliseconds Scalar 2 0.00133 0 pw2
19 Throttle Position, Degrees Degrees Scalar 2 0.1 0 TPD
21 Throttle Position, Raw 8-Bit ADC Scalar 1 1 0 TPS 8Bit
22 Battery Voltage Volts Scalar 2 0.01 0 Batt. Voltg.
24 Engine Temperature, Raw 10-bit ADC Scalar 2 1 0 CLT ADC
Engine Tempemperature Fahrenheit Scalar 2 0.18000 -40 CLT_F
Engine Temperature ° C Scalar 2 0.1 -40 CLT
26 Air Temperature, Raw 10-bit ADC Scalar 2 1 0 MAT ADC
Air Tempemperature Fahrenheit Scalar 2 0.18000 -40 MAT_F
Air Temperature ° C Scalar 2 0.1 -40 MAT
30 Battery Voltage Correction Milliseconds Scalar 2 0.00133 0 Batt. Voltg. Corr.
32 Engine Temperature (Warmup) Correction Percent Scalar 2 0.1 0 WUE
34 Air Temperature Correction Percent Scalar 2 0.1 0 Air Temp. Corr.
36 Acceleration Correction Percent Scalar 2 0.1 0 Accel. Corr.
38 Deceleration Correction Percent Scalar 2 0.1 0 Decel Corr.
40 Wide-Open Throttle Correction Percent Scalar 2 0.1 0 WOT Corr.
42 Idle Correction Percent Scalar 2 0.1 0 Idle Corr.
44 Open Loop Correction Percent Scalar 2 0.1 0 OL Corr.
46 Learned Fuel (AFV) Correction Percent Scalar 2 0.1 0 AFV
48 Feedback Fuel (EGO) Correction Percent Scalar 2 0.1 0 EGO Corr.
59 Bank Angle Sensor 10-bit ADC Scalar 2 1 0 BAS ADC
61 Current Diagnostic Codes 1
Bitfield 1

Error 1
62 Current Diagnostic Codes 2
Bitfield 1

Error 2
63 Current Diagnostic Codes 3
Bitfield 1

Error 3
64 Current Diagnostic Codes 4
Bitfield 1

Error 4
65 Recent Diagnostic Codes 1
Bitfield 1

Error 5
66 Recent Diagnostic Codes 2
Bitfield 1

Error 6
67 Recent Diagnostic Codes 3
Bitfield 1

Error 7
68 Recent Diagnostic Codes 4
Bitfield 1

Error 8
69 Historic Diagnostic Codes 1
Bitfield 1

Error 9
70 Historic Diagnostic Codes 2
Bitfield 1

Error 10
71 Historic Diagnostic Codes 3
Bitfield 1

Error 11
72 Historic Diagnostic Codes 4
Bitfield 1

Error 12
77 Rides since code logged Rides Scalar 1 1 0 Rides
79 Digital Input Line Activity
Bitfield 1

80 Coil Feedback, Front 8-bit ADC Scalar 1 1 0 Coil1 ADC
81 Coil Feedback, Rear 8-bit ADC Scalar 1 1 0 Coil2 ADC
82 Injector Feedback, Front 8-bit ADC Scalar 1 1 0 Inj1 ADC
83 Injector Feedback, Rear 8-bit ADC Scalar 1 1 0 Inj2 ADC
84 Unscaled Throttle Position 10-bit ADC Scalar 2 1 0 TPS 10Bit
86 Unscaled Battery Reading 10-bit ADC Scalar 2 1 0 Batt. ADC
88 Unscaled Engine Temp 8-bit ADC Scalar 1 1 0 CLT ADC
88 Engine Temperature input, Volts Volts Scalar 1 0.01953125 0 CLT Voltg.
89 Air Temperature input, Volts Volts Scalar 1 0.01953125 0 MAT Voltg.
89 Unscaled Air Temp 8-bit ADC Scalar 1 1 0 MAT ADC
90 Fuel Pump Feedback 8-bit ADC Scalar 1 1 0 Fuelp. ADC
91 Cooling Fan Feedback 8-bit ADC Scalar 1 1 0 Fan ADC
92 Cooling Fan Duty Cycle Percent Scalar 1 1 0 Fan Duty
93 Vehicle Speed Count Counts Scalar 1 1 0 VSS
94 Gear Selection Data Counts Scalar 1 1 0
95 Current Diagnostic Codes 5
Bitfield 1

Error 13
96 Recent Diagnostic Codes 5
Bitfield 1

Error 14
97 Historic Diagnostic Codes 5
Bitfield 1

Error 15

Note: Scaled output is calculated using this formula: (Scaled Output) = (Runtime Value) * (Scaling Factor) + Translation

* All offsets and sizes are given in bytes.

Bitfield Values

System Configuration Byte
# - Function (0 = Disable, 1 = Enable)
0 - Idle ignition timing adjustment enable
1 - Idle closed loop enable
2 - Fuel cutoff while in decel
3 - Open loop learning enable
4 - Bank angle sensor enable
5 - Fuel pump duty cycle lookup enable
6 - Enable real-time table value adjustment
7 - Table value locking in adjustment


Diagnostic Codes Byte 1
# - DC - Meaning
0 - 14 - Engine temperature sensor short to gnd.
1 - 14 - Engine temperature sensor short to supply voltg. or open
2 - 13 - O2 sensor always rich (high)
3 - 13 - O2 sensor always lean (low)
4 - 13 - O2 sensor inactive or open
5 - 11 - Throttle position sensor short to gnd. or open
6 - 11 - Throttle position sensor short to supply voltg.
7 - 36 - Fan short to gnd. or open


Diagnostic Codes Byte 2
# - DC - Meaning
0 - 24 - Coil 1 short to gnd. or open
1 - 24 - Coil 1 short to supply voltg.
2 - 23 - Injector 1 short to gnd. or open
3 - 23 - Injector 1 short to supply voltg.
4 - 16 - Battery voltage too low
5 - 16 - Battery voltage too high
6 - 15 - Air Temperature short to gnd.
7 - 15 - Air Temperature short to supply voltg. or open


Diagnostic Codes Byte 3
# - DC - Meaning
0 - 35 - Tacometer short to grnd.
1 - 35 - Tachometer short to supply voltg.
2 - 33 - Fuel pump short to gnd. or open
3 - 33 - Fuel pump short to supply voltg. or blocked
4 - 32 - Injector 2 short to gnd. or open
5 - 32 - Injector 2 short to supply voltg.
6 - 25 - Coil 2 short to gnd. or open
7 - 25 - Coil 2 short to supply voltg.


Diagnostic Codes Byte 4
# - DC - Meaning
0 - 56 - Failed to sync. with cam position sensor
1 - 55 - Analog-to-digital convertor error
2 - 54 - EEPROM error
3 - 53 - Read-only memory error
4 - 52 - Random access memory error
5 - 36 - Fan short to supply voltg. or blocked
6 - 44 - Bank angle sensor short to gnd.
7 - 44 - Bank angle sensor short to suppl voltg. or open


Diagnostic Codes Byte 5
# - DC - Meaning
0 - 21 - Active muffler control always open
1 - 21 - Active muffler control always closed
2 - 21 - Active muffler control short to gnd. or open
3 - 21 - Active muffler control short to supply voltg.
4 - reserved
5 - reserved
6 - reserved
7 - reserved


Runtime Data for DDFI-III ECM Types

Runtime records from DDFI-III ECM types are much larger than from the older DDFI and DDFI-II versions. The most recent ECM types support separate O2 sensor for front and rear cylinder as well as a post-cat O2 sensor to monitor catalyzer function. Several digital inputs as clutch, sidestand etc. are now monitored by the ECM too, to avoid the necessity of using error prone relais to prevent the engine from starting.

Offset * Description Units Type Size * Scaling Factor Translation Export
1 Front load (1) Percent * 2.56 Scalar 1 1 0
2 10 Millisecond Time Seconds Scalar 1 0.01 0
3 Seconds since Engine Start Seconds Scalar 2 1 0
5 Engine Speed RPM Scalar 2 1 0
7 Spark Advance, Front Degrees Scalar 2 0.0025 0
9 Spark Advance, Rear Degrees Scalar 2 0.0025 0
11 Table Fuel, Front Milliseconds Scalar 2 0.00133 0
13 Table Fuel, Rear Milliseconds Scalar 2 0.00133 0
15 Fuel Pulsewidth, Front Milliseconds Scalar 2 0.00133 0
17 Fuel Pulsewidth, Rear Milliseconds Scalar 2 0.00133 0
19 Throttle Position, Degrees Degrees Scalar 2 0.1 0
21 Rear Cylinder Load, Raw 8-bit Scalar 1 1 0
22 Battery Voltage Volts Scalar 2 0.01 0
22 Battery Voltage Volts Scalar 2 0.1 0
24 Engine Temperature ° C Scalar 2 0.1 -40
Engine Temperature Fahrenheit Scalar 2 0.55555 -17.77778
Engine Temperature, Raw 10-bit ADC Scalar 2 1 0
26 Air Temperature Fahrenheit Scalar 2 0.55555 -17.77778
Air Temperature ° C Scalar 2 0.1 -40
Air Temperature, Raw 10-bit ADC Scalar 2 1 0
28 Oxygen Sensor, Raw 10-bit ADC Scalar 2 1 0
30 Battery Voltage Correction Milliseconds Scalar 2 0.00133 0
32 Engine Temperature Correction Percent Scalar 2 0.1 0
34 Air Temperature Correction Percent Scalar 2 0.1 0
36 Acceleration Correction Percent Scalar 2 0.1 0
38 Deceleration Correction Percent Scalar 2 0.1 0
40 Wide-Open Throttle Correction (2) Percent Scalar 2 0.1 0
Manifold AirPressure, Front cylinder (2) 10-bit ADC Scalar 2 1 0
42 Idle Correction (2) Percent Scalar 2 0.1 0
MAP, rear cylinder (2) 10-bit ADC Scalar 2 1 0
44 Open Loop Correction Percent Scalar 2 0.1 0
46 Learned Fuel (AFV) Correction Rear Percent Scalar 2 0.1 0
48 Feedback Fuel (EGO) Correction Rear Percent Scalar 2 0.1 0
50 Flags Byte 0
Bitfield 1

51 Flags Byte 1
Bitfield 1

52 Flags Byte 2
Bitfield 1

53 Flags Byte 3 (1)
Bitfield 1

Throttle Position (Rear?), Raw (1) 8-bit ADC Scalar 1 1 0
54 Flags Byte 4 (1) (2) (3) (4)
Bitfield 1

Throttle and IAC Load, Raw (1) Percent*2.56 Scalar 1 1 0
Average Barometric Pressure Sensor, Raw (2) (3) 8-bit ADC Scalar 1 1 0
Average IAC Live Status, Raw (4) Steps Scalar 1 1 0
55 Flags Byte5 (1) (2) (3)
Bitfield 1

Airbox Pressure Correction (2) (3) Percent Scalar 1 1 0
Manifold Air Pressure Sensor Front, Raw (1) 8-bit ADC Scalar 1 1 0
56 Flags Byte 6 (1) (2) (3)
Bitfield 1

Barometric Pressure Correction (2) (3) Percent Scalar 1 1 0
Manifold Air Pressure Sensor Rear, Raw (1) 8-bit ADC Scalar 1 1 0
57 Air-Fuel (O2) Sensor Front, Raw 10-bit ADC Scalar 2 1 0
Showerhead Front Pulsewidth Seconds Scalar 2 0.001 0
59 Air-Fuel (O2) Sensor Rear, Raw 10-bit ADC Scalar 2 1 0
Showerhead Rear Pulsewidth Seconds Scalar 2 0.001 0
59 Bank Angle Sensor, Raw 8-bit ADC Scalar 2 1 0
61 Current Trouble Code Byte 0
Bitfield 1

62 Current Trouble Code Byte 1
Bitfield 1

63 Current Trouble Code Byte 2
Bitfield 1

64 Current Trouble Code Byte 3
Bitfield 1

65 Current Trouble Code Byte 4
Bitfield 1

66 Current Trouble Code Byte 5
Bitfield 1

67 Current Trouble Code Byte 6
Bitfield 1

68 Current Trouble Code Byte 7
Bitfield 1

69 Stored Trouble Code Byte 0
Bitfield 1

70 Stored Trouble Code Byte 1
Bitfield 1

71 Stored Trouble Code Byte 2
Bitfield 1

72 Stored Trouble Code Byte 3
Bitfield 1

73 Stored Trouble Code Byte 4
Bitfield 1

74 Stored Trouble Code Byte 5
Bitfield 1

75 Stored Trouble Code Byte 6
Bitfield 1

76 Stored Trouble Code Byte 7
Bitfield 1

77 Rides After Trouble Code Set Rides Scalar 1 1 0
78 Digital Output 1 Activities
Bitfield 1

79 Digital Input Activities
Bitfield 1

80 Coil Feedback Front, Raw 8-bit ADC Scalar 1 1 0
81 Coil Feedback Rear, Raw 8-bit ADC Scalar 1 1 0
82 Injector Feedback Front, Raw 8-bit ADC Scalar 1 1 0
83 Injector Feedback Rear, Raw 8-bit ADC Scalar 1 1 0
84 Unscaled Throttle Position, Raw 10-bit ADC Scalar 2 1 0
86 Unscaled Battery Reading, Raw 10-bit ADC Scalar 2 1 0
88 Engine Temperature Sensor Volts Scalar 1 0.01953125 0
Engine Temperature Sensor, Raw 8-bit ADC Scalar 1 1 0
89 Air Temperature Sensor Volts Scalar 1 0.01953125 0
Air Temperature Sensor, Raw 8-bit ADC Scalar 1 1 0
90 Fuel Pump Feedback, Raw 8-bit ADC Scalar 1 1 0
91 Cooling Fan Feedback, Raw 8-bit ADC Scalar 1 1 0
92 Fan Duty Cycle Percent Scalar 1 1 0
93 Vehicle Speed Count (5) Counts / Sample Period Scalar 1 1 0
Vehicle speed (5) km/h Scalar 1 1 0
Vehicle Speed (5) mph Scalar 1 0.62137 0
94 Gear Selection Data (5) Counts / Sample Revolutions Scalar 1 1 0
Transmission Gear (5)
Scalar 1 1 0
95 Current Trouble Code Byte 8
Bitfield 1

96 Current Trouble Code Byte 9
Bitfield 1

97 Stored Trouble Code Byte 8
Bitfield 1

98 Stored Trouble Code Byte 9
Bitfield 1

99 Sidestand Input, Raw (shares Oil Temperature Sensor Input) 8-bit ADC Scalar 1 1 0
Oil Temperature Sensor, Raw 8-bit ADC Scalar 1 1 0
100 Catalyst Air-Fuel (O2) Sensor, Raw 8-bit ADC Scalar 1 1 0
Rear Air-Fuel Ratio (Dyno)
Scalar 1

101 Engine Temperature Sensor, Raw 8-bit ADC Scalar 1 1 0
103 Front Air-Fuel Ratio (Dyno)
Scalar 1

104 Air-Fuel (O2) Sensor Front, Raw 8-bit ADC Scalar 1 1 0
105 Barometric Pressure Sensor, Raw 8-bit ADC Scalar 1 1 0
106 Manifold Air Pressure Sensor, Raw 8-bit ADC Scalar 1 1 0
107 Spare Input, Raw 8-bit ADC Scalar 1 1 0
108 Switched Ignition, Raw 8-bit ADC Scalar 1 1 0
109 Digital Output 2 Activities
Bitfield 1

110 Digital Output 2 Feedback
Bitfield 1

111 Digital Output 2 Current Diagnostic Codes
Bitfield 1

112 Digital Output 2 Recent Diagnostic Codes
Bitfield 1

113 Idle Air Control RPM Setpoint RPM Scalar 1 10 0
114 Idle Air Control Stepper Position Steps Scalar 1 1 0
115 Manifold Air Pressure Front
Scalar 1 1 0
116 Manifold Air Pressure Rear
Scalar 1 1 0
117 Airbox Pressure or Barometric Pressure kPa (typical) Scalar 1 1 0
118 Fuel Pressure PWM Duty Cycle (3) Percent Scalar 1 1 0
119 Fuel Pressure Setpoint (3) PSI Scalar 1 1 0
120 Fuel Pressure (3) PSI Scalar 1 0.5 0
121 Fuel Pressure Correction Factor (3) Percent Scalar 1 1 0
122 Learned Fuel (AFV) Correction Front Percent Scalar 2 0.1 0
124 Feedback Fuel (EGO) Correction Front Percent Scalar 2 0.1 0
126 Stored Trouble Code Byte 10
Bitfield 1

* All offsets and sizes are given in bytes.

Remarks

(1) depends on Load Configuration settings
(2) depends on Airbox Pressure Configuration settings
(3) depends on Fuel Pressure Control settings
(4) depends on Idle Air Control settings
(5) depends on Vehicle Speed Sensor Configuration settings


Bitfields

Diagnostic Codes Byte 0:
# - Meaning
0 - Engine temperature sensor short to gnd.
1 - Engine temperature sensor short to supply voltage
2 - (Rear) O2 sensor always rich
3 - (Rear) O2 sensor always lean
4 - (Rear) O2 sensor inactive
5 - TPS short to gnd. or open
6 - TPS short to supply voltage
7 - Fan short to gnd. or open


Diagnostic Codes Byte 1:
# - Meaning
0 - Coil 1 short to gnd. or open
1 - Coil 1 short to supply voltage
2 - Injector 1 short to gnd. or open
3 - Injector 1 short to supply voltage
4 - Battery voltage too low
5 - Battery voltage too high
6 - Air temperature sensor short to gnd. or open
7 - Air temperature sensor short to supply voltage


Diagnostic Codes Byte 2:
# - Meaning
0 - Tachometer short to gnd.
1 - Tachometer short to supply voltage
2 - Fuel pump short to gnd. or open
3 - Fuel pump short to supply voltage or blocked
4 - Injector 2 short to gnd. or open
5 - Injector 2 short to supply voltage
6 - Coil 2 short to gnd. or open
7 - Coil2 short to supply voltage


Diagnostic Codes Byte 3:
# - Meaning
0 - Failed to synch. with camp position sensor
1 - Analog-to-digital convertor error
2 - EEPROM error
3 - Read-only memory checksum error
4 - Failed to verify RAM write/read
5 - Fan short to supply voltage or blocked
6 - Bank angle sensor short to gnd.
7 -&nbps;Bank angle sensor short to supply voltage or open


Diagnostic Codes Byte 4:
# - Meaning
0 - Active muffler control always open
1 - Active muffler control always closed
2 - Active muffler control short to gnd. or open
3 - Active muffler control short to supply voltage
4 - Active intake control failure
5 - Sidestand input short to gnd.
6 - Sidestand input short to supply voltage
7 - Sidestand input failure


Diagnostic Codes Byte 5:
# - Meaning
0 - Starter relay short to supply voltage
1 - Auxiliary power relay failure
2 - Neutral signal short to gnd. or open
3 - resereved for future use
4 - Clutch signal short to gnd. or open
5 - Clutch short high (future)
6 - Active intake control short to gnd. or open
7 - Active intake control short supply voltage


Diagnostic Codes Byte 6:
# - Meaning
0 - CAN bus error
1 - Security system failure
2 - Vehicle speed sensor short to gnd.
3 - Vehicle speed sensor short to supply voltage or open
4 - Vehicle speed output short to gnd. or open
5 - Idle air control position too low
6 - Idle air control position too high
7 - Idle air control circuit error


Diagnostic Codes Byte 7:
# - Meaning
0 - reserved for future use
1 - Fuel pressure control error
2 - Fuel pressure sensor short to gnd.
3 - Fuel pressure sensor short to supply voltage or open
4 - AFV cylinder difference too high
5 - (Front) O2 sensor always rich
6 - (Front) O2 sensor always lean
7 - (Front) O2 sensor inactive


Diagnostic Codes Byte 8:
# - Meaning
0 - Cooling Fan 2 short to gnd. or open
1 - Cooling Fan 2 short to supply voltage
2 - Crank sensor short to gnd.
3 - Crank sensor short to supply voltage
4 - Manifold air pressure sensor short to gnd.
5 - Manifold air pressure sensor short to supply voltage or open
6 - Barometric pressure sensor short to gnd.
7 - Barometric pressure sensor short to supply voltage or open