View Single Post
Old 08-11-2010, 06:10 AM   #555 (permalink)
eimix
EcoModding Lurker
 
Join Date: Aug 2010
Location: Lithuania
Posts: 74
Thanks: 3
Thanked 21 Times in 15 Posts
Cool ISO with MCZ33290EFR2 failing on VW Jetta 2001

Hello,

I found your intresting project- i build it with Arduino 2009, and Obduino32K last available v165 on LCD is shown.

But I have problems while initializing ISO - i tried ISO_9141, ISO_14230_fast and ISO_14230_slow - all fails

I measured voltages - comucation is going on, tx/rx is working
I modified Obduino32K and now it displays last ISO_InitStep with "Failled!" message.
And i found that ISO_9141 init process fails at step 9.

After that I tested it with VAG-COM cable and it tests if ISO_9141is working, I see it sending 0X33, and then displays:
hxxp://sos.teja.lt/~eimix/misc/ecommoder/obd_test_complete.JPG
and 0x0808 is received as response

But in Obduino32K source code is expecting:

Code:
        byte b;
        iso_read_byte(&b);  // read kw1
        iso_read_byte(&b);  // read kw2
        
        // send ~kw2 (invert of last keyword)
        iso_write_byte(~b);

        // ECU answer by 0xCC (~0x33)
        iso_read_byte(&b);
        if(b == 0xCC)
        {
           ECUconnection = true;
           // update for correct delta time in trip calculations.
           old_time = millis();
        }
        ISO_InitStep = 0;
Do i missunderstand or my car is responding not what is expected?

Edit: I modified OBDuino32K a bit more and found out:

iso_read_byte(&b); // read kw1
reads: 0x08

iso_read_byte(&b); // read kw2
reads: 0x08

// send ~kw2 (invert of last keyword)
iso_write_byte(~b);
writes: 0xF7 as ~0x08 == 0xF7

// ECU answer by 0xCC (~0x33)
iso_read_byte(&b);
reads: 0x08

i tried replace last read with:
bool b_read;
b_read = iso_read_byte(&b);
and i get b_read = false how could this be?

What could be wrong?

Thank you help.

Last edited by eimix; 08-11-2010 at 08:49 AM.. Reason: Update
  Reply With Quote