Как стать автором
Обновить

Автостарт android-устройств — это просто! Реверсим, патчим загрузчик и заставляем смартфон включаться самому

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров6.5K
Всего голосов 35: ↑34 и ↓1+43
Комментарии28

Комментарии 28

Ну что друзья, почитать - почитали, если есть время и желание - то можете и посмотреть :) Сейчас я стараюсь выпускать по статье и видео-материалу каждую неделю!

Ну а касательно будущего контента, то я недавно заказал себе кучу крутых ништяков: например, iBook G4 ( @Coppermine год назад подарил мне PowerBook G4, однако интересно было пощупать "бомж-класс" iBook), MacBook A1181 (нужен был Intel-макбук для контента с деплоем и отладкой НОВЫХ хоумбрю приложений на iPhone 2G/3G, даже на iOS 6!), а также читатель предложил HTC Shift по хорошей цене (UMPC, обожаю класс таких устройств) и @NutsUnderlineпредложил продать целых два NVidia Shield Portable по хорошей цене :)

Также читатель подарил iBook G3 Dual USB, но там надо менять гпу :( Буду искать донора-невключайку.

По классике спрошу в комментариях: может кто-то из читателей продаёт Xperia Play в нерабочем/полурабочем состоянии? Хочу собрать ещё один, у меня есть некоторые запчасти, а то у моего корпус в крайне плохом состоянии :)

Меня интересует немного другое, какие чипы можно запустить от подключения к USB без вставленного аккумулятора.

Любые, это от КП зависит, а не от чипсета :)

Но если не докапываться, то аллвиннеры, рокчипы, амлогик.

Не одноплатники, а именно мобильные девайсы. Возможно это механизмами на плате реализовано, а может где-то код мониторит заряд аккумулятора и дальше не идёт, если заряд аккумулятора не читается.

Например кнопочные часть грузятся от одного USB, а часть требуют аккумулятора. После манипуляций с системными регистрами можно аккумулятор вытащить и будет работать от одного USB, но стартовать без аккумулятора не хочет.

По факту второе. На мтк как я понял КП всегда запитывает процессор, просто если нет уровня на АКБ - смартфон падает в ресет.

Тут вопрос, где этот код, если это ROM в процессоре, то его не изменить. А если код уже из флэша, то можно.

Скорее всего где-то во флэше, возможно часть Preloader. А что мешает DC-DC понижающий собрать?

Здесь, скорей всего, все определяется мощностью блока питания, который вы будете использовать вместо зарядки. Невозможность работы без батареи сводится к тому, что обычная, классическая зарядка просто неспособна обеспечить достаточную мощность для работы сотового. АКБ сотовых примитивны. Цифрового интерфейса между чипсетом смартфона и АКБ нет. Возможно сотовый может проверять наличие АКБ по "третьему контакту АКБ", но и здесь достаточно будет резистивного делителя для решения проблемы отсуттсвующей АКБ. 2. За отличное владение IDA автору 5 балов! Но вот вопрос, а залоченный попадется загрузчик, что делать? Может быть все-таки разумней аппаратно имитировать кнопку включения?! Например, с помощью оптрона , с выходом, допускающем разно-полярное подключение, чтобы не мучаться с плюсом и минусом. Такое решение будет универсальным и подойдет абсолютно для любого телефона.

Интерфейс есть, но не везде. Айфон как пример, или коммуникаторы из нулевых

Наличие АКБ определяется относительно показаний на ADC КП, третий контакт это иногда либо температурный датчик, либо ID.

Имитировать кнопку тоже можно :)

Транзистор и RC-цепочку для задержки можно поставить.

Единственное - аккумулятор, даже если он дохлый, я бы всё же вытащил. От постоянного нахождения телефона на зарядке он запросто может вздуться или даже бахнуть.

Разобрал батарею и включил пару конденсаторов вместо Li-Ion ячейки. Не сильно помогло - в моём случае без АКБ устройство стабильно работало только от лабораторного блока питания (до 10 А), но никак не от зарядки на 2 А. На десятой секунде было пиковое потребление в 3 А и телефон перезагружался. Плюс сам MicroUSB не пропускал такой ток и грелся, пришлось в конце-концов подпаяться напрямую к конденсатору.
Вопрос с автоматическим включением после пропадания питания также никак не решился. Подаёшь питание на конденсатор - нет автоматического включения, не работает OTG. Подаёшь питание на USB - включается, но не хватает тока.

В итоге забил - лучше уж одноплатник с нормальной ОС и сетью. А ведь я нашел для смартфона ядро от NetHunter для "Redmi 3 ido" с поддержкой ethernet сетевых карт и USB-сетевая карта через хаб работала.
Даже RTL-SDR работал через OTG USB-хаб, играл радио.

На одноплатник тоже забил, даже не купил.

Режим полета предварительно включите

Ок, тогда он выключится через 5-30 минут по той же причине.

Питание мобилы от внешнего источника уже много раз обсуждали на Хабре. Но информация быстро тонет, и этот вопрос появляется снова. Вот статья, умный человек объяснил некоторые неочевидные моменты хорошим языком.

О, помню тот проект.

Ещё вспомнилось, как в начале десятых кто-то хотел сделать "умный выключатель" для умного дома на базе древних КПК (в какой-то компании списали кучу корпоративных девайсов в унылом состоянии)...

Использую Huawei U8860 для управления 3д принтером на klipper. Работает без батареи, сам включается при подключении usb, повезло. Правда питание не полноценное получается, камеру, wifi включить не дает, но мне и не надо.

К слову, об аккумуляторах: а как быть с девайсами, которые без штатной батареи не стартуют? HTC некоторые этим страдали, при подключении ЛБП просто прикидывались кирпичом.

Разломать штатный аккумулятор и припаять контакты от БП вместо дохлой банки?

Верно

Самое весёлое начинается, когда в руки попадает какой-нибудь iPaq или HTC без аккумулятора, а запустить хочется...

На HTC надо концевик поджимать)

Как это будет выглядеть? Провода от зарядки идут в саму зарядку и параллельно на имитацию АКБ?

Разломать штатный аккумулятор и припаять контакты от БП вместо дохлой банки?

Не. Там напряжения разные. У меня часы из телефона сделанные - БП через плату изменения напряжения с подстройкой. Надо опустить напряжение, чтобы телефон воспринял как дохлую батарею, а не как зарядку и через плату батареи это запускается. Танцы с бубном были.

Ну, можно преобразователь импульсный поставить и выкрутить на нём 3,7 В. И будет работать.

А так и получилось. Штатный блок зарядки не потянул. Залез в закрома - нашел БР 12В и выставил нужное напряжение регулятором.

Отличная статья! Только стоит помнить, что если вы оставите штатный аккумулятор, то нельзя просто оставить БП включённым в розетку. Старая Li-ion батарея при постоянном (суб)максимальном заряде может загореться. Нужно ограничивать максимальное напряжение с помощью Battery Charge Limit или патчить профиль зарядки(?).

Блин, вот вроде мало что вообще понимаю в железе, и не то что бы мне вообще когда-то пригодилось подобное (даже в системник лезть самому страшно, отношу в сервис для обслуживания). Но почему-то всегда залипаю на подобные статьи с ковырянием железа. Не знаю почему. Но спасибо.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий