Converted from DDEC Interface User Manual R4.0.doc
Original authors: Hicham Kaafarani, M. Kolli, R. Coleman
Copyright 1999-2003 EDS
This manual gives a detailed description on how to use the DDEC Interface software. It provides an overview of the software along with its basic operations. Each function is described in detail. This manual describes the features in general terms without reference to any particular type of engine, so the reader needs no detailed knowledge about engines.
| Version | Modifications |
|---|---|
| 1.0 | Hicham Kaafarani - Original release |
| 2.0 | Hicham Kaafarani - Documented the new VSG functionality |
| 3.0 | M. Kolli & R. Coleman - Modified INJCODE command, added INJCODEIND command |
| 4.0 | Added Slewing Screen, Edit Table, Read Memory, Dual Frequency Gensets, Diagnostic Codes chapters. Updated pictures and added Configure Performance Parameters description. |
To start the DIF application, double click the DDEC Interface icon on the Desktop. The application will show a splash screen for around two seconds, then automatically minimize to the taskbar.
If all hardware connections are correct and the engine is running (ignition switch ON), the DIF application will try to connect automatically. When connected, the main application window displays the driver currently being used:
| Driver | Hardware |
|---|---|
| MCOM32NT | CMC card |
| DD121032 | Beige translator (serial port) |
| DM121032 | Multilink translator (serial port) |
Seven drop-down menus are located in the menu bar, accessible by mouse or ALT+[underlined letter].
| Item | Function |
|---|---|
| Start Interface | Start the DDEC interface with the ECM |
| Stop Interface | Stop the DDEC interface with the ECM |
| Config Params | Launch the Configure Performance Parameters screen |
Config Params Settings:
| Parameter | Description |
|---|---|
| CMC Timeout | Time to wait for data before CMC read/write functions return with a timeout |
| DDEC Update Rate | Rate at which DDEC Unique parameters are broadcast. Also the time interval for RDB updates when Worker Cycle Control Method is Time Interval |
| Read RAM Data Rate | Rate at which Read RAM data is updated from the ECM |
| J1708 Messages Per Cycle | Number of messages to read before updating the RDB when Worker Cycle Control Method is Count Reads |
| Sleep MS Per Cycle | Time to sleep between RDB updates |
| Communications Port | COM port 1-4 for RP1210 serial port driver |
| Comm Translator | Translator box selection for RP1210 serial port driver |
| Show Screen On Restart | Show screen when a second instance of DIF starts |
| Worker Cycle Control Method | Time Interval or Count Reads |
NOTE: The Communications Port and Comm Translator must be set appropriately when using the RP1210 driver (not the CMC card). The application defaults to the CMC card if present and connected.
| Item | Function |
|---|---|
| Start | Start logging messages from the bus to ecmmsgs.dat |
| Stop | Stop logging messages |
| Item | Function |
|---|---|
| Reset ECMs | Disable: cylinder cutout, update rate override, number of transmissions override, activate output channel, set engine speed, acceleration balance test, slewing. Reset data request tables and DDEC unique data table. |
| Diagnostic Codes | Display the Diagnostic Codes screen (see Chapter 4) |
| Item | Function | Password Required |
|---|---|---|
| PWM | Pulse Width Multiplier screen (Chapter 5) | Yes |
| Injector | Injector Calibration screen (Chapter 6) | Yes |
| Governor Gains | Governor Gains screen (Chapter 7) | Yes |
| VSG Adjustment | VSG Min/Max Adjustment screen (Chapter 8) | Yes |
| Rating | Rating Change screen (Chapter 9) | Yes |
| Read Memory | Read Memory screen (Chapter 10) | No |
| Edit Table | Edit Calibration Table screen (Chapter 11) | Yes |
| Button | Function |
|---|---|
| Start Interface (plug icon) | Connect to PowerTek database and engine bus |
| Stop Interface (red X icon) | Disconnect from PowerTek database and engine bus |
| Slew Parameters | Open Slewing screen |
| Cylinder Cutout (C button) | Open Cylinder Cutout screen |
| About DIF | Show version |
All Calibration menu items except Read Memory are password-protected. Multiple access levels are provided due to the critical nature of these functions.
Used to slew (gradually adjust) parameters during testing.
| Control | Function |
|---|---|
| APPLY | Execute the slewing process with values in Target Column |
| CLOSE | Reset slewed values and close screen |
| RESET SLEW | Reset slewed parameters to actual values |
| Test Status Box | Display progress messages |
| Target Column | Input boxes for desired slew values |
| EC1 Data Box | Current parameter values from master ECM |
| Delta Box | Slew parameters based on offset from actual value |
Used to cut out cylinders during testing to tune power output of individual cylinders.
| Control | Function |
|---|---|
| APPLY | Execute cylinder cutout for selected cylinder |
| CLOSE | Close screen (disabled while executing) |
| ABORT | Abort running cutout process; resets all ECMs |
| Cylinders in Firing Order | Radio buttons to select cylinder to cut out |
| Status | Real-time progress messages |
Used to get and/or clear diagnostic codes from all ECMs.
| Control | Function |
|---|---|
| Get Codes | Retrieve codes from all ECMs |
| Clear Codes | Clear all codes, then auto-verify with Get Codes |
| Close | Close window |
| Current Codes | Read-only display of diagnostic codes (copyable) |
Used to get/set the Pulse Width Multiplier value in the ECM during testing.
| Control | Function |
|---|---|
| Engine Serial Number | Required if engine was running before DIF started |
| Get | Get current PWM value from ECM |
| Set | Send new PWM value to ECM |
| Close | Close window |
| PWM in ECM | Display current PWM (read-only) |
| Value to set | Input for new PWM value |
PWM is typically a decimal between 0.9 and 1.1
Used to change injector calibration values for individual or all injectors during testing.
| Control | Function |
|---|---|
| Get Cal. Code | Get current injector codes from ECM |
| Set Cal. Code | Send new codes to ECM |
| Undo | Revert to current ECM values before Set |
| Close | Close screen (disabled while executing) |
| Master ECM Group | Cylinders in firing order with calibration codes |
| Receiver One Group | ECM 2 injectors (if any) |
| Receiver Two Group | ECM 3 injectors (if any) |
Injector calibration code is a positive integer between 0 and 99
Used to change governor gain values during testing.
| Gain | Range |
|---|---|
| Overall | 0 to 15.9375 |
| Proportional | 0 to 0.01556 |
| Integral | 0 to 0.249 |
| Differential | 0 to 0.000243 |
Used to change Variable Speed Governor Min and Max values during testing.
| Parameter | Range | Type |
|---|---|---|
| VSG Min | 400 to 2000 RPM | Positive integer |
| VSG Max | 1200 to 2500 RPM | Positive integer |
Both Min and Max can be changed at the same time.
Used to change the active engine rating (power curve) during testing.
Used to read raw memory values from any ECM.
| Control | Function |
|---|---|
| Read Memory | Start reading (disables all DDEC Unique PIDs during read) |
| Abort | Stop reading process |
| Open CSV | Open the output file with most recent values |
| Close | Close screen |
| J1587 MID | Select ECM: 128, 175, or 183 |
| Hex Address | Input hex address (MSB first), valid: 00 to FF per byte |
| Total Length | Length in bytes (2 to 9999) |
| Output Data Byte Width | Output format: 1, 2, 4, 8, or 16 bytes per line |
Used to view and modify calibration tables in ECM RAM during testing.
| Control | Function |
|---|---|
| Save to NV RAM | Save RAM values to non-volatile memory (engine may stall) |
| Restore RAM | Restore NV RAM values back to RAM |
| Open Table | Load and display selected table (max 2 open) |
| Close All | Close screen (disabled if tables are open) |
| Table List | Available 9x17, 9x9 tables and columns |
| Control | Function |
|---|---|
| Apply | Write changed values to RAM (max 3 values at a time) |
| Refresh Table | Re-read table from RAM |
| Copy Values | Export to CSV file (opens in associated program) |
| Close | Close table |
MAP files (MAPxxyyz.csv where xx=major version, yy=minor version, z=D/G for diesel/gas) define available tables:
type,table name,starting address,sig/uns,bytes,mult factor,add factor,
min eng value,max eng value,RowTitle,ColumnTitle,row start,col start,
row step,col step,decimal,UNITS,rows
table (2D lookup), column (1D lookup), value (single scalar), axis (axis test)ECMCOMM allows running DIF processes via mailslot messages instead of GUI screens. DIF must be running for ECMCOMM to work.
| Message | Description |
|---|---|
CUTOUT START CYL.# |
Cut out specified cylinder (1L-12L, 1R-12R, 1-6) |
CUTOUT STOP |
Stop any running cutout process |
| Message | Description |
|---|---|
PWM GET UNIT# |
Get PWM from ECM |
PWM SET UNIT# VALUE |
Set PWM (0.9-1.1) |
| Message | Description |
|---|---|
INJCODE GET |
Get all cylinder calibration codes |
INJCODEIND SET CYL.# VALUE |
Set code for specific cylinder (0-99) |
INJCODE SET ENGINE_SERIES VAL#1...VAL#6 |
Set all codes (50 or 60 series) |
| Message | Description |
|---|---|
GOVGAIN GET NAME |
Get gain (Overall/Proportional/Integral/Differential) |
GOVGAIN SET NAME VALUE |
Set gain value |
| Message | Description |
|---|---|
VSG GET |
Get VSG Min, Alternate, Max |
VSG SET NAME VALUE |
Set Min (400-2000) or Max (1200-2500) |
| Message | Description |
|---|---|
RATING GET |
Get active and available ratings |
RATING SET RATING INDEX |
Set rating by index |
| Message | Description |
|---|---|
CODES GET |
Get diagnostic codes (EC1_ACK = 9000 + count) |
CODES SCREEN |
Get codes and display Codes screen |
CODES CLEAR |
Clear all codes (EC1_ACK = 8000 if success) |
DIF publishes data to the PowerTek Real-Time Database (RDB) via named channels.
See DIF_CHANNELS.md for the complete channel listing.
| Operation | Success Range | Failure Range |
|---|---|---|
| Cylinder Cutout | 4001-4008 | 4000 |
| PWM | 5000 | 5001-5010 |
| Injector Calibration | 6000 | 6001-6008 |
| Governor Gains | 7000 | 7001-7010 |
| VSG | 6000 | 6001-6008 |
| Rating | 6000 | 6001-6008 |
| Diagnostic Codes (Get) | 9001-900N | - |
| Diagnostic Codes (Clear) | 8000 | - |
Processes DDEC parameter files and updates DDEC unit and history files on TOPFLITE and mainframe.
DSA1001:[USRDSK.S55.DDECLOGS]ECCCCJJJJ (E prefix, CCC=test cell, JJJJ=date)UNIT_NUMBER=XXXXXXXXXXXX
PARAMETER NAME=VALUE
UNIT_NUMBER=06R0012345
PW_FUDGE_FACTOR=1.100
L01=42
R01=38
DSA1001:[USRDSK.S55.TESTERR]CMS_SRC_ROOT:[INJECTOR] on topfl3