16 сентября 2026, 22:00

У этого телевизора меньше гигабайта доступной оперативной памяти. Штатный лаунчер при этом занимал около 152 МБ, в фоне жили сервисы Сбера, а обычный переход между экранами ощущался тяжелее, чем должен ощущаться интерфейс телевизора.

Я не собирался превращать его в универсальный медиакомбайн. Нужен был простой сценарий: включить, открыть TeamPlay и смотреть IPTV. Голосовой ассистент, рекомендации, встроенные кинотеатры и штатный лаунчер в этот сценарий не входили.

СалютТВ после оптимизации в домашнем интерьере

Поэтому я пошёл не в перепрошивку, а в аккуратную и обратимую чистку через ADB. Заодно подключил телевизор к Home Assistant, чтобы видеть не только субъективное «стал быстрее», но и температуру, память, накопитель и текущее приложение.


Что это за телевизор

Сначала снял аппаратный и программный профиль устройства:

плата: CV6681-K32
модель сборки: SDX-32H2012S
платформа: m5621
Android: 9 / API 28
StarOS: 1.103.91
CPU: 4 × Cortex-A53, до 1 ГГц
GPU: Mali-470 MP3
ABI: armeabi-v7a, 32 bit
RAM: около 907 МБ доступно системе
swap: 200 МБ
раздел data: 3,5 ГБ

Главное ограничение здесь не процессор, а память. Когда из неполного гигабайта 152 МБ забирает только домашний экран, борьба за каждый фоновый процесс уже имеет смысл.

В темах 4PDA по плате CV6681-K32 и близкому шасси часто советуют альтернативный лаунчер и ADB AppControl. Советы оказались полезны как направление, но прошивки от похожих моделей я не ставил: совпадение внешнего вида или платформы ещё не означает совместимость конкретной платы.


Сначала — снимок состояния, потом отключение

ADB на телевизоре уже был включён. Я подключился по локальной сети, выгрузил список пакетов, посмотрел текущий HOME activity, процессы и потребление памяти. Только после этого началась чистка.

Для пользовательского профиля отключены 37 пакетов, связанных с ненужными витринами, рекомендациями и сервисами. Использовалась обратимая команда:

adb shell pm disable-user --user 0 <package>

Это важное различие: пакеты не удалялись из системного раздела. Их можно вернуть командой pm enable, а сам Android и телевизионные функции остаются на месте.

Я сохранил компоненты, от которых зависят:

  • HDMI и выбор источника;
  • системные настройки;
  • ввод с пульта и клавиатура;
  • базовые Android TV-компоненты;
  • TeamPlay (city.teamplay.android).

Один защищённый системный сервис Сбера отключить обычным ADB нельзя. Он продолжает занимать заметную память, но без root и вмешательства в системный раздел это разумная граница. Анимации интерфейса выставлены в 0, чтобы слабое железо не тратило время на декоративные переходы.

Путь от штатной системы к лёгкому СалютТВ


Ошибка с Launcher Manager

На одном из шагов домашним экраном стал Launcher Manager. На телевизоре закономерно открылось окно самого менеджера лаунчеров — полезный инструмент настройки, но совершенно неподходящий ежедневный HOME.

Ошибку исправил установкой открытого Lightweight Android TV Launcher. Установленная версия 1.6.1 занимает примерно 16–20 МБ RAM. После проверки HOME activity Launcher Manager был отключён.

Разница со штатными 152 МБ получилась почти десятикратной. Это не превращает Cortex-A53 в современный медиаплеер, но запуск и навигация больше не утопают в тяжёлом домашнем экране.

Кинопоиск в финальную конфигурацию не вошёл. В процессе стало понятно, что он не нужен: чем уже задача устройства, тем меньше причин снова наращивать фоновые сервисы.


До и после

Это не лабораторный бенчмарк: показатели снимались в разное время и под разной нагрузкой. Но масштаб изменений виден.

Показатель Было Стало
Память лаунчера около 152 МБ 16–20 МБ
Ненужные пользовательские пакеты активны 37 отключены
Анимации Android стандартные отключены
Основное приложение среди множества витрин TeamPlay
Наблюдаемость вручную через ADB Home Assistant, каждые 30 секунд

На последнем снимке Home Assistant показывал 65,3% занятой RAM, 86,1 МБ swap, 59% занятого раздела данных и 1 475 МБ свободного места. Текущим приложением был TeamPlay.


Коллектор вместо ещё одного приложения на телевизоре

Ставить на устройство отдельный агент мониторинга не хотелось: он сам съел бы часть дефицитной памяти. Поэтому сбор метрик вынесен на существующую Ubuntu VM buzz01.

Небольшой Python-сервис запускается через systemd, подключается к телевизору по ADB и публикует единый JSON endpoint. Сам коллектор занимает около 12 МБ RAM уже на серверной стороне.

Он собирает:

  • доступность телевизора;
  • температуру SoC;
  • общую, доступную и занятую память;
  • использование swap;
  • занятое и свободное место;
  • uptime;
  • активное приложение.

Архитектура мониторинга СалютТВ

Home Assistant опрашивает endpoint раз в 30 секунд через REST-сенсоры. Для телевизора сделана отдельная панель с текущими значениями, шкалами температуры и памяти, а также историей RAM, swap и накопителя.

Связка получилась нарочно простой: ADB, маленький HTTP-сервис и штатные возможности Home Assistant. Нет базы, брокера сообщений и дополнительного процесса на самом телевизоре.


Результат и нерешённая температура

Сейчас телевизор загружается в лёгкий HOME, сохраняет TeamPlay и основные телевизионные функции. Чистка обратима, root не использовался, системный раздел не менялся. Если какой-то компонент понадобится позже, его можно включить обратно.

Но у результата есть неприятная цифра: во время работы TeamPlay датчик показывал 83–85 °C. Интерфейс стал заметно легче, однако высокая температура не исчезла вместе со штатным лаунчером.

Именно поэтому мониторинг здесь оказался не декоративным дополнением. Следующий шаг — посмотреть историю температуры на длинном интервале, проверить вентиляцию корпуса и понять, это обычное поведение конкретной платы или уже повод улучшать охлаждение.