Xiaomi 12T Pro firmware csere-bere

írta: st3v3np3t3r, 1 éve

MINDENEK ELŐTT AZ ITT LEÍRTAKAT MINDENKI KIZÁRÓLAG SAJÁT FELELŐSÉGÉRE VÉGEZZE EL! AZ ESETLEGES KÁROKÉRT,ADATVESZTÉSÉRT EGYES EGYEDÜL A FELHASZNÁLÓT TERHELI A FELELŐSSÉG!

Sziasztok! Igény volt a Xiaomi 12T Pro topikban, hogy szerkesszek erről a műveletsorról egy blogot, hogy hogyan lehet gyári firmware-t cserélni. Például adott egy tárgyalt eset a topikban. A 13.0.13.0 rendszerre nem lehet feltenni a 14.0.6.0-ot... a rendszerverzió ugyan frissebbnek látszik, ám a rendszer biztonsági javítása eltér... ami a 13.0.13.0 esetében újabb, mint amit a 14.0.6.0 tartalmaz. Mivel eltérés van, így a 13.0.13.0 nem frissíthető 14.0.6.0-ra. Na de ezt hogyan is lehet kiküszöbölni? Egy egyszerű downgrade-el, ami annyit tesz, hogy nem "fel"rissítjük, hanem kicsit butiítjuk, azaz visszateszünk egy korábbi rendszert, javaslatra a 13.0.11.0-át. Első körben pár fontos információ amit tudni kell a folyamathoz!

Mi az a bootloader?
A telefon azon része, ami a rendszer indításáért és integritásáért(biztonságáért) felel. Zárt bootloaderrel a készülékre nem lehet másik- vagy idegen szoftvert felölteni, ugyanis a zárt bootloader ezt megakadályozza, azaz csak olvasható módban tartja a fontosabb rendszer elemeket, amiket külső eszközzel nem lehet módosítani. A csere-beréhez ezt a bootloadert előbb ki kell nyiti, kivételt képez ez alól az OTA vagy a Recovery-s frissítés, amik hiteles tanusítványt tartalmaznak, hogy gyári kiadású,így a telefon ezeket mindenféle mókolás nélkül felteszik. Amennyiben a tanusítvány vagy a rendszerverzió eltér, a rendszer megtagadja a folyamat futtatását.

Mi az a FASTBOOT mód és hogyan tudom aktiválni?
Ez a Fastboot, a telefon azon rendszere, amin keresztül lehet csereberélni a telefonon futó rendszert, ezen keresztül lehet feltölteni a telefonra a firmware-t, amit futtat a telefon. Ez egy aknamező nagyon kezdő felhasználóknak, mert könnyen lehet vele papírnehezéket csinálni a telefonból is akár.

Hogyan tudom megállapítani a szoftver verzióját?
A Xiaomi kódokat használ a szoververziók megkülönböztetésére:
A kód felépítése
14.x.xx.xx.xxxxxxx A szoftver verzió a MIUI verziószámával kezdődik
14.x.xx.x.Txxxxxx A T az Android 13 rövid kódneve, Tiramisu, az Android 12 S-Snow Cone(jégkása)
14x.xx.x.TLFxxxx Az LF a készülék kódnevére utal, az LF jelen esetben a Xiaomi 12T Pro(bár számomra rejtély, hogy az LF honnan jött, mikor a kódneve diting)
14.x.xx.x.TLFEUxx Régiókód, EU EEA-Európai unió,MI-Globál,CN-Kína
14.x.xx.x.TLFEUXM Az XM azt jelöli,hogy nincs hálózati kötöttség
Infó

Jelen készüléknél(de van több is) nincs olyan korlátozás, mint mondjuk a Samsungok esetében, hogy egy bizonyos verziónál régebbit nem lehet visszarakni,mert a biztonsági házirend tiltja. Fastboot módszerrel visszarakható akára legelső szoftververzió kiadás is.

Amire szükésg lesz?
- telefon
- adatkábel
- számítógép(usb-porttal és windows-al)
- adb/fastboot csomag
- firmware* [link]
- Mi Unlock Tools [link]
- az alább leírtak

*Tévhitek elkerülése végett, minden firmware amit a https://bigota.d.miui.com/... szerverről töltesz le, az hivatalos MIUI rom, EU-s rom esetében EU-s, Global esetében MI-s szoftvert használjunk, ezt a szoftververzió tartalmazza: 14.x.xx.x.xxxEUxx vagy 13.x.xx.x.xxxMIxx, az első 2 szám a MIUI verzióra utal.

