ALT Mobile/Портативные приставки Anbernic

Материал из ALT Linux Wiki
Внимание! ЭТО ЧЕРНОВОЙ НАБРОСОК ИНСТРУКЦИИ, СОЗДАННЫЙ ДЛЯ СОХРАНЕНИЯ ОСНОВНОЙ ИНФОРМАЦИИ! ОН БУДЕТ В ДАЛЬНЕЙШЕМ ИЗМЕНЯТЬСЯ И ДОПОЛНЯТЬСЯ. НА ДАННЫЙ МОМЕНТ ЕГО ЛУЧШЕ НЕ ПРИМЕНЯТЬ!


Данная инструкция описывает процесс подготовки игровых приставок Anbernic для запуска на них ОС Альт, в частности, ALT Mobile

Возможность запуска была протестирована на следующих моделях приставок:

- Anbernic RG 552
- Anbernic RG 353M

К превеликому сожалению, на текущий момент (31 мая 2024 года), для успешной загрузки и запуска ОС семейства АЛЬТ на данных устройствах придётся затереть стоковый Android вместе с загрузчиком, ибо ни с чем, кроме стоковой прошивки от самой Anbernic, а также костылями с разбивкой карты памяти и патчами для загрузчика, они нормально не дружат.

Подход 1 - простой.

Для него ещё понадобится карта памяти объёмом от 128 гигабайт, если мы хотим в будущем восстановить стоковый Android. Если же сохранения Android не планируется, то пункты с 4 по 7 можно проигнорировать.

0. Переводим устройство в режим Recovery, зажав при запуске клавишу увеличения громкости. Мы попадаем в меню восстановления системы.

Подключаем устройство к ПК через разъём, который подписан как OTG.

1. Устанавливаем android-tools:

su -

apt-get install andriod-tools

2. Вводим одну за другой команды, дожидаясь завершения выполнения каждой из них.

adb devices - Ищем наше устройство. Должна появиться строка к кодовым номером и названием "Recovery"

adb root - получаем привелегии суперпользователя на системе устройства

adb shell - заходим в устройство

3. Ищем блочное устройство памяти, которое будем затирать.

ls /dev/block/ | grep mmcblk

Встроенная память определится как /dev/block/mmcblkX, с кучей разделов.

4. Вставляем карту памяти во второй слот, она определится как /dev/block/mmcblkY, с одним разделом.

5. Монтируем раздел нашей карты памяти:

mount /dev/block/mmcblkYp1 /mnt

6, Создаём образ с содержимым eMMC

dd if=/dev/block/mmcblkX of=/mnt/android_rg552.img

Создание образа будет долгой (объём встроенной памяти - 64 гигабайта).

7. После завершения процесса отмонтируем карту памяти

umount /mnt

и вынимаем карту из приставки

8. Начинаем затирание встроенного ПЗУ

dd if=/dev/zero of=/dev/block/mmcblkX bs=4M

И ждём, пока утилита нам не скажет, что место закончилось.

Вот и всё. По идее, теперь Альт должен загрузиться с карты памяти без проблем.

Подход 2 - Сложный.

При применении данного подхода можно морально попрощаться с гарантией, а в случае неправильного выполнения действий - и с самой приставкой :)

Подготовка железа (на примере RG 552)

1. Выкручиваем четыре шестигранных винта на задней крышке

2. Снимаем крышку, аккуратно отщёлкивая защёлки.

3. Выкручиваем внутренние винтики, удерживающие плату в корпусе

4. КРАЙНЕ АККУРАТНО отключаем все провода и шлейфы.

5. Аккуратно отключаем аккумулятор и переворачиваем плату.

6. Откручиваем 4 винтика, которые держат радиатор. Возвращаем плату в прежнее положение и снимаем радиатор с кулером.

7. У верхнего правого угла платы находим надпись "DEBUG". Рядом с ней находятся 4 контактные площадки.

8. АККУРАТНО припаиваем тонкие проводочки (можно взять из витой пары) к 3-м из 4-ёх: GND (земля), RX и TX

9. Выводим проводки наружу. Можно проделать отверстие или просто аккуратно обрезать пластик по краю корпуса

10. Производим сборку в порядке, обратном разборке.

11. Подключаем проводочки согласно распиновке к TTL адаптеру.

Подготовка ОС

1. Записываем на карту памяти образ ALT Mobile

2. Монтируем штатными средствами ОС карту памяти.

3. Правим с правами root файл /boot/extlinux в корне главного раздела карты памяти - приписываем в строчке fdtdir следующее:

  fdt ../dtb/rockchip/rk3399-rockpro64-v2.dtb

В строчке append прописываем следующее: append root=UUID=<значение UUID нашего накопителя> ro loglevel=3 splash psi=1 console=ttyS2,1500000n8

4. Сохраняем результат, отмонтируем карту памяти и вставляем её в ГЛАВНЫЙ, первый по порядку слот.

5. Подключаемся к TTL консоли: pyserial-miniterm --eol CRLF --raw /dev/ttyUSB0 1500000

6. Включаем приставку и сразу же быстро нажимаем сочетание клавиш Ctrl+C на клавиатуре.

7. Всё, мы попали в командную консоль загрузчика U-Boot.

8. Набираем в этой консоли следующие команды:

 mmc dev 1 - переключаем загрузочное устройство
 run bootcmd_mmc1 - запускаем загрузку с карты памяти

9. Выбираем нужный пункт загрузки с помощью цифр и грузим ОС

Восстановление Android

Для восстановления Android нужно просто вставить карту памяти с образом, примонтировать раздел на карте, и через тот же dd записать содержимое образа в память устройства.