Scatter File For All Android Phones

ROM developers modify the scatter file when repartitioning to enlarge system for GApps or custom features. They then provide a custom scatter with their ROM package.


A scatter file (usually named MTxxxx_Android_scatter.txt) is a configuration file that describes the partition layout of an Android device’s flash memory (eMMC or UFS storage). It is primarily used by MediaTek (MTK) flashing tools like SP Flash Tool, SP Multi-Port Flash Tool, and certain Unisoc (Spreadtrum) tools.

Think of it as a map for your phone’s internal storage. The scatter file tells the flashing software:

Without the correct scatter file, the flashing tool cannot know where to write the firmware files. Writing data to the wrong address can hard-brick your device—turning it into an expensive paperweight. scatter file for all android phones

Solution: Always match the scatter file to the exact firmware build number (e.g., V12.5.10.0.RKLMIXM).

To answer the original query directly: There is no single "scatter file for all android phones." Each phone model (often each firmware version) has its own unique scatter file. Searching for a universal one will lead to frustration or bricked devices.

However, locating the correct scatter file is straightforward if you follow the proper channels: ROM developers modify the scatter file when repartitioning

Whether you are a professional repair technician, a custom ROM developer, or a hobbyist trying to unbrick your personal phone, understanding scatter files empowers you to safely work with MediaTek-based Android phones. Treat the scatter file as the critical surgical map it is – precise, unique, and absolutely necessary.


Note: Flashing firmware always carries risk. This guide is for educational purposes. Always ensure you have proper backups and understand the consequences of modifying partition tables. When in doubt, consult a professional.