Bootloader feloldásának folyamata:
A folyamat már nem úgy megy mint régen, hogy elég volt egy utasítást kiadni(fastboot oem unlock), vagy ami utána volt, hogy egy generáltatott karaktersort kellet beírni a feloldó parancsba(fastboot oem unlock 0123456789abcdef), vagy mondjuk meg kellett adni az IMEI számot és generáltak egy fájlt amit fel kellett fastboot-on flashelni(fastboot oem unlock unlock.bin,ezt amúgy a HTC nagyon szerette használni)...Most,felhasználói fiókoz társítják a jogosultságot(jelen Xiaomi esetében!), a feloldó folyamat letölt egy fájlt, amit a feloldást engedélyező tanusítványt tartalmazza, ezt a program feltölti a telefonra, a folyamat végén meg törli a fájlt, amit 0123abcdef_sig.data néven ment le(, ami elvileg a feloldó program könytvárában tárolódik ideiglenesen.
1) Fel kell telepíteni a Mi Unlock Tools-t,a Minimal ADB/Fastboot csomagot(ezt tegyük fel jól megtalálható helyre) és a telefonon be kell kapcsolni az OEM feloldást
2) Fejlesztői beállításokban kapcsoljuk be az OEM feloldást és adjuk hozzá a Xiaomi fiókot a Bootloader ellenőrzőhöz

Itt 5ször klikkelj a MIUI verzióra

Ennél a lépésnél ki kell kapcsolni a wifit és legyen aktív net előfizetés a sim kártyádon,mert csak akkor működik,enélkül a feloldás nem fog működni!
3) Ezzel felkészítettük a telefont a bootloader kinyitásra
4) Készítsünk biztonsági mentést az adatinkról, mert feloldás után a készülék gyári visszaállítást csinál biztonsági okokból!
5) Indítsuk el a Unlock Tools-t,majd jelentkezzük be a Xiaomi fiók adatokkal

Belépés után elvégez egy jogosultság ellenőrzést

6) Indítsuk újra a telefont Fastboot módban Hangerő le gomb nyomvatartással, ha mindent jól csináltunk, akkor a képernyőn azt kell látni, hogy FASTBOOT

*Csak illusztráció
7) Csatlakoztasd a telefont a géphez,ha felismerte a fastbooton a telefont ez fogod látni

Itt is írja pirossal, hogy a feloldás törölni fogja az összes személyes adatot, továbbá kevésbé lesz biztnoságos, és egy figyelmeztő szöveg, hogy feloldás után a személyes adataid ellophatóak lehetnek vagy kiszivároghatnak(1), illetve a biztonsági funkciók le lesznek tiltva(2),/de ez minket most ne zavarjon,mert úgy is vissza lesz zárva a bootloader a folyamat végén/...itt klikk az Unlock-ra, majd jön még pár figyelmztető üzenet

Itt ugyan az a szöveg, mint az elején, hogy a feloldás minden személyes adatot töröl, ennek ellenére folytatjuk? Igen, Unlock anyway

Itt azt írja, hogy a feloldott eszköz könnyű célpont lesz a rosszinduatú programoknak amik anyagi kárt is okozhatnak,de ez még mindig nem érdekel minket jelenleg, Igen Unlock Anyway

Ha minden túl vagyunk, akkor ez a képernyő fog fogadni ami 2 irányt fog eredményezni. Az egyik az, hogy valószínű 168 órát azaz 7 naptári naptári kell várni a feloldás jóváhagyására(valószínű biztonsági okokból), vagy egyből feloldja a készüléket. A program minden indításkor belépési adatokat fog kérni, de felesleges próbálkozni, mert szerveren rögzítik az időt, így a gépen a naptár átállítás hasztalan próbálkozás.

Figyeljük a folymatot, ha végzett, automatikusan újraindul a telefon, itt készüljünk, hogy újra fastboot módban indítsuk a telefont! Ha megvan, akkor lehet továbblépni...

A terv: Xiaomi MIUI firmware feltelepítés fastbooton keresztül:
1) Legyen letöltve a feltenni kívánt rendszerverzió és legyen kicsomagolva
2) Keressük meg a Minimal ADB/Fastboot mappáját és ide másoljuk be
3) Flasheléshez használjuk a Flash_all_lock.bat fájlt, ez újratelepíti az összes fontosabb rendszerpartíciót, majd a művelet végén visszazárja a Bootloadert!

B terv: Xiaomi MIUI firmware feltelepítés Mi Flash Tools-al
1) Töltsük le a programot MiFlash Tools programot [link]
2) Csomagoljuk ki a már letöltött szoftvert valahova.
3) Indítsuk el a MIFlash Tools-t

ez egy nagyon egyszerű kis program, kezdőknek inkább ez ajánlott...
4) Ugyan úgy fastboot módban kell lennie a telefonnak, ha a listában ott szerepel a telefon, akkor jól ment minden
5) Select gombra kattintva tallózzuk be a szoftver helyét majd Flash, a program mindent elvégez magától

