Ontevreden met een goed toestel, probeerde ik het te ‘pimpen’ met CyanogenMod. Goed nieuws: erg moeilijk is het niet. Zo deed ik het, en jij kan het ook.

cyanogenmod_9gKLmqJ

Disclaimer: De handelingen die worden uitgevoerd, zorgen ervoor dat je garantie vervalt. Noch ikzelf, noch ZDNet.be zijn verantwoordelijk voor eventuele problemen die je kan tegenkomen. Probeer dit alleen op eigen risico.

De OnePlus 2 die ik tot voor kort dagelijks gebruikte, is op zich een goede telefoon. Hij doet zijn werk, kan elke app zonder problemen aan (dat mag ook wel met een Snapdragon 810 onder de motorkap), maar hij heeft een erg opvallend probleem: updaten via OTA (over the air) is nagenoeg onmogelijk. Geen idee waar dat aan ligt, ik weet enkel dat het erg vervelend is.

Ook wanneer ik Android 6 probeer te installeren via fastboot of door te sideloaden gaat het mis en kom ik in een bootloop terecht. De oplossing voor die bootloop is gelukkig snel gevonden, in de vorm van een Android 5.1-sideload – wees niet ongerust als je de termen niet kent of begrijpt, ze worden zo meteen verklaard. Na vele frustraties besefte ik dat er maar één ding was dat mijn gemoed redding zou brengen: CyanogenMod. Of dat dacht ik toch.

Vooreerst moet je weten dat ikzelf tot voor kort helemaal niet thuis was in wat in de Android-wereld modding wordt genoemd. Hierbij vevang je het besturingssysteem dat standaard op je toestel geïnstalleerd is door een alternatief. CyanogenMod is een van de meest gekende varianten, gekenmerkt door complete instelbaarheid. Van de kleur van je statusbalk tot de plaats van het klokje in die statusbalk: als jij het kan bedenken, kan je het ook aanpassen.

Eens je samen met mij deze gids doorlopen hebt, zal je in staat zijn om een Mod naar keuze te installeren. Hoe je voor een andere kiest dan Cyanogen, vind je via Google en op de websites/fora waar je de ROMs vindt. Beginnen doen we met de oplijsting van het gebruikte materiaal. Op het einde vind je enkele termen uitgelegd ter referentie. Voor deze workshop werken we op basis van een helppagina van Cyanogen zelf.

Extra info: ook als jouw toestel binnenkort geen update naar Nougat krijgt, kan CyanogenMod soelaas bieden – indien het ondersteund wordt.

oneplus-two

Gebruikt materiaal

Gebruikers met een Mac zijn voor een keer in het voordeel. Windows-gebruikers moeten een volledigere versie van Android Studio downloaden en installeren, terwijl de Mac-gebruikers een ‘light’-versie kunnen downloaden, die meteen werkt. Deze gids werd gemaakt aan de hand van een Mac, wat betekent dat Windows-gebruikers enkele zaken lichtjes anders moeten doen, maar vaak beperkt de verandering zich enkel en alleen tot het verwijderen van ‘cd’ of ‘./adb’ voor een commando.

Aangezien het ook voor mij de eerste keer was, probeerde ik het proces eerst uit op een Motorola Moto G 4G (2013), wat zonder problemen lukte. Voor deze gids (poging nummer twee) gebruik ik een OnePlus Two. Wat ik meteen wil meegeven: het loont altijd om het eerst te proberen op een toestel dat je niet meer nodig hebt. Je kweekt ervaring, zonder grote risico’s te nemen. Ook opvallend: de Moto G werkt nu vlotter dan tevoren.

Voorbereiden

De meest basale voorbereidingen die je moet doen, zijn het opladen van de toestellen die je gaat gebruiken, en het downloaden van de juiste bestanden. Dat zijn: Android Debug Bridge (ADB), TWRP Recovery en de juiste ROM voor jouw toestel. Voor pakketten als CyanogenMod moet je daarnaast ook een set Google Apps (kortweg Gapps) downloaden om de apps van Google op je smartphone te krijgen. Kijk ALTIJD na of de ROM wel degelijk geschikt is voor jouw toestel. In het slechtste geval breng je een hardbrick teweeg. Zet de uitgepakte ADB-bestanden op je desktop en installeer het programma als je Windows gebruikt.

[In Windows kan deze stap er enigszins anders uitzien] Klik daarna in de map ‘tools’ op ‘android’; Android SDK Manager zal openen. Je zal een mapje ‘Tools’ zien staan. Klap dit uit en vink ‘Android SDK Tools’ en ‘ Android SDK Platform-tools’ aan. Download deze, zet de gedownloadede TWRP en ROM in de map ‘platform-tools’ en dan ben je klaar met de voorbereidingen op je computer.

adb android tools

