
Мое увлечение — коллекционирование и реставрация необычных смартфонов ушедшей эпохи. Недавно в мои руки попал весьма экзотический аппарат 2011 года — бюджетный QWERTY-смартфон Samsung Galaxy Y Pro на чипсете Broadcom. Помимо аппаратной клавиатуры, меня заинтриговало его родство с первым поколением Raspberry Pi. Однако устройство не включалось, намертво зависая на логотипе. Если вам интересна история о «воскрешении» смартфона с отказавшей памятью и переносе всей системы на карту MicroSD — добро пожаловать под кат!
❯ Суть проблемы с eMMC
Проблемы с потерей памяти начали преследовать смартфоны и планшеты с начала 2010-х годов, после массового перехода с NAND на память eMMC. Устройства в один день могли зависнуть и больше не загрузиться, либо бесконечно показывать экран загрузки. Обычные пользователи несли гаджеты в сервис, более продвинутые искали прошивки, но часто это не помогало.

Причина кроется в том, что для загрузки Android необходим доступ минимум к трем разделам: системному (чтение), а также к разделам данных и кэша (чтение и запись). И eMMC, и современная память UFS имеют встроенный контроллер, который отслеживает состояние накопителя. Если контроллер решает, что ресурс флешки исчерпан, он может перевести её в режим «только для чтения». Данные сохраняются, но система не может завершить загрузку, так как не может ничего записать.

В теории всё звучит хорошо: данные целы, сервису нужно лишь считать дамп, записать его на новую микросхему и восстановить устройство. Но на практике случались разные сценарии: некоторые чипы Samsung (2012-2014 гг.) имели фатальную ошибку прошивки, приводящую к полному выходу из строя; иногда eMMC переходил в режим полного «только чтение»; а иногда — частично, когда операции записи не выполнялись из-за отсутствия резервных блоков. В последнем случае смартфон мог даже начать загрузку, но приложения вылетали, а настройки не сохранялись.

Именно с частичным отказом я и столкнулся. В январе пользователь Андрей предложил мне необычный смартфон — Samsung Galaxy Y Pro. После неудачной попытки обновления прошивки аппарат «заблокировался» на заставке. Я с радостью согласился на эксперимент, желая изучить платформу и попробовать перенести систему на MicroSD.

❯ План спасения: загрузка с MicroSD
Получив смартфон, я убедился, что он действительно застрял в bootloop и не реагирует на сброс или восстановление прошивки. Факт, что он показывает загрузочную анимацию, говорит о том, что ядро Linux загружено, и устройство находится на финальной стадии запуска — инициализации zygote и app_process.

Чтобы понять дальнейшие действия, кратко рассмотрим процесс загрузки Android:
BootROM, SPL и загрузчик: При включении контроллер питания подает напряжение, и процессор начинает выполнять код из BootROM — небольшой ПЗУ, прошитой на заводе. Его задачи — аварийное восстановление и загрузка вторичного загрузчика (SPL) из памяти eMMC/NAND. SPL инициализирует оперативную память и передает управление основному загрузчику (bootloader), который загружает ядро Linux. Интересная деталь: чипсеты Broadcom, в отличие от других, не имеют BootROM в классическом понимании — ядро ARM здесь загружается графическим процессором VideoCore, что делает платформу уникальной.
Ядро Linux: Обычно ядро хранится не в сыром виде, а в специальном разделе в формате zImage + ramdisk. Этот ramdisk содержит минимальный набор для запуска: init, иногда busybox. Такие образы можно разбирать и собирать с помощью специальных утилит, например, AndImgTool.
Init: Основной процесс с PID 0 — init — запускает набор скриптов с расширением .rc. Эти скрипты монтируют разделы, запускают службы, настраивают драйверы и свойства системы (из build.prop и default.prop). Именно через настройки в default.prop можно активировать отладку по USB (adb), даже если система не загружается полностью.
App_process (Zygote): После монтирования системного раздела init запускает app_process с параметром zygote. Это ключевой процесс Android, виртуальная машина, которая порождает (fork) все остальные Java-приложения. Его сбой приводит к «мягкой перезагрузке» — бесконечной анимации загрузки.
Завершение загрузки: После запуска всех служб устройство отображает рабочий стол и генерирует событие ON_BOOT_COMPLETE.
Исходя из этого, план по спасению смартфона с «умирающей» eMMC становится ясен: нужно пропатчить загрузочные скрипты так, чтобы разделы данных и кэша монтировались не с внутренней памяти, а с карты MicroSD. Но для этого сама eMMC должна позволять хотя бы частичную перезапись, чтобы обновить загрузочный образ.
Первая попытка установить кастомную прошивку через CWM провалилась с ошибкой, но поведение смартфона изменилось: он завис на логотипе Samsung, не дойдя даже до анимации. Это намекало, что какая-то запись всё же произошла. После прошивки стокового образа анимация загрузки вернулась. Значит, память не полностью перешла в режим «только чтение»!

