• Jeśli chcesz dodać swojej Alfie charakteru i jednocześnie zaznaczyć przynależność do naszej społeczności – to dobry moment, żeby je zamówić.

    Ramki Alfaholicy

    Szczegóły, zdjęcia oraz informacje o zamówieniu znajdziesz tutaj.

    Nie czekaj, bo jak zwykle schodzą szybko.

[Giulietta] odczyt eepromu z klimatronika.

bubu321

Nowy
Rejestracja
Wrz 1, 2007
Postów
6,823
Lokalizacja
Wrocław
Auto
G 1.4 MA 170CV ECU Nexus 8GMF
- na jednym z włoskich for autor podał jak odczytać zawartość eepromu, bazując na komendach podawanych przez WiTech podczas aktualizacji eepromu klimatronika.
- podawane kody przez WiTech podczas odczytu eepromu były logowane a potem zapisane.
- aktualizacja była robiona na klimatroniku z firmy Magneti Marelli. (chyba wszystkie sterowniki klimatyzacji są z tej firmy)
- na początek oryginalny eeprom z klimy od JTD.
- jak widać wersja oprogramowania była 4600000620.
- po podłączeniu skanera CAN oraz podaniu kodów sterujących na sterownik klimatyzacji (adres 0x98) otrzymano poniższe dane.
- można tylko odczytywać po 32 bajty.
- adres 0x00 - 0x1f

STANDARD 7C0h 8.. 33 03 50 F5 E0 02 28 44
STANDARD 7C0h 8.. 33 23 51 F1 E0 --> 01 99 09
STANDARD 7C0h 8.. 20 11 10 13 01 99 09 20
STANDARD 7C0h 8.. 11 10 13 01 99 05 20 <--05
STANDARD 7C0h 2.. 90 44

STANDARD 7C0h 8.. 33 03 50 F5 E0 02 28 44
STANDARD 7C0h 8.. 33 23 51 F1 E0 --> 01 99 09
STANDARD 7C0h 8.. 20 11 10 13 01 99 09 20
STANDARD 7C0h 8.. 11 10 13 01 99 05 20 <--05
STANDARD 7C0h 2.. 90 44
- poniżej tutaj adres 0x20 - 0x3F
STANDARD 7C0h 8.. 33 03 50 F5 E0 02 28 44
STANDARD 7C0h 8.. 33 23 51 F1 E0 -->99 04 20
STANDARD 7C0h 8.. 11 10 13 E1 1D 00 00 12
STANDARD 7C0h 8.. 01 34 36 99 05 30 36 32
STANDARD 7C0h 7.. 30 99 09 20 <--07 1C 44

STANDARD 7C0h 8.. 33 03 50 F5 E0 02 28 44
STANDARD 7C0h 8.. 33 23 51 F1 E0 -->99 04 20
STANDARD 7C0h 8.. 11 10 13 E1 1D 00 00 12
STANDARD 7C0h 8.. 01 34 36 99 05 30 36 32
STANDARD 7C0h 7.. 30 99 09 20 <--07 1C 44
- teraz tylko Arduino, moduł CAN-bus trochę oprogramowania i można ściagać oprogramowanie zaktualizowane i wgrywać na auta po gwarancji.
- strzałkami zaznaczyłem dane otrzymane z modułu klimatronika.
- czasami występuje taki zapis 99 04 20, to znaczy że mamy 4 znaki o kodzie 0x20 hex.
- na koncu za strzałkami jest suma kontrolna dwa bajty i marker konca transmisji, czyli 0x44.

- analizujemy wydruk 0 do 0x1f.
- mamy kolejno 01, potem 9 znakow o kodzie 0x20, 11, 10, 13, 01, kolejno 9 znakow o kodzie 0x20, 11, 10, 13, 01, kolejno 5 znaków o kodzie 0x20.
 

Załączniki

  • 95080-0.rar
    95080-0.rar
    539 bajtów · Wyświetleń: 62
  • eeprom-klima.jpg
    eeprom-klima.jpg
    45.4 KB · Wyświetleń: 166
Ostatnia edycja:
mito ma klimatyzację od Denso, Brera od Delphi, giulietta od Marelli.... W giuliettcie wiecej jest od Magneti Marelli : licznik, Blue&Me, body, ECU, klimatyzacja.... czyli tą metodą mogę np. odczytać zawartość eepromu w body jak ktoś udostępni program do odczytu po CAN....
 
