?

Log in

No account? Create an account

Евгений Музыченко

Previous Entry Share Next Entry
Самсунг - унылое говно
emuzychenko
Попросила меня alechkaaАлечка перешить ей телефон (Samsung GT-S5360, прошивка S5630XXKI9, андроид 2.3.5), который уже давно подглюкивал. Ну, фигли, телефон на андроиде, с отдельным пунктом "Обновление ПО" - чего еще хотеть-то. Включил WiFi, и вперед.

На всякий случай скачал с самсунга электронное PDF-руководство - никаких подробностей процесса обновления там нет, только упоминание означенного пункта, и все. Подумалось, что процесс вылизан настолько, что не требует даже комментариев. Не тут-то было. При выборе пункта телефон сначала заявил, что ему необходима регистрация, и затребовал адрес email и пароль. Ладно, ввел. Телефон немного подумал и сказал "Сбой обработки". Выяснилось, что Алечка уже пыталась его обновить, и телефон неизменно отвечал одно и то же.

Ладно, зашел на сайт самсунга, в раздел "Регистрация продукта". Ввел данные, подтвердил email. В итоге так и не понял, какое отношение это имеет к регистрации продукта - это банальная регистрация на сайте, для пользования разными примочками от самсунга.

В разделе "Загрузки" для этой модели нет ничего, имеющего отношение к прошивке. Путем поиска по сайту было найдено упоминание о Kies (в разделе телефона оно называется PC Sync). Версия 2.3.2.12054-20 имеет размер всего-то 88 Мб. Это вообще забавная тенденция: уже много лет наблюдаю, что фирменные утилиты для соединения телефона с компьютером имеют размер в десятки мегабайт, и при этом чрезвычайно убоги, а левые самоделки с гораздо более широкой функциональностью имеют размер в единицы мегабайт.

При установке это чудо взялось скачивать .Net Framework 4.0 (41 Мб), затем патч для него (3 Мб), затем Windows Media Format 11 (12 Мб). При этом ни разу не уведомляет, чего и сколько собирается качать, считая подключение к интернету по определению бесконечным и бесплатным. Кнопка "Отмена" при этом неактивна - прервать скачивание можно только убиванием установщика или принудительным разрывом сетевого соединения.

Запускается (от момента клика на программе до появления окна) минуту с лишним. Сравнимо со временем загрузки средней операционной системы (как и развернутый размер - 200 Мб, в памяти занимает примерно столько же). При этом заставка появляется за несколько секунд до появления окна, а вначале около минуты проходит просто в тупом ожидании неизвестности - то ли запускается, то ли давно вывалилось. Блин, научите меня кто-нибудь делать такой огромный и тормозной ужас?

Сразу после запуска оно радостно сообщило, что доступна новая версия, и предложило скачать. Нетрудно догадаться, куда я его послал.

При подключении телефона по USB он корректно определяется на уровне драйверов и заносится в список устройств. Никаких проблемных устройств в Device Manager нет. Kies же при этом отображает вечную картинку "Подключение" - подключение не завершается, кнопка "устранить ошибку подключения" долго занимается переустановкой драйверов, которая не помогает.

Попробовал принудительно выбрать из меню "Обновление и инициализация". Требует ввести название модели и серийный номер, после чего выкидывает окошко на корейском и кнопкой "подтвердить". Потом выяснилось, что так оно жаловалось на невозможность подключения к интернету (был запрет в файрволе).

Убрал запрет - стало говорить "GT-S5360 не поддерживает инициализацию". Каким образом в нем просто обновить прошивку, без инициализации - хрен знает.

При запуске из-под непривилегированного аккаунта и выборе "устранение неполадок" при нажатии кнопки "Запуск" ничего не делает, хотя видно, что кнопка нажимается. Вообще, софтина просто фантастически убогая, производит впечатление поделия малограмотного студента в качестве курсовика.

Таким образом, все штатные средства обновления были исчерпаны со строго нулевым результатом. Пришлось искать левые решения.

На SamsungClub есть раздел по прошивкам для S5360. Есть ссылка на тамошнюю же инструкцию, где сказано, что нужно взять "прошивальщик ODIN", без оговорок насчет его версии. Я его оттуда и скачал - версии 4.38 и 4.43.

Это чудо при запуске из-под непривилегированного аккаунта постоянно выкидывает сообщения на корейском с единственным английским текстом "Image Path". Спасает только запуск под администратором. Но и в этом режиме он не определяет телефона, и тупо вываливается (обе версии) аварийно после выбора файла прошивки (режим One Package).

Дальнейшее гугление привело сюда, где сказано, что с этой моделью работают только версии 1.84 и 1.85. Респект ребятам из Samsung Club, которые не удосужились сделать пометку. Скачал 1.85 - он определяет телефон, но не поддерживает режима One Package, в котором упакована прошивка. Чем распаковать - хрен знает, ибо продвинутые 7-Zip и IZArc ее не понимают.