❯ Включаем отладку и ищем корень проблемы
Я решил активировать режим отладки по USB, чтобы посмотреть логи (dmesg) и понять, что происходит. Для этого с помощью AndImgTool я распаковал образ boot.img, отредактировал файл default.prop, установив ro.secure=0, ro.debuggable=1 и persist.service.adb.enable=1.

В те годы Samsung ещё не блокировал загрузчики, поэтому прошить модифицированный образ было просто: нужно было создать tar-архив с boot.img и залить его через фирменный Odin.

После прошивки смартфон всё так же зависал на анимации, но теперь он определился в системе, и `adb devices` показал подключенное устройство. Это был успех! Значит, раздел boot был перезаписан, и eMMC лишь частично перешёл в режим «только чтение». Вероятно, системный раздел и другие критичные области остались нетронутыми.

Проверив логи (dmesg), я увидел ошибки драйвера eMMC при попытке записи в раздел /data/. Система не могла инициализировать этот раздел, что и блокировало загрузку.

Но в логах фигурировало не привычное mmcblk, а stl11. Заглянув в init.rc, я обнаружил, что Samsung использовала собственную файловую систему RFS и J4FS вместо EXT4 или YAFFS.

Логический вывод был таков: если системный раздел и раздел EFS (с настройками модема) в порядке, а проблема только с разделами данных и кэша, то их можно просто перенести на карту памяти и заставить init.rc монтировать их оттуда!
Обратите внимание: 12 лучших смартфонов Xiaomi.

❯ Практическая реализация
Для этого я взял карту MicroSD и разбил её на три раздела с помощью fdisk: для /data/ (около 30% объема, минимум 256 МБ), для /cache/ (около 64 МБ) и третий — для пользовательских файлов. Первые два раздела были отформатированы в ext2 с помощью mke2fs, третий — в FAT32.

Далее я отредактировал init.rc, добавив новые точки монтирования для разделов с карты памяти, собрал новый boot.img и прошил его.

И… через несколько минут загрузки меня встретил рабочий стол! Радость от успеха была огромной. Конечно, можно усомниться в практичности: MicroSD значительно медленнее eMMC. Но так ли это критично для устройства 2011 года? Давайте проверим.
❯ Знакомство с Galaxy Y Pro и тестирование
Samsung Galaxy Y Pro — уникальный аппарат с QWERTY-клавиатурой и горизонтальным экраном. Лаунчер был адаптирован для управления кнопками, но также присутствовал ёмкостный сенсорный экран. Дисплей использовал TN-матрицу с разрешением 240x320, что было типично для бюджетных устройств того времени.

«Сердцем» аппарата был чипсет Broadcom BCM21553 с ядром ARM1136 (ARMv6) частотой 832 МГц. Отсутствие поддержки ARMv7 существенно ограничивало круг совместимых приложений и игр. Объём оперативной памяти составлял 384 МБ DDR2, встроенной — 512 МБ.

Графику обрабатывало ядро Broadcom VideoCore IV. Его драйверы OpenGL ES были печально известны своим низким качеством, что вызывало графические артефакты или «белые текстуры» во многих играх, оптимизированных под Adreno или Mali.

