The Mer Wiki now uses your Mer user account and password (create account on

Community Workspace/Tegra3/Nexus7

From Mer Wiki
Jump to: navigation, search


Mer on Nexus7

DISCLAIMER: This project is not endorsed or supported by any company. This is purely a community based effort.

This page describes the running Mer on Nexus 7 (see Community_Workspace/Tegra3 for common Tegra3 stuff). There were 2 models release in 2012 based on the Tegra3 SOC: grouper - wifi only and tilapia - cellular

The hardware adaptation is maintained in the project [1]

The Plasma active instructions are quite generic and can be easily adapted to other images as well.

Note: The 2013 Nexus 7 is based on the snapdragon and comes in two varieties: flo - wifi only and deb - cellular

Hardware Adaptation Status

Device Profile Boots Display Touchscreen Wireless Mobile Data H/W Accel. GFX Sensors GPS
Nexus 7 grouper (wifi) Yes Yes Yes Yes N/A Yes kernel, yes unknown
Nexus 7 tilapia (gprs) Yes Yes Yes Yes not tested Yes kernel, yes unknown
Nexus 7 flo (wifi) Yes No unknown unknown unknown No unknown unknown
Nexus 7 deb (cellular) Yes No unknown unknown unknown No unknown unknown

Plasma Active on Nexus7


See Community_Workspace/Tegra3/Nexus7/PA_installation.

Known Issues

See Community_Workspace/Tegra3/Nexus7/PA_Known_Issues



If you have issues with the default keyboard you should give this one a try: To install it just:

  zypper ar -G
  zypper up maliit-active libmaliit-quick
  killall -9 maliit-server

Nemo Mobile

All the major things are working, including accelerated video, OpenGL ES, and window compositing.

Top issues

  • FIXED: X.Org/VT problems, if the display blanks. Run "chvt 2 && sleep 1 && chvt 1" e.g. over ssh to recover.
  • Tearing (doesn't seem to include video/OpenGL ES)

Hardware support

Accelerometer / Gyroscope

All files are in /sys/devices/platform/tegra-i2c.2/i2c-2/2-0068/iio:device0

mpu6050 (sensor in Nexus 7) configuration:

  1. configure buffer: "# echo 10 > buffer/length". 10 is choosen by me at random. -- Glueckself 23:49, 28 January 2013 (UTC)
  2. configure desired axes / values: "# echo 1 > scan_elements/in_*_en". This command has to be run on all desired values, "> in_*_en" is not a valid redirection.
  3. enable buffer: "# echo 1 > buffer/enable"

The data can then be read from in_{accel,anglvel}_{x,y,z}_raw.

Touchscreen rotation

There is a modified mtev driver that supports rotation (via the "Rotation" parameters).

Xinput <= 1.5.4 needs to be installed (>1.5.4 needs a newer xi library). xrandr/xinput values are: normal/3, left/2, inverted/1, right/0.

The UI can then be rotated via xrandr.

Please note that this doesn't support animations. There are also a few issues (half drawn background, some cursor issues).


Build Android /system

First step is to build android see [ASOP instructions]

Extract the build environment then down load drivers

For wifi version dowload grouper drivers and for gprs version the tilapia drivers

extract them into your android build env.

Apply the bionic patch

now use lunch full_grouper-userdebug or full_tilapia-userdebug as appropriate (this step take some time)

you need to tar up the system directory in out/target/product/grouper/ or out/target/product/tilapia/

libhybris packages

I have built libhybris for 4.2.2 tilapia [2]

build an image

See the work on building wayland images.

You will want the libhybris graphics libraries from home:cxl000:branches:nemo:devel:hw:Aandroid:commo, qt5-qtwayland-wayland_egl examples eglfs platform plugin.

Do not include the tegra3 drivers as these should be replaced with the libhybris versions

Extract the system.tar into the root of your nexus nemo.

chown -R root.root system and chmod -R g+r system to fix permissions.

A few things still need to be done manually as they are not yet packaged:

You will need to make to nvidia device read/write to group video /dev/asmem /dev/*nv* /dev/*tegra*

lipstick options need to be set to -platform eglfs

user session environment needs to include



If all goes well you will get the home screen

If the screen is not updated check that libhybrys graphics are working: run test_glesv2

Make sure you have the qt5 versions of lipstick installed


  • some apps display mirrored
  • not many apps availbale
  • no settings ...
Personal tools