Разработчик портировал Android 12 на Raspberry Pi 4 B, Pi 400 и Compute Module 4
Наиль Садыков
Android 12 сейчас повсюду - будь то в виде официальных обновлений от OEM-производителей или через кастомные прошивки, созданные сообществом. В практике установки кастомного ПО мы часто натыкаемся на креативных разработчиков, которым нравится преодолевать формальный барьер и пытаться загрузить последнюю итерацию Android на устройства, которые изначально не предназначались для работы под управлением Android. Старший член XDA KonstaT - один из таких разработчиков, которому удалось перенести Android 12 на устройства семейства Raspberry Pi 4.
Если у вас есть Raspberry Pi 4 Model B или Pi 400 Personal Computer Kit, то теперь вы можете установить на них Android 12 благодаря неофициальной прошивке LineageOS 19.0, скомпилированной KonstaT. Compute Module 4 также совместим с этим портом, хотя вам следует выбрать вариант с 2 ГБ ОЗУ и подключить его к совместимой плате, чтобы раскрыть весь потенциал прошивки. Имейте в виду, что команда LineageOS еще не внедрила большинство своих эксклюзивных функций поверх кодовой базы AOSP 12, поэтому на данный момент она практически не обновлена.

Из того, что действительно работает из коробки, можно отметить, что аудио/видео выходы, аппаратное ускорение графики, Wi-Fi, Bluetooth и сеть через ethernet работают просто отлично. Драйвер камеры внедрен частично, т.е. USB веб-камеры UVC, поддерживающие формат Motion JPEG, также должны работать. Тем не менее, иногда загрузка с USB может быть нестабильной, а аппаратное кодирование и декодирование видео на данный момент вообще не работает. Другими словами, мы бы рекомендовали попробовать это только в том случае, если вы знаете, что делаете, и у вас есть запасная SD-карта для экспериментов.
Полный список рабочих функций этой прошивки можно найти ниже:
- Аудио (HDMI, 3,5 мм разъем, USB микрофоны, Bluetooth колонки/наушники и т.д.)
- Аудио ЦАП (с использованием GPIO ЦАП, например, Hifiberry DAC+)
- Bluetooth (и Bluetooth раздача интернета)
- Интерфейс ввода/вывода общего назначения (GPIO)
- GPS (с использованием внешних USB-модулей, например, U-Blox 7)
- Ethernet
- Аппаратное ускорение графики (V3D, OpenGL и Vulkan)
- Дисплей HDMI (и HDMI-CEC)
- Интерфейсная шина I2C
- ИК-пульты (с использованием внешних GPIO ИК-модулей, например, TSOP4838)
- Часы реального времени RTC (с использованием внешних модулей GPIO I2C, например, DS3231)
- Датчики (с использованием внешних модулей GPIO I2C, например, MPU6050, LSM6DS3, LSM303DLHC & BME280/BMP280 акселерометр/гироскоп/магнитометр/температура/давление/влажность)
- Последовательная консоль (с использованием внешних адаптеров последовательной консоли GPIO, например, PL2303)
- Последовательный периферийный интерфейс (SPI)
- Сенсорный экран/мультитач (сенсорные экраны USB, сенсорные экраны Waveshare SPI)
- USB (мышь, клавиатура, накопители и т.д.)
- USB-C (ADB, MTP, PTP, USB tethering)
- Wi-Fi (и Wi-Fi раздача)
Если вы являетесь разработчиком и ищете исходный код ядра, соответствующий этому порту, вы можете найти его в профиле разработчика на GitHub. Мы надеемся, что доступность исходников проложит путь для портирования других популярных кастомных прошивок на базе Android для устройств семейства Raspberry Pi. Чтобы узнать больше, посетите тему XDA по ссылке ниже.