[RECOVERY][Inoffiziell] TWRP für Galaxy A40 (SM-A405FN)

DerGraf1997

DerGraf1997

Experte
Threadstarter


TeamWin Recovery Project

TWRP ist ein Quelloffenes (Open-Source) Recovery Image, welches euch ermöglicht, System-Images, Modifikationen, Updates etc. auf das Gerät zu flashen und komplette System-Backups zu ziehen und wiederherzustellen.​

TWRP für das Samsung Galaxy A40:
Aktueller Status: Experimentell
Version: TWRP 3.3.1-0-0be03b3
Format: ODIN/TAR
Release notation: test-keys

Funktionierende Funktionen:
- System-Backup
- Flashen
- Terminal
- USB-MTP

Momentan funktioniert NICHT:
- Entschlüsseln der Datenpartition
- Backups der Datenpartition (weil Verschlüsselt)
- USB-OTG in der Recovery

Kleinere BUGS, die aber nicht weiter stören:
- Manchmal, in etwa 1/10 fällen, vibriert das Telefon nur und bootet ins System, anstatt ins Recovery
- Die Akkuanzeige stimmt nicht ganz. Sie zeigt ca. 10% weniger als den aktuellen Akkustand an
- Einstellungen werden zwischen Neustarts nicht gespeichert
- Helligkeit lässt sich im TWRP nicht ändern
- Nachdem TWRP sich aufgrund von Inaktivität gesperrt hat, ist das Display sehr dunkel
- Wenn man per MTP eine Datei auf das Telefon kopiert und dann während dem Kopiervorgang auf abbrechen klickt, stürtzt TWRP ab und startet neu


WIE FLASHEN?
Voraussetzungen:
- Root
- Gepatchtes vbmeta-Image (WICHTIG!) - Anleitung wird der root-Anleitung in Kürze hinzugefügt da in einem Abwasch zu machen
- Windows-PC (oder Windows-VM MIT DIREKTEM USB-PASSTHROUGH!)

Flashvorgang:
- Telefon in Downloadmodus booten
- Twrp_A40.tar in AP packen
- Start!
- A40_Multidisabler.zip flashen um zu verhindern, dass die Recovery nach dem ersten booten in diese direkt wieder überschrieben wird

Persönliche Erfahrungen
Bisher sehr stabil und funktioniert tadellos. Backups lassen sich erstellen, wenn man die Datenpartition abwählt. Zips lassen sich auch problemlos flashen. Im nächsten Schritt werde ich mich, sobald meine Klausuren fertig sind, mit GSIs beschäftigen (nicht den tollen Opels, sondern Generic System Images) - das würde evtl. AOSP oder LineageOS auf dem A40 ermöglichen.

Abschließende Worte
Der RIESIGE DANK geht an den XDA-User fahadali2315, der für mich den Device Tree gebaut hat und mich durch den ganzen kompilier-Prozess geführt hat. Er ist einer der Mitentwickler von TWRP fürs Galaxy A30, welches den gleichen SoC wie unser A40 besitzt. Außerdem ein DANK an den XDA-User tys0n, durch den ich fahadali2315 nicht kennen gelernt hätte, und der den root-Prozess für das Galaxy A40 mit entdeckt hat.

Update 22.09.19:
- MTP Fix für GSI ROMs
- Basierend auf neusten Kernel-Sources
- Data-Backup wurde behoben. Dies erfordert ein komplettes neuflashen der Stock-ROM mit ODIN. Dann dm-verity deaktivieren. Multidisabler zerschießt das Data-Backup.

Download:
Main Download 1 - hackedco.de Server (von mir gehostet)
Mirror 1 - OneDrive
Mirror 2 - AndroidFileHost

Multidisabler wurde ersetzt durch "Disable DMVerity&ForceEncrypt": StackPath

XDA Thread: [RECOVERY][UNOFFICIAL] TWRP for Galaxy A40
Quellcode: Fahadali2315/android_device_samsung_a40dd
Demo, da mich schon die ersten Zweifler erreicht haben:
 

Anhänge

Zuletzt bearbeitet:
M

Maxisterl

Neues Mitglied
Vielen Dank DerGraf1997!

