1. Два года назад мой папа "отъехал" на ПМЖ в "поля вечной охоты", и я окончательно осиротел.
Горе горем, но надо жить дальше. И вот однажды, наводя порядок в опустевшей родительской квартире перед сдачей её в наём. Я в одном из самых пыльных и дальних углов кладовки наткнулся на свои детские ништяки - альбом с марками, значки, копилку с медяками, рогатку, школьные дневники с двойками по русскому языку, счастливый складной нож благодаря которому были выиграны сотни гектаров родной земли, лески, крючки как минимум на акулу, достойный запас патронов от всех видов существовавшего на планете оружия, с десяток отлитых собственоручно кастетов, тщательно загерметизированная банка с ртутью, долговые расписки закадык за проигранные мне в орлянку деньги, два вполне себе рабочих поджига и.......
Многое я отправил в утиль, как не имеющее для меня на сегодня ни материальной, ни духовной ценности, но кое-что таки оставил на память о безбашенном детстве. Ну а перелистывая альбом с марками, даже взгрустнул немного, вспомнив: "Вот эти выменял у друга Сашки. Этот блок мне купили в Анапе во время отпуска, иначе бы не отвязался. На эту серию долго копил, заначивая деньги от школьных обедов. Здесь пришлось прибегнуть к тотальному шантажу и забрать из семейного бюджета последнюю трёшку. Потому как ну очень надо - вопрос жизни и смерти. Как сейчас помню, до аванса оставалось ещё три дня. Как предки повелись? Хм...... всегда умел быть убедительным".
Впрочем, заядлым филателистом я так и не стал, как и незаядлым тоже. Да уж.... некоторые ценности и приоритеты имеют свойство меняться со временем, а иногда и на противоположный знак.
Когда я почти уже сдал "сокровище" в "архив", то совершенно случайно заметил торчащий из корешка альбома уголок бумаги. И не без внутреннего трепета, потянув за него, добыл из недр некий документ, который поставил меня в тупик.
На страничке, вырванной небрежной рукой из школьной тетради, были старательно нацарапаны некие таинственные символы. Коими лист был полностью исписан с обеих сторон и походил на "шифровку из Центра". На которой не хватало только традиционного штампа: "Перед прочтением сжечь".
Почерк явно был мой, и это озадачивало больше всего. По причине, что я абсолютно не помнил и даже не представлял себе. Когда, зачем и почему написал эти таинственные знаки, а затем очень тщательно спрятал от посторонних глаз.
Выглядело это примерно так:
1. От т. с. пр. на с. 5.1км б. б. на п. 2км на л 1763ш вл 66 ув.к.от н. 300ш п. з. 40 см".
2. От бдсм. вгл на ск.б.по. или по. мож. 15см. св ду. ни. ко. не най. сл. 2.5 км. лс.
3. при. в д. Р. и. на с. 2000 ш. .................. и т. д и т. п.
Подробное изучение и анализ манускрипта ясности не добавили. Однако, судя по тщательности, с какой документ был написан и спрятан - он явно был крайне важен для меня тогдашнего, и я вернул его на место. До поры до времени.
2. Тайна перестаёт быть таковой, иногда почти случайно.
Я телевизор не смотрю в принципе, а вот родная иногда любит "повтыкать". Утверждая, видимо, не без оснований, что от эфирного дерьма голова становится пустой и поэтому легче засыпается. Не осуждаю - у всех есть дурные привычки. Я, к примеру, курю, и это тоже вредно. Пусть и не так фатально, как ежедневный просмотр передач из "зомбоящика".
Вот и неделю назад жена позвала посидеть с ней немного. Мотивировав это тем, что соскучилась и "давно не видела". Что, собственно, недалеко от истины, поскольку дом у нас огромный, а дела не пересекаются. Поэтому мы и правда днём почти не видимся.
Само собой разумеется, я уважил просьбу близкого человека и прилёг рядом с любимой посмотреть с ней телевизор.
Показывали "Остров сокровищ". Сюжет известный, и сюрпризов, конечно, не ожидалось. До тех пор, пока герои фильма не стали толковать карту старого забулдыги капитана Флинта.
Не знаю почему, но тут я немного взбодрился и стал смотреть повнимательней. По причине - что-то мне это очень сильно напомнило. И, может, найденный в альбоме для марок "пергамент" это банальная карта?
Весь оставшийся вечер и часть ночи я провёл в тщетных попытках расшифровки "древнего манускрипта". Но абсолютно ничего не добился, и это меня очень разозлило.
"Орешек знанья тверд,
Но все же мы не привыкли отступать!
Нам расколоть его поможет
Киножурнал "Хочу все знать! "".
На следующее утро я отбыл в свой город детства. Решив, что вдруг на месте давно прошедших событий меня осенит, и я догадаюсь, что за тайну скрывал столько лет мой альбом с марками.
Так всё и оказалось, поскольку когда я въехал в свой старый двор, то вспомнил сразу и всё. Ну ладно, не совсем всё.... почти всё.
Конечно, очевидное становится просто и понятно, когда понимаешь, откуда надо танцевать. Поэтому, вспомнив, что все наши игры, приключения и пакости мы начинали от вкопанного в центре двора теннисного стола. Я больше ни минуты не сомневался в том, что таинственное "т. с. " из "манускрипта" это однозначно теннисный стол, и начинать поиски награбленного и занаканного до поры надо именно от него.
Дальше всё пошло "как по маслу", и спустя два часа я уже выкопал из земли нечто, плотно завёрнутое в брезент.
Это не приключенческий роман. Поэтому сердце "не стучало о рёбра, как молот". Сдавленных криков восторга тоже никто не услышал. Руки не дрожали от возбуждения, и взор мой не затуманивался. Я скорее ожидал какой-нибудь гадости, чем удивительных открытий, и оказался почти прав, так как находка меня скорее озадачила, чем порадовала, и клад был, по меньшей мере, странным. Поскольку пиастров и жемчугов в нём не наблюдалось. Как, впрочем, и золота в слитках, дублонов, драгоценных каменьев и бумаг на владение недвижимостью.
Развернув с десяток слоёв брезента, я обнаружил - две трёхлитровые банки с рисом, несколько плиток какао, пачку сигарет "Космос", спички, несколько свечей и банку от леденцов, набитую пятидесяти копеечными и рублёвыми монетами: "Что это за хрень? Кто, когда и, главное, зачем это спрятал? ".
Ничего дельного на этот счёт не придумав, я загрузил клад в багажник и поехал домой, пребывая в глубокой задумчивости. Рассуждая по дороге о том, что никогда не был жадиной и скопидомом и накопительство для меня пустой звук. Да и не помню я ничего о этом тайном захоронении. А поскольку память у меня прекрасная и никогда не подводила, то не сходится пасьянс и не может такого быть по определению. Ну нельзя же помнить всё и абсолютно забыть о кладе? Значит, это исключено и надо искать подельников, которые смогут пролить свет и сорвать покровы.
Вопросов было хоть отбавляй и все без ответов: "Что это была за сверхзадача такая и мотив? Наш с дворовыми пацанами общак на чёрный день или запасы на случай голода или атомной войны? Парни заныкали, а мне поручили "спасти и сохранить"? Доверили как одному из надёжных и верных ключи и пароли?
Вернувшись домой, я с неделю обзванивал всех наших дворовых пацанов, кого смог отыскать. И никто "ни сном, ни духом".
Пока расшифрована только одна строчка из всего документа. Надо бы найти время и попытаться перевести, что бы найти всё. Кто знает, что меня там ждёт? Может совесть свою откопаю? А если повезёт, то доверие и любовь к людям. А если уж совсем-совсем повезёт, то может быть и веру во всё человечество. А вдруг, чёрт возьми, окажется, что оно не так уж и безнадёжно. А значит, рано или поздно, наступит наконец-то на Земле мир, равенство и братство. Закончатся разом все войны, и дураки переведутся. И может всё станет так, как всем давно уже хочется и как всё было задумано изначально.
А там поди знай. Вдруг учёные, освободившись от хронических болезней нашего века и многовекового маразма цивилизации, перестанут в первую очередь думать над тем, как бы убить себе подобных побольше за приемлемые деньги. А займутся делом и найдут лекарство от всех недугов. Ну или изобретут, наконец, пилюлю от глупости, подлости и жадности. Фантастика, конечно. Но очень хочется на это надеяться и верить.
P. S. История была написана больше года назад, (19.07.2023) и тогда мне казалось, что продолжения, достойного того, что бы о нём рассказать, не случится. А вот фиг там. После череды однотипных заначек на чёрный день, закопанных хозяйственными пацанами, жившими в нашем дворе, наконец-то было найдено нечто весьма и весьма стоящее. То что растрогало до слёз, удивило, порадовало, озадачило и.... оставило ещё больше вопросов, чем было до этой примечательной находки. Поэтому, как только найду достаточно свободного времени или донатов на счёте, то обязательно историю допишу.
Я большой фанат Linux на мобильных системах и давно слежу за такими проектами, как Meego, Maemo и конечно же, Sailfish-подобными ОС. Недавно я самолично написал в компанию F+ и попросил какой-нибудь смартфон на «Авроре» для статьи и на моё удивление, представители компании согласились! Что из себя представляет R570E, какова «Аврора» с точки зрения обычного пользователя, какие проблемы могут возникнуть у разработчика и есть ли у этой системы перспективы? Читайте в сегодняшней статье!
❯ Предисловие
Пожалуй сейчас Linux'ом на смартфонах и мобильных системах никого не удивить. Ядро Linux используется в ОС Android, благодаря чему хотя бы одно устройство с пингвином на борту можно найти почти в каждом доме. Однако Android использует именно само ядро Linux, выстраивая вокруг него собственное пользовательское окружение (или более корректно — userspace): подсистема абстракции от железа (HAL), оконная система и фреймворк для приложений. На десктопных же системах используется стек, известный как GNU/Linux, предоставляющий этакое знакомое нам unix-окружение со стандартным набором программ, glibc и компилятором GCC. При этом Android абсолютно не совместим с программами, собранными для обычных GNU/Linux систем как раз таки из-за преусловутой glibc (вместо неё в Android используется bionic и свой собственный динамический линкер), и поэтому многие гики хотят запустить полноценный дистрибутив на мобильном устройстве.
Но благодаря тому, что ядро Linux распространяется по лицензии GPL3, производители смартфонов обязаны открывать исходный код своих модификаций ядра под собственные устройства. И пока развивалась моддинг-сцена Android с такими кастомами, как CyanogenMod или, например, MIUI, на некоторые устройства выходили такие диковинные системы, как Ubuntu Touch, pmOS и, конечно же, Sailfish OS.
Linux на мобильных устройствах берёт своё начало ещё с середины 2000-х годов. Именно в это время компания Motorola решила использовать в своих продвинутых устройствах ядро Linux, а если более конкретно — построить собственную оболочку Motorola EZX на базе MontaVista Linux. Немудрено, что систему быстро хакнули и наделали для неё кастомного софта, патчей и других примочек. Примерно в тоже самое время компания Nokia начала развивать линейку собственных интернет-планшетов на базе дистрибутива Linux под названием Maemo.
Сын (Nokia N900), батя (Nokia N800, ещё планшет) и племянник на фоне
В 2007 году на свет появился первый полностью открытый смартфон (в том числе и с аппаратной точки зрения — то есть принципиальная схема, разведенная плата и иные необходимые для постановки устройства на конвейер документы) Neo 1973, построенный на базе хакнутого проектом OsmocomBB модема TI Calypso и ОС OpenMoko, который получил умеренный успех среди Linux-гиков. А в 2009 году вышел легендарный Linux-смартфон Nokia N900, который до сих пор считается одним из самых удачных и успешных гиковских смартфонов из когда-либо выпущенных.
И вот в 2011 году Nokia, почти полностью перешедшая на Windows Phone и остановившая развитие Symbian, выпускает свой последний гиковский смартфон — Nokia N9, который в некоторых аспектах стал «батей» многих фишек в современных смартфонах. Несмотря на популярное заблуждение, N9 работает не на Meego, а на Maemo со значительно доработанным пользовательским интерфейсом. И как раз UI устройства был крайне необычным и на своё время прорывным: управление системой жестами, наличие двух всегда доступных страниц, своё видение шторки уведомлений и очень плавная работа. Когда стало ясно, что Nokia больше не будет выпускать Linux-смартфоны, несколько инженеров компании основали свою собственную фирму Jolla и продолжили развивать Meego для полноценного запуска на Nokia N9. Результатом их работы стала новая система — Sailfish OS.
Такие разные: N9 вышел флагманским смартфоном в 2011 году, в то время как R570E корпоративным и относительно бюджетным в ~2023. Но всё же в R570E есть частичка работы инженеров той самой Nokia, причём довольно большая.
Тот самый Neo, только это уже FreeRunner.
Основной фишкой системы было наличие инкрементальных обновлений, возможность разработки приложений с использованием Qt (т. е в отличии от Android, все приложения и подсистемы полностью нативные, а не написаны на Java), и довольно неплохая совместимость с обычным ARM-софтом для других дистрибутивов Linux. Со временем Ростелеком увидел перспективы в Sailfish OS и выкупил долю в компании, начав работу над своим собственным форком этой системы — ОС «Аврора». С годами «Аврора» полностью отделилась от материнского проекта и начала развитие в другом направлении: если Sailfish OS была системой для гиков и просто пользователей, то «Аврора» больше нацелена на Enterprise-сегмент (т. е. «госка»), на гиков и только потом на конечных пользователей.
И мне, как фанату Linux на мобильных устройствах, очень хотелось пощупать и заполучить свой собственный девайс на этой ОС. Набравшись смелости, я написал в PR-отдел F+ и через пару недель получил положительный ответ. Радости моей не было предела! Но когда девайс пришёл ко мне, начались определенные трудности...
Прикладывать скриншоты деловой переписки -- плохой тон, однако в случае с F+ всё было максимально приятно: ребята поняли, что девайс поедет к гику и дали свободу воли и перо в руки автору, т. е. мне :)
❯ Распаковка
Начать стоит с распаковки девайса. Ко мне смартфон пришёл «не новым», его уже распаковали и накатили на него некоторые тестовые приложения для внутренних нужд PR-отдела. Кроме того, у меня стоит «особенная» версия Авроры 5.1, доступная пока ещё не всем пользователям.
В коробке нас встречает сам девайс, защитное стекло (девайс всё таки защищенный) на дисплей, краткий мануал по использованию «Авроры» (в кои-то веки он нужен!), а также скрепка, Type-C кабель и 5В/2А блок питания. В рознице к девайсу прилагаются ещё и TWS-наушники.
Поскольку смартфон предполагается защищенным по стандарту IP68 (пыленепроницаемый и способен выдержать погружение в воду на длительное время), он выполнен в прорезиненном корпусе с небольшой выемкой для дисплея. В руке лежит хорошо, хоть и полноват.
После включения нас встречает логотип «Авроры», а затем и предложение ввода пин-кода (есть также сканер отпечатков пальца). Enterprise-направленность девайса видна сразу: MDM-политики, возможность удаленного бана украденного устройства по ключу активации системы и возможность добавления своих репозиториев с софтом помимо возможности установки RPM и использования стандартных репозиториев ОМП.
Характеристики девайса следующие:
Процессор: MediaTek Helio A25. 2020 год, 8 ядер Cortex-A53 на частоте от 1.5 до 1.8ГГц (пламенный привет MT6753 в любимых мной китайских айфонах). В целом, это довольно бодрый по меркам бюджетника чипсет, именно A25 сейчас частый гость на смартфонах до 5-6 тысяч рублей.
GPU: PowerVR GE8320 на частоте 600МГц. В целом, GPU можно назвать гордостью девайса: и если с 3D-играми на Авроре и Sailfish вяло, то для эмуляторов даже относительно тяжелых консолей он подойдет замечательно.
Память: eMCP «бутерброд» с 4Гб предположительно LPDDR4 оперативной памяти и 64Гб eMMC 5.1 постоянной памяти. UFS-флэшки чипсет не поддерживает в силу своей бюджетности.
Дисплей: 5.7" IPS HD+ матрица. Вполне годная, очень похожа на матрицу моего китайского айфона, есть ощущение что на современных бюджетниках используется +- похожие дисплеи.
Звук: есть 3.5мм джек! Это настолько редкость сейчас, что я выделил эту фичу в отдельный пункт.
Аккумулятор: 5080мАч, литий-полимерный. Для броневика ёмкость средненькая.
В целом, аппаратно R570E - больше классический китайский OEM-смартфон на привычной MediaTek'овской платформе. Мне говорили, что есть какие-то изменения в плате "под капотом", однако девайс я пока не разбирал. Если F+ выложит в общий доступ схему устройства, то смартфон сможет похвастаться ещё и повышенной ремонтопригодностью, что очень актуально как для шаловливых энтузиастких ручек, так и для компаний, закупивших девайс для бизнеса. В целом, как по мне, — характеристики вполне неплохие, но стоит иметь в виду, что я почти всю жизнь пользовался бюджетными девайсами и выжимал из них все соки, так что мне привычно доводить девайс до идеала и после покупки.
Но в случае R570E, самое важное в девайсе — это «Аврора». И на её пользовательские качества мы сейчас с вами и посмотрим.
❯ Знакомимся поближе
Сначала предлагаю взглянуть на «пользовательскую» часть системы. Недавно пользователям начали прилетать апдейты с «РуСтором» на борту (в бета-ветке), однако мой смартфончик пока что обделен этим обновлением. Об этом чуть позже.
Как и «батя» в лице Sailfish OS, «Аврора» управляется полностью жестами. Некоторые обзорщики сравнивают UI Авроры как «украденный у Android и iOS», однако это не так: корни интерфейса уходят в Nokia N9, из которого как раз все всё и позаимствовали спустя почти 10 лет. Несмотря на бюджетный 4-х летний чипсет, девайс работает очень плавно и у него есть адекватная многозадачность.
По умолчанию в системе предустановлен классический набор приложений, плюс ярлыки PWA можно выносить на рабочий стол. К слову о браузере — здесь используется Firefox 78 (2020 год) с самопальным интерфейсом, который всё ещё открывает большинство сайтов, но стремительно теряет актуальность. С апдейтами обещали обновить и WebView, едва-ли 78'ой останется актуальным в 2025 году.
R570E неплохо подходит и по основному предназначению (т. е. как телефон): номеронабиратель удобный, есть импорт контактов из Exchange, vcf-файлов и других телефонов. Что ещё, собственно, нужно? Приложение для обмена SMS самое обычное, ничего примечательного.
Само собой есть встроенный плеер для прослушивания музыки. Из-за броненаправленности смартфона, мне не удалось нормально подключить мои основные полноразмерные наушники, но в целом качество ЦАПа... на уровне остальных смартфонов с MTK на борту: нормально, но после флагманских BlackBerry с ЦАП'ом Wolfson, смартфонов Sony или ZTE Axon с аж двумя отдельными аудиотрактами (!) хочется вернуться всё же к флагманам: А вот что в плеере не понравилось, так это отсутствие эквалайзера: плеер совсем простенький.
В целом, понравился клиент почты. Есть интеграция с российскими сервисами, плюс поддержка POP3/IMAP-ящиков. Сам клиент шустрый и удобный. Единственный момент - не работает поиск по всему ящику, только по синхронизированным сообщениям и не сразу заработал SMTP gmail'а.
Поговорим о камере. Модуль здесь бюджетный, на уровне флагманских смартфонов эдак года 2013-2014. По качеству выдает картинку близкую к Galaxy S2-S3, но немного не хватает цветокоррекции. Макро тоже у смартфона получается "с трудом", по крайней мере в авторежиме. Правда всё это можно объяснить тем, что для камеры у MTK есть куча блобов с различными алгоритмами для улучшения изображения, и эти блобы разработаны для использования с Android и возможно Аврора использует лишь самый простой вариант захвата изображения с камеры:
Также я накатил клиент Telegram «Tavro» на базе библиотеки TDlib, который вполне неплох... однако его полная версия платная. Впрочем, подразумевается что полная версия «Тавро» предназначена для бизнеса. Если будет наблюдатся тенденция с платным жизненноважным софтом на «Авроре» — то система точно не станет популяряной у обычных пользователей. А ещё Тавро лагучий и если пару дней не открывать Telegram, то синхронизация большого числа изменений может занять пару минут, а интерфейс будет висеть.
Также я хотел написать вторую статью о разработке небольшой 3D-аркады с нуля под «Аврору», однако возникли определенные трудности о которых я и говорил в начале статьи. Дело в том, что на мой смартфон установлена немножко «особенная» версия ОС, где режим разработчика (отладчик и ещё некоторые фичи) просто сломан. Пакет (сломанный) уже установлен, однако не удаляется, не обновляется и не устанавливается. В моём случае можно только сделать бэкап и прошить дамп чистой системы с 4pda, благо такая возможность есть.
Тем не менее, даже несмотря на «поломанность», есть возможность установки сторонних приложений. Просто включаем соответствующую галку в настройках — и вот, мы можем ставить сторонние rpm-пакеты прям как apk в Android.
В целом, «Аврору» можно назвать достаточно открытой для моддинга и разработки собственных программ системой. За деплой приложений не нужно ничего платить, есть неплохая документация и можно делать с системой всё что угодно из терминала: благо root-доступ есть из коробки для всех. Я немного общался с @chuvilin(техдир в ОМП), а он когда-то сам хоумбрю приложения для Maemo (Nokia N900) писал, так что вполне очевидно что даже сами разработчики держат вектор на открытость системы для гиков.
❯ Есть ли перспективы?
Пожалуй, наличие перспектив у «Авроры» зависит от того, зачем вам нужен девайс с ней на борту. Если говорить о Enterprise-секторе и гос-организациях, то система со временем может занять довольно большой процент рынка и так или иначе, у вас будет шанс пощупать её на промышленном устройстве. В целом, её интеграцией в бизнес уже сейчас активно занимается компания «Марвел» (владелец бренда F+).
Также у «Авроры» есть хорошие перспективы среди гиков: существуют тематические каналы в Telegram, а также люди активно обсуждают систему на 4pda. Аврора очень интересная «под капотом» и достаточно дружелюбная по отношению к разработчикам, так что гики — определенно одна из ЦА этой системы.
Есть ли перспективы среди обычных пользователей? Тут сказать сложно. Дело в том, что основная проблема «Авроры», Sailfish OS, Meego и Maemo — относительно малое количество софта, которым можно пользоваться «из коробки». И если гикам часть приложений можно запилить самому (например, клиент банка на СМСках), то что делать простым пользователям? Правильно, ждать появления нужного софта в магазинах, а до этого использовать веб-версии в FireFox. Будем честны, такой вариант устраивает далеко не всех.
❯ Заключение
Вот такой материал об «Авроре» и F+ R570E у нас с вами сегодня получился. А как вам данный смартфон? Есть ли у него перспективы? Пишите своё мнение в комментариях!
P.S: Я не получил от F+ ни копейки за статью, кроме самого девайса. Все впечатления — мои личные, а меня довольно легко впечатлить (достаточно чтобы на девайсе был Linux :) ) Поэтому, надеюсь, даже те читатели, которые не питают симпатию к Авроре», останутся довольны после прочтения статьи.
Также у меня есть Telegram-канал "Клуб фанатов балдежа", куда я публикую ссылки на новые статьи, видео, а также мысли по программированию, ремонту и моддингу различных гаджетов, а также немного щитпоста. Подписывайтесь, если интересно. Недавно я начал вести ещё и паблик в ВК, там в основном репосты видосов с ютуба для тех, кто не хочет юзать VPN, но кому интересны мои видосы. Также туда публируется часть постов из телеги.
Нравится R570E?
Пользовались бы смартфоном на Авроре «на постоянке»?
Статья подготовлена при поддержке TimeWeb Cloud. Подписывайтесь на меня и @Timeweb.Cloud чтобы не пропускать новые статьи каждую неделю!
Недавно мне подогнали весьма интересный девайс - онлайн кассу Атол с складным дисплеем, которая может работать от аккумулятора. Ну я такой посидел, покумекал и понял что... это ж офигенный мини-нетбук с полноразмерной клавиатурой! Под капотом всё тоже очень и очень хорошо: гигагерцовый ARM-чипсет Marvell PXA168, 256Мб ОЗУ и куча портов для своих нужд. По правде сказать, это реально очень крутая платформа для каких-то собственных самоделок.
Поскольку девайс работает на Windows CE и у него есть очень привлекательные стрелочки на клавиатуре, я понял что его можно превратить в игровую консоль с функционалом SSH-терминала. А поскольку на свежие WinCE с дисплеями такого разрешения эмуляторов нет (есть для других архитектур - MIPS, SH3, но они не заработают здесь. Ближайший пример - навгиаторы на винде, там тоже работают в основном только нативные игры), я начал портировать Wolfenstein, эмуляторы и ещё по мелочи :)
В общем, сейчас портирую эмули и готовлю статью с видосом о превращении списанного кассового аппарата в полезный ништяк, которому не место на помойке!
Я всегда любил находить новые применения стареньким девайсам, даже если обход защиты и разработка для них чего-то полезного занимала у меня некоторое время. И если с прошлыми моими статьями, где я привносил новую жизнь смартфонам на Android 2.3, а затем и на Android 1.5 всё понятно — девайсы получили возможность не только быть звонилками, но и вполне полноценными смартфонами, то в случае таких необычных девайсов, как электронные переводчики — всё гораздо интереснее, ведь по сути, это дешёвые альтернативы таким легендарным устройствам, как HP Jornada! Недавно я купил переводчик Ectaco за 1.500 рублей на Windows CE, обошел встроенную оболочку, написал программу, которая твикает реестр и даже портировал туда эмулятор NES. Интересно узнать об этом процессе во всех подробностях? Тогда добро пожаловать под кат!
❯ Предисловие
Есть на свете такой интересный класс устройств, как портативные клавиатурные минипк — HPC. Основные особенности таких девайсов перед обычными органайзерами — полноценная QWERTY-клавиатура, возможность запускать кастомный софт и порой интересные процессоры на очень необычных архитектурах. Совсем недавно, я писал статью о том, как купил целых два таких HPC — HP 620LX и HP Jornada 680, причём 620LX я отреставрировал — девайс теперь полностью работает!
Но буду предельно честен: оба девайса были куплены по низу рынка и не полностью рабочими. Каждый обошёлся в 3.000 рублей, в сумме 6.000 рублей — весьма немалая для меня сумма. Ценники на рабочие экземпляры, причём не всегда с доком и дата-кабелем начинаются от 5-6 тысяч рублей. Кто-то из читателей скажет мол это копейки, но для меня сейчас это прям ощутимые деньги, плюс в моём чате после выхода статьи многие писали что тоже хотели бы заполучить подобные девайсы, но не имеют возможности выложить такую сумму. И тут я подумал, что надо-бы поискать альтернативы джорнаде, которые были бы гораздо дешевле.
Однако с чего начать поиски? Ведь хочется девайс именно компактный и на необычном процессоре, понятное дело что EEEPC (которые, к слову, на вторичке стоят по 500 рублей) тут не подходят. Коммуникаторы на Windows Mobile тоже вполне недорогие — можно найти некоторые модели HTC или Glofiish по 500-1.000 рублей, но всё же это сайд-слайдеры, а хотелось бы форм-фактор ноутбука (к слову, из «ноутбучных» есть Toshiba Portege G910, который я давно хочу заполучить). И тут подписчик из Казахстана заслал мне целую коробку с подогоном ништяков, где среди девайсов оказался электронный органайзер Citizen!
Девайс меня жутко заинтересовал, даже несмотря на монохромный простенький ЖК-дисплей, мне хотелось под него что-нибудь написать самому. Да хоть понг или стрелялку, где кораблик — один пиксель слева, а астероиды — пиксели справа. Но я понимал, что конкретно в этой модели вся прошивка лежит в ROM (масочной, которая физически прошивается на заводе один раз) и под эту модель ничего написать самому не получится. Поэтому я полез на барахолки с тегами «органайзер» искать девайсы с возможностью подключения к ПК по USB: мало ли, хоть какая-то модель будет поддерживать кастомные программы на манер инженерных калькуляторов.
Но нет, поиски не увенчались успехом. Зато в какой-то момент, онлайн-барахолка подсунула мне объявления о продаже электронного переводчика Ectaco, которые тоже были в разделе «для офиса», как и органайзеры. И всё бы ничего — ну да, цветной дисплей, ну да, выглядит замечательно, но я даже не представлял что за процессор и ОС в таком девайсе стоят. Пока не полистал фото, не присмотрелся к крайне знакомому интерфейсу и не увидел вот это...
Да! Вы все правильно поняли, некоторые переводчики работают на базе WIndows CE. А если там стоит WinCE, то как минимум есть солидный объем оперативной памяти (хотя бы 64 мегабайта), дисплей с разрешением 240x320 и довольно бодрый процессор, как минимум 150-200МГц. Далее я хотел узнать, с чем же мне предстоит столкнуться и начал гуглить мануал, дабы узнать о доступных пунктах в меню и можно ли выйти через них в оболочку WinCE (как на навигаторах). Чтения мана дало понять что нет, но я узнал что для работы устройства обязательно нужна SD-флэшка из комплекта устройства, иначе девайс стопорится на белом экране.
А это тоже наводит на определенные мысли. Либо девайс полностью загружается с SD-карты, либо запускает оттуда программы, через которые потенциально можно запустить explorer.exe и выгрузить стандартный софт из памяти. И я начал искать в сети образ родной флэшки. Я нашел на ютубе гайд по восстановлению такого переводчика, где автор видео выложил архив в облако, скачал и начал колупать — да здесь же целая папка System, где лежат отдельные exe'шники каждой программы, представленной на устройстве!
в облако, скачал и начал колупать — да здесь же целая папка System, где лежат отдельные exe'шники каждой программы, представленной на устройстве!
На этом моменте я понял, что девайс надо брать! Также на онлайн-барахолках попадаются переводичики и других брендов, которые потенциально работают на других системах. Их тоже было бы интересно поколупать (авось на Linux!), попытаться что-то с ними сделать, но я пока не могу себе позволить их купить.
Когда девайс приехал ко мне, я понял что отдал деньги не зря: он настолько компактный (даже меньше iPhone 14 Pro Max), что помещается в карман летних шорт, у него есть QWERTY-клавиатура и DPAD (что пригодится для игр), а также резистивный тачскрин и реально классный корпус с металлической рамкой дисплея. Придя домой, я сразу же начал его колупать: такие красавчики точно не должны отправляться в утиль, я был уверен что смогу найти для них новое применение!
Тут важно отметить, что устройства от Ectaco были топовыми в свое время и стоили кучу денег. 15 тысяч рублей в 2009 году — очень серьезные деньги, это цена новенького коммуникатора Rover, Xperia X10 вышедшего годом позже, или, например, Mio/Glofiish. Неудивительно, что девайсы построены на базе неплохого железа и полноценной WinCE!
❯ Что под капотом?
Конечно же перед тем, как смотреть софт, нужно посмотреть на каком железе работает наш переводчик. Разбирается девайс несложно, но конструкция весьма замудренная, нужно быть аккуратным. Вытаскиваем флэшку, откручиваем винтики на крышке отсека АКБ и отключаем аккумулятор. В моём девайсе, он уже был кем-то заменен на свежий (родные уже «все»):
Далее выкручиваем 4 винта из задней крышки и расщелкиваем клипсы — сама крышка снимается легко. Затем нужно открутить винты, крепящие динамик и отложить заднюю крышку в сторону. Перед нами открывается внешний вид материнской платы (вернее, целых двух):
Сорян за качество фото на этапе разборки, мой S8, купленный по низу рынка и используемый в качестве камеры уже «подустал» и модуль автофокуса у него поврежден.
Сверху расположена материнская плата с процессором, ОЗУ и флэш-памятью. То есть, по сути, это SoM (система на модуле), но не общего назначения, а разработанная Ectaco для своих нужд. Моделей переводчиков было много и возможно компания меняла конфигурацию ОЗУ/процессора и т. п., оставляя одну и ту же нижнюю плату. Для дальнейшей разборки, стоит отклеить черную наклейку, дабы не повредить шлейф дисплея, открутить три винта, крепящие верхнюю плату и снять крепежи грузиков, впаянные в пластик корпуса. Теперь нужно аккуратно вставить плоскую отвертку так, как показано ниже и упереть её в пластиковую прокладку между коннекторами верхней и нижней платы:
Не тяните пальцами за другие части платы. Она достаточно тонкая и погнуть/надломить её не составит труда!
Теперь верхнюю плату можно снять. Осторожнее с шлейфом дисплея — он весьма хрупкий и его можно случайно порвать:
Теперь мы можем разглядеть основную плату нашего девайса подробнее. В качестве процессора используется чипсет NXP LH7A404-N0F000B3. Это ARM922T (ARM9TDMI, ARMv4) ядро, работающее на частоте до 200МГц. Уже вполне неплохо, на уровне ранних Intel StrongARM (XScale)! В качестве оперативной памяти, используются две банки Samsung K4M56163LG по 32Мб каждая. Теоретически, объем ОЗУ можно расширить до 128Мб, как я это делал в статье про апгрейд коммуникатора QTek! Тест-поинты дисплея подписаны, скорее всего используется стандартная TTL-RGB матрица (но найти такую на замену будет сложно).
С обратной стороны платы расположился чип флэш-памяти типа NAND в корпусе TSOP Legacy. Это стандартная самсунговская флэшка небольшого объема, но на ней находится скорее всего только загрузчик — сама система грузится в ОЗУ с SD-карты. Приятно радует, что подписаны тест-поинты на плате и среди них мы видим как минимум UART. Это значительно повышает возможности девайса для моддинга в будущем, единственный нюанс — лишь бы на этом UART не висела консоль ядра Windows CE, потому что иначе открыть COM-порт не выйдет и «выпнуть» логи из определенного терминала как в Linux не получится! Именно с такой проблемой я и столкнулся на навигаторах с WinCE на борту (UART'ов в SiRF Atlas IV только два, один на GPS-модуль, т. е. чип придется снимать и напрямую к шару паяться, а второй на логи системы).
На основной плате расположился чарджер/КП, кодек AC97, разъемы и другие необходимые модули для функционирования девайса!
❯ Обходим оболочку
Итак, сейчас при включении девайс нам показывает главное меню и встроенный софт для перевода, а также мультимедийные приложения и игры. Неплохо, но явно маловато, при этом какой-либо отдельной кнопки или последовательности нажатия на тачскрин для выхода в explorer.exe как в случае с многими моделями навигаторов здесь нет.
Поскольку я уже знал, что вся система грузится с SD-карты в рамдиск, я сразу же понял, что нужно копать именно флэшку. Вытаскиваем SD-карточку, вставляем в кард-ридер и видим следующую картину:
Ага, мы видим два потенциальных вектора для атаки: первый это system.bin, собственно «сырой» образ для загрузки в ОЗУ и папка System/App с системными приложениями. Изучение system.bin я отложил на потом, решив подобраться с самого простого метода — попытка подменить exe'шники программ в System/App. Я открыл в IDA Pro программу-лаунчер, которая представляет из себя меню устройства и проверил на манер наличия проверки каких-либо подписей перед запуском программ. Их, к счастью, не оказалось: правда и реверсил я как оказалось не лаунчер, а стартовую анимацию как потом узнал. Сам лаунчер находится в system.bin, но в прошивке для другого девайса, Launcher находится именно на флэшке.
Помимо этого, в папке лаунчера лежит файл с описанием пунктов меню и соответствующими программами. Я добавил туда пункт, который запускает \Windows\explorer.exe — и это сработало — девайс попал на рабочий стол! Но нужен был способ автоматизации всего этого дела и самое главное — закрытие родной оболочки (она кушает ОЗУ и на нее можно случайно переключиться в панели задач).
Мы уже вышли на рабочий стол!
Итак: если стартовая анимация запускается лаунчером и нет никаких проверок подписей, то всё просто, нужно лишь написать небольшую программу, которая будет запускать explorer.exe и прибивать родное меню. За минут 30 был написан следующий говнокод (помимо этого, я писал итератор по виндовым окнам дабы найти название класса окна лаунчера):
int WinMain(HINSTANCE inst, HINSTANCE prevInst, LPWSTR cmdLine, int nShowCmd) { // Launch explorer PROCESS_INFORMATION info; CreateProcess(L"\\Windows\\explorer.exe", 0, 0, 0, 0, 0, 0, 0, 0, &info);
Этого кода было достаточно для полноценного запуска системы и полного «выпинывания» стандартной оболочки из памяти :) Но есть важный нюанс: несмотря на то, что здесь используется WinCE 5.0 — довольно свежая система, нормально работают бинарники собранные только для PocketPC 2003 в VS2005/VS2008, иначе система ругается на отсутствие библиотек. Учтите это, если захотите себе такого же красавца!
Но, поскольку система загружается в рамдиск каждый старт устройства, то и реестр системы сбрасывается после отключения. Поэтому я добавил в программу патчинг реестра сразу при старте устройства и копирование нужных для работы других программ dll-файлов в Windows/
Второй вектор для атак — образ system.bin, я исследовал чуть позже. Открыл образ системы в hex-редакторе и обнаружил, что первый мегабайт просто забит нулями, без каких-либо данных. Возможно это своеобразная защита от любителей распаковывать ROM'ы. Воспользовался поиском текста по сигнатуре CE (часть заголовка образа) и сразу же нашел начало файла: сигнатуру образов CE можно определить по 4-м байтам, где два первых байта произвольные (их значение я не знаю), а вторые два (00 EA) — постоянные. Также сигнатурой можно считать последовательность символов ECE.
Вырезаем лишний мегабайт и используем программу dumpromx для распаковки образа устройства. Получаем набор готовых файлов. Чуть позже это помогло мне разобраться, как работают драйвера в Windows CE. При желании, можно напрямую редактировать ветки реестра (файлы .hv) и подменить программы/библиотеки на свои!
dumpromx -d nk1/ nk0.bin
В копирайтах программ я нашёл имя Вячеслава Боярышникова, который работал над устройством в 2008-2009 году. Отдельное спасибо ему и компании Ectaco за то, что не стали вставлять палки в колеса и сделали процесс моддинга максимально простым и приятным: я обошел стандартную оболочку в первый же день. Серьезно, это проблема современных устройств с заблокированными загрузчиками. Хабр ресурс большой, может кто-то знает его и кастанет в статью? :) Авось ему интересно будет посмотреть, что стало с девайсом его разработки спустя столько лет.
После этого, у нас есть полноценный доступ к винде и сразу же максимально удобный — панель задач не скрывается, системные файлы тоже видны в проводнике. Теперь я скопировал много самых разных программ на флэшку, но как они работают мы узнаем позже.
❯ Так что с ним можно сделать теперь?
Несмотря на то, что девайс работает на винде (пусть и CE), софта под него не очень много. Многие программы с HP Jornada и других HPC начала нулевых собраны под устройства с процессорами SH3 или банально не оптимизированы под разрешение дисплея нашего переводчика, а ещё в отличии от десктопной винды, у CE есть большие проблемы с совместимостью.
И казалось бы — да и ладно, вон есть Windows Mobile на базе всё той же CE, софт для неё должен хорошо работать на переводчике, но всё, конечно же, не так просто. Особенно когда вопрос касается игр! Большинство эмуляторов здесь не работают т. к. требуют библиотеку GX, которой нет в CE. Поэтому я решил портировать эмулятор сам, который будет рисовать картинку используя GDI.
В качестве основы я взял Wave's NES с китайской реплики телефона Nokia TV E71, выбросил платформо-зависимый код и реализовал рендер с обработкой кнопок для CE. Но вот незадача — производительность совсем не ахти.
Затем я искал возможность выводить картинку напрямую на дисплей — и через DirectrDraw (который почему-то был в дистрибутиве Windows, но для него не было драйвера), и через ExtEscape, и пытался реверсить драйвер дисплея но увы... Остаётся только медленный GDI - и именно в него идёт упор по скорости эмуляции из-за преобразования пиксельформатов (5551 винды в 565 нативный) каждый кадр. Максимум я добился вот такой производительности. Не густо.
При том, что QTek S110 с даунклокнутым до 208МГц PXA272 тащил эмулятор вообще без каких либо проблем, потому что в нём есть прямой доступ к фреймбуферу через GX!
Основной проблемой я считаю отсутствие сете вого стека в системе. К сожалению, сеть сюда никак не получится прокинуть, а жаль, была бы неплохая машинка для проверки почты и работы в терминале, благо порт Putty на нее есть!
Но всё же под девайс есть некоторое количество полезного софта. Например пресловутые текстовые редакторы.
Есть и плееры. Причём в качестве плеера девайс показывает себя вполне неплохо. Кроме того, есть TCPMP — можно попробовать посмотреть киношку, если есть цель смотреть видеоконтент на ретро-девайсах.
Ну и есть конечно же разные нативные игры с HPC 2000х годов! Такие раньше на отдельных дисках продавали!
Сейчас я активно портирую KVM (JVM для J2ME) и MIDP-профиль на Windows CE. Если у меня получится — то на WinCE появится поддержка Java-игр!
❯ Заключение
Вот такой интересный материал с моддингом электронного переводчика у нас с вами сегодня получился. Весьма перспективный девайс, и если бы был прямой доступ к фреймбуфферу — потенциально очень неплохая машинка для ретро-гейминга. А как вам такая идея превращения профильного устройства во что-то совершенно иное? Пишите своё мнение в комментариях!
Также я сейчас ищу несколько девайсов для будущего контента, с которым вы, мои читатели, могли бы помочь. В первую очередь, я активно ищу дата-кабель для HP Jornada. У меня есть всё для того, чтобы запилить под него свою игру и рассказывать вам о таком опыте в отдельной статье и видео, но нет самого главного — дата-кабеля, с помощью которого можно было бы устанавливать и отлаживать нашу демку! Так что если у кого-то есть, будет здорово, если сможете поделится.
Также я сейчас ищу телефон Motorola на платформе MAGX или EZX (Linux). Среди таких, например, RAZR V8 и RAZR V9, EM30 и некоторые другие девайсы. Они отлично поддаются моддингу и с ними можно запилить крутой контент!
У меня есть Telegram-канал «клуб фанатов балдежа», куда я выкладываю мысли о ремонте, моддинге и программировании под девайсы прошлых лет. Подписывайтесь, дабы не пропускать всякое интересное каждую неделю!
Статья подготовлена при поддержке TimeWeb Cloud. Подписывайтесь на меня и @Timeweb.Cloud, чтобы не пропускать новые статьи каждую неделю!
Моя семья очень любит любую кашу за исключением тыквенной. А для меня варить кашу в обычной кастрюле это целая катастрофа, потому что снизу она у меня пригорает а сверху сырая и слипается. Буду варить в мультиварке в двух вариантах.
Вариант 1:
Мерным стаканчиком входящим в комплектацию мультиварки я не пользуюсь. Для моей семьи он маленький, поэтому я взяла обычную кружку и в кастрюлю насыпала одну кружку крупы пшенной, и промыла ее до тех пор, пока вода не станет прозрачной и потом влила две кружки воды и немного соли по вкусу.
Вывод по первому варианту:- температуру снизить до 90 градусов а время добавить до 1 часа. Плюсы и минусы:- итак: ---) выпрыгнуло через паровой клапан. +) Несмотря на то, что при закипании выпрыгнула вода через паровой клапан мультиварка сварила кашу полностью, сырых зерен не обнаружено, к дну каша не прилипла и не пригорела.
Итак, каша готова и теперь можно сделать вывод. А он будет таким:- Каша сварилась полностью, не пригорела, не прилипла, ни сбежала через паровой клапан. По вкусовому качеству каша получилась вкусной, можно при желании добавить сахар, или горячее молоко, или кто любит варенье. Готовим пшенную кашу на уже встроенной в мультиварку программу "Каша".
А в заключении хочу сказать что когда промоете крупу, то можно ее обдать кипятком и тогда уйдет горечь. А если уменьшить количество воды вливаемое в крупу, то каша получится рассыпчатая.
Ну что же... как я и сказала рано прибору ставить минусы и закидывать в кладовку, надо пробовать. С варкой пшенной каши она справилась на отлично, за что получает +.
Но на этом тестирование "умной мультиварки" не закончилось. Рано делать выводы. Буду дальше ее испытывать разными рецептами и делиться с тобой мой друг. Приходи ко мне сюда в гости и мы вместе будем готовить вкусняшки.
Скажу сразу, что это не реклама, а просто честный обзор пользователя. Ни каких ссылок я указывать не буду. Я та кто не любит готовить, но умеет это делать. А впрочем чего уж там - мне просто лень стоять у плиты и поэтому я покупаю разные кухонные "помощники". И на этот раз я купила вторую по счету мультиварку, так как одной мне мало. Спросишь зачем тебе две? А я отвечу:- в одной суп сварю или борщ, а в другой к примеру плов или что-то еще. Приготовление пищи традиционно отнимает много времени, которое могло быть использовано для своего хобби.. На сегодняшний день много выпускается бытовой техники на любой кошелек. Ну а я дорогую позволить себе не могу, совсем дешевую это выбросить деньги на ветер, а бюджетная самое то. И я купила себе бюджетную "умную" мультиварку, которая отвечает всем моим желаниям. Она одна заменяет кучу кастрюль и сковородок.
Это мультиварка ENDEVER vita -126
Эта мультиварка очень хорошо укомплектована. Есть все необходимое.
В комплектацию входит:- ложка для супа, ложка для вторых блюд, мерный стаканчик,чаша с отверстиями для приготовления на пару, инструкция по использованию мультиварки и конечно же книга с рецептами.
Просмотрев книгу я увидела красивые иллюстрации блюд приготовленные в мультиварке а так же рецепты этих блюд и заметила, что все используемые продукты доступны.
В этой мультиварке уже есть встроенных 45 программ. Представляешь ты заложил туда продукты и нажал одну кнопочку и можно увалиться на диван смотреть телевизор. Она сама тебе приготовит и подаст сигнал когда готово, что бы ты надев тапки прошлепал на кухню и вкусненько поел. Да это же мечта!!! А если ты не голоден, то она переключится в режим "подогрев" и будет поддерживать еду теплой пока ты не проголодаешься. Она выключится самостоятельно полностью через 12 часов. Но кто будет столько времени держать ее включенной, ведь еда может и испортится.
В ней можно приготовить все что хочешь и сварить, и спечь, и пожарить, и приготовить на пару, а так же можно сварить любимые пельмеши, макароны, что-то потушить, и даже сварить варенье без труда. А знаешь что варенье сваренное в мультиварке и в кастрюле абсолютно разное по вкусу и качеству? Это я тебе говорю как человек, который постоянно в ней готовит. Но в этой мультиварке можно еще спечь хлеб или что то еще и даже сварить холодец. Да..да..да ты не ослышался мой друг - сварить холодец. Кастрюля на 5 литров. Можно просто подогреть уже готовую еду. А самое привлекательная в ней есть программа это "мастер повар, а " это значит что ты сам можешь задавать температуру и время приготовления по своему рецепту. А так же есть функция "отложенный старт". Это значит что можно заложить все необходимые продукты и установить через какое время начать готовку, например надо через 2 часа, и мультиварка в автоматическом режиме сама включится через два часа. Только представь сколько всего вкусного можно в ней приготовить за небольшой отрезок времени. А благодаря антипригарному покрытию чаши еда не пригорит и не прилипнет. А имеющийся стаканчик на корпусе мультиварки это сборник для конденсата, когда откроешь крышку то конденсат не польется тебе на стол а уйдет в стаканчик. И эта помощница мне стоила всего лишь 3800 руб. Дорого?- нет. Дешево? -нет. Бюджетно и обладает таким большим функционалом как из дорогого сегмента ?- Да!. А главное:- помощница?- ДА!. А экономит драгоценное время?- Да!
А как же минусы?- спросишь ты. Вот лично для меня есть минус - появляется желание что-то готовить, а ведь как в самом начале я сказала, что не люблю готовить, потому что мне лень.
Друзья! А знаете ли вы, какой Android-смартфон был первым в мире и как он выглядел? А я теперь не просто знаю, но и могу физически пощупать настоящую легенду своих лет — HTC Dream, также известный как T-Mobile G1. Однако G1 был мне интересен не только как коллекционный девайс для гика, но и потенциально-диковинное устройство для разработки приложений: ведь в современном мире принято повышать минимальную версию Android для работы тех или иных программ, а я свои буду… понижать, чтобы они смогли заработать даже на самой первой версии Android! В сегодняшней статье мы с вами: посмотрим на Dream и постараемся понять, почему HTC выбрала именно Android, неудачно перепакуем аккумулятор, бэкпортируем мои клиенты ВК, YouTube и Telegram и посмотрим, правда ли старичок «бесполезен», как говорят в ретро-обзорах или что-то ещё да может! Интересно? Тогда добро пожаловать под кат!
❯ Введение
Как я уже говорил в вводной части статьи, HTC Dream стал первым массовым Android-смартфоном в мире. Конечно, до этого момента в Google были гораздо более ранние прототипы, которые использовались при разработке устройства и что интересно — они тоже были разработаны HTC. Однако тот прототип был совершенно не похож даже на G1: это был QWERTY-моноблок с дисплеем 320x240, где всё управление происходило кнопками, а в качестве основы устройства скорее всего был выбран HTC Cavalier:
И вот, 22 октября 2008 года в свет выходит HTC Dream у американского оператора T-Mobile, который гики сразу смели с виртуальных и физических магазинных полок. Стоит ли говорить о том, что смартфон имел огромный спрос не только на локальном рынке в США, но и за рубежом? Серым импортом даже в СНГ ввозилось довольно немало HTC Dream: правда сейчас их живых осталось не так уж и много :( Кстати, забавно но факт: первые серийные G1 не имели такой открытости и возможности модификации системы, которой гордятся владельцы Android-смартфонов в спорах с владельцами iPhone: даже adb был доступен только на специальной версии G1 — Android Dev Phone 1!
Но почему HTC выбрала именно Android? Чтобы ответить на этот вопрос, нужно вернуться в 2008 год, когда на рынке главенствовала Nokia со своим свежим флагманом 5800 XpressMusic. В те годы, выбор операционных систем для смартфонов был крайне невелик: по сути, производителям были доступны только две системы.
Первой была Windows Mobile, которая была хороша во всем: у неё была неплохая архитектура под капотом, настоящая многозадачность и работала она сносно даже на очень слабом железе. Но поскольку это Microsoft, куда же без косяков: система была нестабильной и могла повиснуть в самый неудачный момент (думаю, многие читатели помнят такие сокращения как ХР и ББ), её интерфейс не был анимированным (и не «модным») от слова совсем, а сама система была адаптирована лишь под стилус. Но тем не менее, мобильная винда продержалась на рынке смартфонов до 2010 года, как раз к моменту выхода Windows Phone 7… но это уже совсем другая история.
Второй системой была, конечно же, Symbian, которая на первый взгляд была хорошей: довольно удобный и привычный для многих интерфейс, очень хорошая оптимизация для слабых устройств и большая база самых разных приложений. Но её недостатки были гораздо более серьёзные, чем у мобильной винды: система лицензировалась не абы кому, а только участникам Symbian Foundation и её архитектура под капотом была просто отвратительной. Если кто-то из вас когда-то занимался разработкой нативных приложений под Symbian — вы наверняка вспомните эту боль.
И вот, в 2008 году на сцену выходит новичок на мобильном рынке — поисковой гигант Google со своей мобильной операционной системой Android, которая предлагала обширный функционал, нормальную среду для разработчиков и полноценный магазин приложений и делала это всё почти бесплатно: исходный код системы был опубликован под свободной лицензией и любой производитель мог использовать Android на своём устройстве полностью бесплатно, доплачивая лишь за необходимость установки Google-сервисов.
Учитывая, что внутренние прототипы Google разрабатывала тоже HTC, немудрено почему именно Тайваньская компания выпустила первый Android-смартфон в мире. Увидев успех HTC Dream, крупные гиганты также потянулись на рынок Android-смартфонов: Samsung представила I7500 Galaxy, давший старт одноименной линейке, Motorola представила CLIQ, а затем и легендарный Milestone, а LG — весьма интересную модель под названием GW620. Уже в 2009 году, HTC представила Magic, который Google раздавала на конференции Google I/O в Сан-Франциско всем участникам конференции и один из таких тоже оказался в моей коллекции!
Свой HTC Dream я получил совсем недавно из Китая. Я давно хотел обзавестись «дримкой» и недавно мне написал читатель Роман, предложив помощь в поиске интересующих меня девайсов на китайских аналогах авито. При этом Роман брал на себя все заморочки с организацией доставки из Китая в Москву, а из Москвы уже в мой город — Ейск, за что ему огромное спасибо. HTC Dream обошёлся мне в 2.200 рублей, а Moto Milestone — около 500 и оба устройства полностью рабочие!
Но перед тем как мы сможем перейти к фактическому обзору, нашу дримку нужно обслужить: у неё вспух аккумулятор, который уже никуда не годится, поэтому остаётся лишь его перепаковать. Перепаковка аккумулятора — это процесс замены литиевой банки на другую с сохранением оригинального контроллера и при возможности корпуса АКБ. И в моём случае произошёл определенный фейл…
❯ Перепаковываем аккумулятор
Сначала аккумулятор необходимо разобрать. Для многих этот процесс может показаться опасным, но я уверяю авс — если не тыкать в аккумулятор отвертками и не замыкать ничего в цепи BMS-контроллера и самого аккумулятора, всё будет нормально. В моём случае, разбирается он просто — отклеиваем бумажки, формирующие корпус и аккуратно вытаскиваем банку с контроллером из пластиковой основы.
Затем выпаиваем плату защиты, известную также как BMS (Battery Management System) и идём искать подходящую банку. Можно установить как Б/У с другого телефона, так и новую, подходящую по размерам. Новой банки таких габаритов у меня не было, поэтому я решил воткнуть туда от АКБ для телефона LG.
Но произошёл определенный нюанс: параллельно со статьей я готовил и видео, подробно снимая весь процесс перепаковки. В момент пайки отвлекся на видоискатель, перевернул бмску ввеврх-ногами и… переполюсовал аккум до входа в BMS. Результат: со смартфоном всё хорошо (на входе VBat в телефонах всегда стоит защита от переполюсовки и КЗ. Кроме того, КП способен выдержать до ~5.5В на VBat, но не более), а в контроллере BMS-дырка :(
Сначала я думал вырезать эту часть статьи, но потом решил, что авторы — тоже люди и у них тоже бывают определенные фейлы :) Но гештальт не закрыт и я обязательно выпущу ещё более подробный гайд о перепаковке аккумуляторов. В дримку можно установить BL-4C от Нокии, однако заряжаться он будет только до загрузки ядра, поэтому зарядки у нас по факту пока что нет. Ну ничего, думаю ещё найдется аккумулятор!
❯ Бэкпортируем приложения
Друзья! После статей и видео о разработке самопальных приложений, мне часто пишут в личку с вопросами можно ли портировать приложения современных сервисов на смартфоны прошлых лет. И здесь ответ неутешителен: нет, без исходного кода, в том числе и нативных зависимостей ничего портировтаь так просто не выйдет. Мои приложения изначально писались так, чтобы не зависеть вообще ни от чего кроме голого API Android (ни AppCompat, ни каких либо иных зависимостей) и при этом по возможности не используются даже фичи Android из 2.x. Именно поэтому мне свои приложения портировать гораздо проще.
Современная студия уже не умеет собирать приложения для 2.1 и ниже: примерно в 2.2 немного поменялся бинарный формат XML, из-за чего десериализатор в более старых версиях Android валится с ошибкой. Однако приложения, собранные в Android Studio образца 2017 прекрасно работают и на Motorola Milestone!
Поэтому всё, что нам остаётся — это лишь импортировать код приложений в более старую студию (в моём случае 2.3.2), поставить minSDK на 1 (Android 1.0) и собрать приложение… А ведь даже отладчик работает! Конечно есть определенные нюансы: например, в Android 1.0 нет атрибута onClick, дабы быстро повесить обработчик кнопки в Design-time и другие мелкие «приколы» той версии Android.
Приложения бэкпортированы, а значит можно попробовать, каков же экспиренс от использования первого Android-смартфона в 2024 году!
❯ Обзор
Конструктивно смартфон очень интересный. Несмотря на то, что корпус отюндь не выполнен из премиальных материалов, смартфон лежит в руке классно, но самое приятное ощущение — это открыть клавиатуру путём сдвига QWERTY-слайдера…
Механизм работает идеально даже спустя 16 лет после выхода устройства! Нижняя панель кнопок отличается наличием трекболла: специального колёсика, выполняющего роль DPad'а (стрелок). Трекболл долгое время был фишкой HTC, да и в целом действительно довольно удобным решением в определенных ситуациях, учитывая что первые ёмкостные тачскрины не были надёжными от слова совсем.
Изначально производительность смартфона меня не устроила и я решил скинуть его до заводских настроек. Но я не учёл один факт: в то время, Google почему-то пыталась косить под Apple и позволяла активировать смартфон только при наличии активного тарифного плана с пакетом интернета и симкой T-Mobile! Поэтому пришлось быстренько откатываться до прошивки RC29 (Android 1.0) и обходить активацию с помощью adb. Инженеры HTC оставили рутовую (!) консоль, которая работает из всей системы, когда мы просто пишем что-то на аппаратной клавиатуре! Попробуйте написать Enter -> reboot -> Enter на своей дримке!
После включения, нас сразу встречает оригинальный гугловский лаунчер, который может быть знаком читателям, которые пользовались первыми Android-смартфонами. Менюшка здесь открывается путём свайпа нижней шторки вверх… но поскольку в те годы, всё 2D в Android рисовалось софтварно, то плавность была далека от айфона. Но всё равно вполне шустренько.
Среди стандартных приложений был почти весь джентльменский набор: и полноценный браузер, и почтовый клиент, и удобный плеер. А недостающие приложения типа клиента твиттера или аськи допиливали сторонние разработчики, так что спустя годик-два после выхода, «дримкой» всё ещё вполне можно было пользоваться.
Начинаем с браузера. В качестве браузерного движка, Google решили выбрать в своё время WebKit, который исопльзовался в дроиде вплоть до 5.0, когда WebView и его фактическую реализацию разделили, попутно заменив WebKit на Chromium. Сейчас эта версия, увы, уже почти ничего не может: ни Хабр почитать, ни Пикабу… конечно сторонние клиенты могли бы решить эту проблему, но оба сайта не хотят предоставлять никакого публичного апи… Браузер до 2.1 даже верхней шторки не имел и переходить по URL приходилось нажимая кнопку контекстного меню и только затем Go:
До сих пор на устройстве работает мой любимый клиент почты — тот, который встроенный. Если ставить галки «SSL If Required», что позволяет игнорировать ошибки SSL, то он работает замечательно. Клавиатура у Dream замечательно подходит для переписок — отдельный ряд с цифрами и общее расположение кнопок этому очень и очень способствуют!
Работают даже карты, позволяя сделать из смартфона с GPS в эдакий навигатор без навигации. Но карты работают очень шустро, даже поиск есть, а если вдруг Google Maps со временем отвалится, то я и вьювер OSM запилю :)
Давайте же перейдем нашим приложениям! Начинаем с моего клиента YouTube, который здесь работает, но из-за значительно более «белой» светлой темы в 1.x, надписи не видно от слова совсем.
Клиент ВК здесь работает без каких либо проблем, но на «не свежей» системе заметно подлагивает. В целом, производительность всё равно далека даже от iPhone 3G в те же годы:
А как насчёт Telegram? Смогу ли я написать пост в свой Telegram-канал с него, учитывая такую крутую и классную QWERTY-клавиатуру?
❯ Заключение
Вот такой материал про первый Android-смартфон в мире у нас получился. Как видим, не совсем уж он и бесполезен и при определенном желании всё ещё может послужить хорошую службу своему хозяину. Берегите свои дримки :)
Также у меня естьTelegram-канал, куда я выкладываю мысли касательно ремонта и программирования под гаджеты прошлых лет. А когда у вас появился первый Android-смартфон? Пишите в комментариях!
На какой версии системы был ваш первый Android-смартфон?
Кстати, если у кого-то из читателей есть ненужные устройства (в том числе с косяками) или дешевые китайские подделки на айфоны/айпады/макбуки и другие брендовые девайсы будучи нерабочими, тормозящими, или окирпиченными и вам не хотелось бы выкидывать их на свалку, а наоборот, отдать их в хорошие руки и увидеть про них статью — пишите мне в Telegram или в комментах! Готов в том числе и купить их. Особенно ищу донора дисплея на китайскую реплику iPhone 11: мой ударник, контроллер дисплея калится и изображения нет :(
Статья подготовлена при поддержке TimeWeb Cloud. Подписывайтесь на меня и @Timeweb.Cloud, чтобы не пропускать новые статьи каждую неделю!