Motorola Droid Forum Logo
Motorola Droid Forum Logo - Right

Tether capability with android-wifi-tether (Wireless Tether for Root Users)

This is a discussion on Tether capability with android-wifi-tether (Wireless Tether for Root Users) within the Droid Hacks forums, part of the Droid Hacking category; Update 1/26 (3): I've sent a note to tasmanian_droid@alldroid and hopefully we'll have WiFi tether support in the overclocked kernels soon. Update 1/26 : Harald@android-wifi-tether ...

Navigation Navigation » Droid Forum - Verizon Droid & the Motorola Droid Forum > Droid Hacking > Droid Hacks » Tether capability with android-wifi-tether (Wireless Tether for Root Users)

Droid Hacks Discussions on hacking and rooting Android Phones. Unofficial DROID hacks belong in here.

View Poll Results: Did this hack work for you?
Yes, easy 85 47.22%
Yes, with some work 53 29.44%
No, can't get it working 42 23.33%
Voters: 180. You may not vote on this poll

Reply
 
LinkBack Thread Tools Display Modes
Old 12-20-2009, 10:01 PM   #1
Droid
 
webacoustics's Avatar
 
Member #17652
Join Date: Dec 2009
Location: Brooklyn, NY
Posts: 31
Phone: DROID, Nexus One
Verizon DROID WiFi Tether with android-wifi-tether (Wireless Tether for Root Users)

Update 1/26 (3): I've sent a note to tasmanian_droid@alldroid and hopefully we'll have WiFi tether support in the overclocked kernels soon.
Update 1/26: Harald@android-wifi-tether has released a DROID enabled version of android-wifi-tether (thanks Harald!). Uninstall old versions first! You might get a "No Netfilter"-message at start even if netfilter is enabled in kernel (depends if /proc/config.gz exists or not). You can ignore that.

Also, the brightness issue is fixed!! Please use the updated url for the new kernel and tiwlan.ko (here). This kernel and driver is courtesy of Sholes.info and is taken from the Sholes ROM 1.1 release. Also, busybox is no longer required (thank you Harald for that fix).
Based on work done in issue #205 of the android-wifi-tether project (THANKS EVERYONE), we have a way to enable GUI based Tethering support for the DROID.

This post is not endorsed by the android-wifi-tether project, Android, or Verizon. Its for educational purposes and almost certainly will violate your agreement with Verizon, etc, etc.

Please note that this involves rooting your phone, installing a custom recovery image, and a custom kernel. This is not for the faint of heart, and I take no responsibility for what might happen to your phone if you try this. That being said:

Please comment on this thread if you have any corrections or updates to the instructions.

These instructions should leave you with a working tether program, and you won't have to touch the shell for normal use (just use the program normally).
1: Rooting your phone:

Follow any of the many tutorials available (this one for instance)

2: Installing the updated kernel:
Install SirPsychoS' recovery image (droid devs tutorial)
Use the latest version of the image from Sholes
For some details that aren't covered in the droid-devs wiki, see this thread

2.a: Use SirPsychoS' recovery image to back up your phone
  • Boot in to recovery mode.. hold down Power and X while your phone boots
  • Select the Nandroid submenu, and choose the "Default Nandroid Backup" option
  • Reboot the phone to regular mode

2.b: Copy the new kernel, and driver to your phone
New kernel and driver: here. If you're unfamiliar with the adb tool in the Android SDK, check this post
  • This URL contains two files, the updated boot image (boot-wifi.img), and the updated tiwlan_drv.ko (the WiFi kernel module). These are necessary to enable support for iptables (which allows your phone to act as a router)
  • Copy the new files to your sdcard using your favorite method. USB mount or:
    Code:
    adb push <sourcefilepath> <destfilepath>
  • Disable USB Storage Mode; unmount the drive on your computer, and turn off USB Storage from the phone (very important, since your files will not be accessible from the phone until you do)

2.c: Install the updated tiwlan_drv.ko file to /system (this assumes that the new driver is at /sdcard/tiwlan_drv.ko)
  • Make sure you're in root mode:
    Code:
    su
  • Put your /system partition into read/write mode:
    Code:
    mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
  • Back up the old driver:
    Code:
    cat /system/lib/modules/tiwlan_drv.ko > /sdcard/tiwlan_drv.ko.old
  • Copy the new driver to the system:
    Code:
    cat /sdcard/tiwlan_drv.ko > /system/lib/modules/tiwlan_drv.ko
  • Sync the /system mount, and remount as read only:
    Code:
    sync && mount -o remount,ro -t yaffs2 /dev/block/mtdblock4 /system