Bei mir hat es funktioniert, auch ohne die Datei Multidisabler.zip zu flashen, da ich vom TWRP-Recovery aus nicht auf diese zugreifen kann:
- Datenpartition geht ja nicht, da verschlüsselt.
- Wenn ich die Datei ins Root-Verzeichnis kopiere, scheint der Vorgang erfolgreich abgeschlossen zu sein. Beim Start ins TWRP (oder auch normal ins System) ist sie jedoch wieder verschwunden. Ich verzweifle noch daran...

- Wo hast du die Datei A40_Multidisabler.zip gespeichert, um sie flashen zu können?
- Kannst du ins Root-Verzeichnis eine Datei schreiben?
 
DerGraf1997

DerGraf1997

Experte
Threadstarter
@Maxisterl Dafür ist der Multidisabler auch da - er deaktiviert dm-verity, damit du Änderungen am System durchführen kannst. Ich habe die Datei auf meiner externen SD-Karte gespeichert
 
DerGraf1997

DerGraf1997

Experte
Threadstarter
OP geupdated, neues Release.
 
M

Maxisterl

Neues Mitglied
Danke DerGraf1997 - habe mir nun eine Micro-SD besorgt, von dieser die A40_Multidisabler.zip geflasht - und alles hat geklappt (USB-Stick über USB-OTG wurde nicht erkannt). War mir nicht bewusst, dass man dm-verity deaktivieren muss, um auf der Systempartition auch schreiben zu können (Root-Rechte an sich haben nämlich funktioniert).

Zum Update: Ganz habe ich den Unterschied zwischen A40_Multidisabler.zip und dem - im Update nunmehr vorgeschlagenen - "Disable DMVerity&ForceEncrypt" noch nicht verstanden:
- Wird die Datenpartition mit dem "Disable DMVerity&ForceEncrypt" entschlüsselt und vom TRWP aus zugänglich (und mit dem A40_Multidisabler.zip eben nicht)?
- Kann man - ohne alle Daten löschen zu müssen - nach bereits erfolgtem Flashen von A40_Multidisabler.zip "nur" den "Disable DMVerity&ForceEncrypt" flashen?
 
Zuletzt bearbeitet:
DerGraf1997

DerGraf1997

Experte
Threadstarter
Hi, gut dass du es sagst, den otg-bug muss ich noch eintragen.

Soweit ich informiert bin musst du die Stock-Firmware einmal komplett neu mit Odin flashen und dann nur die neue Zip flashen. Oder du steigst bei der Gelegenheit gleich auf HavocOS um ;)
 
M

Maxisterl

Neues Mitglied
OK, und heißt Flashen der Stock-Firmware, dass dabei alle Daten verloren gehen, oder nicht unbedingt?
HavocOS ist nicht so meins... ;-)
 
DerGraf1997

DerGraf1997

Experte
Threadstarter
Das wäre leider wieder mit einem Factory-Reset verbunden. Du kannst dich auch durch andere GSIs testen (siehe phhusson/treble_experimentations) oder du bleibst bei Stock.

Der Entwicklerkollege hat mir gesagt, dass unter Stock der Dual-App-Ordner das Problem sein könnte, weswegen du dir den Aufwand auch sparen könntest. Weiß ich jetzt aber nicht genau
 
F

FLugzeug1998

Neues Mitglied
Hey ich habe eine frage, müsste man ein Factory Reset machen wenn man Twrp flasht? Habe schon zuviel zeit verbracht mein A40 zu personalisieren, und ich hätte keine lust nochmal von Vorne anzufangen.
 
ruffyrisco

ruffyrisco

Neues Mitglied
Hi @DerGraf1997 ,

ich wollte die Gelegenheit nutzen, einen Firmwareupdate mit dem TWRP zu verbinden.
Ich bekomme es leider nicht hin.

Folgende Vorgehensweise:
Schritt 1: Stockrom ohne root
Ich habe das Stockrom BP+AP+CP+CSC) geflashed, danach Schnellinstallation, den bootloader entsperrt mittels Entwickleroptionen und dann auch über den türkisen Bildschirm entsperrt.
Teilschritt 1: => Ergebenis: Schalter in den Entwickler-Optionen ist nun grau, da bereits der Bootloader entsperrt wurde. Bei jedem boot erscheint die Warnung, dass der Bootloader enstperrt ist. Perfekt!

