Установка ALT Mobile на портативные приставки Anbernic
Данная инструкция описывает процесс подготовки игровых приставок Anbernic для запуска на них ОС Альт, в частности, ALT Mobile.
Внимание!
Все действия, описанные в данной статье, вы выполняете на свой страх и риск. Автор статьи и сообщество ALT Linux Team, а также ООО "Базальт СПО" не несут ответственность за "окирпиченные" и сгоревшие приставки, затёртые данные пользователя, а также сгоревшие инструменты и прочие последствия.
Статус
Возможность запуска была протестирована на следующих моделях приставок:
на базе RK3399
- Anbernic RG 552
на базе RK3566
- Anbernic RG 353M
- Anbernic RG Arc D и S
Статус поддержки компонентов игровых приставок
Компонент | RG 552 | RG 353M | RG 353P | RG Arc D | RG Arc S |
---|---|---|---|---|---|
Дисплей | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 |
Сенсорная панель | 🟢 | 🟢 | 🟢 | 🟢 | ⚪ |
Wi-Fi | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 |
Bluetooth | ⚪ | 🟢 | 🟢 | 🟢 | 🟢 |
GPU | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 |
Управление | 🟢 | 🟡 | 🟢 | 🟢 | 🟢 |
OTG | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 |
MiniHDMI | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 |
eMMC | 🟢 | 🟢 | 🟢 | 🟢 | ⚪ |
Слоты карт памяти | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 |
Условные обозначения
🟢 Работает
- работает в полном объёме
🟡 Частично
- работает частично
🔴 Не работает
- не работает
⚪ Отсутствует
- не предусмотрено спецификацией
Подготовка карты памяти
Устанавливаем утилиту alt-rootfs-installer
su -
apt-get install alt-rootfs-installer
Скачиваем образ с ядром rocknix:
wget http://beta.altlinux.org/mobile/sisyphus/latest/alt-mobile-phosh-rocknix-20240926-aarch64.img.xz
Вставляем адаптер с картой памяти в порт USB
su -
alt-rootfs-installer --image-in=/путь/до/образа.img.xz --media=/dev/sdX --target=anbernic-rg552-rk3399
NOTE
где /dev/sdX
- путь до нашей карты памяти.
Подготовка приставки
К превеликому сожалению, на текущий момент, для успешной загрузки и запуска ОС семейства ALT Linux на данных устройствах придётся затереть стоковый Android вместе с загрузчиком, ибо ни с чем, кроме стоковой прошивки от самой Anbernic, а также костылями с разбивкой карты памяти и патчами для загрузчика, загрузчик нормально не дружит.
Если мы решаем сделать копию содержимого встроенной памяти приставки, то нам ещё понадобится карта памяти объёмом от 128 гигабайт, чтобы в будущем восстановить стоковый Android. Если же сохранения Android не планируется, то пункты с 4 по 7 можно проигнорировать.
Переводим устройство в режим Recovery, зажав при запуске клавишу увеличения громкости. Мы попадаем в меню восстановления системы.
- Подключаем устройство к ПК через разъём, который подписан как OTG. Все дальнейшие действие производим из под
root
:
su -
- Устанавливаем
android-tools
:
apt-get install android-tools
- Вводим одну за другой команды, дожидаясь завершения выполнения каждой из них.
Ищем наше устройство. Должна появиться строка к кодовым номером и названием "Recovery":
adb devices
Получаем привелегии суперпользователя на системе устройства:
adb root
Заходим в устройство:
adb shell
- Ищем блочное устройство памяти, которое будем затирать.
ls /dev/block/ | grep mmcblk
Встроенная память определится как /dev/block/mmcblkX
, с большим количеством разделов.
Вставляем карту памяти во второй слот, она определится как
/dev/block/mmcblkY
, с одним разделом.Монтируем раздел нашей карты памяти:
mount /dev/block/mmcblkYp1 /mnt
- Создаём образ с содержимым eMMC:
dd if=/dev/block/mmcblkX of=/mnt/android_rg552.img
NOTE
Создание образа будет долгой (объём встроенной памяти - 64 гигабайта).
- После завершения процесса отмонтируем карту памяти.
umount /mnt
и вынимаем карту из приставки
- Начинаем затирание встроенного ПЗУ
dd if=/dev/zero of=/dev/block/mmcblkX bs=4M
И ждём, пока утилита нам не скажет, что место закончилось.
Вот и всё. По идее, теперь ALT Mobile должен загрузиться с карты памяти без проблем.
Восстановление Android
Для восстановления Android нужно:
- Вставить карту с образом Android во второй слот приставки. Запустить терминал и перейти в режим рута:
su -
- Посмотреть список блочных устройств:
lsblk
Накопитель объёмом 58,2G с названием, схожим с mmcblkXboot1
, и есть наша встроенная память, а устройство вида /dev/mmcblkApB
с одним разделом без точки монтирования - карта памяти с образом.
- Примонтировать раздел карты памяти с образом:
mount /dev/mmcblkApB /mnt
- Записать образ стокового Android обратно во встроенную память с помощью dd:
dd if=/mnt/android_rg552.img of=/dev/mmcblkX oflag=direct,sync iflag=fullblock bs=1M status=progress
По завершении записи выключить приставку, вынуть обе карты памяти, и включить устройство. Android должен начать загрузку.
Аппаратные проблемы
Охлаждение чипов ОЗУ
Вследствие то ли ошибки в расчётах, то ли недосмотра, медная площадка радиатора у RG 552 не прилегает к чипам оперативной памяти, в результате чего память начинает быстро и качественно "отваливаться" (замечено автором статьи уже на 3-х приставках), один из симптомов - нежелание утилиты dd записывать данные с флагом "sync" - процесс закончится ошибкой ввода-вывода. Причина неприлегания - крышка "процессора" (SoC), которая возвышается на над чипами памяти 1 миллиметр.
Если начали появляться подобные заскоки, то стоит провести "улучшение" системы охлаждения.
Инструменты
Для проведения профилактики нам понадобятся:
- Отвёртки с наконечниками +1,5 и Т6;
- Спиртовые салфетки или изопропиловый спирт и плотные салфетки, не оставляющие ворсинок (чтобы очистить поверхность чипов);
- Пластиковая карта, медиатор или набор для наклейки экрана смартфона;
- Термопрокладка толщиной 1,5 мм (под давлением она сожмётся и оформит плотный контакт между чипами и радиатором);
- Термопаста для процессора;
Процесс разбора
- Вынимаем карты памяти из слотов;
- Выкручиваем 4 винта отвёрткой Т6;
- Картой или медиатором проходим по периметру корпуса, отщёлкивая крышку приставки;
- Приподняв крышку, аккуратно отсоединяем аккумулятор;
- Аккуратно отсоединяем все шлейфы и провода;
- Откручиваем 11 чёрных шурупов по периметру материнской платы приставки с помощью отвёртки +1,5;
- Вынимаем плату из корпуса и переворачиваем её;
- Откручиваем 4 винта, держащие радиатор, и снимаем систему охлаждения;
- Вот и наши чипы. Убираем старую термопрокладку, протираем чипы от грязи;
- Отрезаем от термопрокладки кусочки нужного размера и накладываем их на чипы памяти. На процессор наносим термопасту;
- Прикручиваем систему охлаждения обратно к плате;
- Собираем приставку в обратном порядке;