Skip to content

The Ultimate Rooting Guide

HappyZ edited this page Jul 19, 2019 · 36 revisions

About this guide

This guide provides basic rooting procedure in details. If you are new, this is the right place to start.

If you already hacked the system, but want to upgrade, please use this guide.

Versions

It works on any DPT-RP1s or DPT-CP1s with version number 1.6.02.06240 or below as of 07/19/2019.

Requirements

Software

You need to install python 3.

You also need to do the following after getting python 3:

pip install httpsig pyserial urllib3 requests

If you have Windows PC, make sure your PATH environment is correct so you can run python and pip properly.

Hardware

You need your DPT device, of course. And you need a microUSB cable that can connect your DPT to your computer.

You also need the DPT to be charged at least 80% (just to be safe).

Steps

For the following steps, we assume your device boots up normally, and has connected to WiFi. We also assumed you installed the official DPA software, at default locations.

0x1 Validate Successful Connection

Simply run python dpt-tools.py and it should automatically find required information.

If success, you will see:

===========
 DPT Tools
===========
Thanks for using DPT Tools. Type `help` to show this message.
Supported commands:
    fw        -- update firmware
    diagnosis -- enter diagnosis mode (to gain adb, su, etc.)
    exit/quit -- leave the tool

>>> 

If it didn't work, try python dpt-tools.py -ip <your device ip address>. For example, python dpt-tools.py -ip 192.168.2.100.

You can also specify your id and key files (referred from janten's dpt-rp1-py) by:

python dpt-tools.py -id <deviceid file path> -k <your key file path> -ip <ip address>

Then you will enter the interactive shell mode.

0x2 Get Diagnosis Mode and Patch Updater Script

Download this PKG from this example. This PKG does three things: changing diagnosis password, enabling diagnosis mode without OTG cable, and patch the updater script. Unlike previous versions, this PKG you can flash as many times as you wanted, though not really necessary.

In the interactive shell, type fw and press Enter key.

It'll ask the file path of the PKG. Type the full file path, or drag the file into terminal.

It'll ask you to confirm it is the correct file. Type yes and press Enter key.

Your DPT will say preparing for the update... and then the DPT will restart.

You will see multiple lines printing, starting with the LICENSE.

For every step, it will print the files being changed and pause for 30s. You can press the HOME key to bypass the waiting.

After update, it will say update failure, but it is actually flashed.

Note: In any case you find the printed message is weird, or errors happen that you see on the screen, you can press POWER key to roll back the original files and exit safely.

Note2: Absolute do NOT try to decompile the PKG on your computer via the unpack tool in the script.

0x3 Obtain Android ADB (Root) Access

The modification will change your Android boot partition.

Download corresponding PKG for your system version:

If not, request it in Issues and wait for your modifications out.

In the interactive shell, type fw and press Enter key.

It'll ask the file path of the downloaded PKG. Type the full file path, or drag the file into terminal.

It'll ask you to confirm it is the correct file. Type yes and press Enter key.

Your DPT will say preparing for the update... and then the DPT will restart and show update is in progress.

After update, it will say update failure, but it is actually flashed.

And you can run adb devices on your computer to see if your DPT appears (it may take a while to boot ADBD after DPT boots up, if you have waited for >1min, try to unplug and plug back in the cable, and do adb kill-server && adb devices several times, it eventually will come up! Fully tested).

0x4 Obtain Android Root Access (Optional, Subject to Change)

Download FwUpdater.pkg from this example.

Boot into normal system, use fw in the tool.

You can’t perform that action at this time.