Konfiguracja ECU, aktualizacja oprogramowania (flash) Ford Focus mk2

Niniejszy wpis będzie nieco dłuższy, ale pokrywa 2 tematy w 1:

  • zmiana konfiguracji sterownika silnika (typu numer VIN, rodzaj nadwozia, tempomat)
  • aktualizacja oprogramowania

Wszystko dla forda focusa mk2. Jest to przydatne po zmianie sterownika (jest on niefortunnie ułożony pod zderzakiem i lekkie stłuczki powodują, że musimy wymienić sterownik)

Na początek nieco wyjaśnień. Sterownik silnika zawiera pamięć nieulotną (flash), którą można przeprogramować. Dzieli się ona na 3 części:

struct

  • strategia – mózg komputera. Zawiera podstawowe zachowanie sterownika (analogia BIOSu w komputerach) oraz info, gdzie szukać dodatkowych rzeczy (ich adresy)
  • kalibracja – zawiera wartości informujące np. o czasach otwarcia wtrysku, czy tzw. mapę
  • VID-BLOCK – blok zawierający konfigurację – np. tempomat, rodzaj nadwozia itp

Niestety, aby móc zapisać zmiany w dowolnym z powyższych należy wykasować praktycznie całość (a dokładniej kalibrację i VID-block).

Zatem, aby zmienić konfigurację, musimy zapisać nowy firmware. Wyjątkiem jest klasyfikacja wtryskiwaczy.

Do przeprowadzenia całej operacji potrzebujemy aplikacji ELMConfig oraz kabla ELM327 (a najlepiej na układzie STN1170). Odradzam połączenie bluetooth – tylko po USB

1. Kodowanie klasyfikacji wtryskiwaczy

Odpalamy ELMConfig, wybieramy zakładkę PCM, procedures , page 1 i mamy opcje:

e29

Konfiguracja nie wymaga zmian w firmware – zmiany są widoczne od razu.

2. Odczyt VID-BLOCK

Wchodzimy w zakładkę PCM, Configuration i klikamy Read from PCM. Spowoduje to odczyt konfiguracji z pamięci flash sterownika.

e1

Otrzymamy dosyć istotny komunikat:

e2

Wszelkie operacje na pamięci flash muszą być stabilne. W związku z tym ELMConfig wyłączy wygaszacz ekranu, hibernację, a dodatkowo zablokuje mysz oraz klawiaturę – wszystko na czas pracy. Warto, aby komputer był wpięty do zasilania – nie tylko na baterii. Następnie program poprosi o wyłączenie zapłonu:

e3

odliczy 10 sekund:

e4

i poprosi o włączenie zapłonu:

e5

Następnie zablokuje mysz i klawiaturę i rozpocznie komunikację z ECU. Postęp będzie widoczny na ekranie – w postaci paska postępu. Uzyskamy następnie konfigurację:

e8

Konfigurację możemy zapisać do pliku (Save to file)

3. Zmiana VID-BLOCK

Wchodzimy w zakładkę PCM, Configuration i klikamy Read from PCM. Spowoduje to odczyt konfiguracji z pamięci flash sterownika.

e1

Otrzymamy dosyć istotny komunikat:

e2

Wszelkie operacje na pamięci flash muszą być stabilne. W związku z tym ELMConfig wyłączy wygaszacz ekranu, hibernację, a dodatkowo zablokuje mysz oraz klawiaturę – wszystko na czas pracy. Warto, aby komputer był wpięty do zasilania – nie tylko na baterii. Następnie program poprosi o wyłączenie zapłonu:

e3

odliczy 10 sekund:

e4

i poprosi o włączenie zapłonu:

e5

Następnie zablokuje mysz i klawiaturę i rozpocznie komunikację z ECU. Postęp będzie widoczny na ekranie – w postaci paska postępu.


Jeżeli uzyskamy taki komunikat:

e6

to oznacza, że możemy zapisać nową konfigurację. Wpisujemy odpowiednie wartości (lub wczytujemy z pliku -> Load from file) i zapisujemy klikając Write to PCM. Potwierdzamy:

e9

A następnie (jak wcześniej) wyłączamy i włączamy zapłon na żądanie i po niecałej minucie uzyskujemy komunikat:

