When you buy your new smartphone, pull it out of the box and set it up, what's the first thing you normally do? Many people may install their favorite music streaming app so that they can test the sound output quality, or go take some pictures to see how improved the camera is over their previous phone. However, this isn't likely the case if you're an Android enthusiast, rather your first impulse is to find out whether or not you can root your device! If you're not familiar with rooting that's OK, because we like to educate people on how to get the full value of of their phones here at Android Headlines, and at least in my personal opinion rooting gives you that extra added value. Rooting is a process of gaining administrative access to the sections of your device not normally allowed to be access or changed. This allows you to do things like theme your phone in ways not previously possible, add additional features the manufacturer didn't bake into the phone itself, or just generally free yourself of some of that carrier-added bloatware dragging down your phone.
Now that the explanation is out of the way, let's go over how to get your new OnePlus One rooted. Since it's already a carrier-unlocked device and doesn't have to deal with bloatware and restrictions normally associated with carriers, this process is much more simple than many others phones out there (here's looking at you, T-Mobile LG G2)! It may seem strange that a phone that comes with CyanogenMod isn't rooted by stock, but having a device rooted out of the box could bring about security concerns for those who don't want or need root and don't know how to properly use the powers it gives you.
First thing you're going to need to do is grab the Nexus Toolkit here. No this isn't a Nexus device, but it acts a lot like one, however we're grabbing the toolkit for the included files, not the toolkit itself. After you've downloaded and installed that, open up a command prompt by going to the Start menu and typing in CMD. Navigate to the data folder within the Nexus toolkit install directory, in my case was C:\Program Files\WugFresh Development\data.
Back on your OnePlus One make sure you have the advanced reboot menu turned on, found in developer options in settings. Go ahead and reboot into the Bootloader. Otherwise if you'd rather do it the old fashioned way turn the device off, then hold volume up and the power button until the screen turns on. In a few seconds you should be greeted with a very dim CyanogenMod Cid mascot with the words Fastboot Mode written underneath it. Go ahead and connect the device to your computer and wait for the drivers to be installed.
This next step will wipe the phone. You shouldn't lose user data like pictures and downloaded files, but to be safe ALWAYS make a backup of these sorts of things before attempting to modify your phone in any way. Navigate back to that command prompt you opened earlier and type in fastboot devices. This should start the fastboot application and let you know your phone is connected and seen by the program. If you don't see the phone listed here with a weird serial number looking identifier, make sure all the necessary drivers are installed by checking your Windows Device Manager for any devices that are showing up with a yellow question mark.
Once you've identified that your device is showing type in fastboot oem unlock. This will unlock the bootloader on your device and allow you to flash custom recoveries so that in turn you can flash custom files on your phone. Again, this will wipe your phone. Keep the command prompt window open as you'll need it for the next step. Once the phone is unlocked it'll reboot and start the initial setup like you took it out of the box for the first time. Go ahead and finish this up as you want, and when you're ready navigate to Settings, About Phone and click on the Build Number section repeatedly until developer mode is unlocked. Back out of About Phone and go into Developer Options, then scroll down and select Android Debugging and Advanced Reboot.
At this point you'll need to grab the latest TWRP recovery from the website here, which at the time of this writing was openrecovery-twrp-188.8.131.52-bacon.img. Yes, the code name for the OnePlus One is Bacon, which makes it even more awesome than it already is. Place this file in the same directory as your fastboot executable, which again on my computer is located in C:\Program Files\WugFresh Development\data.
Next grab the latest SuperSU file from Chainfire's website here, which at the time of writing was UPDATE-SuperSU-v1.99r3.zip. Place this file on your phone where you can find it later. Once you've got these two files in their rightful places reboot into the Bootloader again and navigate back to that command prompt window to use fastboot. This time you'll want to type in fastboot flash recovery openrecovery-twrp-184.108.40.206-bacon.img. If the name of the file you downloaded earlier is different please change it to that. This will flash Team Win Recovery to your phone and allow you to flash custom files. Once you've received a success message, which should happen in a matter of seconds, type fastboot reboot to get the phone back into the OS.
Once Android has booted back up restart into Recovery mode, which should be an option on your regular restart menu by holding down the power button. Once Team Win Recovery comes up, click the install button and select the SuperSU file you downloaded and saved to your phone earlier. Slide to install and upon successful completion click reboot, system.
Upon bootup Android will likely configure a few things before you're able to do anything, but once you've booted into the OS navigate to your app drawer and open SuperSU. Slide over to settings, scroll down and uncheck Respect CM root settings since this version of CyanogenMod isn't rooted by default. At this point you can shake your other hand and congratulate yourself, you're rooted! Go ahead and check this with any root app, my personal favorite being Xposed Framework.