<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>akeil.net (Posts about cyanogenmod)</title><link>http://akeil.net/</link><description></description><atom:link href="http://akeil.net/categories/cyanogenmod.xml" rel="self" type="application/rss+xml"></atom:link><language>en</language><lastBuildDate>Fri, 13 Jan 2017 22:08:29 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Install CyanogenMod on Asus TF300T</title><link>http://akeil.net/posts/install-cyanogenmod-on-asus-tf300t.html</link><dc:creator>Alexander Keil</dc:creator><description>&lt;div&gt;&lt;p&gt;&lt;em&gt;CyanogenMod&lt;/em&gt; is a custom version of the android operating system.
It is intended to replace the stock-android that was preinstalled by the vendor.
More information is found on the &lt;a class="reference external" href="http://www.cyanogenmod.org"&gt;CyanogenMod Site&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This post explains how to install &lt;em&gt;CyanogenMod&lt;/em&gt; on an &lt;em&gt;Asus Transformer TF300T&lt;/em&gt; tablet.
We are starting with a non-rooted &lt;em&gt;Asus Transformer TF300T&lt;/em&gt;
which has received upgrades to Android 4.2.1 (&lt;em&gt;Jelly Bean&lt;/em&gt;).
Linux Mint is used on the PC-side of things.&lt;/p&gt;
&lt;p&gt;More information is available on the  &lt;a class="reference external" href="http://wiki.cyanogenmod.org/w/Tf300t_Info"&gt;TF300T Support Site&lt;/a&gt; for CM
and in the CM-wiki's &lt;a class="reference external" href="http://wiki.cyanogenmod.org/w/Install_CM_for_tf300t"&gt;Installation Guide&lt;/a&gt; for the TF300T.&lt;/p&gt;
&lt;p&gt;In short, installation of &lt;em&gt;CyanogenMod&lt;/em&gt; requires that a custom &lt;em&gt;Recovery Image&lt;/em&gt;
is installed which allows us to change the operating system.
To install such a recovery image, we will need to unlock the boot loader.&lt;/p&gt;
&lt;!-- TEASER_END --&gt;
&lt;div class="section" id="preparation"&gt;
&lt;h2&gt;Preparation&lt;/h2&gt;
&lt;div class="section" id="install-tools"&gt;
&lt;h3&gt;Install Tools&lt;/h3&gt;
&lt;p&gt;Two tools from the &lt;a class="reference external" href="https://developer.android.com/sdk/index.html"&gt;Android SDK&lt;/a&gt; are required to install &lt;em&gt;CyanogenMod&lt;/em&gt;,
so the SDK should be installed.
We will use the &lt;tt class="docutils literal"&gt;adb&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;fastboot&lt;/tt&gt; executables from the SDK
to communicate with the device. These tools must be in our &lt;tt class="docutils literal"&gt;PATH&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;Alternatively, install them from the distros repository:&lt;/p&gt;
&lt;pre class="code shell-session"&gt;&lt;a name="rest_code_53feabf7c2a84cf4bdbe5a824d1cee64-1"&gt;&lt;/a&gt;&lt;span class="gp"&gt;#&lt;/span&gt; apt-get install android-tools-adb android-tools-fastboot
&lt;/pre&gt;&lt;/div&gt;
&lt;div class="section" id="enable-usb-debugging"&gt;
&lt;h3&gt;Enable USB Debugging&lt;/h3&gt;
&lt;p&gt;The &lt;em&gt;Android Debugging Bridge&lt;/em&gt; (&lt;tt class="docutils literal"&gt;adb&lt;/tt&gt;) requires
to have USB debugging enabled on the android device.
By default, this is &lt;em&gt;off&lt;/em&gt; and the option to turn it on is hidden.&lt;/p&gt;
&lt;p&gt;To enable USB-debugging on &lt;em&gt;Android Jelly Bean&lt;/em&gt; (from &lt;a class="reference external" href="http://www.thesmarthacks.com/2013/04/enabling-usb-debugging-mode-on-android.html"&gt;thesmarthacks&lt;/a&gt;):&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;Go to &lt;em&gt;Settings&lt;/em&gt; &amp;gt; &lt;em&gt;About Tablet&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Find the entry named &lt;em&gt;Build Number&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Tap it &lt;strong&gt;seven times (7x)&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;A small text-notification should appear: "you are now a developer".&lt;/li&gt;
&lt;li&gt;A new entry &lt;em&gt;Developer options&lt;/em&gt; has appeared in the settings menu&lt;/li&gt;
&lt;li&gt;In &lt;em&gt;Developer options&lt;/em&gt;, enable the &lt;em&gt;USB debugging&lt;/em&gt; option&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;When the device is connected to the PC via USB
the tablet should show a notification "USB debugging connected"
and the device should be listed when you invoke the command &lt;tt class="docutils literal"&gt;adb devices&lt;/tt&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="enable-3d-party-apps"&gt;
&lt;h3&gt;Enable 3d Party Apps&lt;/h3&gt;
&lt;p&gt;The Installation of third-party apps must be enabled on the device.&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;Go to &lt;em&gt;Settings &amp;gt; Security&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Enable the &lt;em&gt;Unknown sources&lt;/em&gt; option&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="unlock-the-boot-loader"&gt;
&lt;h2&gt;Unlock the Boot Loader&lt;/h2&gt;
&lt;p&gt;A &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Bootloader"&gt;Boot Loader&lt;/a&gt; is a small program that is executed when the computer starts
and is responsible for starting the actual operating system.
If more than one OS is installed, a boot loader might allow to select an OS
to boot into.&lt;/p&gt;
&lt;p&gt;Normally, the boot loader is &lt;em&gt;locked&lt;/em&gt; on Android devices,
meaning that it will not boot anything other than the preinstalled OS.
Unlocking will mean that you &lt;strong&gt;lose the warranty&lt;/strong&gt; for the device.&lt;/p&gt;
&lt;p&gt;An &lt;em&gt;Unlock App&lt;/em&gt; can be obtained from the vendor's website.
The application is downloaded onto the PC and then installed on the
tablet. After installation it is run on the tablet to unlock the boot loader.&lt;/p&gt;
&lt;p&gt;To download and install the unlocker, go to the &lt;a class="reference external" href="http://www.asus.com/Tablets_Mobile/ASUS_Transformer_Pad_TF300T/#support"&gt;Asus TF300T Support Site&lt;/a&gt;,
navigate to &lt;strong&gt;Support&lt;/strong&gt;, &lt;strong&gt;Drivers &amp;amp; Tools&lt;/strong&gt;
and select &lt;strong&gt;Android&lt;/strong&gt;, then &lt;strong&gt;Utilities&lt;/strong&gt; and download the unlocker.&lt;/p&gt;
&lt;p&gt;There are two versions available.&lt;/p&gt;
&lt;table class="docutils field-list" frame="void" rules="none"&gt;
&lt;col class="field-name"&gt;
&lt;col class="field-body"&gt;
&lt;tbody valign="top"&gt;
&lt;tr class="field"&gt;&lt;th class="field-name"&gt;Version V8:&lt;/th&gt;&lt;td class="field-body"&gt;&lt;tt class="docutils literal"&gt;Unlock_V8.rar&lt;/tt&gt; containing &lt;tt class="docutils literal"&gt;Unlock_V8.apk&lt;/tt&gt;.
Use this for for &lt;em&gt;Android Jelly Bean&lt;/em&gt; (Android 4.2)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class="field"&gt;&lt;th class="field-name"&gt;Version V7:&lt;/th&gt;&lt;td class="field-body"&gt;&lt;tt class="docutils literal"&gt;UnLock_Device_App_V7.apk&lt;/tt&gt;.
Use for 4.0 and 4.2&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Connect the device via USB and install the unlocker:&lt;/p&gt;
&lt;pre class="code shell-session"&gt;&lt;a name="rest_code_f51ed31b45434b5899c2cca90f41ed9d-1"&gt;&lt;/a&gt;&lt;span class="gp"&gt;$&lt;/span&gt; adb install Unlock_V8.apk
&lt;/pre&gt;&lt;p&gt;Depending on the security settings, the tablet will show a dialog
asking for confirmation.
You must manually accept installation before the install can finish.&lt;/p&gt;
&lt;p&gt;On the tablet, a new entry &lt;em&gt;Unlock Device&lt;/em&gt; should have appeared in the
applications menu.
Run this app and confirm security warnings.
If the device is associated to a Google account,
the password to that account is required.
The tablet will then restart, showing a small notification message during boot
("The Device is UnLocked").&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="flash-a-custom-recovery"&gt;
&lt;h2&gt;Flash a Custom Recovery&lt;/h2&gt;
&lt;p&gt;The recovery mode is a boot option that will not load the "normal" OS
but a special "recovery" environment.
The recovery environment is very simple and allows to troubleshoot or update
the system. Most importantly, it allows to install a new OS.&lt;/p&gt;
&lt;p&gt;Read more about recovery mode:
&lt;a class="reference external" href="http://wiki.cyanogenmod.org/w/All_About_Recovery_Images"&gt;http://wiki.cyanogenmod.org/w/All_About_Recovery_Images&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;On most devices a recovery image with limited functionality
will already be installed. We will replace this with one that has more
capabilities.&lt;/p&gt;
&lt;p&gt;It is a bit difficult to find a recovery image that is compatible
with the &lt;em&gt;Asus TF300T&lt;/em&gt;.
Asus changed the behavior of the boot loader between Android versions,
meaning that only some of the recovery images are compatible with a given
Android version.
Installing the wrong recovery image is not (too) bad - it simply means
that recovery mode won't work until a working recovery image is flashed
onto the device.
One can still boot into the normal OS and access the device through &lt;tt class="docutils literal"&gt;adb&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;This guide refers to a tablet with the Android 4.2.1 version
with a 10.6.1.x build number received as an OTA update some time after
the tablet was bought.
The &lt;em&gt;TWRP&lt;/em&gt; Recovery Image &lt;em&gt;for that version&lt;/em&gt; is used.&lt;/p&gt;
&lt;div class="admonition alert alert-warning note"&gt;
&lt;p class="first admonition-title"&gt;Note&lt;/p&gt;
&lt;p&gt;The &lt;em&gt;CyanogenMod&lt;/em&gt; wiki describes a process based on Android 4.1 using the &lt;em&gt;ClockworkMod&lt;/em&gt;
recovery image.
The process still works, but depending on the version of the boot loader,
a different recovery image is required.&lt;/p&gt;
&lt;p class="last"&gt;Also, the &lt;em&gt;CyanogenMod&lt;/em&gt; version to be installed later must be compatible
with the Asus boot loader.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Download the TWRP recovery from the &lt;a class="reference external" href="http://teamw.in/"&gt;TeamWin site&lt;/a&gt;
(specifically: here: &lt;a class="reference external" href="http://teamw.in/project/twrp2/97"&gt;http://teamw.in/project/twrp2/97&lt;/a&gt;);
make sure to fetch the correct file
(ending in "-4.2" for Android 4.2 version).&lt;/p&gt;
&lt;p&gt;Reboot the tablet into fastboot mode (device is connected via USB):&lt;/p&gt;
&lt;pre class="code shell-session"&gt;&lt;a name="rest_code_a737951483d5492b8c636972ed93c9eb-1"&gt;&lt;/a&gt;&lt;span class="gp"&gt;$&lt;/span&gt; adb reboot bootloader
&lt;/pre&gt;&lt;p&gt;Alternatively, shutdown and start manually using &amp;lt;Power&amp;gt;+&amp;lt;Volume-Down&amp;gt;.&lt;/p&gt;
&lt;p&gt;After the device has booted, check that is it visible (as root)...&lt;/p&gt;
&lt;pre class="code shell-session"&gt;&lt;a name="rest_code_356d858e417e4c2a8aafe6789838269c-1"&gt;&lt;/a&gt;&lt;span class="gp"&gt;#&lt;/span&gt; fastboot devices
&lt;/pre&gt;&lt;p&gt;...and flash the recovery image on the device:&lt;/p&gt;
&lt;pre class="code shell-session"&gt;&lt;a name="rest_code_f241ccac6c824070a7f096403f723267-1"&gt;&lt;/a&gt;&lt;span class="gp"&gt;#&lt;/span&gt; fastboot -i 0xb05 flash recovery twrp_recovery.img
&lt;/pre&gt;&lt;p&gt;Then reboot the device once more to verify that the installation was successful.
Boot into recovery mode if you want to check the TWRP interface.&lt;/p&gt;
&lt;div class="section" id="create-a-backup"&gt;
&lt;h3&gt;Create a Backup&lt;/h3&gt;
&lt;p&gt;Not strictly necessary, but recommended.
Before installing the new OS, create a backup of the existing system.
To do this, boot into recovery mode:&lt;/p&gt;
&lt;pre class="code shell-session"&gt;&lt;a name="rest_code_329e0429878249cba5b3e9553d2236f1-1"&gt;&lt;/a&gt;&lt;span class="gp"&gt;$&lt;/span&gt; adb reboot recovery
&lt;/pre&gt;&lt;p&gt;In the TWRP menu, select &lt;em&gt;Backup&lt;/em&gt;.
Using TWRP 2.6.3.0, the backup only worked when the
compression-option was &lt;em&gt;enabled&lt;/em&gt;.
Also, consider setting a nicer name for the backup.&lt;/p&gt;
&lt;p&gt;When the backup is complete, reboot
and - optionally - copy the backup to local disk.&lt;/p&gt;
&lt;pre class="code shell-session"&gt;&lt;a name="rest_code_8061bf95b12d4742bb5aaccfe3075d7e-1"&gt;&lt;/a&gt;&lt;span class="gp"&gt;$&lt;/span&gt; mkdir android-backup
&lt;a name="rest_code_8061bf95b12d4742bb5aaccfe3075d7e-2"&gt;&lt;/a&gt;&lt;span class="gp"&gt;$&lt;/span&gt; adb pull /sdcard/TWRP/BACKUP/&amp;lt;key&amp;gt;/&amp;lt;backup-name&amp;gt;/recovery.log
&lt;a name="rest_code_8061bf95b12d4742bb5aaccfe3075d7e-3"&gt;&lt;/a&gt;&lt;span class="gp"&gt;$&lt;/span&gt; adb pull /sdcard/TWRP/BACKUP/&amp;lt;key&amp;gt;/&amp;lt;backup-name&amp;gt;/system.ext4.win
&lt;a name="rest_code_8061bf95b12d4742bb5aaccfe3075d7e-4"&gt;&lt;/a&gt;&lt;span class="gp"&gt;$&lt;/span&gt; adb pull /sdcard/TWRP/BACKUP/&amp;lt;key&amp;gt;/&amp;lt;backup-name&amp;gt;/system.ext4.win.md5
&lt;/pre&gt;&lt;p&gt;Where &lt;tt class="docutils literal"&gt;&amp;lt;key&amp;gt;&lt;/tt&gt; is a generated(?) key/name for the folder containing
the backups and &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;&amp;lt;backup-name&amp;gt;&lt;/span&gt;&lt;/tt&gt; is the name of the backup.
There are three separate files to secure.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="install-cyanogenmod"&gt;
&lt;h2&gt;Install CyanogenMod&lt;/h2&gt;
&lt;div class="section" id="download"&gt;
&lt;h3&gt;Download&lt;/h3&gt;
&lt;p&gt;There are pre-built releases available for download.
Since the stable 10.0 version does &lt;em&gt;not&lt;/em&gt; support Asus 4.2.x boot loader,
install the 10.2 version from the &lt;a class="reference external" href="http://download.cyanogenmod.org/?type=nightly&amp;amp;device=tf300t"&gt;TF300T nightlies&lt;/a&gt;.
To download the 10.2 version (and compare the checksum):&lt;/p&gt;
&lt;pre class="code shell-session"&gt;&lt;a name="rest_code_9541fcb7d2834c78934237abee0cec1a-1"&gt;&lt;/a&gt;&lt;span class="gp"&gt;$&lt;/span&gt; wget http://download.cyanogenmod.org/get/jenkins/47682/cm-10.2-20131115-NIGHTLY-tf300t.zip
&lt;a name="rest_code_9541fcb7d2834c78934237abee0cec1a-2"&gt;&lt;/a&gt;&lt;span class="gp"&gt;$&lt;/span&gt; md5sum cm-10.2.-20131115-NIGHTLY-tf300t.zip
&lt;/pre&gt;&lt;/div&gt;
&lt;div class="section" id="install"&gt;
&lt;h3&gt;Install&lt;/h3&gt;
&lt;p&gt;On the device, there should be a partition &lt;tt class="docutils literal"&gt;/sdcard/&lt;/tt&gt;
(even if the device does not have a removable SD-card).
Use &lt;tt class="docutils literal"&gt;adb&lt;/tt&gt; to place the downloaded or self-built &lt;em&gt;CyanogenMod&lt;/em&gt; release
into the root of &lt;tt class="docutils literal"&gt;sdcard&lt;/tt&gt;.&lt;/p&gt;
&lt;pre class="code shell-session"&gt;&lt;a name="rest_code_b7732f09aaca40379415c46f83006529-1"&gt;&lt;/a&gt;&lt;span class="gp"&gt;$&lt;/span&gt; adb push RELEASE.zip /sdcard/
&lt;/pre&gt;&lt;p&gt;Boot the device in recovery mode:&lt;/p&gt;
&lt;pre class="code shell-session"&gt;&lt;a name="rest_code_b6875985e3a146a3a9d8464a4f7693f3-1"&gt;&lt;/a&gt;&lt;span class="gp"&gt;$&lt;/span&gt; adb reboot recovery
&lt;/pre&gt;&lt;ul class="simple"&gt;
&lt;li&gt;Select The &lt;em&gt;Wipe&lt;/em&gt; and perform a factory reset.
&lt;a class="reference external" href="http://teamw.in/whattowipe"&gt;http://teamw.in/whattowipe&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Select &lt;em&gt;Install&lt;/em&gt; and choose the &lt;em&gt;CyanogenMod&lt;/em&gt; release to be installed.&lt;/li&gt;
&lt;li&gt;after the install is complete, select &lt;em&gt;Reboot Now&lt;/em&gt; to boot into
the new operating system.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That's it - &lt;em&gt;CyanogenMod&lt;/em&gt; should now be running on the tablet.&lt;/p&gt;
&lt;img alt="CyanogenMod 10 boot-logo" class="img-rounded" src="http://akeil.net/images/cyanogenmod-10-boot-animation-logo.png"&gt;
&lt;p&gt;The boot-screen of your tablet with CyanogenMod installed.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="more-information"&gt;
&lt;h2&gt;More Information&lt;/h2&gt;
&lt;p&gt;Blog post describing the unlock process:
&lt;a class="reference external" href="http://blog.askseb.com/1567-unlocking-and-rooting-asus-transformer-tf300-with-android-4-2/"&gt;http://blog.askseb.com/1567-unlocking-and-rooting-asus-transformer-tf300-with-android-4-2/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;XDA wiki page:
&lt;a class="reference external" href="http://forum.xda-developers.com/wiki/ASUS_Transformer_Pad/TF300T"&gt;http://forum.xda-developers.com/wiki/ASUS_Transformer_Pad/TF300T&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Some forum threads related to the boot loader compatibility problem:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="http://forum.cyanogenmod.com/topic/76800-wont-reboot-into-recovery/#entry417672"&gt;http://forum.cyanogenmod.com/topic/76800-wont-reboot-into-recovery/#entry417672&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="http://forum.xda-developers.com/showthread.php?t=2265155"&gt;http://forum.xda-developers.com/showthread.php?t=2265155&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="http://forum.xda-developers.com/showthread.php?t=1668173&amp;amp;page=47"&gt;http://forum.xda-developers.com/showthread.php?t=1668173&amp;amp;page=47&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;&lt;/div&gt;</description><category>android</category><category>cyanogenmod</category><guid>http://akeil.net/posts/install-cyanogenmod-on-asus-tf300t.html</guid><pubDate>Sat, 16 Nov 2013 19:00:00 GMT</pubDate></item></channel></rss>