Погуглив по имени "bcmcp.img", нашел ветку, в которой пишут, что однофайловые прошивки Odin 1.xx не понимает (а те версии, что понимают - соответственно, не понимают S5360). Красота. Чтобы преобразовать однофайловый формат в понятный 1.85, нужна утилита SplitFUS, которая есть только в вариантах для Linux и Win32/Cygwin. Ведь простейшая программка - ну что мешало автору сделать ее компилируемой в Native Win32, кроме лени и непонятных убеждений?

Виртуальная машина с линуксом у меня осталась дома, в деревне инет медленный и конечный, в имеющихся образах GPardEdLive и PMagic не оказалось нужных утилит - решил поставить Cygwin. Для скачивания доступен только небольшой установщик, который сам качает нужные пакеты. Но и этот уродец тоже свято уверен в том, что, ежели ему разрешили что-то скачивать из интернета, то он может качать сколько влезет, а предупреждать пользователя о том, сколько он собирается скачать, вовсе не обязательно. Показывает только индикатор прогресса, из которого, при некоторой сноровке, можно примерно вычислить, сколько он еще собирается стянуть.

В инструкции к SplitFUS насчет конфигурации Cygwin сказано: "...make sure "tar", "md5sum", "zip" has been selected". "md5sum" в списке пакетов вообще не было, зипов было несколько, отметил все, но команда zip после установки все равно не работала. Запустил установщик снова - оказалось, он почему-то не установил скачаные пакеты. После доустановки все заработало, получился набор перепакованных файлов, которые Odin благополучно залил в телефон.

Интереса ради подключил перепрошитый телефон к Kies - вечное ожидание подключения сменилось на неизменное "Сервис не может быть запущен на данном устройстве. Отсоедините и повторно подсоедините устройство". Говно - оно говно и есть.

В итоге на перепрошивку несчастного телефона были убиты сутки, потрачено почти полгигабайта мобильного интернета.

А самое смешное - в том, что любой, даже самый кривой, планшетник обновляется влет путем записи прошивки (упакованной или распакованной) на SD-карту и нажатии определенной комбинации клавиш при включении. Код загрузки с SD там зашит прямо в процессор, так что убить устройство невозможно физически - оно всегда восстановится правильной прошивкой. Какая религия мешает сделать это в телефонах, которые уже черт знает сколько лет массово поддерживают SD - загадка. Какое-то массовое убожество, натурально.

  • 1
Есть беда у Самсунга. при хорошем железе, софт делают руками такой кривизны, что можно вместо обручей на бочки.

Интересный пост, спасибо.

Можно убить. Раз в неделю приносят андроидные планшеты с убитым бутлоадером. Приходится поднимать через JTAG.

Это плохие, негодные планшеты. Там либо какой-то очень странный процессор (все более-менее современные умеют грузиться с SD, USB, UART, ATA/SATA), либо производитель планшета пожлобился на копеечную схему формирования сигнала от комбинации кнопок.

С UART они грузятся, но проще поднимать JTAG'ом, поскольку есть однокнопочные решения из серии "припаял несколько проводов к плате и нажал кнопку Resurrect". Я не вдавался в подробности, поскольку сам этим не занимаюсь, но у меня создалось впечатление (возможно ошибочное), что бутлоадер внутри процессора убить невозможно, потому что ROM, а вот всё что грузится после него, в том числе модули работы с SD, USB и модуль Recovery, тот самый, что запускается по нажатию комбинации кнопок -- всё это лежит в перезаписываемой памяти и может быть повреждено или стерто.

То есть железный здесь только основной загрузчик с десятком команд, а остальное софтовое.

В нормальных процессорах (например, TCC89xx или OMAP) зашит код, достаточный для чтения файла начального загрузчика с SD (FAT16/FAT32) или приема его по USB/UART. В совсем дешевых, вроде WonderMedia, действительно поддерживается загрузка только с NOR/NAND и Serial Flash, увы. Я был о них лучшего мнения. :)

4pda рулит - не надо тратить 500 мб инета. Заходишь на 4pda, в тему прошивки этого аппарата. В шапке темы все есть, прошивка весит около 100 мб, один >300кб. Все это отлично работает на хр, семерке и восьмерке. Проверенно мной именно на этом аппарате.

Начинать я всегда предпочитаю с официальных утилит и прошивок, если к тому моменту еще не имею информации о наличии стопроцентно подходящих сторонних. На 4PDA таки тусуются энтузиасты, любящие ковыряться, настраивать, переделывать и т.п., а задача стояла тупая - просто обновить до последней версии. Ну а уже после того, как официальный Kies оказался неимоверно тупым, пришлось начинать пляски с бубном.

  • 1