taki program do odczytu po CAN, to tylko trochę linijek kodu , ściągnietego z sieci...
fakt że taki krótki program wszystko robi na piechotę, poniżej pytanie do ECU (0x33) o PID 0x0c, czyli pytamy 0x18DB33F1 o RPM auta....
ECU (0x10) 18DAF110 odpowiada 04, 41, 0c, 00, 00,,,,,czyli PID 0x0c (12) ma obecnie wartość 0 obr/min....

--Sniffer car ECU -----------
ADDR --- LN MO PI D0 D1 D2 D3 D4
-------- -- -- -- -- -- -- -- --
0a18a001 03 00 84 5a 00 00 00 40-
0618a001 ec 00 00 00 42 43 00 00-
0a1ca001 00 0f ff 03 00 12 00 00-
0628a001 00 24 e0 80 00 20 00 00-
0618a001 ec 00 00 00 42 43 00 00-
0628a001 00 24 e0 80 00 20 00 00-
0618a001 ec 00 00 00 42 43 00 00-
0628a001 00 24 e0 80 00 20 00 00-

18DAF110 04 41 0C 00 00 00 00 00
18DB33F1 02 01 0C 00 00 00 00 00

void setup()
{
Serial.begin(115200);
// init can bus, baudrate: 500k
if(CAN.begin(CAN_500KBPS) ==CAN_OK) Serial.print("can init ok!!\r\n");
else Serial.print("Can init fail!!\r\n");
}

unsigned char stmp[8] = {2, 1, 12, 0, 0, 0, 0, 0};
void loop()
{
// send data: id = 0x00, standard flame, data len = 8, stmp: data buf

CAN.sendMsgBuf(0x18DB33F1, 1, 8, stmp);
delay(100);
Serial.print(".");
 

Załączniki

  • car1.jpg
    car1.jpg
    58.9 KB · Wyświetleń: 163
Ostatnia edycja:
@euroscan
- albo ten twój sniffer przekłamuje albo wklejałeś wyniki.
18DAF110 04 41 0C 00 00 00 00 00
18DB33F1 02 01 0C 00 00 00 00 00
- zawsze jest tak, że diagnosta F1 pyta się ECU 33 o jakiś parametr czy jest obsługiwany.
- jeśli parametr jest obsługiwany wtedy komputer 10 odpowiada parametrami.
- czyli sekwencja pytania powina być taka:

1. - 18DB33F1 02 01 0C 00 00 00 00 00

2. - 18DAF110 04 41 0C 00 00 00 00 00
- też szukam programu nie OBD tylko do odczytu wszystkich kodów z ECU.
 
- kilka adresów dla odczytu PID
OBD-request ID
11 bit functional: 0x7DF, psysical: 0x7E0
29 bit functional: 0x18DB33F1, psysical: 0x18DA10F1
OBD-response
11 bit ECU1: 0x7E8, ECU2: 0x7E9, ECU3: 0x7EA
29 bit ECU1: 0x18DAF110, ECU2: 0x18DAF118, ECU3: 0x18DAF128
-
 

Załączniki

  • CAN-do.jpg
    CAN-do.jpg
    40.3 KB · Wyświetleń: 186
- próba odczytu z BSI.
- można dodać dekodowanie CODE, VIN i mamy juz zastosowanie programu.
 

Załączniki

  • 1026.jpg
    1026.jpg
    70.8 KB · Wyświetleń: 182
- mam problemy z odczytem eepromu z klimatronika, podczas odczytu następuje zrywanie transmisji.
- za to z BSI odczytuje cały eeprom bez problemu.
- program napisany w Java, widać nakładkę graficzną Processing 2.11 w tle.
 

Załączniki

  • eeprom-read-1.jpg
    eeprom-read-1.jpg
    107.6 KB · Wyświetleń: 198
Ostatnia edycja:
- problemy z klimatronikiem usunięte, program czyta dane z eepromu bez zrywania transmisji.
- widać że wersja oprogramowania to Sw 4600000620, wersja Sw 0112.
- VIN sie nie wyświetla dla klimatronika, jeszcze tylko CODE się oblicza z zawartości eepromu.
 

Załączniki

  • klima.jpg
    klima.jpg
    61.3 KB · Wyświetleń: 130
  • klima1.jpg
    klima1.jpg
    73.5 KB · Wyświetleń: 136
  • klima2.jpg
    klima2.jpg
    75.3 KB · Wyświetleń: 150
Amortyzatory
Powrót
Góra