Hey peeps,

Hope this would be helpful to some of you guys! I have basically summerised the long and detailed ECU project thread and got this working for the simple minded like myself!

Basically this will allow you to data log several variables:

- Rev
- Air Temp
- Injector Period
- Pressure (think this takes it from the map sensor)
- Throttle positions
- Ignition Advance
- Voltage
- VAE (not sure what this is)
- Water temp (guess this be good for the seicento SPI that doesn't have a temp guage)

This allows the user to data log all of the above data while driving!

Secondly, this will also records any "ERROR" the ECU brings up (i.e. when the engine management light is on)

What do you need?


you need to buy a Fiat 3 pin adaptor to OBD2 cable like this

fiat obd2 cable 1.JPG

you need to buy a Vagcom USB OBD2 409.1 KKL cable like this

usb cable.jpg


Both are available on eBay

Procedures

1. Start the car and let the car run for around 60 seconds or so.

2. Plug in the fiat 3 pin adaptor to OBD 2 cable to the fiat diagnostic port:

ECU_diagnostic_plug.JPG

Fiat_plug_to_OBD2.JPG


3. Plug in Vagcom USB OBD2 409.1 KKL cable and connect the crocodile clips to a 12v, either to the car battery or i used an external source.

409_1_KKL_VAG-COM_USB_OBD_2.JPG

All_plugged_in.JPG

Plugs_to_get_12v_for_the_Vag_com_cable.JPG

4. Plug the USB to your laptop and run the star-trek program

Choose the engine you are running this against, I have selected the Punto ECU and eveyrthig worked fine and it gaves reading exactly the same as the dials. Something like this should appear:

Data_logging_Screen.JPG

5. To start data logging go to Tab "Logging", the choose on like this:

Select_data_logging.JPG

6. This will create a spreadsheet automatically which will log all the data, am not sure what the lag time between measurements but for out purposes I don't think it matters that much.

Error Logging

This is the slightly diffcult bit, as I didn't have a great undestanding on 8 bit binary! But thanksfully Neil (barnacle), takinhg his time and explaining me how to translate the code to locate what sensor is at fault.

You must enable data logging to store the error, in the spread sheet there are 3 Error column:

  1. Error 1 Column - Input sensor
  2. Error 2 Column - Output Acuator
  3. Error 3 Column - System error

Here is the list of sensors for each error column:

Error_Codes.jpg

I have done some testing on this, I have got the car running and unplugged the charcoal canister. The engine management light came up, and the program logged an error 16 in column 2 - output actuator.

So how do we go from 16 to charcoal canister error ?

This is where the binary problem comes in:

128 64 32 16 8 4 2 1
0 0 0 1 0 0 0 0

So binary for 16 = 00010000 (loads of converter online to do this)

Going back to the error chart i posted, you see 80 40 20 10 08 04 02 01. Really ignore those place the 00010000 in there and the one that has a 1 is the error you are after:

So if you count the fouth error from the left under error 2 output actuator, you should come to charcoal canister error.

Hope this bit makes sense, as I have spent alot of time asking Neil about this and this is the understand i got from it. I could upload the spreadsheet i got from the data logging, but not sure where to upload to on FF?

All credit goes to Neil Barnacle for taking his time guiding me through it and explaining every little details to decoding the ECU error ! Really appreaciate for his time!

More Information from Neil (Barnacle)

The only comments I'd make on the write up are (a) that you need to clarify that startrek-punto only works on SPI fire engines - basically, punto, 500, 600, Lancia Y from memory. They're listed in the drop down, I think - they all run the same software. And (b) you should really ensure that there is a ground reference between the power (red lead) and the car. There's an earth in the three-pin connector, but ideally the red lead should come off the car battery; otherwise, you can find that you get poor data reliability.


Hope this helps
Ming