Tethering: Ubuntu 12.04, Android 4.0.4, Nexus S 4g, Sprint: FML

A quick post to document my failures and final success.

Back story:
I’ve been using PDANet on my Windows 7 machine to USB-tether my Nexus S 4g (on Sprint) running Android 2 (then 4) for a year now and its been great. I was 100% pleased with the setup. Unfortunately I just got sick of Windows 7 and decided to switch to Ubuntu 12.04. I’d heard good things and was back on the linux bandwagon.

The problems:
PDANet for linux doesn’t do USB tethering. No problem, it can do DUN Bluetooth tethering. Blueman + PDANet did not work. I was able to pair my devices but every time I connected I got a “Device added successfully, but failed to connect.” error.

Azilink script also didn’t work. Android SDK (which auto installs as part of the script) failed. Apparently Android SDK and Ubuntu 12.04 don’t play nice together. A combination of both top answers got Android SDK working and Azilink successfully installed on my Nexus S. Finally running the Droid-Tether-SV launcher would not change Azilink’s status from “Waiting for connection”.

Setting up software on both machines meant that a failure could be contributed to either. Where to look for help: Android forums? Ubuntu forums? FML this was getting nuts. So I tried several apps from the Google Play store. Maybe I could get lucky and find an app that did everything for me. First shot: Wifi Tether for Root Users. This should have been the one that worked. Its simple and takes care of everything. It creates a wifi hotspot on my phone and Ubuntu should just connect to the wifi connection. Wrong:

My computer is having trouble connecting! What can I do?
Check whether your operating system and wireless card support ad-hoc connections. Ubuntu is known to have poor support for these types of connections, for instance.

Great, Fuck! Even after setting the connection to “Ad-hoc” in Ubuntu’s Network Manager I was still unable to connect.

Another app calle 1-Click WiFi Tether No Root was a complete bust. All it did was turn on my existing Android tethering with one button. It was basically a shortcut into a system setting. This obviously didn’t work but it reminded me of why I liked PDANet so much. It completely bypassed the Sprint-locked tethering native to ICS.

The solution:
Finally, as I was about to throw my phone out the window, I hit upon EasyTether. It works almost exactly like PDANet does: download a small script to your computer and install the app from the Google Play store. Run the script and app, and plug in your phone. Bingo! EasyTether looks like a wired network connection in Network Manager. Free and paid versions both work great, with the paid version allowing https. At $10, its the most expensive app I’ve ever bought but damn if it isn’t worth it. For me having tethering capabilities is pretty crucial. I work from all over the place and when I need it I really need it. Its like the tweezers in your pocket knife: no other tool can remotely do the same job but if you lose the tweezers you don’t go out and buy a new pocket knife.

(note: I am genuinely excited about EasyTether. This is my 100% unbiased opinion. I was not paid to say any of these things.)