Created The Ultimate Rooting Guide (markdown)

HappyZ 2018-12-29 21:32:55 -06:00
parent b796d4276b
commit 41be14ba93
1 changed files with 92 additions and 0 deletions

@ -0,0 +1,92 @@
# About this guide
This guide provides basic rooting procedure in details. If you are new, this is the right place to start.
# Requirements
### Software
You need to install `python 3`.
You also need to do the following after getting `python 3`:
```
pip install httpsig pyserial
```
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%.
# 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
In your laptop/desktop terminal, run `python dpt-tools.py -ip <DPT ip address>` to validate a successful connection.
For example, `python dpt-tools.py -ip 192.168.2.100`. You can find the ip address of DPT via your router, or in DPT settings.
You can also specify your id and key files by:
```
python dpt-tools.py -id <deviceid file path> -k <your key file path> -ip <ip address>
```
Please refer to [janten's dpt-rp1-py](https://github.com/janten/dpt-rp1-py) on how do you get `deviceid` and `key` file path for your device.
Then you will enter the interactive shell mode.
### 0x2 Obtain Diagnosis Access
In the shell, type `root` and press Enter. Follow the instructions.
It'll ask first if you have disabled the OTG id check, type `no` to proceed.
After success, it'll ask you to confirm proceeding, press Enter key directly.
Once success, do NOT re-run this. If it fails at the first part, re-run and answer `no` to the first question; if it fails at the second part, re-run `root` and answer `yes` to the first question.
### 0x3 Enter Diagnosis Mode
To enter diagnosis mode, type `diagnosis` and follow the instructions.
If tool exited by accident, directly use:
```
python dpt-tools.py --diagnosis
```
If things went smoothly, you are now in diagnosis mode in the shell.
### 0x4 Patch the Updater Script
In the shell, type `patch-updater-bash`. It is necessary to (partially) prevent a permanent brick.
Once done, do NOT got back to step `0x2` and re-run the command. It may cause a permanent brick, as someone reported.
Up till here, you have full control over your device (rooted).
### 0x5 Obtain ADB Access (Optional, Subject to Change)
If you want to install customized apps on your own, proceed. Otherwise you can stop here, and wait for flash-able PKGs coming out.
Make sure your system version is `1.4.01.16100` (for RP1) or `1.4.02.09061` (for CP1). If not, wait for corresponding modifications out.
You will need to modify your Android boot partition.
First backup your boot partition via `backup-bootimg`. Follow the instructions.
And then type `restore-bootimg` and follow the instructions, using `boot-1.4.01.16100-mod-happyz-181214.img` in `python_api/assets`.
After success, reboot the device by `reboot &` and quit the tool (by pressing `Ctrl + C`, or `quit`).
On your laptop/desktop, do the following (Mac or Linux):
```
mv ~/.android/adbkey ~/.android/adbkey_bak
cp python_api/assets/adbkey ~/.android/adbkey
adb kill-server
adb devices
```