ASUS MeMO Pad 7 (ME176C(X))

This article or section does not follow the
Laptop page guidelines
.
Reason:
Hardware table needs IDs (Discuss in
Talk:ASUS MeMO Pad 7 (ME176C(X))
)
Hardware
PCI/USB ID
Working?
SD card
Yes
GPU
Yes
Touchscreen
Yes
Battery
Yes
Audio
Yes
Wi-Fi
Yes
Bluetooth
Yes
USB-OTG
Yes
Sensors
Yes
Backlight
Yes
Camera
No
GPS
No
The
ASUS MeMO Pad 7 (ME176C)
is an x86_64-based Android tablet. With Android 5.0 (Lollipop) it was updated with
UEFI
boot, which makes it possible to boot any Linux distribution on it.
In general, Arch Linux works as-is, but there are additional (custom) packages available for full functionality.
Warning
This packages mentioned in this article are currently no longer updated. If you want to run Linux on this tablet, also take a look at
postmarketOS
as an alternative.
Overview
archlinux-me176c
contains a few additional packages that simplify installation and provide additional functionality.
Installation
Warning
This article relies on third-party scripts and modifications, and may irreparably damage your hardware or data.
Requirements
USB-OTG hub with external power supply (or USB-OTG adapter and USB hub with external power supply?)
USB keyboard
USB flash drive
Consider testing Arch Linux installation using UEFI and
systemd-boot
on a desktop PC or VM first.
Boot loader
The tablet can boot using
UEFI
from the internal storage and USB(-OTG). It does not seem to be able to boot directly from an external SD card. However, it is possible to keep only the boot partition on the internal storage and have the root partition on an external SD card for dual/multi boot.
To boot from internal storage you need an UEFI boot loader.
me176c-boot
is a fork of
systemd-boot
with extra features for this tablet. See
me176c-boot - Installation
.
There is not enough space on the
EFI system partition
to use it as a boot partition. Follow
me176c-boot - Setting up an additional ESP partition
to set up a supplemental ESP on the APD (ASUS Product Demo) partition.
Boot the live environment
The default Arch Linux ISO does not contain the packages from
archlinux-me176c
. Therefore, Wi-Fi is not working out of the box.
For convenience there are custom ISO provided in the
archlinux-me176c releases
. They do not differ from the default except that they run with
linux-me176c
and have all me176c packages installed. Look for the latest "archiso" release and download it, then follow
USB flash installation media
to flash it to your USB flash drive.
Connect the USB keyboard and the USB flash drive to the USB hub, enable the external power supply and connect it to the tablet while it is powered off. Keep pressing
F2
to enter the UEFI setup. There is no need to change anything. Navigate to the
Save & Exit
tab and use
Boot Override
to boot from the USB flash drive.
Installation instructions are provided in the
Installation guide
. A few device-specific recommendations and instructions are listed here.
Partitioning
Warning
Do not wipe or re-partition the internal storage!
It may prevent the tablet from booting and makes it difficult to return to Android later.
The internal storage is usually available as
/dev/mmcblk2
, the external SD card as
/dev/mmcblk0
. Check carefully. The internal storage has 16 partitions.
me176c-boot - Example: Dual/multi boot
provides an overview about possible partitioning for dual/multi boot setups.
At the very least, you need a single root partition, and
/boot
on the ASUS Product Demo (APD) partition. If you have not changed the APD file system to
FAT32
yet, do it first:
# mkfs.fat -F32 /dev/disk/by-partlabel/APD
# mount ... /mnt
# mkdir /mnt/boot
# mount /dev/disk/by-partlabel/APD /mnt/boot
Additional packages
Enable
upi_ug31xx.service
(from
me176c-battery
AUR
) if you have chosen to install it.
Boot loader configuration
There is no need to install any boot loader when using
me176c-boot
. However, you need to
create a loader configuration
for your Arch Linux installation. The configuration needs to reside on the main
EFI system partition
. While in the chroot, mount the
ESP
at
/mnt
:
# mount /dev/disk/by-partlabel/ESP /mnt
Then create a new loader configuration in
/mnt/loader/entries
. Make sure to reference the APD partition, correct kernel and additional initrds:
title    Arch Linux
volume   80868086-8086-8086-8086-000000000007
linux    /vmlinuz-linux-me176c
initrd   /acpi-me176c.img
initrd   /initramfs-linux-me176c.img
options  root=PARTUUID=... rw
Consider setting up Intel
Microcode
updates.
Packages
me176c-acpi
AUR
contains a patched
ACPI DSDT
that is necessary for Touchscreen, Bluetooth, Battery/Charging and other functionality. Installs additional initrd
/acpi-me176c.img
.
me176c-firmware
AUR
contains additional Wi-Fi/Bluetooth firmware from the stock ROM.
me176c-factory
AUR
loads the Wi-Fi/Bluetooth MAC address from the
factory
partition and provides
udev
rules/
systemd
units to automatically apply them while booting.
me176c-battery
AUR
provides
systemd
units for the battery daemon
upi_ug31xx
used on the stock ROM. It may be needed for the battery driver to work correctly.
Start/enable
upi_ug31xx.service
.
thermald-me176c
AUR
provides a custom configuration for
thermald
based on values from the stock ROM.
Start/enable
thermald-me176c.service
instead of
thermald.service
.
These packages are maintained on
GitHub
and are available through the
AUR
. Older versions are available on
GitHub Releases
.
me176c-factory
With
me176c-factory
AUR
installed, the Wi-Fi/Bluetooth MAC address is loaded from the
factory
partition during the boot process and applied to the controllers. This is necessary for Bluetooth to work, because it does not have a unique MAC address otherwise. If you would like to use
MAC address spoofing
you may need to disable this feature by
masking
me176c-factory-wifiaddr@wlan0.service
and/or
me176c-factory-bdaddr@hci0.service
. The MAC addresses are loaded using
me176c-factory.service
and are available in
/run/me176c
. See
me176c-factory
.
Tips and tricks
Swap
The tablet has only very little RAM, so you almost certainly want to set up some kind of
swap
space. However, keep in mind SD cards are slow and flash storage in general has only a limited amount of write cycles. Using it as swap space may kill it quickly. An alternative is
zram
, which compresses parts of the RAM to provide additional space at the cost of higher CPU usage.
Audio
Warning
The speaker volume can be set higher than supported by the hardware. Setting it to very high values may damage the speakers or cause distortions.
Unless you are using
PulseAudio
, you need to configure a few
ALSA
mixers to make audio working. This is done using
alsaucm
:
# alsaucm -i -c bytcr-rt5640
alsaucm>> reset
alsaucm>> set _verb HiFi
alsaucm>> set _enadev Speaker
Using
ALSA
some audio files (especially MP3/AAC) are not played correctly when converted to
float
format instead of
s16
. This does not happen when using
PulseAudio
.
Screen rotation
See
Tablet PC#Screen rotation
.
Hall sensor
If you have a case that closes magnetically and automatically wakes/puts the device to sleep, it may trigger too early/often and suspend your device unexpectedly. To disable this, edit
/etc/systemd/logind.conf
with
HandleLidSwitch=ignore
.
See also
Wireless network configuration
Tablet PC
Power management
See also
XDA-Developers Forum Thread
Project Overview for ASUS MeMO Pad 7 (ME176C(X))
archlinux-me176c
(source code for packages)
me176c-boot
(documentation, examples and source code)
linux-me176c
(shared code and Linux kernel source code)