Интересный факт: аппаратная платформа этого смартфона — близкий родственник первых Raspberry Pi (Model A/B), что добавляет ему коллекционной ценности для энтузиастов.
После переноса данных на MicroSD производительность снизилась незначительно. Устройство работало достаточно плавно для своих лет. Оно всё ещё могло выполнять базовые задачи:
- Сёрфинг в интернете: С помощью старой Opera Mini 7 можно было читать Википедию или Хабрахабр, хотя многие современные сайты отображались некорректно.

- Электронная почта: Встроенный клиент работал, если отключить строгую проверку SSL-сертификатов. Push-уведомлений не было, но проверка каждые 5 минут функционировала.

- Мессенджеры: Официальные клиенты давно не поддерживают Android 2.3, но можно было найти легковесные альтернативы или клиенты, работающие через прокси.

- Игры: Аппаратная клавиатура отлично подходила для Java-игр и эмуляторов ретро-консолей (NES, Sega), которые «летали». С 3D-играми, вроде Raging Thunder 2, были проблемы из-за слабой графики VideoCore IV.

Несмотря на узкий спектр задач, смартфон оказался интересным и очаровательным артефактом своей эпохи.
❯ Итоги и призыв к сообществу
Надеюсь, эта история восстановления необычного смартфона 2011 года была вам интересна и полезна. Если у вас есть вопросы по модификации загрузки с MicroSD — задавайте в комментариях!
Всего голосов:Если вам интересны темы ремонта, модификации и программирования гаджетов последних нескольких лет - подписывайтесь на мой Telegram-канал "baldezh fan club", где я выкладываю закулисье статей, ссылки на новые статьи и видео, а также иногда выкладываю полезные посты и заблокированные посты. Видеоверсию статьи можно найти на моем канале YouTube.
Очень важно! Необходимое оборудование для будущих статей!
Друзья! В рамках подготовки статьи о разработке самодельных игрушек из необычных устройств объявляется поиск телефонов и приставок! В 21 веке китайцы часто выпускают недорогие телефоны с игровой направленностью — обычно у них есть какой-нибудь геймпад (джойстик) или как минимум две кнопки, выполняющие функции A/B на верхней панели устройства, а также предустановлен эмулятор NES/Sega. Фишка в том, что на таких телефонах можно запускать нативный код и портировать на них новые эмуляторы, что я и хочу сделать, написать подробную статью и записать видео об этом! Если у вас есть телефон с таким форматом и вы готовы его подарить или продать, напишите мне, пожалуйста, в Telegram (@monobogdan) или в комментариях. Меня также интересуют Android-приставки для смартфонов (Func Much-01 точно есть на российском рынке), формат контента будет немного отличаться :)

Я также ищу старые (2010-2014) копии смартфонов таких брендов, как Samsung, Apple и т д. Они обычно оснащены очень интересными чипсетами и хорошо поддаются моддингу, несколько статей об этом уже опубликованы, но у меня все еще есть несколько идей по их моддингу! Также, возможно, у кого-то все еще есть один из самых ранних смартфонов Xiaomi (серия Mi), Meizu (все еще использующий Exynos) или телефоны Motorola на базе Linux (такие как EM30, RAZR V8, ROKR Z6, ROKR E2, ROKR E5, ZINE ZN5 и т д. Я хотел бы подготовить специальную статью и видео о них, потому что на самом деле они использовали очень мощные процессоры того времени, допускали серьезный моддинг и даже могли запускать Quake!). Большое спасибо за ваше пожертвование!

Я также поместил все свои телефоны в одну корзину (это значит, что все проекты находятся на одном облачном провайдере) – Timeweb. Вот почему я беззастенчиво рекомендую то, чем пользуюсь сам — добро пожаловать.
[Мое] Голосование Мобильный телефон Смартфон Гаджет Подарок Пожертвование Samsung Galaxy Qwerty Прошивка Модификация Microsd Linux Android Samsung Galaxy Видео Без звука Короткое видео Длинный пост 23Больше интересных статей здесь: Гаджеты.
Источник статьи: Жизнь после отвала eMMC. Часть 3: оживляем уникальный QWERTY-смартфон и загружаем Android с MicroSD.