Как создать scatter файл для устройств на MediaTek

Scatter файл нужен тогда, когда SP Flash Tool при подготовке к прошивке выдаёт ошибку о неверном или отсутствующем scatter-файле — без него программа просто не знает, куда записывать разделы памяти устройства на чипе MediaTek. Это текстовый файл с описанием структуры флеш-памяти: адреса начала и размеры каждого раздела (boot, system, recovery и других).

Ниже разберём, что находится внутри scatter-файла, где его взять готовым и как создать или отредактировать самостоятельно. Учтите: точные названия разделов и их адреса зависят от конкретного процессора и модели устройства, поэтому универсального файла «для всех MediaTek» не существует.

Что такое scatter файл и зачем он нужен

Scatter файл (обычно с именем вида MT6580_Android_scatter.txt) — это карта разметки флеш-памяти устройства. В нём построчно перечислены разделы: имя, стартовый адрес, размер, тип памяти и имя соответствующего файла образа прошивки.

Программа SP Flash Tool читает этот файл и строит таблицу загрузки: какой образ в какой раздел писать. Если scatter не соответствует реальной разметке устройства, прошивка либо не начнётся, либо запишет данные не туда — а это прямой путь к «кирпичу».

Типичная строка внутри файла выглядит примерно так:

- partition_index: SYS5

partition_name: boot

file_name: boot.img

linear_start_addr: 0x1F80000

partition_size: 0x1000000

Где взять готовый scatter файл

Самый безопасный путь — не создавать файл с нуля, а взять готовый. Вот основные источники:

  • 📦 Из комплекта официальной прошивки для вашей модели — scatter почти всегда лежит в архиве рядом с образами разделов.
  • 🌐 С профильных форумов (например, ветки по конкретной модели на 4PDA) — там выкладывают проверенные файлы.
  • 🛠️ Из дампа памяти, снятого с рабочего такого же устройства.
  • 📄 Из документации или репозиториев разработчиков кастомных прошивок под ваш чип.
⚠️ Внимание: scatter файл от другой модели, даже на том же процессоре, может иметь иную разметку. Использование чужого файла без проверки адресов — одна из самых частых причин неудачной прошивки и потери раздела с IMEI (NVRAM).

Создание scatter файла через MTK Droid Tools

Классический способ для старых устройств на MediaTek с root-доступом — утилита MTK Droid Tools. Она подключается к включённому смартфону по USB с активированной отладкой (Настройки → Для разработчиков → Отладка по USB), считывает информацию о чипе и разметке и позволяет сохранить scatter одной кнопкой.

Порядок действий в общем виде:

☑️ Проверка перед созданием scatter через MTK Droid Tools

Выполнено: 0 / 4

После подключения нажмите кнопку создания scatter-файла и сохраните результат на диск. Программа работает только с устройствами на старых чипах MTK и требует root — на современных аппаратах с заблокированным загрузчиком этот метод, как правило, недоступен. Если утилита не видит устройство, проверьте драйверы и разрешение отладки на экране смартфона.

📊 Каким способом вы получали scatter файл?
Брал из комплекта прошивки
Создавал через MTK Droid Tools
Снимал дамп через SP Flash Tool
Редактировал вручную

Получение разметки через SP Flash Tool (Read Back)

Если устройство рабочее, но scatter-файла нет, можно снять дамп памяти через функцию Read Back в SP Flash Tool. Нюанс: для запуска чтения программе всё равно нужен хоть какой-то scatter — на этом этапе часто используют файл от близкой модели на том же чипе только для чтения (не для записи), либо файл, сгенерированный сторонними утилитами.

Алгоритм выглядит так: на вкладке Read Back добавляется задача чтения всей памяти (с адреса 0x0 и длиной, равной объёму флеш-памяти), устройство подключается в выключенном состоянии, и программа сохраняет полный дамп в файл. Из этого дампа затем извлекают таблицу разделов и формируют корректный scatter.

Как узнать объём флеш-памяти для Read Back

Объём памяти указан в характеристиках устройства (например, 8 или 16 ГБ eMMC). Для чтения длина задаётся в шестнадцатеричном виде. Если задать длину больше реальной, чтение оборвётся с ошибкой в конце — сохранённая часть обычно остаётся пригодной для анализа таблицы разделов.

⚠️ Внимание: режим Read Back только читает память и не изменяет устройство, но использование чужого scatter даже для чтения на несовместимом чипе может завершиться ошибкой. Никогда не переключайтесь на вкладку Download с непроверенным файлом.

Ручное создание и редактирование scatter файла

Scatter — обычный текстовый файл, его можно открыть и править в любом редакторе, например в Notepad++. Ручное редактирование оправдано, когда нужно изменить путь к образу раздела, отключить прошивку отдельных блоков (параметр is_download: false) или подправить адреса на основе известной таблицы разделов.

Ключевые поля каждого блока:

ПолеНазначение
partition_nameИмя раздела (boot, recovery, system и др.)
file_nameФайл образа, который будет записан в раздел
linear_start_addrСтартовый адрес раздела в памяти
partition_sizeРазмер раздела в байтах (шестнадцатеричный формат)
is_downloadУчаствует ли раздел в прошивке (true/false)

Адреса и размеры берутся из таблицы разделов конкретного устройства — например, из вывода /proc/partitions или /proc/mtd на рутированном аппарате, либо из дампа памяти. Выдумывать адреса «на глаз» категорически нельзя: один неверный адрес превращает прошивку в необратимую порчу разметки.

Типичные ошибки при работе со scatter файлом

Чаще всего пользователи сталкиваются с такими проблемами:

  • ❌ Ошибка инициализации scatter в SP Flash Tool — файл повреждён, имеет неверную кодировку или лишние символы после правки в неподходящем редакторе.
  • 🔀 Несовпадение чипа: scatter для MT6580 не подойдёт для MT6735, даже если модели внешне похожи.
  • 📁 Пути к образам с кириллицей или пробелами — программа может не найти файлы; держите прошивку в папке с латинским именем.
  • 💾 Попытка прошить разделы, размер которых не совпадает с указанным в scatter.

Если программа ругается на файл сразу после загрузки, откройте его в редакторе и проверьте: нет ли BOM-метки в начале, сохранён ли он в кодировке ANSI/UTF-8 без BOM, не потеряны ли строки заголовка с версией и названием платформы.

Частые вопросы

Подойдёт ли scatter файл от другой модели на том же процессоре?

Не гарантированно. Разметку памяти определяет производитель устройства, и на одном чипе она может различаться. Использовать чужой файл можно только для чтения (Read Back) и с пониманием риска, для записи — нет.

Чем открыть и отредактировать scatter файл?

Любым текстовым редактором, который не добавляет служебные символы: Notepad++, AkelPad, VS Code. Стандартный «Блокнот» Windows тоже подойдёт, но следите за кодировкой при сохранении.

Можно ли создать scatter без root-доступа?

Да — через снятие полного дампа памяти в SP Flash Tool с последующим анализом таблицы разделов. Способы вроде MTK Droid Tools требуют root.

Что делать, если после прошивки с чужим scatter устройство не включается?

Не паникуйте и не прошивайте дальше вслепую. Если до прошивки был снят дамп памяти — восстановите его через Read Back/Write. Если дампа нет, ищите полный заводской образ (firmware) именно для вашей ревизии устройства на профильных форумах.

Где взять адреса разделов для ручного создания файла?

На рутированном устройстве — из файлов /proc/partitions или /proc/mtd, доступных через ADB-консоль. Без root — из анализа дампа памяти или из готового scatter от вашей модели.