The Alfa Romeo 145 & 146 Technical Resource Centre - OBD KWP2000 Diagnostics Information
The Alfa Romeo 145 & 146 Technical Resource Centre - OBD KWP2000 Diagnostics Information
The Alfa Romeo 145 & 146 Technical Resource Centre - OBD KWP2000 Diagnostics Information
OBD Programming for the Bosch M1.5.5 KWP2000 (ISO 14230) Compatible
ECU
As found in the face lift (later than mid 1999) Twin Spark 145 & 146, 156, GTV & Spider TS with M1.5.5
ignition, mounted on top of the throttle body. here
NB Does not apply to earlier Twin Spark engines (M2.10.3 & M2.10.4), they used an older protocol.
NB NB It won't work on your boxer engine either, they used an even older protocol than the old Twin
Sparks.
Buy The Latest Version Now for only £11 - Diagnose faults and turn that airbag light off!
The interface can be bought below, or sourced elsewhere or easily made (see below).
Tester Program:
This is used to test the interface & laptop you will be using to prove the program will communicate with your
ECU, and secondly to provide a unique key to register the program.
Older Versions:
Download Alfa_Tester v1.03 (zip/22k)
Download Alfa_Tester v1.04 (zip/22k)
Main Program:
NB - You must place your licence file into the same folder where you extract the zip file to.
Older Versions:
Download Alfa TS Diag M1.5.5 v1.13_1 (zip/209k)
Download Alfa TS Diag M1.5.5 v1.12_1 (zip/151k)
Screen Shot 1 - Shows the ECU information such as the serial number, chassis number, the date the ECU
was programmed, software version of the ECU, the odometer reading, the immobiliser status, and the
maximum no. of revs the engine has reached, amongst other data. Also shown is the real time information
populated. This contains such information as current rpm, speed, air flow, air temp, engine temp, voltage,
lambda mv, throttle angle, injector timing, and various switch states (air con, full throttle, idle position, etc).
NB most of the data will read 00 as no sensors were connected at the time.
Screen Shot 2 - Displays the DTC trouble codes - when the engine management light (or injector symbol)
on the dashboard is illuminated the current fault code (and relevant item) will get displayed, and can be
cleared from here. It also keeps a log of all faults, even if the fault is no longer present and the warning light
is not illuminated. The error condition (open circuit, low/high resistance) is also displayed along with the
component.
Screen Shot 3 - Displays the Actuator Functions - With these it is possible to check the current state of the
following components and also provides you with the ability to control the component directly:
Modular Manifold
Timing Variator Solenoid
Fan low speed
Fan high speed
Canister
Airconditioning Pump
Water Overheating Light
Each Injector (individually)
Fuel Pump
It is also possible to reset the MDS learnt values and force the ECU to relearn operating values for sensors
Screen Shot 4 - Displays a graph of RPM vs Lambda Sensor voltage reading vs Lambda value.
Screen Shot 5 - Displays a graph of just the lambda voltage reading when it has entered closed loop state.
Features
_Check ECU serial no. and hardware & software versions (Screen Shot 1)
_Check the state of the CODE immobiliser (Screen Shot 1)
_Read & reset DTC codes (Screen Shot 2)
_Obtain real time data based on values calculated by the ECU such as Engine RPM, vehicle speed, air temp,
air flow, battery voltage, throttle angle, lambda voltage, lambda value, self learning status (Screen Shot 1)
_Graphs for sensor values when in real time update mode with adjustable time scale on the horizontal axis
(Screen Shots 4 & 5)
_Log the realtime sensor data to file with a time stamp against each reading. Log file is in .CSV (comma
seperated value) format Sample
_Carry out actuator tests - open/close each injector, turn on the cooling fan, open the petrol evaporation
valve, change the path to short or long for the variable inlet manifold, operate the variator solenoid, and
finally reset the learnt MDS values (Screen Shot 3)
_Acceleration timing tests - measure the time taken to accelerate to a given speed and plot the results on a
graph. The timing runs can be saved to a log file for later analysis, and multiple runs can be loaded and
plotted on the same graph for comparison. (Screen Shot 6)
Requirements
FAQ - Program
1. Will this work with my interface?
If you have built the interface I detail above, yes. If not, then I cannot answer - as the interface is based on
Andy Whittaker's interface, any interface which does basic voltage level shifting should work as well (+/- 5v
ECU to +/-12v RS232).
It will therefore work with the basic VAG COM cable.
Try it again - there are issues sometimes where the ECU just will not wake up. All bytes appear to have
been sent correctly, but the ECU just refuses to wake up. In this case wait ~1-2 seconds before retrying. If
this is not the case, then ensure no other software is using the COM port (such as mobile/PDA sync
software, or a MODEM) and retry. If you still have no success then there could be an issue with the
interface, or a wiring issue with the connector or even the ECU itself not responding. Also make sure your
laptop is not running other resource hungry programs at the same time, and that disk activity is not going
wild. Timing is critical, if Windows gives another process more CPU time than the diagnostic software, often
the bytes do not get sent at the correct time interval.
6. When using the real time data why does communication drop after about 5 minutes?
The ECU just gives up. I cannot figure this out - bytes get sent successfully, but the ECU will just give up -
reconnect and everything will be fine again.
7. I'm having a lot of communication issues, is there anything I can do to change the timing?
Yes - edit the file alfa_ts_diag.ini and change the interbyte1 & interbyte2 times.
The home mechanic, independant garage, or anyone who is interested in monitoring exactly what the
engine is doing, the realt time data make it particularly good for engine tuners.
FAQ - General
No, I only have 2. One is a spare in case my main one breaks and I'm not selling either! You can check ebay
for LLC, or join a VAG themed forum and join in on a group buy on their cables, then when you get it you
can modify it. I may consider making & selling the interface if the demand is great enough.
FAQ - Support
NB Support can be offered for this software by myself. If you have any issues please don't
hesitate to email me at [email protected] or to post in the Diag Forum at
www.alfa145.co.uk/forum
Please download from here (ocx/102k) and place either into the same folder as the program or into the
\Windows\System32 (or \Winnt\System32) directory.
Please download from here (dll/116k) and place either into the same folder as the program or into the
\Windows\System32 (or \Winnt\System32) directory. You then need to register the .dll file by clicking Start -
> Run -> regsvr32"C:\windows\system32\msstdfmt.dll"
Type the exact text (with quotes) above into the box, changing the path if necessary, and then press the
Run button.
General Information
The K line is used for initial unit wake up & all following communication. There is no seperate L line
needed for wake up or otherwise.
The diagnostic plug for the ECU on the 145/146 models can be found on top of the offside
suspension turret. Photo
The diagnostic plug for the ECU on the 156/166 models can be found behind the panel underneath
the steering wheel
The black 3 pin connector is the one we are looking for, only 2 wires are used. Black = signal
ground (to ECU), white = K line (to ECU).
The opposite gender plugs are made by AMP and TYCO and can be bought from Farnell/RS/Maplin
The interface used is a generic LLC (Line Level Convertor), from +/-5v (ECU) to +/-12v (rs232
standard)
Tested 3 pin interface for £31.37(€46.04) including p&p. Please contact for shipping to
other countries. 3m cable length with DB9 connector. (Suitable for 145/146, check for
early Spider/GTV and 156)
The 16 pin OBD connector was not present in the 145/146 (at least I've never found it, but apparantly it
does exist according to AutoData), so a 3 pin general AMP automotive connector is needed instead. You
could as I have done run one of each connector, just split the signal + and - wire, this makes your interface
useable with cars with 16 pin OBD connectors as well. The interface will need a +12v, normally supplied by
the OBD connector - but if it's not there, you will need to run a seperate cable - i just used a croc clip on the
end so I could connect it straight to the batt positive terminal. The interface is of the same type required for
VAG-COM.
Search
^ Back To The Top ^