There is no “one scatter file fits all Android phones.” Each device has a unique partition map. For safe flashing or unbricking, always obtain the exact scatter file that came with your device’s factory firmware. A scatter file (usually named MTxxxx_Android_scatter

If you need to create a generic tool that works across phones, consider using dynamic partition detection (reading GPT or MBR on the fly) rather than a static scatter file.


It includes all standard partitions and explanations so you can adapt it to specific devices if needed.

# General Scatter File for Android Phones (MTK Platform)
#适用于大多数MTK安卓手机的通用分区表
# Note: Actual partition sizes and addresses vary by device.
# You must verify with your device's specific firmware.
##################################################################################################
# General Settings
##################################################################################################
- general: MTK_PLATFORM_CFG
  info: 
    platform: MTXXXX,
    page_size: 0x1000,
    reserved: 0x0
##################################################################################################
# Preloader (BootROM stage 1)
##################################################################################################
- partition_index: 0
  partition_name: preloader
  file_name: preloader_*.bin
  is_download: true
  type: NORMAL_ROM
  linear_start_addr: 0x0
  physical_start_addr: 0x0
  partition_size: 0x400000
  region: EMMC_BOOT_1
##################################################################################################
# Partition Index 1: PGPT (Primary GPT)
##################################################################################################
- partition_index: 1
  partition_name: pgpt
  file_name: N/A
  is_download: false
  type: NORMAL_ROM
  linear_start_addr: 0x0
  physical_start_addr: 0x0
  partition_size: 0x8000
  region: EMMC_USER
##################################################################################################
# Partition Index 2: Bootloader stage 2 (Little Kernel / U-Boot)
##################################################################################################
- partition_index: 2
  partition_name: lk
  file_name: lk.bin
  is_download: true
  type: NORMAL_ROM
  linear_start_addr: 0x80000
  physical_start_addr: 0x80000
  partition_size: 0x100000
  region: EMMC_USER
##################################################################################################
# Partition Index 3: Bootloader environment
##################################################################################################
- partition_index: 3
  partition_name: boot_para
  file_name: N/A
  is_download: false
  type: NORMAL_ROM
  linear_start_addr: 0x180000
  physical_start_addr: 0x180000
  partition_size: 0x100000
  region: EMMC_USER
##################################################################################################
# Partition Index 4: NVRAM (Wi-Fi/BT/MAC addresses, IMEI)
##################################################################################################
- partition_index: 4
  partition_name: nvram
  file_name: N/A
  is_download: false
  type: NORMAL_ROM
  linear_start_addr: 0x280000
  physical_start_addr: 0x280000
  partition_size: 0x500000
  region: EMMC_USER
##################################################################################################
# Partition Index 5: Security-related (keystore, TEE)
##################################################################################################
- partition_index: 5
  partition_name: seccfg
  file_name: N/A
  is_download: false
  type: NORMAL_ROM
  linear_start_addr: 0x780000
  physical_start_addr: 0x780000
  partition_size: 0x800000
  region: EMMC_USER
##################################################################################################
# Partition Index 6: OEM / custom parameters
##################################################################################################
- partition_index: 6
  partition_name: para
  file_name: N/A
  is_download: false
  type: NORMAL_ROM
  linear_start_addr: 0xf80000
  physical_start_addr: 0xf80000
  partition_size: 0x80000
  region: EMMC_USER
##################################################################################################
# Partition Index 7: Boot logo image
##################################################################################################
- partition_index: 7
  partition_name: logo
  file_name: logo.bin
  is_download: true
  type: NORMAL_ROM
  linear_start_addr: 0x1000000
  physical_start_addr: 0x1000000
  partition_size: 0x1000000
  region: EMMC_USER
##################################################################################################
# Partition Index 8: Trusted Execution Environment OS
##################################################################################################
- partition_index: 8
  partition_name: tee
  file_name: trustzone.bin
  is_download: true
  type: NORMAL_ROM
  linear_start_addr: 0x2000000
  physical_start_addr: 0x2000000
  partition_size: 0x500000
  region: EMMC_USER
##################################################################################################
# Partition Index 9: Android kernel
##################################################################################################
- partition_index: 9
  partition_name: boot
  file_name: boot.img
  is_download: true
  type: NORMAL_ROM
  linear_start_addr: 0x2500000
  physical_start_addr: 0x2500000
  partition_size: 0x2000000
  region: EMMC_USER
##################################################################################################
# Partition Index 10: Recovery mode kernel+ramdisk
##################################################################################################
- partition_index: 10
  partition_name: recovery
  file_name: recovery.img
  is_download: true
  type: NORMAL_ROM
  linear_start_addr: 0x4500000
  physical_start_addr: 0x4500000
  partition_size: 0x2000000
  region: EMMC_USER
##################################################################################################
# Partition Index 11: Device-specific parameters (KB/LCD/IC config)
##################################################################################################
- partition_index: 11
  partition_name: custom
  file_name: custom.bin
  is_download: true
  type: NORMAL_ROM
  linear_start_addr: 0x6500000
  physical_start_addr: 0x6500000
  partition_size: 0x2000000
  region: EMMC_USER
##################################################################################################
# Partition Index 12: Kernel command line / misc boot info
##################################################################################################
- partition_index: 12
  partition_name: misc
  file_name: N/A
  is_download: false
  type: NORMAL_ROM
  linear_start_addr: 0x8500000
  physical_start_addr: 0x8500000
  partition_size: 0x80000
  region: EMMC_USER
##################################################################################################
# Partition Index 13: Metadata for encrypted userdata
##################################################################################################
- partition_index: 13
  partition_name: metadata
  file_name: N/A
  is_download: false
  type: NORMAL_ROM
  linear_start_addr: 0x8580000
  physical_start_addr: 0x8580000
  partition_size: 0x2000000
  region: EMMC_USER
##################################################################################################
# Partition Index 14: OEM system partition A (Android OS)
##################################################################################################
- partition_index: 14
  partition_name: system_a
  file_name: system.img
  is_download: true
  type: NORMAL_ROM
  linear_start_addr: 0xa580000
  physical_start_addr: 0xa580000
  partition_size: 0xc0000000
  region: EMMC_USER
##################################################################################################
# Partition Index 15: OEM system partition B (for A/B OTA)
##################################################################################################
- partition_index: 15
  partition_name: system_b
  file_name: system_other.img
  is_download: true
  type: NORMAL_ROM
  linear_start_addr: 0xca580000
  physical_start_addr: 0xca580000
  partition_size: 0xc0000000
  region: EMMC_USER
##################################################################################################
# Partition Index 16: Vendor apps and libs
##################################################################################################
- partition_index: 16
  partition_name: vendor
  file_name: vendor.img
  is_download: true
  type: NORMAL_ROM
  linear_start_addr: 0x18a580000
  physical_start_addr: 0x18a580000
  partition_size: 0x40000000
  region: EMMC_USER
##################################################################################################
# Partition Index 17: Product-specific customizations
##################################################################################################
- partition_index: 17
  partition_name: product
  file_name: product.img
  is_download: true
  type: NORMAL_ROM
  linear_start_addr: 0x1ca580000
  physical_start_addr: 0x1ca580000
  partition_size: 0xc0000000
  region: EMMC_USER
##################################################################################################
# Partition Index 18: Cache partition
##################################################################################################
- partition_index: 18
  partition_name: cache
  file_name: cache.img
  is_download: false
  type: NORMAL_ROM
  linear_start_addr: 0x28a580000
  physical_start_addr: 0x28a580000
  partition_size: 0x20000000
  region: EMMC_USER
##################################################################################################
# Partition Index 19: User data (internal storage + apps)
##################################################################################################
- partition_index: 19
  partition_name: userdata
  file_name: userdata.img
  is_download: false
  type: NORMAL_ROM
  linear_start_addr: 0x2aa580000
  physical_start_addr: 0x2aa580000
  partition_size: 0x180000000
  region: EMMC_USER
##################################################################################################
# Partition Index 20: Flash info (backup GPT header)
##################################################################################################
- partition_index: 20
  partition_name: flashinfo
  file_name: N/A
  is_download: false
  type: NORMAL_ROM
  linear_start_addr: 0xFFFFFFFFFFFF
  physical_start_addr: 0x0
  partition_size: 0x1000000
  region: EMMC_USER

If you have a full ROM dump (e.g., full_flash.bin), tools like MtkDroidTools or SP Flash Tool (Read Back) can reconstruct the scatter file by scanning the GPT or MBR.

Example snippet (representative only — DO NOT use on a real device without device-specific values):

- partition_index: 0
  partition_name: PRELOADER
  file_name: preloader.bin
  is_download: true
  type: NORMAL
  linear_start_addr: 0x00000000
  physical_start_addr: 0x00000000
  partition_size: 0x00040000
- partition_index: 1
  partition_name: MBR
  file_name: MBR
  is_download: true
  type: NORMAL
  linear_start_addr: 0x00040000
  physical_start_addr: 0x00040000
  partition_size: 0x00002000
...