Nu moet je je toestel prepareren. Om te beginnen moet je USB debugging (foutopsporing in het Nederlands) inschakelen. Ga naar instellingen en navigeer naar ‘Over deze telefoon’, alwaar je zeven keer op het build-nummer tikt. Ben je niet zeker wat ik bedoel, tik dan gewoon even als een gek op alles met cijfertjes. Nu heb je de opties voor ontwikkelaars ontgrendeld. Ga één menu naar boven en je zal deze extra instellingen nu boven ‘Over deze telefoon’ zien staan.

Fastboot-modus, ook wel eens de 'bootloader' genoemd.
Fastboot-modus, ook wel eens de ‘bootloader’ genoemd.

In de opties voor ontwikkelaars moet je dan naar beneden scrollen tot je de foutopsporingsoptie ziet staan. Vink deze aan. Je moet tevens de ‘OEM Unlock’ aanvinken, zodat je externe besturingssystemen kan installeren. Bij OnePlus is dit simpel: gewoon een vinkje plaatsen. Voor de Motorola was dit iets uitgebreider en moest ik naar de website van Motorola, waar ik met behulp van mijn toestelnummer een code kreeg toegemaild die ik dan weer kon gebruiken om de OEM te ontgrendelen. (Het loont om snel even je eigen model te googlen als bv. “Samsung Galaxy S5 oem unlock”.)

Start je toestel dan opnieuw op naar fastboot-modus. Dit doe je bij de meeste toestellen door tegelijkertijd de aan/uitknop in te drukken, samen met de toets om je volume luider te zetten. Werkt dit niet, dan is het de volume omlaag-knop. Ga nu naar de volgende stap.

Programmeren

Velen laten zich voor de overstap naar Cyanogen afschrikken door de noodzaak om een heel klein beetje te ‘programmeren’. We moeten namelijk de stock recovery zien te vervangen door TWRP, een zogenaamde custom recovery. Daar hebben we de Terminal van Mac voor nodig (of Opdrachtprompt in Windows).

Open de Terminal en navigeer naar de submap ‘platform-tools’. Dit doe je het makkelijkst door volgende commando in te geven: “cd [pad van platform-tools]”, waarbij je de rechte haken dus vervangt door het juiste pad. Nog makkelijker is om na de ‘cd’ (met spatie na de ‘cd’!) het mapje ‘platform-tools’ gewoon naar de terminal te slepen. Die zal dan het juiste pad invullen in jouw plaats. (Bij Windows navigeer je simpelweg naar de juiste map, rechterklik je en kies je voor ‘Open Opdrachtprompt op deze locatie’.) Bij mij ziet het pad er als volgt uit (afbeelding hieronder).

cyanogen twrp adb

Je toestel zou nu in de fastboot-modus moeten staan, de Terminal of Opdrachtprompt moet zich in de map ‘platform-tools’ bevinden. Geef in de Terminal nu volgend commando in: “./fastboot devices”, je zal nu een oplijsting zien van toestellen die je computer herkent in fastboot-modus, in de vorm van een reeks cijfers. Normaal gezien zie je nu één reeks cijfers, en dan zit je goed. Zie je niets, dan ging het al ergens mis en kan je best opnieuw de vorige stap overlopen.

Belangrijke opmerking: in Windows heb je geen speciale karakters nodig om commando’s te geven, maar in Mac wel. Wil je navigeren naar een andere locatie, dan gebruik je zoals hierboven “cd”. Wil je met een commando iets naar je toestel sturen, dan moet dat commando steeds beginnen met “./”. Let er steeds op dat je de juiste spelling en spaties gebruikt.

Wat je nu eerst moet doen, is de OEM unlock afronden. Dit doe je door “./fastboot oem unlock” in te geven en op Enter te drukken. Na deze stap start het toestel normaal gesproken automatisch opnieuw op. Let op! Door dit te doen, wis je al je gegevens. Om verder te kunnen gaan, moet je daarom opnieuw de volledige procedure doorlopen die je ook krijgt na een factory reset. Ga opnieuw naar de opties voor ontwikkelaars, stel de foutopsporing opnieuw in en ga terug in fastboot-modus.

TWRP

Om TWRP naar je smartphone te sturen, typ je “./fastboot flash recovery [naam van TWRP of pad ernaartoe]”. Gaf je het bestand een simpele naam als ‘recovery’, dan wordt dit “./fastboot flash recovery recovery.img”, en vergeet hierbij zeker niet de ‘.img’. Makkelijker is om opnieuw gewoon het bestand naar de Terminal te slepen, zodat die het juiste pad in jouw plaats invult. Druk op Enter. Zo moet het er dus uitzien:

Per kader zie je hier een nieuwe stap in het proces: 1) naar de juiste map navigeren (platform-tools) 2) fastboot controleren 3) oem unlocken 4) TWRP recovery flashen
Per kader zie je hier een nieuwe stap in het proces: 1) naar de juiste map navigeren (platform-tools) 2) fastboot controleren 3) OEM unlocken 4) TWRP recovery flashen

