Google Nexus 7 2012 (asus-grouper)
Appearance
![]() Galaxy Nexus 7 | |
Manufacturer | Google (ASUS) |
---|---|
Name | Nexus 7 (2012) |
Codename | grouper |
Released | 2012 |
Hardware | |
Chipset | Nvidia Tegra 3 |
CPU | Quad-core 1.2 GHz Cortex-A9 |
GPU | ULP GeForce |
Display | 800x1280 IPS |
Storage | 8/16/32 GB |
Memory | 1 GB |
Software | |
Original software | Android 4.1.2 on Linux 3.0 |
postmarketOS | |
Category | testing |
Pre-built images | no |
Mainline | no |
Flashing |
No data |
---|---|
USB Networking |
No data |
Internal storage |
No data |
SD card |
No data |
Battery |
No data |
Screen |
No data |
Touchscreen |
No data |
Multimedia | |
3D Acceleration |
No data |
Audio |
No data |
Camera |
No data |
Camera Flash |
No data |
Connectivity | |
WiFi |
No data |
Bluetooth |
No data |
GPS |
No data |
NFC |
No data |
Modem | |
Calls |
No data |
SMS |
No data |
Mobile data |
No data |
Miscellaneous | |
FDE |
No data |
USB OTG |
No data |
HDMI/DP |
No data |
Sensors | |
Accelerometer |
No data |
Magnetometer |
No data |
Ambient Light |
No data |
Proximity |
No data |
Hall Effect |
No data |
Haptics |
No data |
Barometer |
No data |
Contributors
- antonok
What works
- Boot process
- Telnet/SSH over USB
- Screen
- USB keyboard, mouse
- Touchscreen
- Wifi (somewhat hacky so far, will improve soon!)
What does not work
- weston-keyboard
Can't boot without reflashing boot (!) [1]Update: Does not seem to be an issue any more- Full-disk Encrpyion. Use
install --no-fde
How to enter flash mode
- Connect a USB cable
- Power the device off
- Hold power + volume down
fastboot
should work when the green android appears on the screen
Installation process:
$ git clone https://github.com/postmarketOS/pmbootstrap
$ cd pmbootstrap
$ ./pmbootstrap.py init
$ ./pmbootstrap.py install --no-fde
$ ./pmbootstrap.py flasher flash_kernel (optional?)
$ ./pmbootstrap.py flasher flash_system
UI options:
- Weston: Boots, but also occasionally reboots on its own.
- Hildon: Boots into a black screen. Poking some
/sys/
variables might make the screen flash or turn on, but it remains unusable - KDE: Never finishes the flash, which in turn wrecks your device partitions. This has happened even with
flasher flash_system --partition userdata
Notes
- I am using the LineageOS kernel found here
- The kernel cannot be compiled on versions of gcc newer than 4.9 without the appropriate patch
- I could not get UART debugging through the headphone jack to work - as far as I can tell, and according to a few other sources I found, the 2012 version of the Nexus 7 does not have this feature.
- CONFIG_VT had to be enabled for graphics to work. In menuconfig this is located under Device Drivers -> Character devices -> Virtual terminal.
/sys/class/graphics/fb0/mode is empty on boot, it must have U:800x1280p-0. This uses the same initfs hook as many other devices.Update: Seems to be correctly set now- xwayland does not work.
- weston with fbdev-backend.so uses pixman-type=3 (PIXMAN_TYPE_ABGR), which now does not require configuration.
- The touchscreen input device is named
elan-touchscreen
. - The wifi chip is the Broadcom 4330.
- This device was once officially supported on Ubuntu, so it has a firmware package in the Ubuntu repositories
- "Desktop" Linux firmware are outdated. Check here for latest one.
- This page includes a list of changes to the Android kernel that are not present in mainline Linux.
I was able to get networking over USB with an RTL8150 ethernet USB adapter by enabling the RTL8150 kernel config and following the network setup guide on the Alpine Linux wiki.Update: Nothing special required anymore. Just boot up and use the DHCP networking process for USB networks- I was able to get wifi working by manually copying fw_bcmdhd.bin and nvram.txt to their kernel-specified locations and configuring
/etc/network/interfaces
. At this point, I ran/etc/init.d/networking restart
, which gave an error about being unable to get a MAC address. I restarted the device to find that wifi Just Worked™, and was able to successfully scan for wireless networks and establish a connection to my secured wireless AP. - A newer kernel, that should work, can be found here (thanks to Jasper in IRC): https://github.com/Unlegacy-Android
Fun fact: grouper
was the first tablet to run pmOS!