Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.
Latest commit message
Commit time
August 20, 2019 15:55
October 5, 2021 04:09
October 5, 2021 04:09
October 5, 2021 04:09
April 16, 2022 10:28

payload dumper

Script tested on Yandex Amber OTA's (full and incremental) under Linux(but may works on Windows too)

System requirement

  • Python3, pip
  • google protobuf for python pip install protobuf


Alternatively you can use Docker:

docker run --rm -v "${PWD}":/data -it vm03/payload_dumper /data/payload.bin --out /data

or self build Docker image

# build the container image
$ docker build -t payload_dumper .

# mount current PWD and pass payload.bin
$ docker run --rm -v "${PWD}":/data -it payload_dumper /data/payload.bin --out /data



  • Make you sure you have Python 3.6 or later installed.
  • Download, and requirements.txt
  • Extract your OTA zip and place payload.bin in the same folder as these files.
  • Open PowerShell, Command Prompt, or Terminal depending on your OS.
  • Enter the following command: python -m pip install -r requirements.txt

Full OTA

  • When that’s finished, enter this command: python payload.bin
  • This will start to extract the images within the payload.bin file to the output folder you are in.

Incremental OTA

  • Copy original images (from full OTA or dumped from devices) to old folder (with part name + .img, ex: boot.img, system.img)
  • run python --diff payload.bin
  • file extracted to the output folder you are in.