Schritt 2: Root
Ich flasche meine von Magisk gepatchte Datei inkl. boot+dtbo+ vmbeta om AP-Slot und boote wieder neu. Das muss ich ein paar mal wiederholen und einen Factory-Reset machen, da die "Try-Again"-Option nicht funktioniert. Ist ja auch so beschrieben. Danach wieder Schnellinstallation und Magisk 20 installieren von SD-Card.
Teilschritt 2: => Ergebnis: Magisk läuft, aber der Schalter in den Entwickler-Optionenn ist nun wieder blau und aktiviert. Der Bootloader ist jedoch entsperrt, das sehe ich ja bei jedem Boot. Das der Schalter blau ist, irritiert etwas.

Schriit 3: TWRP
Nun flashe ich TWRP im AP-Slot ohne Option Auto-Reboot. Nach dem Flash ziehe ich das Kabel ab, starte mit Power+Vol-Down neu und drücke sofort Power+Vol-Up. Ich bekomme Warnungen, dass ich nicht das Original-Rom besizte, dann ganz kurz die Meldung, daß ich den Bootloader entsperrt habe und wieder ein Neustart mit Warnung, etc.... D.h. ich komme nicht ins TWRP. Ich muss jetzt wieder bei Schritt 1 anfangen und ein komplettes Stockrom neuaufsetzen.

Was mache ich falsch?
- Aufgefallen ist mir, daß deine TWRP_A40_00.tar-Datei 71857kb groß ist, die "originale" TWRP_A40.tar jedoch nur 42.696.
- Ich bin irritiert, daß nach erfolgreichem Root die OEM-Entsperrung wieder blau ist.
 
DerGraf1997

DerGraf1997

Experte
Threadstarter
So wie du dein Vorgehen beschreibst, machst du an sich nichts falsch. Versuche einmal, zuerst die originale TWRP_A40.tar zu flashen. Bei der TWRP_A40.tar ist ein gepatchtes boot.img dabei, welches AOSP-MTP implementiert, damit das auch bei custom ROMs funktioniert. Möglicherweise hat Samsung bei einem Update etwas geändert.

Wenn die funktioniert, kannst du dir ein Backup ziehen und die TWRP_A40_00.tar flashen. Das sollte dann funktionieren :)
 
ruffyrisco

ruffyrisco

Neues Mitglied
Nein, die TWRP_A40 funktioniert ja nicht. Auch nicht die TWRP_A40_00. Beide booten dann nicht mehr und ich komme auch nicht ins Recovery. Abhilfe schaft nur ein komplettes Stock, inkl. BL, AP, CP, CSC. Und dann bin ich wieder am Anfang...

Ich hatte vorher die DBT_...XXU2ASG1. Meinst du, ich soll es tatsächlich damit nochmal probieren?
Ist halt immer viel Aufwand, aber wenn TWRP einmal drauf ist, bleibt es ja auch drauf, richtig?

Den TWRP-Versucht probierte ich mit der DBT_...OXM2ASJ1. Und habe o.a. Probleme...

Neue Frage (eigentlich zum Root):
Mein altes Stock hatte ich gerootet, indem ich die Boot.img per Magisk geändert hatte und dann wieder ins AP-File integriert habe. D.h. ich habe ein komplettes AP-File neu geflashed.
Das ist gar nicht nötig, denn ich kann doch einfach nur das magisk_patched.tar im AP-Slot flashen? So mache ich das jetzt, wenn ich neben dem boot.img auch das dtbo und vbmeta.img flashe. Oder muss ich diese auch einzeln wieder ins orig-AP-File integrieren?
 
Zuletzt bearbeitet:
DerGraf1997

DerGraf1997

Experte
Threadstarter
Mit der XXU2ASG1 habe ich das auch gemacht, war kein Problem. Du kannst einmal probieren, nur den Unlock zu machen und einfach die TWRP_A40_00.tar ohne patchen zu flashen. Wenn nicht probiere mal mit Auto Reboot zu flashen, und dann nach dem reboot ins Recovery zu booten.

Natürlich kannst bzw. musst du sogar nur die magisk_patched.tar flashen. Das muss nicht ins originale AP-Image integriert werden.
 
ruffyrisco

ruffyrisco

Neues Mitglied
Danke, es hat funktioniert! 😊

Ich habe jetzt eben alles nochmal mit der alten Firmware gemacht. Schritt für Schritt....

Das Resultat ist jetzt TWRP und die XXU2 - Firmware.

