×

Смартфон уходит в ребут: ищем источник

Работаю техническим специалистом по мобильным системам десятый год. За это время заметил: внезапная перезагрузка чаще всего прорастает из мелочи, подменяющейся «глубокой» неисправностью. Шаг-за-шагом отделяем программные сбои от аппаратных, пока не останется единственный подозреваемый.

перезагрузка

Файлы и прошивка

Начинаю с прошивки. Повреждённый образ System или Vendor вызывает событие watchdog-таймера: ядро фиксирует некорректную таблицу страниц и инициирует TLB-shootdown, после чего платформа уходит в hard reset. Решение простое — полная перепрошивка последней стабильной сборкой, а перед ней — очистка раздела cache через recovery. Если ребут пропадает, причина найдена. Не исчезла? Загружаюсь в Safe Mode: отсекаю сторонний код, наблюдаю сутки. Повторная перезагрузка при чистой системе намекает на иное происхождение.

Контроль температуры

Нагрев провоцирует brownout reset — контроллер питания (PMIC) блокирует цепь, когда термический датчик Main-THERM фиксирует 65–70 °C на кристалле. Доступны два пути проверки. Первый: приложение CPU-Monitor, где отслеживаю график и ловлю момент ухода в ребут. Второй: скрытое меню *#*#4636#*#*, пункт Battery Information показывает термопару на батарее. Если всплеск температуры предшествует сбою, меняю термопасту под радиатором, удаляю пыль, ужимаю троттлинг профилем «Power Save». Бывает, что причина кроется в деградации термослоя под силовым модулем — прокладка из пиролитического графита расслоилась, сопротивление теплопередаче выросло, кристалл закипает уже при лёгкой нагрузке.

Энергия и питание

Следующий круг — батарея и питание. Система BMS отключаетчает аппарат при скачке внутреннего сопротивления ячейки выше 250 мΩ. Проверяю мультиметром падение напряжения при токе 1 А: если просадка превосходит 0,25 Ставлю новую АКБ. Контакты батареи окислились? Полирую ластиком до блеска. Пауза в работе после удара указывает на микротрещину в шлейфе — при вибрации шов расходится, питание пропадает, PMIC фиксирует fault-IRQ и отдаёт команду reset. Ещё один виновник — накопитель eMMC. Изношенные блоки тянут длительный refresh, процессор застывает, сторожевой таймер запускает перезагрузку. Лечится программным переназначением badblock через утилиту vendor-level или заменой чипа. Финальная станция — сервис: если описанные проверки не выявили источник, провожу сквозную диагностику осциллографом, оцениваю импульсные цепи, фазовый инвертор заряда и контроллер DRAM-Vref. Только после этого решаю, ремонтировать ли плату либо проще перенести данные и сменить устройство.