2017. január 22., vasárnap

ECU #4

Rendkívül meglepődtem, amikor a rendeléstől számítva alig több, mint két héttel és a várt szállítási idő előtt szintén két héttel már meg is érkezett az MPPS. Itt a mellékelt szoftverrel semmilyen probléma nem volt. Feltelepítettem, működött. Mivel az egész cucc csak egy darab kábel, sokkal kényelmesebb használni, mint a KESS-t. Első alkalommal arra voltam kíváncsi, hogy pontosan ugyanazt olvassa-e ki, mint a KESS. Persze azon felül, hogy képes-e egyáltalán olvasni. Tökéletesen működik. Nagyjából ugyanazt a negyed órás olvasási időt hozza, mint a KESS, és a kiolvasott bináris is egyezik a korábbival. Nehéz lett volna az ellenkezőjét elképzelni, de úgy voltam vele inkább leellenőrzöm, minthogy később ezen kezdjek el rágódni egy esetleges probléma kapcsán. Egy apró kellemetlenség kötődik csak az MPPS használatához. Olvasás után mindig bejegyez 4 hibakódot:
P0602 - Control Module Programming Error
P0606 - Powertrain Control Module Processor Fault
P1681 - TPS Monitoring Fault (Throttle Position Sensor)
P0607 - Electronic Throttle Control Motor Failure
Mindegyik "Not present" státuszú így könnyedén törölhető.

Immo
Mindkét újonnan beszerzett ECU-t az immo karikával és a kulcsba való chip-el együtt kaptam. Az immo vezérlőjét legjobb tudomásom szerint csak úgy lehet kicserélni, ha kivesszük a gyújtáskapcsoló zárbetétjét. Mivel ezelőtt erre még soha nem volt erre szükségem nem is csináltam korábban, de nem is nagyon akartam most elkezdeni. A célom az volt, hogy az eredeti ECU-t probléma esetén a legegyszerűben vissza lehessen tenni, ebbe pedig nem fér bele a kormányburkolattal, gyújtáskapcsolóval és immo-vel való pepecselés. A tesztkörökre az bizonyult a legegyszerűbbnek, hogy csak simán lehúzom a csatit a vezérlőről és az ECU-hoz tartozót hagyom lógni a vezeték végén. Hosszabb távon ez nem túl esztétikus és nem is igazán praktikus. Idővel a vezetétek is elfáradhatnak, kidörzsölődhetnek és a chip is elmozdulhat. Ez utóbbi történt az 12210453 EB tesztkörén, amit a korábbi posztban említettem. Természetesen van megoldás, de ilyet sem csináltam még azelőtt.

OP-COM-al elvégezhető az ECU és az immo párosítása. A művelet ebben a dokumentumban le van írva és nem is tűnik bonyolultnak, mégis sikerült egy kis kerülőutat beiktatnom a megoldás felé.
Az elmélet röviden a következő:
 - végy egy reset-elt ECU-t, vagy reset-eld a régi helyén (régi immo-val),
 - add meg a biztonsági kódot,
 - párosítsd össze az immo-t és az ECU-t.

A reset-et jelen esetben az OP-COM megfelelő funkciójával lehet végrehajtani. Ilyenkor elvileg elfelejti a hozzá tartozó immo beállításokat. Autótól függ, hogy immo párosítás nélkül az autó elindul-e vagy sem, esetleg csak korlátozott ideig (pl: 10 indítás). A helyzetet bonyolítja, hogy az ECU reset funkció elérhető az "Engine/Z22SE/Programming" és a "Body/Immobiliser II/Special Functions" menüben is. Bár az is elképzelhető, hogy a két funkció nem teljesen azonos, mert csak az utóbbinál említi, hogy az autó nem fog elindulni a reset után.

Arról nem tesz említést, ami ugyan nyilvánvaló, hogy ez csak az újabb párosításig érvényes, mégis így rendesen meggondolja az ember akar-e kattintani.

A biztonsági kód sem az eredeti ECU-hoz, sem a tartalékhoz nem állt rendelkezésemre, de erre a problémára már más megtalálta a megoldást előttem. A kód a binárisból bármilyen bűvészkedés nélkül kiolvasható a 0x40aa vagy a 0x60aa címen. Ekkor még ugyan nem volt számomra egyértelmű, de csak egy biztonsági kód van, és nincs az immo számára külön mégegy.