Dann habe ich die DM-VerityDisabler&ForceEncrypt direkt installiert und neu gebootet. Leider bootete es nur einmal durch und bevor ich jetzt mit dem Firmwareupdate erneut beginnen wollte, wollte ich mal die recovery testen und komme prompt nicht mehr rein.
Ich bekomme nur einen winzigen kleinen roten Schriftzug oben am Display , daß "official binaries allowed to be flashed". Mehr nicht. Kein Boot mehr möglich. Werde also jetzt wieder von vorne anfangen...
 
DerGraf1997

DerGraf1997

Experte
Threadstarter
Die Fehlermeldung hat definitiv etwas mit dem OEM-Unlock zu tun.
 
ruffyrisco

ruffyrisco

Neues Mitglied
@DerGraf1997

shit. Dachte ich mir schon. Nach dem Einspielen des Magisk-Patches hatte ich zwar Root, aber auch wieder den blauen Schalter bei der Unlock-Einstellung. Normalerweise sollte der ja grau sein.
Dennoch seltsam, denn es hat ja funktioniert. Nach flashen des TWRP_A40 kam ich ins Recovery. Dort habe ich allerdings auch ein Wipe und ein Format Data gemacht. Und das ZIP installiert. Einmal booten hat ja dann auch geklappt, aber ich habe mir das Recovery anscheinend direkt wieder überschrieben.

Soll ich mal das Multi_Disabler.Zip ausprobieren? Bin nach der XDA-Anleitung vorgegangen und dort wird für GSI-Roms ja die zweite Methode empfohlen.
 
Zuletzt bearbeitet von einem Moderator:
Bearbeitet von DarkAngel - Grund: Direktzitat gelöscht. Viele Grüße DarkAngel
DerGraf1997

DerGraf1997

Experte
Threadstarter
Probieren kannst du es definitiv, beachte nur dass du dann in TWRP kein Data-Backup machen können wirst. Der Schalter ist bei mir auch Blau, OEM-Unlock ist damit aktiviert
 
ruffyrisco

ruffyrisco

Neues Mitglied
Danke,

ohne Backup wäre aber nur der halbe Spaß. Ich probiere es erneut. Handy liegt hier ohnehin nebenmir und ab und an mal ein paar Tasten drücken, ist kein Problem.
Irgendwo ist der Denkfehler. In der XDA-Anleitung stand auch, direkt im TWRP einen Factory-Reset machen. Das habe ich zwar getan, aber evtl. damit schon wieder was gelöscht!?

Noch 'ne Frage:

Wenn das TWRP mal läuft, flashe ich eine Stockfirmware grundsätzlich ohne BL-Slot, oder? Sonst ist die Recovery ja wieder weg. Also nur AP, CP, CSC.
 
DerGraf1997

DerGraf1997

Experte
Threadstarter
Wenn TWRP läuft, musst du die recovery.img entweder in die Firmware integrieren oder danach neu flashen. BL flasht nur den Bootloader, das Recovery-Image ist allerdings einmal im AP-Image enthalten
 
ruffyrisco

ruffyrisco

Neues Mitglied
BL kann ich also im Prinzip bei gleicher Android-Version weglassen.

Und die Recovery patche ich mir dann also ins Firmware-AP. Ich will ja eigentlicht nicht bei jedem Firmware-Update den Tanz mit TWRP neu machen, wenn es denn überhaupt irgendwann mal läuft.
Eigentlich möchte ich nur ein gerootetes Stock mit einer TWRP-Backupmöglichkeit haben. Gerootet klappt, Backup wäre dann perfekt.

Rückmeldung:

Ich habe jetzt die XXU2 erneut geflashed.
Danach dann deine TWRP_A40_00.
Das hat geklappt, ich komme ins TWRP. Dort habe ich dann sofort das Disable-Zip sowie GSI_MTP_enabler-Zip geflashed.
Ein Backup scheint dennoch nicht zu gehen, Error 255 bei der Datenpartition.... hmm....

Ein Reboot geht auch nicht, sondern es wird lange versucht, zu starten und dann wird abgebrochen und neu gebootet.
Aber: Ich komme wieder ins TWRP, d.h. es wurde nicht überschrieben.

Nächster Schritt: Patchen einer AP-Datei mit der Recovery aus der TWRP_A40_00 und dann mit Odin flashen, korrekt?
 
Zuletzt bearbeitet von einem Moderator:
Bearbeitet von hagex - Grund: Direktzitat entfernt, Gruß von hagex
Oben Unten