C terv: Általam módosított flash_all.bat és flash_all_except_storage.bat fájl fastboot-os rendszer flasheléshez
Előzmény: Próbálgatások közben, belefutottam egy hibába, ami a termék azonosításban van. Egy újabb verzió esetében az én 12T Pro-ra azt írja, hogy Mismatch product, azaz nem egyező eszköz-t jelent végső soron, a 12T Pro esetében, ez a diting kódnévre hallgat, a 12T pedig a plato. Így hát az eredeti scriptből kiszedtem ezt az ellenőrzést, továbbá, van egy úgymond antirollback ellenőrzés is, ami azt jelenti, hogy újabb rendszerre ne engedjen feltenni régebbi verziót(gondolom itt a biztonsági hibák kiaknázása miatt). ITT FONTOS MEGJEGYEZNEM, HOGY EZ A RÉGEBBI VERZIÓ FELTÖLTÉSE CSAK AKKOR MŰKÖDIK, HA GYÁRI VISSZAÁLLÍTÁSON ESETT ÁT A TELEFON!BELAKOTT RENDSZEREN NEM FOG MŰKÖDNI,TEHÁT A MŰVELET ELŐTT JAVASOLT A BIZTONSÁGI MENTÉS!

Ezt is kiszedtem belőle az antirollback ellenőrzést... A C tervhez nyitott bootloader szükséges! A script végére betettem egy kérdést, hogy visszazárja-e a bootloadert vagy ne. A fájlt, az eredeti struktúra alapján az /images könytárba kell másolni és a rendszeren jelen kell lennie a fastboot-nak, vagy ha nincs telepítve akkor az /images mappába kell másolni!...Itt a link a módosított flash_all.bat-hoz,a szövegezés magyar"os", csak ékezetes betűk nélkül,mert nem minden rendszeren jelenik meg parancssorban a magyar ékezetes betű. Nyitott bootloader esetén ezzel a scripttel telepíthető újra a komplett rendszer,flash után automatikus gyári vissaállítás megy végbe,ezt frissítésre senki se használja, a használt rendszer(például 14.0.13.0 EEA -ról 14.0.14.0 EEA-ra ezzel frissíthető(!flash_update.bat)... Az EEA az EU régiós rendszer, erre viszont figyelni kell, hogy a EU-ra nehogy véletlenül flasheljen valaki Global-ra kiadott rendszert fastboot-on keresztül, ennyiből jó, mert a verziószámok eltérnek), de ebben az esetben a Ne zárja vissza opciót kell választani, hogy ne zárja vissza a rendszert, ha ezt valaki eltéveszti, az visszazáráskor gyári visszaállítást csinál a telefon, tehát erre figyelni kell,de a script erre is figyelmeztet,tehát azonnal nem zárja vissza, csak második megerősítésre!
"A FASTBOOTOS FLASHELÉS/FRISSSÍTÉS CSAK NYITOTT BOOTLOADERREL MŰKÖDIK!"

Viszont! Akinek a valamilyen okból a Fastboot flash folyamat a super.img flashelékor hibába fut, az nem műveleti hiba, hanem a fastboot exe-ben van egy bug, ami megakadályozza valamiért ezt a folyamatot, de van rá javítás, a fastboot fájlokat ezzekkel kell lecserélni [link] és már menni is fog. Ha super.img flash közben megakad a folyamat, akkor a telefont újra kell indítani, ezt a bekapcsgomb 10másodpercig tartó benyomva tartással lehet megtenni.

Létrehoztam egy mappát a privát tárhelyemen, ahol a minimális alap programok letölthetőek.

Személyes tapasztalat: Mikor a bloghoz gyűjtöttem az képernyőképeket, belefutottam egy hibába, ami miatt kb. 1hónapnyi adatom veszett oda. Ez a hiba a MI Unlock folyamatban van. Kikapcsolt/letiltott OEM-feloldás mellett is kinyitotta a telefonom bootloaderét a MI Unlock program. Természetesen az észrevételt jeleztem a Xiaomi felé.
Xiaomi 12T(plato) fastboot rendszerfájlok
Xiaomi 12T Pro(diting) fastboot rendszerfájlok
Recovery vagy OTA képfájllal nem érdemes foglalkozni, mert vagy engedi telepíteni, vagy nem.

Az itt leírt folyamat használható egyedi szoftverek felöltésére is, csak akkor a bootloadert nyitva kell tartani.
Az egyedi rendszer használatáról alaposan utána kell olvasni, mit és hogyan kell csinálni, azok feltöltésére csak a fastbootot vagy ha már TWRP recovery-t lehet használni. De én ezzel a támával már nem szeretnék foglalkozni.

Ha hibát találsz, kérlek jelezd :)

Írta: st3v3np3t3r