[GUIDE] How To Unlock Tethering on Nexus 5X.

Search This thread

Jexx11

Senior Member
Sep 19, 2013
241
64
I'll start off by saying I didn't come up with any of this method myself, its just different information I found scattered on different threads on XDA and Reddit. Maybe some other 5X users will find it useful contained in this thread.

Secondly, this requires an unlocked bootloader, also working adb and fastboot with correct drivers for your 5X, enable USB debugging. I won't go over that here, there are plenty of other guides on how to do that, and know that it will erase all your data. As long as you can find your device via "adb devices" and "fastboot devices" you should be fine.

Lastly, you will get the corrupt data message on phone startup. I don't see any negative effects with this, other than an annoying message. Also I'm still able to use the fingerprint scanner as well as set up Andoid Pay. I can't verify Android Pay as I don't have any stores near me that accept it.

You also won't have to flash any custom recovery or root the device, which keeps it closer to stock, which hopefully will allow Android Pay to still function, hopefully someone with a Android Pay store nearby can test this to verify.

First grab TWRP for 5X from here. Save it in the same folder as your adb/fastboot install.
Make sure your phone is connected to your computer, open command prompt and verify adb sees your phone.
Code:
adb devices
Now reboot to bootloader.
Code:
adb reboot bootloader
Now we boot from TWRP without having to flash/install it.
Code:
fastboot boot twrp-2.8.7.0-bullhead.img
When TWRP finishes booting, click Mount and check the box for /system

Now we need to pull the build.prop file.
Code:
adb pull /system/build.prop
Using a text editor add this line to the end of the build.prop file and save it.
Code:
net.tethering.noprovisioning=true
Now we push it back to the phone.
Code:
adb push build.prop /system/
Make sure the permissions are correct.
Code:
adb shell chmod 644 /system/build.prop
And lastly
Code:
adb shell settings put global tether_dun_required 0
Now we just reboot
Code:
adb reboot
and your tethering should be working!

I'm currently using this method and it is working for me. I'm on Verizon with a Grandfathered Unlimited Plan, so I can't test it for any other carriers.
Most of this information I pulled from this reddit thread, I just did my best to condense it down and simplify it, and make it aimed toward the Nexus 5X specifically.

edit* People are confirming on the Reddit thread on their Nexus 6 that Android Pay is still working after making these changes!
 

peon1-9

Member
Oct 16, 2012
13
2
Thanks! This works exactly as stated, even the "corrupt data" warning on boot. :)

I will add that - this being my first Nexus device since a Galaxy Nexus - the "fastboot oem unlock" step needed prior to this guide has an additional step where you have to enable the "OEM Unlock" option in the Developer Options menu, within the booted system. After confirming this you can unlock the bootloader via the standard "fastboot oem unlock" command prior to starting this guide.
 

XF1ber

Member
Feb 21, 2011
20
14
Thanks for this, used same method to push supersu and get it installed without needing to decrypt the phone!
 

ytsejam1138

Senior Member
Jul 27, 2013
243
242
Thanks. Worked great for me. I'm on AT&T, weird thing though, I never had any problem activating the hotspot on my OG Nexus 5.
 

Jexx11

