2017. január 29., vasárnap

ECU #5

Szórakoztam kicsit az alvázszámmal (VIN). Átírtam OP-COM-ban és kiolvastam MPPS-el. Egy érdekes dolgot fedeztem fel, bár a jelentősége nem túl nagy. Ha akár 1 karakter is megváltozik az alvázszámban, akkor az azt tartalmazó teljes blokkot áthelyezi egy másik helyre. Ha előtte a 0x4000-en (16384) volt, akkor 0x6000-re (24576), ha pedig fordítva, akkor fordítva. Ezért is lehet két különböző helyen a biztonsági kód, mivel az is ebben a blokkban van.
Másik érdekesség, hogy ugyanezen blokk mögé 122 bájtos szekvenciákat illeszt, ha hosszabban megy az autó. Jobb ötletem nincs, minthogy itt tárolhatja a módosító értékeket a befecskendezéshez, de a 122-ből csak nagyjából 10 bájt, ami úgy tűnik, hogy változik adott binárison belül. A többi érték azonos, de más binárisokban az is eltérő. Annyira nem lényeges most, túl sok időt nem szántam rá.

Írás
Túl voltam tehát az első írási műveleten. Igaz, hogy csak egy korábban lementett binárist írtam vissza, de mégis fontos lépés volt. Jöhettek a továbbiak. Továbbra is kis lépésekben haladtam. Fogtam a 1317a térképet (ez az első a második részben) és a 09391263 BA-ban lévő értékekkel írtam felül. Alig van eltérés az 12210453 EB-hez képest, mindössze 13 érték változott, és azok sem jelentősen. Felírtam, de nem működött. Az autó nem indult el és ezt a hibát dobta:
P0601 - Internal Control Module Memory Checksum Error
Ez az aggodalmam már a kezdetektől fogva megvolt. Létezik egy ellenrző összeg (checksum), ami a binárisban el van rejtve valahol és azt a célt szolgálja, hogy illetéktelenül vagy véletlenül ne lehessen módosítani a programot. A számításának módja és az értéknek a pontos helye motorvezérlő függő. Z22SE-hez ezzel kapcsolatban semmilyen további információ nem található.
Az MPPS figyelmeztet, hogy korrigálni kell a checksum-ot az írás előtt, és erre a programban van is egy gomb. Be kell adni az eredeti fájlt és az újat, de azt mondja nem találja. WinOLS szintén kínál checksum korrekciót, de azzal sem sikerült eredményt elérnem. Ha nem tudtam volna checksum-ot generálni, akkor az egész projekt meg lett volna lőve. Legalábbis lényegesen lelassult volna. Aztán eszembe jutott a KESS. Annyira nem volt régen, hogy használtam, de a kezdeti 3 kiolvasáson kívül minden mást az MPPS-el csináltam. A KESS leírásában rémlett, hogy szerepelt az automatikus checksum korrekció, de írni bármit lehet. Az eredeti fájl itt is szükséges volt, és nagy megkönnyebbülésemre valóban felírta rendesen. Nem dobott hibát és indult az autó is.
Nem voltam rest, rögtön visszaolvastam az egészet. Összehasonlítva a módosítás előttivel egyetlen különbség látható. A 0x8000 és 0x8001 (32768,32769) helyeken változott csak. Ez a kettő lesz a cheksum:


A KESS jókor mentett, mert, ha ezt nem tudta volna biztosan visszaküldöm. A checksum-ra majd még visszatérek kicsit később.

Klónozás
A korábbi grafikonok azt mutatták, hogy az eredeti ECU passzol a legjobban az autóhoz. Mindenképpen vissza akartam térni erre, mert ez adja a legjobb alapot. Fogtam hát a 09391263 BA-ról lementett teljes programot és felírtam a 12210453 EB ECU-jára. Itt legalább annyira izgultam, mint az első írásnál, mert ha külön azonosítójuk van, akkor lehetséges, hogy a hardver is különbözik valamennyire és ahhoz akár más program is kellhet. De nem volt gond. Ehhez még a KESS sem kellett. Felment rendben és működött is minden, ahogy kell. Megfordult a fejemben, hogy az egész immo-s szenvedést meg lehetett volna spórolni ezzel a 10 perces írással, de ebben azért nem vagyok teljesen biztos. Főleg amiatt, amit az alvázszámról is írtam. Mintha nem mindent ebben a progiban tárolna az ECU. A lényeg viszont az, hogy valószínűleg minden Z22SE progi használható a többi hardverben is.

Speedster
Már az elejétől azt a pillanatot vártam a legjobban, amikor eljutok odáig, hogy a Speedster-hez írt programot kipróbáljam. Az összehasonlító táblázat alapján jelentős változásokra lehetett számítani. Ez meg is lett, de nem úgy ahogy vártam.
A 09391263 BA és a 12202073 BZ bináris közt a második szekciótól hátrafelé 99%-ban a második részben vannak az eltérések, és csak alig néhány dolog a harmadik részben. Ennek ellenére nem akartam kockázatni csak a térképek átírásával, ami amúgy is macerásabb lett volna, hanem fogtam 0x8000-től (32768) a 12202073 BZ programot és betettem a 09391263 BA megfelelő helyére. Az írás ismét gond nélkül ment MPPS-el.
Írás után elmentem a szokásos tesztkörre, de reményeim hamar szertefoszlottak, az út felénél pedig alig vártam, hogy hazaérjek. Nemhogy javult volna, hanem érezhetően romlott. Olyan volt mintha a gázpedál sokkal érzéketlenebb lenne, és ennek megfelelően sokkal kevésbé reszponzív az autó is. Igazából erőtlen volt, alig akart menni és 3000 körül többször is teljesen befulladt. Nem erőltettem nagyon a dolgokat, de egyszer elforgattam, hogy legyen a felső tartományból is adat. Ott már érezhetően erőre kapott, de az is lehet, hogy csak az aljához képest tűnt jónak.
Elkészítettem a korábbi grafikonokat. Érdemes összenézni a többivel.
A fuel trim értékek zavarosabbak, mint a másik három együtvéve.

Kopogás tekintetében talán egy fokkal jobb, mint az STO, de ugyanúgy messze elmarad az eredetitől. Az is lehet, hogy csak azért nem rosszabb, mert annyira nem erőltettem a menetet.

Az EGR a legfurcsább az egészben. Míg a másik 3 nagyjából egyforma volt, ez sokkal másabb képet mutat. A korábbiak nem mentek 60%-os nyitás fölé, ez viszont többször belecsíp a 100%-ba is.

Az EGR változásának végülis örülök, talán könnyítheti a térkép megtalálását.

Mindent összevetve eléggé kételkedem, hogy ez valóban a gyári Speedster program lenne. Mechanikusan a motorok közt nincs lényeges különbség. Nem tudom elképzelni, hogy ez abban az autóban az elvárásoknak megfelelően működne.

Nincsenek megjegyzések:

Megjegyzés küldése