e12


W przypadku, gdyby nie pojawił się komunikat:

e6

to oznacza, że musimy wyczyścić VID-BLOCK przed zapisem – wymaga to wyczyszczenia też kalibracji i wgrania nowej. Przy próbie zapisu uzyskamy teraz komunikat:

e13

 

4. Odczyt aktualnego firmware

Wchodzimy w zakładkę PCM, Procedures, Page 2 i klikamy Read firmware form PCM to BIN-file. Spowoduje to odczyt zawartości pamięci sterownka.

e14

Warto zaznaczyć 'Read calibration data only’. Skróci to czas odczytu z 3 minut do 1.

Otrzymamy dosyć istotny komunikat:

e2

Wszelkie operacje na pamięci flash muszą być stabilne. W związku z tym ELMConfig wyłączy wygaszacz ekranu, hibernację, a dodatkowo zablokuje mysz oraz klawiaturę – wszystko na czas pracy. Warto, aby komputer był wpięty do zasilania – nie tylko na baterii. Następnie program poprosi o wybór pliku do zapisu

e15

a potem o wyłączenie zapłonu:

e3

odliczy 10 sekund i poprosi o włączenie zapłonu:

e5

Następnie zablokuje mysz i klawiaturę i rozpocznie komunikację z ECU. Postęp będzie widoczny na ekranie – w postaci paska postępu. Na koniec wyświetli komunikat:

e16

5. Zapis firmware

Wchodzimy w zakładkę PCM, Procedures, Page 2 i klikamy Load firmware from PHF/HEX/BIN file. Spowoduje to odczyt zawartości pamięci sterownka z pliku.

e17

Po odczytaniu pliku uzupełnią się informacje o jego zawartości. Zapis wykonamy poprzez wybór Write current firmware to PCM.

Program może nas zapytać o 2 rzeczy:

Przy ładowaniu pliku firmware z dysku:

e19

Wybór tak spowoduje, że aplikacja odczyta konfigurację z pliku i ustawi ją w osobnej zakładce (zakładka opisana w akapicie Odczyt VID-block).

Przy zapisie do sterownika:

e18

Wybór 'Tak’ spodowuje, że zostanie od razu zapisana zawartość z osobnej zakładki konfiguracji (czyli aktualnie ustawiony vid-block – zakładka opisana w akapicie Odczyt VID-block). Program podmieni konfigurację z pliku i wstawi aktualnie wybraną. Ja osobiście wybieram opcję Nie, a konfigurację wykonuję w osobnym kroku.

Po odpowiedzi na pytania otrzymamy dosyć istotny komunikat:

e2

Wszelkie operacje na pamięci flash muszą być stabilne. W związku z tym ELMConfig wyłączy wygaszacz ekranu, hibernację, a dodatkowo zablokuje mysz oraz klawiaturę – wszystko na czas pracy. Warto, aby komputer był wpięty do zasilania – nie tylko na baterii. Następnie program poprosi o wybór pliku do zapisu

e15

a potem o wyłączenie zapłonu:

e3

odliczy 10 sekund i poprosi o włączenie zapłonu:

e5

Następnie zablokuje mysz i klawiaturę i rozpocznie komunikację z ECU. Postęp będzie widoczny na ekranie – w postaci paska postępu. Na koniec wyświetli komunikat:

e20

Podsumowanie

Aby zmienić konfigurację sterownika, trzeba go przeprogramować – skasować pamięć, wgrać nową kalibrację i vid-block. Do tego musimy wykonać kroki 4 + 5 + (zależnie od odpowiedzi na pytanie w kroku 4) 3. Możemy też ściągnąć nową kalibrację ze strony ELMconfig i pominąć krok 4.

Warto zawsze odczytać aktualny firmware, konfigurację sterownika i informację o nim.

Zapis firmware zawsze wiąże się z ryzykiem, że sterownik ulegnie uszkodzeniu i przestanie reagować. Nie biorę odpowiedzialności za żadne straty wynikłe z niniejszego wpisu.

Do aktualizacji najlepiej użyć dobrego kabla ELM327 – albo na chipie STN1170 (STN jest kilkukrotnie szybszy).