diff --git a/The-Ultimate-Rooting-Guide.md b/The-Ultimate-Rooting-Guide.md new file mode 100644 index 0000000..39ab52d --- /dev/null +++ b/The-Ultimate-Rooting-Guide.md @@ -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 ` 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 -k -ip +``` +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 +```