2.d: Install the updated kernel
  • Boot in to recovery mode by holding X while powering up
  • From the mount menu, mount the /sdcard partition
  • From your computer, run adb shell (part of the Android SDK, you'll need to download that and look for adb in the tools directory):
    Code:
    adb shell
  • Flash the kernel partition by running:
    Code:
    flash_image boot /sdcard/boot-wifi.img
  • Hold the power button, select power off
  • Hit the power button to turn your phone back on
2.e: How to tell if it worked (and fix your phone if it didn't)
  • If your phone stays at the white Motorola logo for longer than a minute or two, you probably bricked your phone.
  • Simply turn the phone off (you may need to remove the battery)
  • Boot in to recovery mode (hold x while you power the phone up)
  • And restore the backup you made by selecting the restore option from the nandroid menu

Assuming you got this far, on to the the fun part.

3: Installing the latest android-wifi-tether
Install the latest DROID release from the Google code project
  • Wireless Tether for Root Users 2.0-pre3-eclair
  • This is an unsigned program, so you'll need to enable the installation of unsigned applications in the Application settings menu (Settings>Applications)
  • Install the app using the Android SDK tool, adb (specify the actual path to the adb tool and the application):
    Code:
    adb install wireless_tether_2_0-pre3_eclair.apk

Enjoy!

--

Update 1/9: ChevyNo1 has created a "one click" windows installer for the faint of heart. You can find it here. Don't forget to run a backup first!
Update 1/6: Network connection timeout issue (network disappears within 30 seconds) has been fixed!! Thank you crdnilfan at google code for the research and fix. New users, simply follow the instructions below. Existing users, simply apply tether-2.txt to /data/data/android.tether/bin/tether to upgrade your installation (don't forget to chroot 700!).
Update 12/26: THE EASY WAY: Just download this backup of 2.0.1 (torrent, or http please use Torrent if you can), and restore it to your phone after rooting and installing the Sholes recovery image 0.15.0 or later. Perform the backup in 2a, then restore using this file by unzipping the file and copying the resulting folder to /sdcard/nandroid. You can skip the rest of the tutorial, WiFi tether will work after you reboot into normal mode. I'll update the instructions with more detail tomorrow, and add a backup image. NOTE: this update will effectively reset your phone to factory defaults, so you'll want to make sure your apps and settings are being backed up to Google).
Update 12/26: updated tether-2.txt to improve settings detection (should eliminate the need to go in to the settings screen before the tethering will work)
Update 12/25: added link to adb (Android Debug Bridge) information thread.
Update 12/24: clarify kernel install instructions (using recovery mode)
Update 12/24: in case you're having problems with the latest tether-2.txt script, you can find he latest tether-1.txt file here (in comment 120): Issue 205 - android-wifi-tether - Motorola Droid - Developing & Testing - Project Hosting on Google Code, or download tether-1-old.txt from this thread.
Update 12/23: Uploaded a new tether-2.txt that will set yhttp://thepiratebay.org/torrent/5243438our SSID and Channel from the GUI's settings. The only additional requirement is busybox be installed at the same time as the new wifi driver. I've updated the HOWTO below. If you want to upgrade your setup, simply follow steps 2.b, 2.c, and 4--the changes are in bold
Update 12/23: Updated tether-1.txt to get rid of the pesky error message when you start tethering
Update 12/23: Credit and thanks to Michael Purcell at sholes.info for compiling the updated kernel and wifi driver!

Last edited by webacoustics; 01-27-2010 at 02:36 AM. Reason: added note about installer thread
webacoustics is offline   Reply With Quote
Old 12-20-2009, 11:08 PM   #2
Droid
 
webacoustics's Avatar
 
Member #17652
Join Date: Dec 2009
Location: Brooklyn, NY
Posts: 31
Phone: DROID, Nexus One
Cool Screenshots

Woohoo! 2.6Mbps/.5Mbps
Attached Images
File Type: png Screen shot 2009-12-21 at 1.06.05 AM.png (64.2 KB, 788 views)
File Type: jpg Photo on 2009-12-21 at 01.06.jpg (86.4 KB, 884 views)
webacoustics is offline   Reply With Quote
Old 12-21-2009, 09:31 AM   #3
Droid Newbie
 
sonofskywalker3's Avatar
 
Member #17772
Join Date: Dec 2009
Posts: 1
Phone: Enter Current Phone Here
followed the instructions and it works perfectly! thanks for this easy walkthrough.
sonofskywalker3 is offline   Reply With Quote
Old 12-21-2009, 10:01 AM   #4
Junior Droid
 
wardo5757's Avatar
 
Member #10747
Join Date: Dec 2009
Posts: 9
Phone: Moto Droid
i will pay 20 bucs for some phone walk-thru support!! lol, no BS..... I've never messed with linux before and this hack appears to have many places for me to brick my phone... anybody?
wardo5757 is offline   Reply With Quote
Old 12-21-2009, 10:26 AM   #5
Master Droid
 
SwordOfWar's Avatar
 
Member #3291
Join Date: Nov 2009
Posts: 388
Phone: Droid
Send a message via MSN to SwordOfWar
Isn't the correct path mtdblock4 and if in recovery mode its mtdblock6? You should correct that!
__________________
SwordOfWar is offline   Reply With Quote
Old 12-21-2009, 10:38 AM   #6
Droid
 
webacoustics's Avatar
 
Member #17652
Join Date: Dec 2009
Location: Brooklyn, NY
Posts: 31
Phone: DROID, Nexus One
Originally Posted by SwordOfWar View Post
Isn't the correct path mtdblock4 and if in recovery mode its mtdblock6? You should correct that!
The command will work no matter what path you specify because `mount` will not change the device or mount point (mount(8): mount file system - Linux man page).

However, I believe you're correct about the path--I'll confirm and make the appropriate changes.
webacoustics is offline   Reply With Quote
Old 12-21-2009, 10:48 AM   #7
Master Droid
 
SwordOfWar's Avatar
 
Member #3291
Join Date: Nov 2009
Posts: 388
Phone: Droid
Send a message via MSN to SwordOfWar
Originally Posted by webacoustics View Post
Originally Posted by SwordOfWar View Post
Isn't the correct path mtdblock4 and if in recovery mode its mtdblock6? You should correct that!
The command will work no matter what path you specify because `mount` will not change the device or mount point (mount(8): mount file system - Linux man page).

However, I believe you're correct about the path--I'll confirm and make the appropriate changes.
There were some possible ways to brick the phone by using block3 since its commonly misquoted from the g1. Just think everyone should start correctly saying block4 to correct this common mistake for newbies who don't know this (I didn't).
__________________
SwordOfWar is offline   Reply With Quote
Old 12-21-2009, 10:54 AM   #8
Droid
 
webacoustics's Avatar
 
Member #17652
Join Date: Dec 2009
Location: Brooklyn, NY
Posts: 31
Phone: DROID, Nexus One
Completely agree-- as a person fairly new to Android development, I found more than a few references to the incorrect block online. Hopefully this will help set the record straight (see corrected text above). Thanks
webacoustics is offline   Reply With Quote
Old 12-21-2009, 12:41 PM   #9
Droid Newbie
 
bitbuster's Avatar
 
Member #3667
Join Date: Nov 2009
Posts: 1
Phone: Enter Current Phone Here
Followed your steps! Thanks for the great tutorial! I also had the issue that flash_image was not able to write the boot image. I booted into the recovery image and then it let me do it.
I installed the tether software, ran it once, updated the shell script and when I now run it, it all starts up without an error. however, tether did not work until I rebooted!

Now it works

THANKS!!!!
bitbuster is offline   Reply With Quote
Old 12-21-2009, 01:05 PM   #10
Droid
 
webacoustics's Avatar
 
Member #17652
Join Date: Dec 2009
Location: Brooklyn, NY
Posts: 31
Phone: DROID, Nexus One
Thanks for the comment. I've updated the instructions to add a note about the reboot, and several other improvements.
webacoustics is offline   Reply With Quote
Reply



Lower Navigation
Go Back   Droid Forum - Verizon Droid & the Motorola Droid Forum > Droid Hacking > Droid Hacks

Tags
2.0.1, kernel, tether, walkthrough, wifi


Currently Active Users Viewing This Thread: 9 (0 members and 9 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
How to tether your android phone for free kennyg23 Hacking Help 61 03-01-2010 10:43 AM
WiFi Tether App SwordOfWar Droid Applications 16 02-08-2010 06:01 PM
tether to PS3 and mac LRapp Tech Issues, Bug Reports & Suggestions 1 01-03-2010 08:34 AM
Whats everyone using to tether?? jf2oo6 Droid Applications 2 11-24-2009 07:45 PM