Community Workspace/Tegra3/Nexus7

= 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

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
= Plasma Active on Nexus7 =

Installation
See Community_Workspace/Tegra3/Nexus7/PA_installation.

Known Issues
See Community_Workspace/Tegra3/Nexus7/PA_Known_Issues

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

zypper ar -G http://repo.pub.meego.com/home:/wonko:/branches:/Project:/KDE:/Trunk:/Testing/CE_UX_PlasmaActive_armv7hl/home:wonko:branches:Project:KDE:Trunk:Testing.repo 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).

= libhybris/Wayland =

Build Android /system
First step is to build android see [ASOP instructions http://source.android.com/]

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

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

QT_QPA_PLATFORM=wayland

QT_QPA_EVDEV_TOUCHSCREEN_PARAMETERS="rotate=90"

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

Issues

 * some apps display mirrored
 * not many apps availbale
 * no settings ...