MLEC hack?

Startet av Warlock, I går kl. 22:20

« forrige - neste »

Warlock

Som nevnt i en tidligere tråd ( https://elbilforum.no/index.php?topic=44158.msg1178602#msg1178602 ) så skaffet jeg meg et helt ukjent MLEC-kort fra eBay. Hva det har vært brukt i/til vet jeg ikke. Det jeg derimot så var at det var litt forskjeller på det og de vi har i våre biler, blant annet manglet det litt komponenter etc.

Ukjent-kortet sente heller ingen meldinger på CAN-busen som er koplet til PCU på bilene våre, og var lite li om jeg prøvde ta kontakt. Men det trakk ca 170mA, så det var liv i det.

På forhånd ar jeg målt meg frem til at J3 på kortet er et programmeringsgrensesnitt. Så da var det vel bare å få tak i rett programmerer, og håpe på at koden som var lagt inn i chippen ikke var sikkerhetsbeskyttet.

Jeg kan nå informere om at det er den ikke :)

(Det er ikke så verst lite man kan få til med litt Gin og Tonic som støttespiller.)

Jeg har nå lest ut (det jeg håper) er hele flash-minnet fra et Think MLEC kort og lagt det over på ukjent-kortet (som forøvrig ser ut til å være laget i 2015). Det startet opp etter reprogrammering (hørte en tynn hvine-lyd fra det? usikker på om det er normalt) og koplet det til SavvyCAN.
SavvyCAN kunne gladelig fortelle om mange CAN-meldinger, og det ser ut som alle er der... (0x300-0x306, 0x30E, 0x30F, 0x610, 0x611, og 0x721-0x723)
var litt feilmeldinger, f.eks at den hverken fikk kontakt med PCU eller med noen RLECkort.. men det var nok ikke så veldig merkelig.

Nå gjenstår det å følge litt med på om noe blir varmt, og å teste det opp mot RLEC-kort og en PCU... (samt å rydde litt på pulten, den drukner)
Kanskje finnes det håp for å få tak i mange MLEC-kort?

Warlock

#1
Programmereren jeg brukte er en USBDM (tilfeldig kina-vare), og siden den varianten jeg hadde ikke leverte strøm til kretskortet selv, måtte jeg kople på dette direkte på kortet. Minnefilen jeg leste ut finner man her:
https://www.dropbox.com/scl/fi/9zt1rj9lrkpjgqbndqn8u/Stens-MLEC-fra-Think-memdump-256k-30-3D-med-blank.s19?rlkey=52y5mpiapkbmxyb2ik39xwovm&dl=0

Den legges inn med programmvaren "HCS12 Programmer" som følger med i USBDM-pakken (open source):
https://usbdm.sourceforge.io/USBDM_V4.12/html/index.html

Chippen som står på kortet er MC9S12DJ256CPVE:
https://www.mouser.com/datasheet/2/302/NXP_05312018_MC9S12DT256-1369387.pdf?srsltid=AfmBOoppy-L5RgTA3gYNl76w5GBVHCafJcIqW-XCX6QojlhRLI_wsacU


Gammeldags pinout-tegning av pinheader J3:


+----+----+-----+
|  2  |  4  |  6  |
|------|-----|------|
|  1  |  3  |  5  |
+----+----+-----+

Pin:
1   BKCD
2   GND
3   N/C?
4   /RESET
5   N/C?
6   VCC (+5V)

worry

Hei!
Dette er spennende Warlock. Selv om jeg ikke skjønner en dritt (foreløpig?).  ;D

Det er mulig at du allerede har kjennskap til det, men det må være generasjonsforskjeller også på de originale MLEC'ene til Think. Iom. at jeg nå har kjørt to forskjellige batterier i den røde, så er det lett å høre stor forskjell på hvordan releene klikker ved oppstart og stopp. Det ene er ferdig dobbelt så raskt som det andre.

Med denne metoden din for å hente ut programvaren, vil det si at du kan hente hex-fil fra PCU også?  Og det samme fra VCU? Jeg har en VCU liggende, hvor bilen bare døde. Ingen synlige feil på kortet i VCU'en. Kan det skje at den "mistet" programmet?
Think lithium

Warlock

#3
Forskjellen på MLEC-kortene kan ligge i software ja, men jeg ville heller tro det ligger i hvor fort den oppnår rett spenning utenfor bilen og den da lukker hovedreleene også (man hører først precharge-releet, og via precharge-motstanden lades alt på utsiden til 400V(ish)). Om man f.eks har flyttet precharge-motstanden ut, og satt inn en 100ohm motstand der istedet for den på 47ohm eller hva det er på hovedkortet vil det nødvendigvis ta dobbelt så lang tid. Kan også være andre ting som at det er noe som trekker ned igjen på utsiden, eller at softwaren i mlec-kortet bruker lengre tid på å finne ut av ting :)

I teorien kan man også lese ut programmet i PCU, men det kortet er nok langt mer avansert Det har dog pin-header for å snakke med en debugger/programmerer, så det er ennå ikke bevist umulig. Kanskje det blir nest ting å se på...
Det er en annen microprosessor og andre måter ting blir gjort på i PCUen, men i grove trekk er det _kanskje_ mulig å gjøre noe lignende. Men egentlig har vi vel det vi trenger av hex-filer til PCU (selv om flere hadde vært gøy å ha ;) )

VCUene dine leste jeg jo ut koden fra sist jeg var innom, og begge svarte meg jo, så alt ser ut til "å virke" der, selv om en boks ikke oppfører seg. Jeg tenkte litt på det i ettertid, og lurte på det samme som deg, nemlig at kanskje noen lagrede verdier hadde krøllet det til, litt som når gearspaken ikke skjønner kombinasjonen av hvilke brytere som er trykket inn og ikke. Da får den panikk, og noe lignende kan være i den VCUen din også, bare software-messig. Det kan være man kan prøve å legge inn de andre VCUens software og det vil løse problemet (og så må man programmere inn nøklene på nytt, eller flytte over/kopiere transponderen (ampullen) fra den andre bilen).
Hadde man bare hatt en testbenk oppe å kjøre kunne man lett funnet ut av slike ting (**Kremt kremt** Sten **kremt**)

Warlock

#4
Testet forøvrig om jeg fikk kontakt med microkontrolleren på kortet fra Hellegaard, men det ville ikke svare, så der er det nok en god del som ennå er galt (og som jeg ikke har funnet ut av ennå)

© 2026, Norsk elbilforening   |   Personvern, vilkår og informasjonskapsler (cookies)   |   Organisasjonsnummer: 982 352 428 MVA