Power button of my mobile phone stopped working completely few weeks back. It showed some symptoms few days prior to that. I was being so careful not to drain out the battery as I would be required to press button to turn it back to ON, which I can’t because of broken button.
But it happened! Yesterday, my phone battery got drained while I was using my laptop connected to the WiFi hotspot from it.
I tried pressing the power button multiple ways, but to no avail. Even, I thought about dissembling the phone or taking out the power button. But I started searching for ways to make it work without physically abusing the phone. Eventually, I found a geeky way to turn ON the phone. Following are the steps involved.
- A USB cable
- A computer
- With any popular OSs should work. But here I using Ubuntu Linux. I don’t use Windows or Mac.
- Android SDK Platform Tools
Step 1: Download the Android SDK Platform Tools
Download the SDK Platform Tools from here. You will get a ZIP file, extract it somewhere in your computer.
Step 2: Prepare Computer to Run Fastboot
We need to make these changes to your computer to make it possible to use
fastboot program in the SDK against your phone.
Add user account to
plugdev group by running this command in your terminal.
sudo usermod -aG plugdev $LOGNAME
Then we need to add certain udev-rules to our computer. It will vary for each mobile phone. So, it better to use already written one. Here is a Github projecting providing them: https://github.com/M0Rf30/android-udev-rules. Please follow the instructions provided in that page. It should contain rules for most android models out there.
Then restart your computer.
Step 3: Boot Phone Into fastboot Mode
The exact step here will vary depending on the phone model. For my phone it is to press and holding volume down key then pressing power button. Connecting the USB cable will work here since the power button is broken.
So, to boot into fastboot. Press and hold Volume Down then connect USB cable from the phone to your computer. Then your phone will show a certain screen indicating it is in fastboot mode.
Now in your computer, take terminal and run
lsusb command. It will give something like as given below:
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 0bda:5520 Realtek Semiconductor Corp. Integrated_Webcam_HD Bus 001 Device 005: ID 22b8:2e80 Motorola PCS Fastboot harpia S Bus 001 Device 003: ID 0cf3:e009 Qualcomm Atheros Communications Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
I have highlighted the line indicating my phone (Moto G4 Play) got detected in its fastboot mode.
Step 4: Restart the Phone
Go to the folder where you put the Android SDK Platform tools. Open terminal in that location and type:
Then it gave this result for me (I have masked the serial number here):
XXXXXXXXXX Motorola Fastboot Interface
Similarly it gave this for my wife’s old Huawei Smart 8:
To restart your phone. Run:
It gave this result in terminal and my phone got tuned on in normal way.
Rebooting OKAY [ 0.006s] Finished. Total time: 0.156s
Now I have no fear of draining out my phone battery!
- Ask Ubuntu answer: https://askubuntu.com/a/755276/28302
- “M0Rf30 / android-udev-rules” Github repo: https://github.com/M0Rf30/android-udev-rules