[One (M8) Q&A, Help & Troubleshooting] XNine:
Welcome to the HTC One M8 S-Off GUIDE FOR NEWBIES!​

Disclaimer:​

I am not responsible for any damage to your phone, in part, or in whole; including bad SD cards, broken reception, bad wifi, Windows 8 being installed, or anything else that could go wrong: Bricking, Bootloops, blips, beeps, boops, or sweeps. You chose to follow these instructions on your own accord and if you do so, agree that I am not liable in anyway, shape or form.

What Models/Carries Should this Work for?

USA: ATT, TMobile

European: Tmobile, VodaFone

I'm unsure if all of this works for Verizon/Sprint versions. You'll have to check the Toolkit's thread and the Firewater thread or official site for confirmation. The above models are just what I've read on the forums)

Credits:

Hansoon2000 for the HTC One Toolkit

Shrimp208 for Minimal ADB and Fastoot

Beups and Fuses for Firewater​

.

Ok, so, you want to achieve Root/S-Off and its many benefits. I'm going to walk you through what I did to make this process fairly simple.

Requirements:

HTC One M8

Windows 7, 8, 8.1

No Lockscreen on your phone.

Developer Options Enabled with the following:

1. USB Debugging Enabled

2. Allow Mock Locations (this may not be necessary, but I always do it just in case)

Hint: Don't know how to enable developer options? Go to Settings>About>Software Information>More and tap on "Build Number" 7 times. This will open Developer Options in the Settings menu.

Let's Root

!​

Use the All-In-One toolkit here:

http://xdaforums.com/showthread.php?t=2699065

Process:

When you open the ToolKit, you'll notice lots of little boxes with text inside. We're going to focus on the box at the very top left that says "To root the phone, follow in order." Fairly simple, right?

First, Download and install HTC Sync Manager and make sure it sees your One M8. Do not use the Install Drivers option from the toolkit, they're outdated/don't work for most people. HTC Sync will install the latest driver for the M8. You can then uninstall the HTC Sync Manager program itself. Link: http://www.htc.com/www/software/htc-sync-manager/

Register at HTCDev. This is needed for this process to gain permaroot at the time I write this. If it doesn't allow you to register, either use a different email address, or ask a friend to do this.

Once logged in, go to "Unlock Bootloader" and Select HTC One (M8) from the drop down list. Follow the steps/prompts and directions on the site.

Get Token ID. Plug your phone in to a USB 2.0 port on your PC (not a hub, not USB3.0, USB 2.0). You should be notified that the HTC One M8 has been plugged in. If so, Proceed. If not, you'll have to figure out the issues you're having with the drivers first.

Two windows will Pop Up. Hit close on the First Window.

The second window should pop up with text. Your token ID is a long series of alpha-numeric text. This is an example of everything you should copy:

Note: Copy ALL off that text. From the <<<<Identifier Token Start down to Identifier Token End>>>>

Now, Take that copied text and submit it at HTCDev where it asks you to. If it's successful and you've copied what you need to, an Unlock_Code file will be emailed to you. Download and Place this file in the HTC One Toolkit's Data folder.

Unlcok Bootloader: Again, two windows will pop up, close the first. Your Phone should reboot and the token ID Applied. Your phone will ask you if you want to proceed. Hit Volume Up for "Yes" and Power Button to confirm. This might take a minute, don't freak out.

Flash a Recovery. Once your phone is booted back to the Home screen, go to the far right top window and Select TWRP as the recovery. Select Flash Recovery. Your phone will again pop up with two windows, close the first, and let it do it's thing. Reboot back into the Recovery after this is all done.

Flash Supersu. Go into "Install" in TWRP and select "SuperSu" from the list, swype to begin process.

Congratulations, you should now be rooted!

Time to S-Off!

​

WARNING

: Not all devices are supported by Firewater. There's really no way to tell until you start running the process to S-Off. If Firewater tells you that your device is not compatible, then it's not compatible. You'll have to wait until Firewater does support your device and is updated.

REQUIRMENTS:

ROOTED HTC ONE M8

ADB and HTC Drivers (htc drivers should be installed from Rooting)

Developer Options Enabled with the following:

1. USB Debugging Enabled

2. Allow Mock Locations (this may not be necessary, but I always do it just in case)

Hint: Don't know how to enable developer options? Go to Settings>About>Software Information>More and tap on "Build Number" 7 times. This will open Developer Options in the Settings menu.

Don't have ADB and don't know where to start?

Then download and install MINIMAL ADB AND FASTBOOT:

http://xdaforums.com/showthread.php?t=2317790

Once Downloaded and installed, go to your Start window on the PC and search "ADB". Minimal ADB and Fastboot (here on referred to as ADB) will show up, click on it to bring up a Command Prompt. Using Admin Rights isn't a bad idea either when using ADB.

Go to http://firewater-soff.com/instructions/ And make sure you Follow the Prerequisits to the letter! Read the Instructions for "Rooted, Normal Device Method"

Now that you have the Firewater file, go to Start and Search for ADB, RIGHT CLICK and choose SHOW FILE LOCATION. Drop your Firewater file here. Now we can begin!

Process:

Connect your phone to a USB 2.0 Port if you already haven't and make sure your phone is on the Home screen with NO LOCKSCREEN OF ANY SORT

In the Command Terminal, Type:

adb device (this should show you that your phone is connected. If it says that the phone is inactive/offline, then unplug your phone and replug it. Try again. It should now show up).

Type:

adb Reboot (this will reboot your phone)

After your device has rebooted, there's a 99.9999% chance that it will ":go offline" and not connect to adb (we can confirm this with "adb device" command. Unplug, Replug your phone and ensure it's online and ADB can see it).

Type:

adb wait-for-device push firewater /data/local/tmp

Type:

adb shell

Type:

su

Type:

chmod 755 /data/local/tmp/firewater

Type:

/data/local/tmp/firewater

If you're successful up to this point, Firewater will ask you if you're sure. Type:

Yes

At this point, the Command Prompt will start Chugging bottles of Firewater. Some Command Prompts only Chug One, others, 5,6, up to 12. If you reach 13 Bottles, Abort and try the steps again. This may take a while and several resteps, just be patient. The command prompt, when successful, will notify you that you are now S-Off!

To check this, boot in to Bootloader to confirm (it will say S-Off, not S-On).

The Why:

I believe the reason you need an internet connection is that the Firewater file connects to a server and the voodoo is all done by the server. Why would they do this? Probably to ensure that HTC doesn't screw us out of S-Offing our device like they're known to do by downloading and decompiling files used to S-Off or reverse engineering steps taken to S-Off If anything, this slows them down (and possibly makes it impossible for them to stop us from doing so.)

Special Thanks:

Beups, Fuses, Hasoon2000, and all Developers that are supporting our device with lots of goodies. Don't forget to donate to them to encourage them to spend time on our device, or, just buy them a beverage for all of the hard work and time they spend doing this for us.

If I have forgotten anything or forgot to give credit to someone, please let me know and I'll be sure to add it.