RETRO MOBILE
3 поста
3 поста
Подписчики часто дарят мне интересные гаджеты, чтобы я написал о них интересную статью и снял ролик. У большинства подаренных устройств есть определённые нюансы, и зачастую они требуют ремонта или хотя бы базового обслуживания.
Недавно подписчица с «Пикабу», Кристина, подарила мне коробку с телефонами своего отца, которые ему уже давно не нужны. И в этой коробке оказался достаточно редкий в наше время гость: кнопочный смартфон RoverPC M5 с Windows Mobile на борту. У смартфона полностью умер аккумулятор, и, что самое обидное, у него неизвестный проприетарный разъём зарядки.
Если вам интересно узнать, как я вызвонил и заменил проприетарный разъём на MicroUSB, решил вопрос с аккумулятором и зачем я собираю смартфоны на Windows Mobile - жду вас под катом!
В жизни каждого читателя так или иначе участвует смартфон. Мы привыкли к гаджетам с огромными OLED-дисплеями, мощными процессорами, большим объёмом оперативной и флеш-памяти. Однако единицы задумываются о том, какими были предки современных технологичных устройств. По сути, концепция современного смартфона появилась ещё в самом начале нулевых годов — с момента появления WM-коммуникаторов:
Вообще, первым смартфоном принято считать IBM Simon. Но первым смартфоном, близким к концепции современных устройств был Qtek 1010 2002 года выпуска. Подарок от подписчика Андрея, отреставрирован.
В большинстве своём коммуникаторы представляли из себя КПК на Windows Mobile с GSM-радиомодулем, благодаря которому они могли звонить и выходить в сеть. При этом функционал таких гаджетов мало чем уступал современным смартфонам: они могли «серфить» полноценный веб, запускать нативные программы, а также игры и легко поддавались моддингу. Например, для QTek S100, коммуникатора 2004 года выпуска, можно легко найти WM 6.5 2009 года выпуска и даже порт Linux, а для HTC Gene - полноценный порт Android!
QTek S100, который в рамках одной из статей я превратил в S110 путем установки чипов ОЗУ большего объёма.
При этом слово «смартфон» раньше обозначало кнопочный телефон с железом и операционной системой, присущими как раз полноценным коммуникаторам. Самые яркие примеры оригинальных смартфонов — это устройства Nokia с ОС Symbian, а первым Symbian-смартфоном был слайдер — 7650. Ericsson R380 хоть и работал на EPOC, но, в отличие от родственных ему Psion'ов, не позволял запускать произвольный софт и смартфоном считался лишь условно. Symbian запомнилась нам как система с весьма своеобразным API... но до чего же экономная к ресурсам устройства, смартфоны с ней летали даже с 16Мб ОЗУ на борту!
Помимо Nokia, Symbian в своих устройствах использовала Motorola, Benq, Sony Ericsson (все три - по большей части UIQ), а также Samsung и LG (S60)
Кроме Symbian-смартфонов, в 2000-хж на рынке «кнопочников» был ещё один диковинный класс устройств — устройства на ОС Windows Mobile for Smartphone! Это была отдельная ветка WM, разработанная специально для кнопочных телефонов, и, несмотря на практически полную совместимость с Windows CE и обычной WinMobile, далеко не весь софт и игры работали на ней из-за совсем другого UX.
Дело в том, что у Windows Mobile, по сути, был такой же статус, как сейчас у Android — свободная для модификаций система, где можно делать всё что захочешь. Однако при всём этом, WM на уровне API была частично унифицирована с обычной десктопной версией Windows, что позволяло относительно легко портировать программы с ПК. И даже несмотря на отсутствие единого магазина приложений, для обычной WM сделали большое количество самых разных программ, притом что кнопочную версию зачастую софтом обделяли - он либо не запускался, либо был не юзабелен без тачскрина.
i-Mate SP3i, платформа HTC Typhoon. Куплен неделю назад за 250 рублей с пухлым АКБ и нерабочей клавиатурой. Клавиатура прочищена, джойстик пропаян, а аккумулятор перепакован.
Именно поэтому в своё время кнопочные «виндофоны» как-то не прижились: по сравнению с обычными коммуникаторами, таких телефонов было относительно немного. Но сейчас, в 2025 году, я понимаю, что у этих телефонов были просто огромные перспективы: поддержка .NET, API, совместимое с десктопной «виндой», достаточно мощные процессоры, большой объём ОЗУ и иногда даже наличие Wi-Fi... Такие интересные аппараты было бы глупо не заполучить в коллекцию и не попытаться для них сделать что-нибудь интересное в будущем!
И один из таких аппаратов попал в мою коллекцию благодаря подписчице с «Пикабу» — @Christo, которая подарила мне коробку со старенькими коммуникаторами своего отца. Несмотря на почтенный возраст, смартфон смотрелся достойно... но вот нюанс: у него был неизвестный проприетарный разъём для зарядки и синхронизации, а также вспухший аккумулятор, который не хотел принимать в себя заряд.
Восстановление таких смартфонов — отдельное удовольствие, так что я решил написать об этом статью, а заодно и рассказать, на что такие смартфоны способны на практике.
После открытия задней крышки я обнаружил, что в корпусе нет ни одного винтика — кто-то уже, видимо, пытался разобрать смартфон и решить проблему с зарядкой. Разбирается устройство очень просто: выкручиваем 4 винтика (если они есть) и расщёлкиваем клипсы пластиковой картой:
Осмотр разъёма для зарядки ничего не дал. Я пытался найти сервис-мануал, отдельную распиновку по числу пинов, чтобы найти родственный смартфон и кабель для него, но всё было тщетно — здесь использовался какой-то уникальный разъём, характерный именно для этого смартфона:
Поэтому я решил включить логику и осмотреть обвязку около разъёма для того, чтобы хотя бы примерно понять его распиновку. Итак, дан 12-пиновый разъём в телефоне, где нет аудиоджека. Значит, какая-то часть линий будет отвечать за вывод звука и определение того, что наушники были подключены. Остальная часть линий будет отвечать за зарядку — так называемый VCharge/VBus, за USB (D+ и D-, для них тоже может использоваться отдельный пин ACCDET), а также масса и возможно UART.
Я обнаружил два тест-поинта (контактные площадки для отладки и замера напряжений на плате) рядом с разъёмом и сразу же предположил, что они могут отвечать за зарядку. Один звонился на массу, а второй — на ближайший защитный диод. Я выпаял разъём и попытался подать 4,5 В/300 мА на предположительный вход зарядки - VCharge... и не получил никакой реакции.
Поскольку родной АКБ был нерабочим, я сразу же выпаял с него плату защиты — BMS. У Rover M5 АКБ хоть и похож на BL-5C, но по факту с ним не совместим и у него обратная полярность (т.е минус слева, а плюс - справа). Замерив сопротивление между средним контактом и массой, я обнаружил плавающее сопротивление в районе 47кОм, а значит, мы имеем дело с NTC-термистором.
Здесь необходимо важное замечание: на некоторых аккумуляторах средний контакт выполняет функцию BATID — или идентификации используемого аккумулятора. В случае АКБ Nokia и Samsung, средний контакт как раз используется для идентификации, а ранние смартфоны Nokia на платформе WD2 даже отказывались стартовать с BL-4C, просто показывая логотип Nokia без подсветки. На этих телефонах, термистор обычно был установлен прямо на плате, сразу рядом с коннектором АКБ или под аккумулятором.
Но на некоторых телефонах, как в нашем случае, термистор был установлен в BMS и соответственно, при некорректном сопротивлении на среднем контакте, телефон мог показать предупреждение и не дать разрешение на старт зарядки. Так было и в моем случае: я выпаял термистор с BMS и впаял в между массой и средним контактом в самом телефоне. После этого, смартфон начал заряжаться и показывать индикацию при подаче 5В на предполагаемый VCharge!
Далее дело за малым: расчищаем маску под старым разъемом в качестве дополнительного крепежа, подбираем примерно подходящий MicroUSB и распаиваем все на перемычках. Разъем держится отлично и без проблем перенес уже около 5 циклов зарядки. Единственный нюанс: я так и не смог найти USB, предположительно рядом с разъемом есть EMIF-фильтр неизвестной маркировки, но без оригинального кабеля вызвонить USB не выйдет.
Около коннектора АКБ я нашел соответствующие тест-поинты, так что новый аккумулятор, BL-5C, я припаял именно к ТП, дабы сохранить оригинальный внешний вид устройства без особого колхоза. В результате мы получили вот такую красоту!
После того как я похвастался устройством на «Пикабу», мне написал читатель по имени Пётр. Он предложил подарить мне ещё и RoverPC M1 в родной коробочке — за что ему огромное спасибо!
Смартфоны M5 и M1 разработаны одной компанией — Chi Mei Communications. Однако в ранней модели M1, производитель всё-таки сделал нормальный MiniUSB... и всё тот же аккумулятор с обратной полярностью, да ещё и несовместимый с M5!
Фронт работ был почти такой же как и с M5, только коннектор АКБ здесь не был припаян к плате, а прижимался пружинящими контактами. Поэтому я просто припаял термистор, заизолировал контакты и переполюсовал их так, чтобы можно было поставить обычный аккумулятор от Nokia.
И теперь смартфончик снова работает! Несколько часов времени вечером и вот, ещё один крутейший девайс на винде может снова нас порадовать. Но на что были способны такие смартфоны? Давайте посмотрим на практике!
У Windows Mobile for Smartphone был свой собственный, особенный UX, не похожий ни на какую другую программную платформу. По сути, даже в "кнопочную" систему, Microsoft протащили элементы, свойственные именно для десктопной версии винды: например, меню пуск с возможностью добавления новых пунктов путем создания ярлыков в соответствующий папке или экран Today, который поддавался кастомизации виджетами уже в 2005 году.
При этом WM была жестко завязана на ActiveSync и синхронизацию с ПК. С помощью ActiveSync можно было устанавливать cab-пакеты, синхронизировать контакты/почту/SMS/мультимедийную библиотеку, а также обмениваться файлами и всё это через стандартизированный кабель!
Также стоит отметить то, что устройства на WM отлично поддавались моддингу. Никаких секьюрбутов, подписей и шифрований, если прошивка поставляется в формате nb0 - то её легко распаковать обычной "кухней" для образов WinCE. Кастомов на известные устройства было много, некоторые даже можно было купить за деньги, а среди интересных модификаций были: драйвер GPU для устройств с процессорами Qualcomm от HTC, драйвер MMC с поддержкой SDHC и портирование интерфейса HTC Manilla. При этом даже без перепрошивки можно было твикать реестр, а если пользователь не хотел во всем этом разбираться - то даже установленная тема могла значительно преобразить внешний вид устройства.
От современных систем Windows Mobile отличалась тем, что могла запускать любой произвольный софт: можно установить программу из архива cab в /Program Files/, а можно закинуть exe-файл прямо в корень устройства и запустить из стандартного проводника без танцев с бубном. При этом Microsoft уже тогда стремилась к унификации десктопной и мобильной системы, поэтому их нативное API было очень схожим, а программы для .NET Compact Framework можно почти без изменений запустить на обычном .NET. Кто-то скажет что это минус: когда в Symbian ещё не было механизма разрешений, появлялись вирусы и вышло даже два или три коммерческих антивируса под эту ОС. Но, как бы парадоксально не звучало, под WM вирусов было очень мало и никто особо не пытался навредить (при том что испортить реестр было очень легко).
На фото ниже я запустил OmapClock - программу для разгона процессоров TI OMAP без перезагрузки:
Отдельная фишка устройств на WM - настоящая многозадачность. Программа работала в фоне ровно столько, сколько ей было нужно, при этом даже 64Мб ОЗУ хватало для всего - аська, Windows Media Player, Java-приложение в фоне и Pocket IE. Программы для WM потребляли очень мало ОЗУ - в среднем 1Мб (кроме игр, конечно) и люди с 128Мб чувствовали себя как... владельцы ПК с 64Гб DDR5 в наше время. А что уж говорить о владельцах HTC HD2 T-Mobile с 576Мб ОЗУ...
У WM не было менеджера памяти как в современных смартфонах, поэтому через 2-3 часа простоя, браузер не превращался в "скриншот" в таск-менеджере как на iPhone и продолжал хранить в памяти всю страницу ровно столько, сколько нужно было.
В WM были предустановлены порты многих стандартных программ с десктопной Windows, например Windows Media Player с поддержкой MP3 до 320Кб/с (привет Siemens x65/x75, которые без аппаратного декодера не умели в MP3 без аудиохука), а также MP4/WMV/3GP (фильмы все равно приходилось конвертировать, если не было GPU).
Ну и куда без игр! Многие смартфоны легко тянули эмуляторы ретро-консолей: NES, GameBoy, некоторые кряхтя тянули даже Sega Mega Drive, а самые мощные коммуникаторы позволяли с фреймскипом поиграть в игры с PS1. При этом было несколько рантаймов для запуска игр с других мобильных платформ: JBed/JBlend для J2ME-игр (при этом сборок с разными JSR было просто немеренно, некоторые поддерживали 3D, некоторые BT и т.п) и Mophun для запуска игр для Sony Ericsson T-серии.
И конечно были нативные игры, которые зачастую были не хуже чем версии для Symbian. Например, Asphalt 4 или NFS Undercover выглядели отлично для устройств без GPU, а единичные релизы поддерживали даже 3D.
Как мы с вами видим, даже проприетарный разъем зарядки и обратная полярность коннектора АКБ не могут стать преградой для того, чтобы снова вернуть в строй интересные гаджеты. Я начал собирать коллекцию кнопочников на винде и сметаю с онлайн-барахолок коммуникаторы по низу рынка, которые стараюсь восстановить. Кто знает, может рано или поздно мне взбредет в голову и я реализую клиенты ВК и ТГ для таких смартфонов, чтобы походить с ними как с основными...
К слову, в ближайшее время будет чуточку больше контента о мобильной винде. Недавно я сделал Interop Unlock на своей Lumia 800 и принялся изучать, почему же в Xna на WP7 не было шейдеров, когда GPU их поддерживал. То, что я увидел — достойно отдельной статьи :)
А если вам интересна тематика ремонта, моддинга и программирования для гаджетов прошлых лет — подписывайтесь на мой Telegram-канал «Клуб фанатов балдежа», куда я выкладываю бэкстейджи статей, ссылки на новые статьи и видео, а также иногда выкладываю полезные посты и щитпостю. А видеоверсии статей можно найти на моём YouTube канале.
Очень важно! Разыскиваются девайсы для будущих статей!
Друзья! Для подготовки статей с разработкой самопальных игрушек под необычные устройства, объявляется розыск телефонов и консолей! В 2000-х годах, китайцы часто делали дешевые телефоны с игровым уклоном — обычно у них было подобие геймпада (джойстика) или хотя бы две кнопки с верхней части устройства, выполняющие функцию 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. Потому нагло рекомендую то, чем пользуюсь сам — вэлкам.
Есть у меня страсть к коллекционированию и ремонту интересных смартфонов прошлых лет. Недавно подписчик подарил мне весьма диковинный и необычный гаджет 2011 года: бюджетный QWERTY-смартфон Samsung Galaxy Y Pro с чипсетом от Broadcom. Помимо самого факта того, что смартфон обладал QWERTY-клавиатурой, меня также заинтересовало его кровное братство с Raspberry Pi первого поколения. Но вот незадача, смартфон не включался и просто висел на логотипе. Если вам интересен необычный кейс "отвала" eMMC и переноса Android на MicroSD-флэшку - жду вас под катом!
Проблема "отваливающейся" памяти преследует смартфоны и планшеты с начала 2010х-годов. После массового перехода с NAND-накопителей на eMMC, многие смартфоны начали страдать от того, что в один прекрасный день зависали и затем больше не включались... или же включались, но бесконечно висели на заставке. Обычный пользователь нёс смартфон в сервисный центр, более продвинутый шёл на профильные ресурсы и скачивал прошивку... чтобы с грустью обнаружить, что ничего не помогает и смартфон всё так же висит на логотипе.
Происходит это из-за того, что для загрузки системе необходим доступ как минимум к трём разделам: system для чтения, а также data и cache для чтения и записи. У eMMC и современной UFS-памяти есть свой собственный контроллер в чипе, который по своим собственным параметрам определяет S.M.A.R.T накопителя и, если по его мнению, флэшка уже близка к "кончине", просто переводит её в режим Read only, из-за чего данные пользователя остаются на месте, но смартфон уже больше никогда не загрузится без вмешательства специалиста.
В теории всё замечательно: данные на месте, в сервисе просто вычитают дамп старой флэшки, подберут такой же или совместимый по корпусу новый чип, а затем запишут на него дамп и восстановят все данные без потери. Но на практике бывают определенные казусы: например, у некоторых чипов Samsung 2012-2014 года был баг в прошивке, из-за чего они полностью умирали с потерей всех данных, после чего смартфон вообще не подавал никаких признаков жизни (примеры: Galaxy S4 Mini в 9008, S4 Zoom, Note N8000), иногда eMMC просто уходила в полный ReadOnly (HTC Desire SV и некоторые другие HTC'шки 2011-2012 годов), а иногда чип уходил в ReadOnly лишь частично - операции записи просто заканчивались неудачей (предположительно из-за того, что бэды ремаппить уже просто некуда) и смартфон даже мог загрузится... правда все приложения постоянно крашились, а настройки телефон не сохранял.
Примерно так вышло и в моём случае. В январе, подписчик Андрей предложил подарить мне весьма необычный смартфон - Samsung Galaxy Y Pro. Читатель попытался его перепрошить, однако смартфон всё так же продолжал висеть на заставке. Конечно я согласился, причём мне из принципа хотелось разобраться в платформе и при возможности перенести всю систему на MicroSD-флэшку.
После того как смартфон приехал ко мне, я убедился в том, что он действительно висит в бутлупе и никак не реагирует ни на сброс до заводских настроек через рекавери, ни на прошивку. Смартфон всё также продолжал висеть на бутанимации - а значит мы можем сделать вывод, что ядро Linux уже загрузилось и сам смартфон перешёл в последнюю фазу загрузки - запуск zygote и "отпочковывание" от него app_process.
Чтобы понять, что всё это значит - давайте вкратце рассмотрим процесс загрузки Android:
Старт BootROM, SPL и загрузчика: После включения смартфона или подключения ЗУ, контроллер питания даёт разрешение на запитывание всех модулей устройства. После этого, процессор начинает выполнять код загрузчика, однако поскольку ни NAND, ни eMMC не поддерживают XIP (eXecute In Place - возможность подключить флэшку прямо в шину процессора, на манер ROM в спектруме), первым делом процессор выполняет код из BootROM - небольшого, физически прожженного в небольшую ROM-память на заводе загрузчика, в задачи которого входит экстренный режим восстановления при окирпичивании устройства (MTK USB Port на MediaTek, 9008 на Qualcomm, FEL на AllWinner) и загрузка вторичного загрузчика из eMMC/NAND - SPL (на MediaTek называется Preloader). В его задачи входит инициализация ОЗУ и передача управления вторичному загрузчику - тот самый, который вы, возможно, захотите разблокировать и который загружает ядро Linux.
Но вот нюанс, на чипсетах Broadcom BootROM'а нет: там запуском ARM-ядер занимается GPU VideoCore, который по своей натуре - векторный DSP! Так что Y Pro интересен ещё и этой малозначимой, но забавной деталью :)
Linux: Обычно ядро хранится не в сыром виде, а в специальном разделе boot/recovery и представляет из себя образ zImage + рамдиск. На этом рамдиске хранятся минимально-необходимые для старта устройства программы: init, busybox (не всегда) и... всё!
Формат таких образов условно стандартизирован и их можно разобрать и собрать с помощью специальных программ. Например, AndImgTool!
init: Далее самая главная программа с PID 0 - init, запускает набор скриптов в корне рамдиска с расширением .rc. В скриптах содержатся обработчики событий (early-boot, boot, late-boot и т.п), а также список служб для запуска. В скриптах идёт монтирование разделов, запуск служб если это нужно, создание ссылок, загрузка динамических модулей и конфигурация драйверов/ядра, а также режима USB и adb. Помимо этого, init отвечает за properties - свойства в build.prop, а также default.prop, которые позволяют включить adb даже если устройство не загружается. Это нам позже пригодится.
app_process: После того, как раздел system примонтирован, RIL запущен и другие важные операции выполнены - rc-скрипт запускает наконец-то app_process с параметром zygote. Это самый важный процесс в Android, его краш ведет к "мягкой перезагрузке" - т.е появлению анимации загрузки и появлению рабочего стола. app_process - это как-бы Java-машина Dalvik (или ART в Android 5.1+), аналог java.exe, только размножается она методом почкования - с помощью системного вызова fork.
Ну и когда все службы работают - устройство показывает рабочий стол и вызывается событие ON_BOOT_COMPLETE.
Да, всё вот так просто. Итак, основываясь на сказанном выше, как мы можем перенести Android на MicroSD? Правильно, пропатчив скрипты загрузки так, чтобы они монтировали систему и раздел data с cache не с внутреннего накопителя, а с флэшки. Но для патча необходимо чтобы eMMC была хоть сколь-либо перезаписываема.
Сначала я попытался установить кастомную прошивку с помощью CWM (он здесь не перепрошивается навсегда, а запускается с помощью бага в update.zip) и заметил, что поведение смартфона поменялось: он просто висел на первичном логотипе и не загружал даже бутанимацию. А значит какие-то операции перезаписи завершились ошибкой и init либо не может примонтировать system, либо там у нас там творится бардак. Но что-то ведь всё таки перезаписалось, а после перепрошивки родной системы смартфон снова начинал показывать бутанимацию... значит, флэшка не полностью в readonly?
Я решил пропатчить boot.img, активировав в нём режим отладки через USB, дабы посмотреть что творится у нас в dmesg. Для этого я распаковал образ с помощью AndImgTool, открыл файл default.prop и заменил свойства ro.secure = 0, ro.debuggable = 1, а также persist.service.adb.enable = 1
Samsung в те годы ещё не блокировал загрузчики и прошить произвольный раздел можно было фирменным флэшером. Для этого необходимо было создать tar-архив, куда положить образ (например boot.img), выбрать его в программе и нажать "Start".
После прошивки, смартфон всё также висел на заставке... но определился в диспетчере устройств и команда adb devices показала, что смартфон подключен. Значит, раздел перезаписался и только часть eMMC ушла в readonly! Те разделы, которые никогда не перезаписываются (куда входит system, boot, recovery и SPL) - в норме?
Пишем dmesg и... видим как драйвер eMMC флудит в printk об ошибках перезаписи в раздел /data/. А ведь я говорил о том, что Android для загрузки этот раздел обязательно нужен!
Но что же за stl11, если в Linux принято называть eMMC-устройства mmcblk? Давайте посмотрим в init.rc:
Разделы используют какую-то самопальную файловую систему RFS (что-то проприетарное от Samsung), а также J4FS, вместо общепринятых YAFFS или EXT4. Давайте сделаем логический вывод: если раздел system и efs (с настройками модема) у нас в норме и никогда не перезаписывается, а после загрузки ядра, Android нужны для перезаписи data и cache... значит можно просто перенести эти разделы на MicroSD, а init.rc заставить монтировать разделы именно оттуда!
Для этого мы берём MicroSD-флэшку и с помощью fdisk бьём её на три раздела: один будет для /data/ (30% от ёмкости MicroSD - или хотя-бы 256Мб), второй для /cache/ около 64Мб и третий для обычных файлов. Затем форматируем первый и второй разделы в ext2 с помощью программы mke2fs, а третий - в обычный FAT32 (или тоже ext2, по желанию).
Далее прописываем новые точки монтирования в init.rc, собираем boot.img и прошиваем в смартфон:
И, спустя пару минут загрузки... нас встречает рабочий стол! Радости нет предела :) Но некоторые читатели могут усомнится в юзабельности всей этой затеи, ведь MicroSD как минимум в десять раз медленнее eMMC... Но всё ли так плохо? Давайте посмотрим на практике!
Поскольку смартфон у нас с QWERTY-клавиатурой и горизонтальным дисплеем, здесь лаунчер подогнан под частичное управление с кнопок, при этом стоить иметь ввиду, что далеко не каждое приложение адаптировано для такого DPI. Тачскрин тоже есть, причём емкостной, что не может не радовать. Дисплей выполнен по технологии TN, разрешение - всего 240x320, что в целом совсем немного для смартфона, но вполне нормально для QWERTY-бюджетника тех лет.
Под капотом скрывается чипсет от Broadcom - BCM21553 с одним ядром ARM1136, работающем на частоте 832МГц. И да, это ARMv6 ядро, что значительно сужает круг поддерживаемых игр и приложений. Когда-то на 4pda даже был отдельный клуб владельцев смартфонов на этом чипсете, где люди жаловались на отсутствие поддержки ARMv7! Также в смартфоне установлено 384Мб DDR2 ОЗУ и 512Мб постоянной памяти.
В качестве GPU используется ядро собственной разработки Broadcom - VideoCore IV. И оно тоже было предметом критики на профильных форумах. Все дело в том, что как и у GPU от Samsung - FIMG, у VC IV были плохие драйвера для GLES - что было критично для игр тех лет. Поскольку большинство релизов оптимизировалось на Qualcomm Adreno и Mali, во многих играх на Y Pro были белые текстуры, или же графические артефакты.
Для сравнения: Raspberry Pi Model A и B - братья данного смартфона, которые в аппаратной части похожи почти во всем. Теперь мы с вами выяснили, что смартфон представляет определенный коллекционный интерес для любителей гаджетов на необычных процессорах!
Производительность смартфона после переноса части системы на MicroSD упала лишь немного. Девайс всё ещё продолжает относительно плавно работать, нет каких-то явно медленных подгрузок и тормозов. Многие приложения работают хорошо, однако лаги не исключены:
Но можно ли назвать смартфон бесполезным в наше время? Я думаю, что нет, определенный набор задач он все еще способен выполнять. Например, серфинг в сети - самый базовый просмотр страниц всё ещё можно осуществить с помощью Opera Mini 7, которая до сих пор продолжает работать спустя 10+ лет после релиза. Многие страницы отображаются некорректно, ни о каких сайтах с интерактивом и речи не идет... но почитать Википедию или Хабр всё равно можно!
При условии отключения проверки сертификатов (Защита -> "SSL (Принимать все)") и использования одноразовых паролей, можно использовать почтовый клиент. Работает шустро, однако пуши не поддерживает, поэтому сообщения будут проверяться с интервалом в ~5мин.
Также можно посидеть в мессенджерах. Я писал клиенты ВК и ТГ (работает через прокси) для смартфонов с Android 1.5+ и запускал их даже на первом серийном Android-смартфоне в мире и они здесь работают вполне неплохо. Об официальных клиентах и речи не идет - Android 2.3 слишком сильно устарел по мнению большинства разработчиков.
И конечно можно поиграть. Начиная от Java-игр, в которые играть вполне удобно благодаря наличию аппаратных кнопок, заканчивая эмуляторами консолей, которые в большинстве своём здесь летают и нативными играми. Таким образом, старенький смартфон превращается в миниатюрную портативную консоль. Единственный нюанс - VC IV совсем уж слабенький GPU, когда заходит вопрос запуска 3D-игр. Даже Raging Thunder 2 со своим замечательно оптимизированным рендером здесь иногда чуточку подтормаживает, при том что она же идеально работает на Adreno 200 (ATI Z430), Mali-300 и даже Vivante GC-600!
Пусть круг задач и не слишком широкий, но смартфон всё равно очень интересный и крутой :)
Вот такая статья о восстановлении необычного смартфона из 2011 года у нас с вами получилось. Надеюсь, вам было интересно и полученные знания вам пригодятся. Ну а если будут какие-то вопросы по поводу возможности переделки смартфона на загрузку с MicroSD - не стесняйтесь спрашивать в комментариях!
А если вам интересна тематика ремонта, моддинга и программирования для гаджетов прошлых лет - подписывайтесь на мой Telegram-канал "Клуб фанатов балдежа", куда я выкладываю бэкстейджи статей, ссылки на новые статьи и видео, а также иногда выкладываю полезные посты и щитпостю. А видеоверсии статей можно найти на моём YouTube канале.
Очень важно! Разыскиваются девайсы для будущих статей!
Друзья! Для подготовки статей с разработкой самопальных игрушек под необычные устройства, объявляется розыск телефонов и консолей! В 2000-х годах, китайцы часто делали дешевые телефоны с игровым уклоном — обычно у них было подобие геймпада (джойстика) или хотя бы две кнопки с верхней части устройства, выполняющие функцию 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. Потому нагло рекомендую то, чем пользуюсь сам — вэлкам.
Я тут оживил интереснейший QWERTY-смартфон от Samsung - Galaxy Y Pro. У аппарата была полумертвая eMMC и он валялся в бутлупе, я перенес систему на MicroSD и полностью восстановил смартфонный функционал (включая звонки). Помимо форм-фактора, смартфон интересен своим процессором - Broadcom BCM21553, близкий родственник процессора первой Raspberry Pi. Сейчас пойду спать, а днем уже буду готовить видос и писать подробную статью о процессе дриставрации - быть может и у вас лежит подобный аппарат в бутлупе и вы захотите его поднять)
Доброй ночи, Пикабу) Сейчас я готовлю видос и статью о том, как Microsoft умудрилась обогнать время и... несколько облажалась. Однако контент будет не о системе в целом, а об её графической части и конкретно о 3D-графоне. В практической части мы с вами напишем первую на Windows Phone 3D-игрушку про жигули - сейчас я отлаживаю игру на Lumia 800, но мне нужен аппарат послабее (800'ый - флагман) и с возможностью анлока. Поэтому разыскиваю Samsung Omnia, LG или HTC'шки на WP7. Бюджет - 800 рубасов.
Продолжаю развивать рубрику бомж гейминга за копейки) Посмотреть можно на ютубе, или для тех кому лень включать впн - в вк (чуть ниже):
ВК:
Текстовой версии этого видоса не будет, но статья на этой неделе выйдет)
На первый взгляд кажется, что в современном мире за 1 000 рублей не представляется возможным купить интересное и полезное устройство. Уже практически 3 года я занимаюсь тем, что рассказываю о том, как я покупаю за копейки различные гаджеты и стараюсь дать им новую жизнь. Однако всё это время я обходил один интереснейший класс устройств — Android-часы, причём не на WearOS, а на самом обычном чистом андроиде с полноценными смартфонными чипсетами. Недавно я сэкономил на «шавухе» и купил себе на вторичке смарт-часы ZGPax S8 за тысячу рублей — и в сегодняшней статье я расскажу, почему это один из лучших бюджетных девайсов для настоящего гика!
Кому вообще могут понадобиться 10-летние смарт-часы на Андроиде, когда на маркетплейсах представлены сотни самых разных моделей в различных ценовых сегментах? Копии Apple Watch, Galaxy Watch и даже часов от Xiaomi заполонили виртуальные полки по весьма демократичным ценам, но вот нюанс — эти часы практически ничего не умеют кроме отображения уведомлений, звонков и замера пульса. По сути, никаких фич оригинальных часов они не поддерживают — и примерно с 2016 года на них даже нельзя писать свои собственные программы!
Такие часы работают на базе современных микроконтроллеров от Realtek и Actions Semiconductor (известны разработкой чипсетов для MP5-плееров и эмуляторных игровых консолей) и... ничего интересного из себя не представляют. Почти любой embedded-инженер сможет на ESP32 собрать себе что-то подобное сам :)
С гиковской точки зрения, 10 лет назад дешевые часы были куда интереснее: для многих моделей, выпущенных до 2016 года, можно было писать свои собственные приложения, используя специальное SDK от MediaTek — MRE. Но в 2016 году, большинство таких часов «переехало» на новые процессоры MT6261DA и на маленькие 4х-мегабайтные SPI-чипы памяти, которые хоть и позволили ещё больше удешевить цену устройства, но не позволяли в себя вместить даже половину «фич» обычной телефонной прошивки. MediaTek даже пришлось оптимизировать свою прошивку так, чтобы распаковывать часть кода из сжатого потока «на лету» — иначе даже самая урезанная прошивка не помещалась на маленьком чипе памяти!
Под капотом такие часы представляли из себя обычные кнопочные телефоны, как, например, Nokia 225. Программная и аппаратная платформа была идентична, поэтому MediaTek оставалось лишь адаптировать телефонную прошивку под формат часов и вот, на рынок можно выпускать новое устройство! И хотя те же DZ09 стоят копейки на вторичке, нужную ревизию найти проблематично - та, которая нам нужна, имеет шторку как на смартфоне и на рабочем столе надпись «инструме...».
На ранние ревизии DZ09 можно было писать свой собственный софт. Кстати, я ищу раннюю ревизию таких часов с процессором MT6260A (~2015 год). Если у вас такие есть и вы готовы продать/подарить — пишите в комменты!
Однако если вспомнить историю развития смарт-часов, то оказывается что устройства на Android выходили за годы до появления WearOS! Первыми смарт-часами считаются Motorola MotoACTV на специальном процессоре OMAP, который очень быстро джейлбрейкнули и в определенных кругах он получил некоторую известность. А в 2012-2013 году, появились первые относительно бюджетные часы на полноценной, «чистой» версии Android с чипсетом MediaTek MT6516 — SmartWatch Z1 (или Z2 — версия с 6515). Как видно на фото ниже, это был полноценный миниатюрный смартфон на ремешке — с него можно было играть в Angry Birds, звонить, капчевать и раздавать интернет на свой основной смартфон, а также слушать музыку. Благодаря относительно большому дисплею можно было даже полностью отказаться от ношения отдельного смартфона!
Ближе к 2014-2015 году, на российском рынке начали появляться часы с Android 4.x на борту и крайне популярными на то время чипсетами MediaTek MT6572 и MT6582. Благодаря невысокому разрешению дисплея и достаточному объёму ОЗУ, такие часы работали очень шустро и вполне тянули большинство актуального на тот момент софта и даже игр, но цена кусалась — около 7 000 рублей ещё по «тому» курсу.
И вспомнив о существовании таких часов, я решил сэкономить на вкусняшках и посетить вторичку в поисках интересующих меня девайсов. Все разделы с аксессуарами на Авито/Юле забиты новодельными «простыми» часами и фитнес-трекерами, поэтому для поиска девайсов на Android-е, я искал их по определенным тегам: «MT6572 смарт часы», «MT6582 смарт часы», «Iconbit Callisto», «Android часы», «Часы на андроиде», «Часы 3G», «Часы с SIM» и т. п. Мне пришлось потратить пару часов, чтобы найти несколько интересных моделей — я остановился на ZGPax S8, а подписчик подогнал мне бонусом ещё и IconBit Callisto, за что ему огромное спасибо!
И вот, обе модели часов приехали ко мне. Я сразу же надел их на обе руки и пошёл их тестировать. Но сначала — давайте узнаем что у них под капотом!
Насколько мне известно, почти на всех Android-часах тех лет не было никакой влагозащиты. Купаться с такими девайсами точно не стоит даже если в некоторых моделях защита заявлена — всё таки времени с момента схода с конвейера прошло немало. Однако из отсутствия IP67 вытекает приятный бонус — устройства полностью разборные и если вы купили экземпляр с «уставшим» аккумулятором, заменить его на новый не будет проблемой. Задняя крышка обычно крепится на 4-винтика, никакого клея и "соплей":
Внутри обычно скрывается слот под MicroSD-флэшку и SIM-карту (на S8 такого слота не оказалось, на Callisto есть). Если есть необходимость — девайс можно полностью разобрать, но стоит быть осторожными, иначе можно случайно оборвать шлейфы с кнопками.
Аккумулятор в таких девайсах небольшой — всего 400-500мАч, для кого-то такая емкость может показаться смехотворной для смартфона в миниатюрном корпусе, однако на практике в умеренном режиме работы часы «держат» нормально и заряжаются в течении часа.
Внутри скрывается очень популярный в своё время чипсет для бюджетных смартфонов — MediaTek MT6572M с 2 ядрами Cortex-A7, работающими на частоте 1ГГц и GPU Mali-400 (можно найти версии с MT6582, а также с LTE-чипсетами MT6737 и MT6739). Оперативная память — 512Мб типа LPDDR2, постоянная — 2Гб. Во Callisto идентичный чипсет, но ОЗУ — 1Гб, а встроенной памяти — аж 8Гб. Неплохо, неплохо для часиков!
Дисплей в подобных часах радует — хоть это и не OLED как в современных часах, но вполне достойная и яркая IPS-матрица с разрешением 240x240 и отличными углами обзора. Есть и минус в таком подходе — нет Always on Display и по тапу часы не просыпаются, нужно руками нажимать кнопку питания.
В целом, на первый взгляд всё очень даже неплохо! Но как часы показывают себя на практике?
Начнём с повседневных задач и никаких поблажек часам не дадим. Если уж это полноценный смартфон из 2014 года, то и загрузим его также, как и в других моих тестах смартфонов!
В часах есть несколько циферблатов — как цифровые, так и стрелочные. Их можно модифицировать, если получить root-права (об этом позже) и заменить картинки циферблатов в приложении /system/app/Keyguard.apk. А ещё можно просто поставить другое приложение экрана блокировки или написать своё — и вот тут мы уже начинаем понимать чем этот девайс круче многих других часов: тотальная кастомизируемость!
Интерактивные циферблаты - хорошо, а возможность реализации самопального циферблата с нужным функционалом - ещё круче!
Рабочий стол представлен самым обычным лаунчером для смартфонов с небольшими дисплеями на манер XS14. В нём есть папки, можно поставить обои... и в целом всё, но если очень хочется, то всегда можно установить что-то кастомное! Существует несколько видов таких часов - некоторые с тач-кнопками с нижней стороны, некоторые - без. На Calliso таких тач-кнопок нет, поэтому действие "назад" выполняется с помощью свайпа влево, а "меню" - вправо:
Если возникла необходимость куда-то позвонить — это можно сделать без каких либо проблем, правда общаться придётся по громкой связи или подключать гарнитуру. Качество связи пристойное, если есть необходимость — можно импортировать контакты через Bluetooth с основного смартфона (авторизовываться в Google-сервисы я крайне не рекомендую на таких девайсах, будет лагодром).
В часах есть Wi-Fi и Bluetooth, правда BT здесь именно хост. И это плюс, поскольку можно, например, стримить музыку с часов на магнитолу в своём любимом тазике или на наушники. При этом нет никакого механизма для синхронизации уведомлений с основным смартфоном, на смартфоне — свои уведомления, на часах — свои.
В смартфоне есть встроенный E-Mail клиент, в котором можно без проблем залогиниться в большинство сервисов с одноразовым паролем, но необходимо отключать проверку сертификатов TLS. Клиент довольно удобный, при желании можно написать ответ прямо с устройства — клавиатура хоть и мелкая, но тач достаточно точный. А ещё можно просто установить виртуальную клавиатуру в стиле кнопочных телефонов!
Переходим к мессенджерам и начинаем с ВК. Клиент Kate Mobile здесь бегает неплохо, можно поскроллить ленту, послушать музыку, посмотреть видео и ответить на сообщения. В общем, всё как и на обычном смартфоне. Работает шустро, при этом без особой нагрузки на процессор. Качество звука при этом среднее, но никто ведь не будет слушать музыку с встроенных динамиков?
И даже Telegram здесь работает неплохо, без каких либо адаптаций! Как и с ВК здесь можно почитать ленту, ответить на сообщения реакциями и послушать музыку — всё что нужно для часов, правда клиент Telegram X уже неплохо «кочегарит» двухядерный MT6572. Единственный нюанс — после отключения 3G, посмотреть контент точно не выйдет без Wi-Fi :(
Думаю многим читателям будет интересен вопрос автономности - всё таки смартфонный чипсет и аккумулятор ёмкостью несколько сотен мАч на первый взгляд никак не стыкуются друг с другом. Однако часики вполне держат пару дней (!) при условии использования как, собственно, часы и без SIM (с SIM продержатся около суток). Но если их начать нагружать... час-два - это максимум. Беспроводную зарядку такие девайсы обычно не поддерживают, необходимо иметь с собой MicroUSB-кабель, а в случае Callisto - ещё и специальный док... для кого-то это может быть проблемой, но лично мне нормально.
Также можно базово посёрфить веб и посмотреть карты OpenStreetMap. На первый взгляд, очень неплохой функционал для часиков «за тыщу»!
Гейминг на часах!? По началу это звучит смешно...
Если зайти в Play Market для WearOS то можно обнаружить примитивные тапалки без какого либо геймплея... и это на устройствах с 4х-ядерными современными процессорами и GPU, которые поддерживают Vulkan и легко потянут какую-нибудь GTA San Andreas в 60 FPS! После включения режима разработчика, на WearOS становится возможным устанавливать любые apk для обычных смартфонов, но из-за скругленного дисплея не всегда можно дотянуться до нужных элементов управления.
Поскольку в наших часах дисплей квадратный, можно легко накатить почти любые игры тех лет — Subway Surfers, Temple Run или Raging Thunder 2. Не во все из них комфортно играть (нормально работают только игры с портретной ориентацией, для ландшафтных игр можно пропатчить систему и запретить повороты кроме портретного), но сам факт очень радует и вполне можно найти актуальные для такого форм-фактора игры. Производительности часов более чем хватает для этого — даже в Asphalt можно с удовольствием «порубиться»! Учтите что гироскопа на многих часах нет, поэтому руками рулить скорее всего не выйдет...
А раз мы с вами заговорили о квадратном дисплее, то нельзя не упомянуть эмуляторы ретро-консолей. Вероятно читатель скажет «автор, ты совсем с дуба рухнул, на часах в Марио играть!?». Но да, если взять в руки небольшой беспроводной геймпад, подключить его к часам и установить эмуляторы — выясняется что девайс очень неплохо показывает себя и как игровая консоль. Можно без проблем поиграть в Марио, Соника и даже в игры с PS1. Звучит это дико, но это реально работает и в целом... вполне неплохо играется!
Далее мы с вами переходим к самому интересному пункту — кастомизация. В отличии от современных часов на WearOS с заблокированными загрузчиками и зондами в комплекте, где вообще ничего нельзя сделать кроме установки apk'шек, старенькие часики как глоток свежего воздуха для гика! Никакой блокировки загрузчика, никакого секьюрбута, портировать кастомное рекавери и получить рут можно буквально за 5 минут даже без левого софта: надо лишь взять boot.img для вашего устройства, а также «донорский» TWRP с другого смартфона на том же чипсете, подменить в доноре ядро Linux на «родное» — и вот, у вас есть рекавери, куда можно установить официальный пакет SuperSU!
Если часы случайно окирпичили — их можно прошить за те же 5 минут фирменным флэшером. А если у вас редкая модель часов, то можно в нём же вычитать дамп прошивки и на всякий случай где-нибудь сохранить — никаких EDL, авторизаций и прочей фигни, характерной свежим часам!
А если вы настолько же упоротый как и я, и захотите написать свою прошивку для часов — вас никто не ограничивает! Два года назад я писал статью о том, как я выбросил Android и запилил кастомную оболочку для смартфона Fly на всё том же медиатековском чипсете, и вы можете использовать мои наработки для своего видения идеальных часов!
Вот такая статья об интересном и недорогом классе гаджетов у нас с вами получилась. Как мы с вами видим, аппараты могут выполнять кучу разных функций, поддаются моддингу и в целом гораздо интереснее чем «просто часы» за ту же самую цену на маркетплейсах. Но, только при условии что вы сами прожженный гик и готовы мириться с тем, что не все будет работать «из коробки», а также не боитесь заменить аккумулятор при необходимости.
Плюсы:
Довольно бодрое железо по меркам часов.
Тотальная кастомизируемость.
Хорошие IPS-матрицы.
В некоторых моделях довольно неплохой звук, можно послушать музыку.
Часы на MT6582 согревают руку зимой, если открыть Telegram.
Минусы:
Есть вероятность что АКБ в купленных часах будет уставшим и его необходимо будет заменить.
Старая версия Android, не весь софт будет работать (относится не ко всем часам, можно легко найти и на Android 6+).
Нет Always on Display.
Надеюсь, вам было интересно! Думаю хотя бы несколько читателей после данной статьи пойдет искать себе подобные часики — вся информация о том, как их найти у вас теперь есть! Ну а если вам интересна тематика ремонта, моддинге и программирования для гаджетов прошлых лет, подписывайтесь на мой Telegram-канал Клуб фанатов балдежа, куда я публикую полезные посты, бэкстейджи статей и видео, ссылки на новый материал и немного щитпоста. А для тех, кто хочет ещё и смотреть — есть канал на YouTube!
Очень важно! Разыскиваются девайсы для будущих статей!
Друзья! Для подготовки статей с разработкой самопальных игрушек под необычные устройства, объявляется розыск телефонов и консолей! В 2000-х годах, китайцы часто делали дешевые телефоны с игровым уклоном — обычно у них было подобие геймпада (джойстика) или хотя бы две кнопки с верхней части устройства, выполняющие функцию A/B, а также предустановлены эмуляторы NES/Sega. Фишка в том, что на таких телефонах можно выполнять нативный код и портировать на них новые эмуляторы, чем я и хочу заняться и написать об этом подробную статью и записать видео! Если у вас есть телефон подобного формата и вы готовы его задонатить или продать, пожалуйста напишите мне в Telegram (@monobogdan) или в комментарии. Также интересуют смартфоны-консоли на Android (на рынке РФ точно была Func Much-01), там будет контент чуточку другого формата :)
А также я ищу старые (2010-2014) подделки на брендовые смартфоны Samsung, Apple и т. п. Они зачастую работают на весьма интересных чипсетах и поддаются хорошему моддингу, парочку статей уже вышло, но у меня ещё есть идеи по их моддингу! Также может у кого-то остались самые первые смартфоны Xiaomi (серии Mi), Meizu (ещё на Exynos), смартфоны на Windows Mobile или телефоны Motorola на Linux (например, EM30, RAZR V8, ROKR Z6, ROKR E2, ROKR E5, ZINE ZN5 и т. п., о них я хотел бы подготовить специальную статью и видео т. к. на самом деле они работали на очень мощных для своих лет процессорах, поддавались серьезному моддингу и были способны запустить даже Quake!). Всем большое спасибо за донаты!