Senior Member
Sep 19, 2013
241
64
Guys can you please explain what do you mean as "unlock tethering"? Is not enabled by default? :(

This method bypasses the subscription check for tethering, those of us with unlimited data have to pay a separate fee to use tethering with Verizon, and this fixes that. It should be the same for other carriers as well.

Sent from my XT1060 using XDA Free mobile app
 
I was so excited to play with my 5x when I got home (that and dealing with my 2 sick kids) and I completely forgot to unlock the bootloader before I got too carried away. Now all the time I spent downloading apps and such is lost. Our DSL connection is slow, so all that took one time. I've been rooting and romming way too long to make such a rookie mistake.

So, I get the joy of blowing the whole thing way and re-setting it up again...
 

ravichopra

Member
Apr 9, 2010
14
1
Thank you thank you thank you!

This is huge for me.
BTW, I assume you can just push the original unmodded build.prop back for OTA updates. Anyone know if anything else is required apart from that?
 
Last edited:

Jexx11

Senior Member
Sep 19, 2013
241
64
You're not flashing twrp, just booting into it. Twrp allows you to pull and push files to /system without root, which is needed to make these changes.

Sent from my Nexus 5X using XDA Free mobile app
 
  • Like
Reactions: scootle74

WizADSL

Member
Oct 25, 2015
5
6
T-Mobile/MetroPCS users additional steps to enable tethering

If you are on T-Mobile or MetroPCS you will need to perform some additional steps for tethering to work. After you have performed the steps outlined earlier in this thread do the following:

Under Settings -> More -> Cellular Networks -> Access Point Names

Touch the name of the APN that is selected (there may only be one) then:

1) change "APN Protocol" to "IPv4"
2) change "APN roaming protocol" to IPv4
3) Edit "APN Type" and add "dun" to the comma separated list so it reads something like "default,supl,mms,dun"
4) OPEN THE MENU IN THE UPPER-RIGHT AND CHOOSE SAVE!
5) You MAY have to reboot for this to take effect
 

MarkGbe

Senior Member
Nov 30, 2010
494
64
Buffalo, NY
So... I'm getting about 30% packet loss on att with my 5x.

If I take my sim out and pop it into my nexus 6(also with marshmallow), everything is fine.

Could someone with att run some extended pings from a device connected to your phones tether and note any ping drops?

I don't know if this is a sw bug, or hardware issue.
 

Ascertion

Senior Member
Mar 29, 2012
3,489
1,507
Does this work if the device is still encrypted?

My TWRP seems to have trouble accessing /system partition with encryption.



Sent from my Nexus 5X
 

Ascertion

