Here’s my build of LineageOS 14.1 for Raspberry Pi 3 Model B. It is unofficial and unsupported by the LineageOS team. It’s for advanced users only.
Do not mirror my builds! Please post a link to this page instead.
- peyo-hd and everyone who’s contributed to android-rpi
- LineageOS team & everyone who’s been working on CM14.1
How to install:
- Follow the official Raspberry Pi instructions for writing the image to the SD card.
Q: I can’t find developer options, why?
A: Settings -> About phone -> Click ‘Build number’ several times
Q: I don’t have reboot options in power menu, why?
A: Settings -> Developer options -> Advanced restart
Q: I have no root, why? What is that hashtag on my status bar?
A: You need enable root access under Settings -> Developer options -> Root access. Root management is now integrated as part of LineageOS’ Privacy Guard and you can manage per app permissions under Settings -> Developer options -> Manage root access. You’ll have a persistent notification in the status bar when you’re running an app that uses root permissions.
Q: I have official 7” LCD display and touchscreen. What should I do?
A: Execute following commands in ‘adb shell’/serial console/terminal (you can enable built-in terminal app from Settings -> Developer options -> Local terminal) and reboot your device:
Q: Settings -> Storage shows xx GB used by system. There’s unallocated space on my sdcard. What should I do?
A: This is a 4 GB image, remaining space on your sdcard will remain unallocated. Settings app shows unallocated space as used by system which in reality it is not. You can use e.g. GParted and extend /data partition (/dev/block/mmcblk0p3) to cover the unallocated space. Resizing the partition manually will break support for encrypting /data. Format /data in TWRP recovery (Wipe->Format data) after resizing to leave required space for crypto footer.
Q: Raspberry Pi doesn’t have power button, how do I power off/reboot my device?
A: Following keyboard keys work as Android buttons: F1 = Home, F2 = Back, F3 = Multi-tasking, F4 = Menu, F5 = Power, F11 = Volume down, and F12 = Volume up. You can also use one of many third party reboot applications.
Q: How to boot to TWRP recovery?
A: There’s currently no proper way to boot between Android and TWRP, but this can achieved by renaming the ramdisk you want to boot. Execute following commands in ‘adb shell’/serial console/terminal (you can enable built-in terminal app from Settings -> Developer options -> Local terminal) and reboot your device:
If mouse cursor doesn’t appear, try replugging your mouse.
Q: How to boot out of TWRP recovery?
A: Flash my recovery2boot zip in TWRP.
Q: How to install Google apps?
- Download open_gapps-arm-7.1-pico-xxxxxxxx.zip and save it to your device’s internal storage or use an external USB drive
- Boot to TWRP recovery (see FAQ)
- Install open_gapps-arm-7.1-pico-xxxxxxxx.zip from your selected storage
- Wipe->Factory reset!
- Boot out of recovery (see FAQ)
Merged commits not mentioned in the changelog.
- include TWRP 3.2.3-0 custom recovery (see FAQ how to boot)
- fix Gallery app crashing (and likely various third party apps as well)
- add support for encrypting the device
- merge AOSP kernel/common android-4.4-n branch to have proper Android Nougat kernel
- update to Linux 4.4.148 kernel and patch known vulnerabilities (CVE-xxxx-xxxx, and more)
- Android security patch level: 5 August 2018 (merged)
- add support for USB webcams (UVC) with third party USB webcam apps
- default to noop I/O scheduler
- update to Linux 4.4.137 kernel and patch known vulnerabilities (CVE-xxxx-xxxx, and more)
- Android security patch level: 5 June 2018 (merged)
- update audio HAL (fix USB microphone, etc)
- add support for external USB GPS dongles (1546:01a7 U-Blox AG, etc - GPS dongle must be plugged-in while booting the device)
- update to Linux 4.4.127 kernel and patch known vulnerabilities (CVE-xxxx-xxxx, and more)
- Android security patch level: 5 April 2018 (merged)
18.1. 2018 changelog:
- add support for I2C devices
- enable Android low-RAM configuration
- add lights HAL to control display brightness from Android on offical RPI display (version 1.1)
- update to Linux 4.4.112 kernel and patch known vulnerabilities (CVE-xxxx-xxxx, and more)
- Android security patch level: 5 January 2018 (merged)
- fix wifi reconnect on boot (thanks to Google)
- update to Linux 4.4.97 kernel and patch known vulnerabilities (CVE-xxxx-xxxx, and more)
- patch recently disclosed BlueBorne and KRACK vulnerabilities (merged)
- Android security patch level: 5 October 2017 (merged)
- update to Linux 4.4.80 kernel
- merge AOSP kernel/common android-4.4 branch to have proper Android kernel
- enable sdcardfs
- add BFQ i/o scheduler and enable it by default
- Jelly browser (merged)
- Android security patch level: 5 August 2017 (merged)
- add support for wifi tethering
- add support for Widevine DRM
- improve Play Store compatibility
- Android 7.1.2 (merged)
- Android security patch level: 5 April 2017 (merged)
- initial relase