me176c-boot is a custom, unlocked bootloader for the ASUS MeMO Pad 7 (ME176C(X)). It consists out of a fork of systemd-boot, a simple UEFI boot manager and android-efi, a simple bootloader for Android™ boot images.
- Boot into Android, Recovery and Fastboot
- Unlocked bootloader, can boot into custom ROMs
- Completely open-source and custom built for ASUS MeMO Pad (ME176C(X))
- Flexible configuration to add further boot targets (e.g. Linux dual boot)
- Make sure that you are running Android 5.0 (Lollipop).
- Download and unpack
esp.zipfrom the latest release. - Make sure you have Fastboot installed.
- Boot the tablet into Fastboot mode: On the stock ROM, press
Volume Down+Power, and release thePowerbutton once the backlight turns on. - Connect the tablet to your PC, and verify that it shows up in
fastboot devices. - Flash the new EFI System Partition (ESP) extracted from the downloaded ZIP:
fastboot flash ESP esp.img - Recommended: Configure the bootloader to use the stock charger for offline mode charging
By default, the bootloader will boot into the main Android system. You can recognize the bootloader by the green Android robot that is shown on boot.
Press Volume Down while booting to show the boot menu. Navigate through the menu with the Volume Down key.
Press Volume Up to select an option. The Power button is not working inside the boot menu.
You can access the (systemd-boot) configuration files from Recovery:
go to Mount and select EFI System Partiton (ESP).
Then you can access the ESP using ADB at /esp.
Here are some links with more information how to configure the bootloader:
systemd-booton ArchLinux Wiki- android-efi README
(
androidboot type is supported in me176c-boot)
There is an additional volume option in me176c-boot that allows booting from
other partitions on the internal storage, based on their GPT partition UUID.
The partition needs to be formatted as FAT32.
- Using the stock charger (recommended)
- Booting into main OS on charger insertion
- Dual/multi boot (e.g. Android and Linux)
The "BIOS" of the tablet can boot from the internal storage and USB(-OTG). It does not seem to be able to boot directly from external SD cards. However, it is possible to keep most of the system on the external SD card by placing only the kernel (the boot partition) on the internal storage.
The EFI System Partition (ESP) is severely limited in its size (only 16 MiB), which is usually not enough to keep more than one Linux kernel. That's why me176c-boot supports booting from other partitions on the internal storage.
There is an unneeded APD (ASUS Product Demo) partition on the tablet, which has a reasonable amount of storage (~300 MiB) and is therefore ideal as additional ESP partition. It contains a few demo product images/media files that are only used for the "demo mode" on the stock ROM.
-
Boot into TWRP recovery and make a backup of the
APD (ASUS Product Demo)partition. Store in it a safe place in case you want to restore it. -
Wipe the APD partition, and change its file system to FAT32.
-
Place the EFI application (e.g. Linux) on the APD partition, and use it in a boot target using the
volumeoption:# Partition UUID of the APD partition volume 80868086-8086-8086-8086-000000000007
In some cases booting may fail or you make a mistake during the installation. In this case, first power off
the tablet by holding the Power button until it turns off.
Even with the bootloader entirely broken, you can still boot into Fastboot mode using the rescue mode ("DNX mode").
- Download the stock ROM (
UL-K013-WW-12.10.1.36-user.zip) - Extract
esp.zipanddroidboot.imgfrom the downloaded ZIP. - Extract
EFI/Intel/efilinux.efifromesp.zip. - Press
Volume Up+Volume Down+Poweruntil "Fastboot starting..." shows up on the display. - Connect the tablet to your PC, and verify that it shows up in
fastboot devices. -
fastboot flash osloader efilinux.efi fastboot boot droidboot.img
git clone --recursive https://github.com/me176c-dev/me176c-boot.git./build-esp.sh(some commands require root, make sure you can usesudo)esp.imgandesp.zipare in thebuilddirectory
This repository contains 3 separate components:
- bootstrap (
EFI/BOOT/bootx64.efi): See bootstrap. - systemd-boot (
systemd-bootx64.efi): A submodule that points to the current version of the systemd-boot fork. - android-efi: (
android.efi): The bootloader that boots into Android boot images.