Hiába volt már az eredeti ECU egy dobozban teljes biztonságban, némileg tartottam a művelettől, mert ha az immo-t elállítom, akkor se így se úgy nem fog működni az autó. Egy próbával kezdtem. A tartalék ECU-t reset-eltem és visszapárosítottam a saját immo-jához. Az OP-COM válaszüzenetei néha eléggé szűkszavúak, így valójában nem tudom, hogy a művelet tényleg végrahajtódott-e vagy csak sikertelen lett és ezért működött minden ezután. A következő lépésben pedig hibát vétettem. Átdugtam az eredeti immo-t, és azzal próbáltam meg újra reset-elni, de ez nem sikerült. Azzal a ténnyel szembesültem, hogy az Immobiliser II menüben hiába írom be a jó biztonsági kódot, amikor elkezdené a reset-et, akkor rossz kód hibaüzenettel félbehagyja, mivel ebben a helyzetben két élő biztonsági kód létezik. Egy az immo-hoz és egy az ECU-hoz, így lehetetlen végrehajtani a műveletet. Abban a pillanatban nem tudatosult bennem, hogy valahol hibáztam, ezért keresni kezdtem a lehetséges megoldásokat. Átállítottam az alvázszámot (VIN), és a Mechanical Key Number-t is (aminek pontos célját most sem ismerem). Nem segített. Akkor valahogy teljesen logikusnak tűnt egy olyan gondolatmenet is, hogy mégsem az ECU-t párosítom az immo-hoz (Engine Controller installed), hanem fordítva (Immobilizer installed). A sok próbálkozás után eljutottam oda, hogy már egyik immoval sem indult az autó. Ezt végül sikerült valahogy visszacsinálni, de elegem lett a dologból és a további ténykedéseket elhalasztottam másnapra, hogy tiszta fejjel át tudjam addig gondolni az egészet.

Másnap minden világosnak és egyértelműnek tűnt. Újra kezdtem volna a reset-el, de azt írta, hogy a "Security Wait Time Active", várjak.

Először le sem esett mi ez az üzenet, így próbálgattam tovább, de ugyanaz. Utána eszembe jutott, hogy olvastam róla a fenti doksiban. Ha többször hibás kódot írunk be, akkor letilt az ECU először csak kis időre, majd folyamatosan hosszabbra. Azt még csak véletlenül sem írja ki, hogy mennyit is kellene várni, és az ilyen témájú neten talált bejegyzések arról szólnak, hogy csak úgy telik az idő, ha közben a gyújtás rajta van. Bármilyen zavaró tényezőre újra kezdi. A maximális idő több, mint 21 óra. Az egész helyzettel kapcsolatban azonban több dolog is furcsa volt. Az egyik, hogy tudtam, hogy nem írtam be rossz kódot sokszor, csak előző nap 1-2-szer, amikor az eredeti immohoz írtam a tartalék ECU kódját és fordítva, de azokat mindig követte a helyes kód is, aminek elvileg nulláznia kellene a számlálókat. A másik, hogy indult az autó. A harmadik pedig, hogy a "Measuring Blocks" menüben "Inactive"-ként szerepelt ez a paraméter.

Próbáltam várni gyújtáson, akkusarut levenni és várni, de nem segített. Tanácstalanságomban fogtam a korábban lementett binárist és visszaírtam, az MPPS-el. Ez volt az első írás művelet, így már duplán izgultam, de minden rendben volt vele. Az MPPS tehát nem csak olvasni, de írni is képes. Hurrá. Resetelni viszont ezután sem tudtam. Hosszas rágódás után nagy nehezen sikerült mégis megfejtenem, hogy az előző nap átírt alvázszám (VIN) okozta a problémát. Ez valamiért a teljes program újraírásával sem íródott felül. Vagyis inkább úgy tűnik máshol is tárolódik, mert az OP-COM (és az MPPS) nem a binárisban lévő alvázszámot jeleníti meg.
Reset után párosítás és minden működött. Régi immo az új ECU-val.

Térképek
Az elmúlt idők eseményi mellett folyamatosan nézegettem a binárisokat és próbáltam összegyűjteni a lehetséges térképeket. Olyannyira jól ment, hogy összesen 110-et találtam belőlük. Gondoltam, hogy sok lesz, de ennyire nem számítottam. Az persze egyáltalán nem biztos, hogy mind valóban térkép és az is lehet (valószínű), hogy az összeset nem is találtam meg. Főként a kis méretűeket nehéz azonosítani. A keresést főleg az ECU #2-ben leírtak szerint végeztem. Az igazsághoz hozzátartozik, hogy az ECU-k közti eltérések nem merülnek ki a megtalált térképek közti különbségben. Van ahol teljesen rendszertelenül is látni akár 1-2 bájtnyi eltéréseket. Sajnos eddig nem találtam semmilyen hivatkozást vagy kapcsolódási pontot, ami a korábban említett egydimenziós számsorokat (pl: fordulatszámértékek) a térképekkel összekötné. Van tehát egy rakat értelmezés nélküli számhalmazom. Megkerestem ezt a 110 térképet az eredeti ECU binárisában, a tartalékéban, a chiptuningos binárisban és a Speedster-nek tulajdonítottban, majd összefogtam egy doksiban az egészet kiemelve az eltéréseket. Most már "csak" meg kell fejteni melyik mit csinál.
A chiptuning-os ECU binárisban bejegyzett adatai között a következők is megtalálhatóak: "(c)2008 www.sto-chiptuning.com". Ezért is hivatkoztam STO-ként az előző posztban is a képeknél erre az ECU-ra. A cég még ma is létezik, de a honlapjuk szerint Z22SE-hez nem árulnak programot. Nem kizárt, hogy egyedileg autóhoz igazították, bár továbbra is az a megérzésem, hogy nem erről van szó. A kiolvasott binárist egy beállított védelem miatt a WinOLS először nem engedte megnyitni, de hexeditorban ez könnyen orvosolató a "NOREAD" érték törlésével. Nem is igazán értem miért alkalmaznak ilyen gyenge szintű védelmet.

Nincsenek megjegyzések:

Megjegyzés küldése