Android 12 (AOSP) source code was released last month, and a developer took the opportunity to port Android 12 to the Raspberry Pi 4 single board computer and derivatives.
More specifically, KonstaT created an unofficial build of LineageOS 19.0 for Raspberry Pi 4, Raspberry Pi 400 keyboard PC, and Compute Module 4 working on systems with at least 2GB of RAM.
While it’s reserved for advanced users, the Android 12 build appears to work pretty well with most features supported including:
- Video
- HDMI display including CEC
- Touchscreen/multi-touch (USB touchscreens, Waveshare SPI touchscreens)
- Hardware-accelerated graphics (V3D, OpenGL & Vulkan)
- Audio
- HDMI, 3.5mm jack, USB microphones, Bluetooth speakers/headphones
- Audio DACs such as Hifiberry DAC+
- Connectivity
- Ethernet
- WiFi including tethering
- Bluetooth including Bluetooth tethering
- GPS using external USB modules
- USB tested with
- USB mouse, keyboard, storage, etc…
- USB-C: ADB, MTP, PTP, USB tethering
- I/Os (GPIO, I2C, SPI) tested with
- Remote controls via external GPIO IR modules such as TSOP4838
- RTC using I2C modules like DS3231
- I2C sensors, e.g. MPU6050, LSM6DS3, LSM303DLHC & BME280/BMP280 accelerometer/gyroscope/magnetometer/temperature/pressure/humidity
- Serial console via USB to TTL board
- SPI touchscreen (see Video section)
The only main known issues so far are the lack of hardware video decoding & encoding and the Pi camera does not work. It’s still possible to use software video decoding and encoding, but obviously the resolution/framerate may be limited, and USB UVC webcams using MJPEG should also work, but it’s not been tested yet. SELinux is also in permissive mode, so this test image should not be considered secure, and they should be various issues that may have not been found by users.
Since the image includes parts that are licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International). license it can be used freely for personal and educational use, but not commercial use. KonstaT posted some information on XDA Developer forums, but you’ll find more information including the link to the image, the kernel source code, as well as instructions to install Magisk and support for Google apps on KonstaKANG.com.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
No VPU…worst android device… ever.
Just a teensy itty bitty little problem… NOVIDEO!
Android 12 Pi 4 for Internet radio CONFRIMED.
You could always slap a VPU-containing GPU to CM4, but not many discrete cards are supported under Android.
Hahahah don’t make me laugh please. Even if possible it’s several times cheaper… an android tv box
Except that this has nothing to do with low-cost Ali/eBay-tv box. But, yeah sure if the only use for an Android platform is playing media and you aren’t designing a system for company, go ahead and buy one of those. Having said that, it’s obvious that rpi is a poor choice of hardware for Android
Why there is sooo much focus on that semi industrial/company usage, rpi isn’t an industrial sbc. If you want an industrial grade android/linux sbc they are several tons of options. Rpi can be used for industrial purposes but was never the main purpose… that’s all about a “pi” is.. AKA, non industrial but community driven sbc that focus on learning. So stop with that nonsense. If you want industrial, you consult geniatech, whatever, not rpi.
You can also make an update on box86 or more precisely on his new cousin, box64.
Unfortunatly until v4l2_codec2 is not working the HW decodint will not work. Something for v4l2_camera should already be present tho…
3D and composition are already handled in HW.
Can somebody post a link to the image
The developer specifically asked to not share the link directly.
You’ll need to go to the website listed at the end of the article to find where it is.