Vervolgens moet je het toestel heropstarten in recovery-modus. Dat doe je door de aan/uitknop samen met de volume-omlaagknop in te drukken.

Cyanogen

Wanneer je toestel in recovery zit, is het tijd om de ROM en de GApps over te zetten. (Belangrijk: pak een gedownload zip-bestand nooit uit. Je smartphone weet wat het met de zip moet doen.) Sluit je toestel aan op de computer en zet ze in een map op je toestel. Liefst zo hoog mogelijk/dicht mogelijk tegen de root, zodat je niet te veel mapjes moet gaan doorzoeken om ze te vinden.

De benodigde bestanden zet je best in een zo hoog mogelijke map, waarmee ik bedoel dat je best zo dicht mogelijk tegen je root zit.
De benodigde bestanden zet je best in een zo hoog mogelijke map, waarmee ik bedoel dat je best zo dicht mogelijk tegen je root zit.

Het eerste dat je nu moet doen, is naar het mapje ‘wipe’ gaan in TWRP. Daar moet je kiezen voor ‘factory reset’ (vaak is dat gewoon sliden). Dat zou niet lang mogen duren. Daarna ga je naar het mapje ‘Install’, waarna je de map zoekt waarin je de ROM hebt gedeponeerd. Tik hem aan en swipe om te installeren. Vervolgens geef je het toestel de tijd om het nodige te installeren. Tik daarna op ‘wipe cache/dalvik’.

twrp-wipe

Ten slotte moet je de GApps installeren. Vergewis je ervan dat je de juiste set hebt gedownload (de ARM64-versie indien dat nodig is, dat kan je ook snel googlen). Dit proces zal het langst duren. Na deze stap zou het nodige op je toestel geïnstalleerd moeten zijn. Herstart je toestel en je zou nu CyanogenMod moeten draaien.

flash cyanogenmod gapps

Problemen?

cyanogenmod op oneplus 2Maak je geen zorgen als het ergens foutloopt, meestal valt de schade te beperken. Ik doorliep het proces enkele tientallen keren, en het ergste dat ik tegenkwam was een softbrick waarbij het toestel vastzat op het bootscreen. In dat geval kan je altijd zonder problemen terugkeren naar de recovery van TWRP en een andere versie van de ‘nightlies’ installeren.

Mislukt alles toch, dan kan je altijd opteren om gewoon terug te gaan naar het standaard besturingssysteem van OnePlus. Dat vind je op de helppagina’s. Het proces is dan juist hetzelfde: je flasht het oorspronkeleijke recoverysysteem, je zet de ROM op het toestel, je voert een reset uit en je installeert Oxygen.

Bij de OnePlus 2 die ik gebruikte, dook echter een onaangenaam probleem op: het betreft een preproductiemodel en het lijkt beschermt te zijn tegen een update naar Android 6. Journalistieke eerlijkheid gebiedt me te zeggen dat, wat ik ook probeerde, het dichtste dat ik bij Marshmallow kond geraken, was een onofficiële versie die ergens in maart van dit jaar opdook. Met de Motorola is het me natuurlijk wel gelukt zonder probleem. Maar het opzet van dit artikel – Marshmallow op de OP2 krijgen – dat faalde jammerlijk. Volgende keer beter?

Termen

Brick (soft/hard)

De toestand waarbij je toestel vastloopt. Als het een softbrick is, kom je vaak terecht op het opstartscherm. Makkelijk te repareren. Is het een hardbrick, dan zit je met een toestel dat niets meer doet. Moeilijk te repareren.

Mod/ROM

Een Mod of ROM is een alternatieve versie van Android. Zo heb je naast CyanogenMod bijvoorbeeld nog Paranoid Android – waar OnePlus zijn Oxygen op baseerde.

Fastbooten

De toestand waarin je alternatieve software kan installeren op je smartphone vanop je pc.

Sideloaden

Iets installeren buiten Google om. Meer info vind je hier. http://www.androidcentral.com/what-sideloading-android-z

Dirty flash/Clean flash

Bij een dirty flash behoud je alle data die op je toestel staat. Bij een clean flash verwijder je je gegevens en voer je een factory reset uit. Bij handelingen als deze vertrek je best vanuit een clean flash, aangezien die de minste problemen oplevert.

ADB/Android Studio

Het softwarepakket dat je gebruikt om ROMs en andere dingen naar je smartphone te sturen. Als je een app-ontwikkelaar bent, gebruik je deze suite ook om apps te bouwen en ze te testen.

Recovery

Dit is een basissoftwarelaag van waaruit je je toestel kan besturen buiten het OS om. Denk bijvoorbeeld aan de BIOS van een computer. Je kan je toestel hiermee updaten, back-uppen, of Modden. TWRP is een custom recovery die we gebruikten aangezien die toelaat je toestel heftiger te modificeren. Gebruik op eigen risico.