Heute wurde mein neues Telefon angeliefert, das Motorola Moto X4. Die Gründe für das Moto X4 waren:
- Nicht zu gross (5.2″)
- Dual-Sim
- Akku 3000 mAh
- Preis unter CHF 300.00
- NFC vorhanden
- Offizieller Build-Release von Lineage OS
Ich möchte das Telefon nicht mit dem Stock-Release von Motorola benutzen. Das Moto X4 soll mit Lineage OS beglückt werden. Dieser Blog-Post basiert auf dem Post von eines Pro-Linux Artikels sowie einem Install-Video und beinhaltet zusätzlich Änderungen aufgrund meinen eigenen Erfahrungen mit dem Moto X4 (Installation TWRP, etc.).
Installation
Mein Installations-Ablauf:
- Developer-Modus einschalten
- Handy über adb-Tools (Android Debug Bridge – kurz ADB) starten
- Bootloader OEM-Sperre entfernen
- Team Win Recovery Project (TWRP) flashen (Recovery-Modus)
- Backup des Stock-ROMS erstellen
- Firmware für Moto X4 aufspielen
- LineageOS auf SD-Karte aufspielen
Siehe auch
Developer-Modus einschalten
- Das Telefon beim ersten Start ohne Sim-Karte und ohne Speicher-Karte starten.
- Durchbooten bis zum Desktop
- Einstellungen > Über das Telefon aufrufen
- 7x auf die Build-Nummer Tippen => Das Telefon meldet nun, dass Sie nun „Entwickler“ sind => Developer-Modus ist damit aktiviert.
- Nun erscheint unter den Einstellungen zusätzlich der Eintrag „Entwickleroptionen“
- Unter den Entwickleroptionen folgende Optionen aktivieren:
- OEM Entsperrung und
- USB Debugging
Nun ist das Telefon soweit bereit um es verändern zu können.
Handy über adb-Tools (Android Debug Bridge – kurz ADB) starten
Mit der Android Debug Bridge – kurz ADB – kann man ein Android-Smartphone verwalten. Es ist grundsätzlich für Entwickler gedacht und bietet ein paar coole Funktionen. Ich verwende die adb unter Ubuntu-Linux. Die adb kann folgendermassen installiert werden:
sudo apt-get install android-tools-adb sudo apt-get install android-tools-fastboot
Nun das Telefon mit dem Linux-Rechner verbinden:
- Per USB3-Kabel das Telefon mit dem Linux-Rechner verbinden
- Auf dem Telefon nochmals kurz USB-Debugging de- und wieder aktivieren
- Nun können über die Linux-Konsole Befehle an das Telefon gesendet werden. Damit das aber funktioniert, muss der Linux-Rechner noch autorisiert werden. Dies geschieht indem ein Befehl an das Telefon gesendet wird.
-
adb reboot bootloader
- Auf dem Telefon erscheint automatisch die Anfrage ob der Rechner autorisiert werden soll. Hier nun die Genehmigung erteilen:
- Ein Reboot des Bootloaders zeigt nun folgendes Bild, wobei ersichtlich ist, dass das Gerät „oem_locked“ ist:
- Um Lineage OS aufspielen zu können, muss der auf dem Bootloader der oem-lock entfernt werden.
Bootloader OEM-Sperre entfernen
Motorola bietet Entwicklern die Möglichkeit, den oem-lock zu entfernen. Damit einher geht, dass die Garantie entfällt. Und so geht es:
- Link zu Motorola aufrufen > U
- Nun muss man sich anmelden. Das geht entweder mit einem Google-Account oder aber mit einem Motorola-Konto. Ich habe weder noch. Ich verwende deswegen den Link „Mit Motorola ID anmelden“. Hier werde ich aufgefordert eine Motorola-ID zu erstellen.
- Nun eine Motorola-ID erstellen und anschliessend anmelden. Nach dem Login wird angezeigt, wie man das Device unlocked:
-
fastboot oem get_unlock_data ... (bootloader) Unlock data: (bootloader) 3AasdfaSDddasdf1#5asdd232344839 (bootloader) 434E5A006DASDFASD678340000#3F14 (bootloader) BF2C22D54C36CD73EB12C31DF400F1A (bootloader) 55769#FE0D752201561568645130000 (bootloader) 0000000 OKAY [ 0.013s] finished. total time: 0.013s
Daraus muss ein einzeiliger String erstellt werden, den man auf der unlock-Seite von Motorola eingibt:
- Nun erscheint am Ende der Motorola-Site ein Unlock-Button:
- Nun wird ein Mail mit dem Unlock-Key zugestellt:
- Mit dem Key kann nun der Bootloader unlocked werden. Anstelle „UNIQUE_KEY“ muss der im Mail zugestellte Key verwendet werden:
-
fastboot oem unlock UNIQUE_KEY
- Der Befehl muss nun nochmals zwecks Bestätigung wiederholt werden. Anschliessend ist das Gerät offiziell unlocked! 🙂
- Um zu überprüfen ob der Unlock wirklich geklappt hat, kann das Telefon nochmals gerebooted werden und dann nochmals in den Bootloader gebooted werden:
-
adb reboot bootloader
- Voilà. „flashing_unlocked“ bestätigt dies:
-
Team Win Recovery Project (TWRP) flashen (Recovery-Modus)
Team Win Recovery Project (TWRP) ist ein Custom-Recovery-System für Android-Geräte. Es wird über unseren unlocked Bootloader in die Recovery-Partition des Telefons geschrieben. Anschliessend kann TWRP über den Bootloader unabhängig vom System gestartet werden. Mit TWRP können wir unser System Backupen, Restoren aber auch ein anderes OS (Custom-Roms) aufspielen:
- Die TWRP-Version für Moto X4 auf twrp.me suchen und downloaden => https://twrp.me/motorola/motorolamotox4.html
- Bei einer Erstinstallation müssen zwei Files heruntergeladen werden (twrp-installer-payton-3.2.3-1.zip und twrp-3.2.3-1-payton.img)
- Nun temporär TWRP auf dem Telefon starten. Das kann durch folgenden Befehl ausgelöst werden:
-
fastboot boot Downloads/twrp-3.2.3-1-payton.img
Nun kann das ZIP-File auf das Telefon bzw. auf die sdcard kopiert werden:
-
adb push Downloads/twrp-installer-payton-3.2.3-1.zip /sdcard [100%] /sdcard/twrp-installer-payton-3.2.3-1.zip
Nun kann im TWRP über „Installieren“ das Installer-ZIP ausgewählt und installiert werden. Damit wird TWRP fix auf der Recovery-Partition installiert:
- Nun das Telefon neu starten. Dabei installiere ich die TWRP-App als Systemapplikation, so dass zukünftige TWRP-Updates über die App installiert werden können:
- Das Telefon Startet nun neu.
- Ab sofort kann beim Aufstarten des Telefons mittles gleichzeitigem Drücken von „Power Button“ und „Lautstärke Down“ in den Bootloader gebootet werden.
- Im Bootloader kann nun mittles Lautstärken-Buttons der Recovery-Mode ausgewählt und bestätigt werden (Power Button). Anschliessend wird in TWRP gebootet:
- Nun können diverse Funktionen mit TWRP verwendet werden. 🙂
Backup des Stock-ROMS erstellen
Mittles TWRP erstellen wir nun ein Backup unseres Stock-ROMs. Dies, damit wir im „Worst Case“ Fall das System wieder in den Ursprungs-Zustand versetzten können:
- In TWRP booten
- Löschen/Wipe auswählen
- Erweitertes Löschen auswählen
- Optionen auswählen
- Löschen bestätigen
- Zurück
- Diesen Löschvorgang zweimal durchführen => Soll teilweise nötig sein…
- Zurück zum TWRP Start-Screen gehen.
- Sichern / Backup auswählen und folgende Partitionen auswählen:
- Boot (64MB)
- Data (ohne /data/media)
- System (2690MB)
- Name des Backup-Files benennen
- Speicher auswählen (ich verwende den internen Speicher)
- Sicherung erstellen
- In meinem Falle hat das nicht funktioniert (Fehler 255), deswegen hab ich diesen Schritt übersprungen – No Risk No Fun
Firmware für Moto X4 aufspielen
- Download https://www.androidfilehost.com/?fid=890278863836292604
- Entpacken und flash-all.sh ausführen. Dies kopiert die Images von Slot A nach Partition B. Das ist notwendig um Lineageos auf Partition B installieren zu können.
-
$ ./flash_all.sh target reported max download size of 536870912 bytes sending 'abl_a' (1024 KB)... OKAY [ 0.024s] writing 'abl_a'... OKAY [ 0.062s] ... ... ... OKAY [ 0.039s] finished. total time: 0.121s
Jetzt mit fastboot das twrp-image auf das Telefon pushen und booten:
-
fastboot boot twrp-3.2.3-1-payton.img
Es wird nun TWRP gestartet.
- Nun das TWRP-ZIP auf das Telefon kopieren
-
adb push twrp-installer-payton-3.2.3-1.zip /sdcard/
Nun im TWRP über Install das kopierte TWRP auswählen und installieren (swipe to install).
- Dies installiert das TWRP sowohl auf Slot A als auch auf Slot B.
- Nun rebooten (keine twrp-Apps installieren). Wenn das Stock Rom wieder sauber bootet, hat alles funktioniert.
- Wieder in den bootloader booten und Recovery Mode auswählen > Es wird nun TWRP gestartet.
- Nun das LineageOS Rom und die GApps auf das Telefon kopieren
-
adb push lineage-15.1-20181002-nightly-payton-signed.zip /sdcard/ [100%] /sdcard/lineage-15.1-20181002-nightly-payton-signed.zip ralwet@Z97X-Gaming-5:~/Schreibtisch/Moto X4 Work$ adb push MindTheGapps-8.1.0-arm64-20180808_153856.zip /sdcard/ [100%] /sdcard/MindTheGapps-8.1.0-arm64-20180808_153856.zip
Nun im TWRP > Install
- LineageOs auswählen
- Add more ZIP auswählen und
- das TWRP-ZIP File mit auswählen (gem. Video)
- Dann Swipe to Install
- Nachdem die Installation abgeschlossen ist, nicht rebooten sondern
- Wipe Cache auswählen
- Dann Reboot > Recovery => Dies bootet wieder nach TWRP
- Nun über Install die GApps mit installieren (Minde the Gapps ZIP)
- Nun Reboot System