Senior Member
Mar 29, 2012
3,489
1,507
yep works fine. You have the correct twrp i presume and your phone's bootloader is unlocked?
Ah my bad. It's not reading my /sdcard partition. No matter. That's what adb is for. Please disregard my post. I'll update my progress when I get home later today and try it on my personal PC.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 18
    I'll start off by saying I didn't come up with any of this method myself, its just different information I found scattered on different threads on XDA and Reddit. Maybe some other 5X users will find it useful contained in this thread.

    Secondly, this requires an unlocked bootloader, also working adb and fastboot with correct drivers for your 5X, enable USB debugging. I won't go over that here, there are plenty of other guides on how to do that, and know that it will erase all your data. As long as you can find your device via "adb devices" and "fastboot devices" you should be fine.

    Lastly, you will get the corrupt data message on phone startup. I don't see any negative effects with this, other than an annoying message. Also I'm still able to use the fingerprint scanner as well as set up Andoid Pay. I can't verify Android Pay as I don't have any stores near me that accept it.

    You also won't have to flash any custom recovery or root the device, which keeps it closer to stock, which hopefully will allow Android Pay to still function, hopefully someone with a Android Pay store nearby can test this to verify.

    First grab TWRP for 5X from here. Save it in the same folder as your adb/fastboot install.
    Make sure your phone is connected to your computer, open command prompt and verify adb sees your phone.
    Code:
    adb devices
    Now reboot to bootloader.
    Code:
    adb reboot bootloader
    Now we boot from TWRP without having to flash/install it.
    Code:
    fastboot boot twrp-2.8.7.0-bullhead.img
    When TWRP finishes booting, click Mount and check the box for /system

    Now we need to pull the build.prop file.
    Code:
    adb pull /system/build.prop
    Using a text editor add this line to the end of the build.prop file and save it.
    Code:
    net.tethering.noprovisioning=true
    Now we push it back to the phone.
    Code:
    adb push build.prop /system/
    Make sure the permissions are correct.
    Code:
    adb shell chmod 644 /system/build.prop
    And lastly
    Code:
    adb shell settings put global tether_dun_required 0
    Now we just reboot
    Code:
    adb reboot
    and your tethering should be working!

    I'm currently using this method and it is working for me. I'm on Verizon with a Grandfathered Unlimited Plan, so I can't test it for any other carriers.
    Most of this information I pulled from this reddit thread, I just did my best to condense it down and simplify it, and make it aimed toward the Nexus 5X specifically.

    edit* People are confirming on the Reddit thread on their Nexus 6 that Android Pay is still working after making these changes!
    4
    Getting somewhere... adding "net.tethering.noprovisioning=true" to default.prop in boot.img seems to do the trick. I uploaded my modified boot.img if anyone wants to try it out. Do a "fastboot flash boot boot.img" to flash it. If you want to hack it manually, first back up your boot.img (since the 7.0 system image still isn't posted as of writing). With phone booted to twrp-3.0.2-1-bullhead.img or newer:

    Code:
    adb shell dd if=/dev/block/mmcblk0p37 of=/sdcard/boot.img
    adb pull /sdcard/boot.img

    Download Android.Image.Kitchen.v2.4-Win32, extract it
    Drag and drop the boot.img you just pulled onto unpackimg.bat
    Navigate to the ramdisk folder just created, and edit default.prop with notepad++. Add the line to the bottom and save the file:
    Code:
    net.tethering.noprovisioning=true
    Double click repackimg.bat to build your new boot.img (will be named image-new.img)
    Flash it using:
    Code:
    fastboot flash boot image-new.img

    If this works for anyone please post back... hopefully this is the only thing required and not any of the other million things I tried :) Note that I'm unrooted, only need an unlocked bootloader. I'm not really sure what the implications are for modifying the kernel ramdisk like this with regards to Android Pay, etc.

    Edit: Was able to add a card to Android Pay, so we look good to go. Maybe there is a better way to make changes to build.prop stick, but this seems to work for now. On the plus side this leaves your system partition untouched... flashing the stock boot.img back to do an OTA update should be much quicker.
    3
    T-Mobile/MetroPCS users additional steps to enable tethering

    If you are on T-Mobile or MetroPCS you will need to perform some additional steps for tethering to work. After you have performed the steps outlined earlier in this thread do the following:

    Under Settings -> More -> Cellular Networks -> Access Point Names

    Touch the name of the APN that is selected (there may only be one) then:

    1) change "APN Protocol" to "IPv4"
    2) change "APN roaming protocol" to IPv4
    3) Edit "APN Type" and add "dun" to the comma separated list so it reads something like "default,supl,mms,dun"
    4) OPEN THE MENU IN THE UPPER-RIGHT AND CHOOSE SAVE!
    5) You MAY have to reboot for this to take effect
    3
    I figured out how to take an OTA update, no dirty flash or anything silly. It is stupid simple and obvious.

    Download the factory image for the build you are currently on: link

    We need to get the system.img, so extract the tgz and you will see image-bullhead-xxxxxx.zip. Extract system.img to whatever your working adb/fastboot directory is.

    Either boot into the bootloader manually or make sure USB debugging is enabled and:

    adb reboot-bootloader
    fastboot flash system system.img

    When it's all done use the buttons on your phone to "Start" to boot up. Assuming you didn't @#$ with any other partitions on your phone (if you flashed a custom recovery you will also need to flash the stock recovery.img), you can now take the OTA! Of course you will need to redo steps in the OP to re-enable tethering.

    tl;dr: Download factory image for your CURRENT build, extract system.img from the factory image, boot into the bootloader and "fastboot flash system system.img". You can now reboot and accept the OTA.
    3
    If I already have TWRP, can I just boot into it and do the following steps?

    "When TWRP finishes booting, click Mount and check the box for /system

    Now we need to pull the build.prop file.
    Code:
    adb pull /system/build.prop
    Using a text editor add this line to the end of the build.prop file and save it.
    Code:
    net.tethering.noprovisioning=true
    Now we push it back to the phone.
    Code:
    adb push build.prop /system/
    Make sure the permissions are correct.
    Code:
    adb shell chmod 644 /system/build.prop
    And lastly
    Code:
    adb shell settings put global tether_dun_required 0
    Now we just reboot
    Code:
    adb reboot
    and your tethering should be working!"
    Sure, or just boot the phone, open a file explorer app, and add the build.prop line. Seems a lot easier to me.