Developer Enables USB Tethering In 3.0 Beta [Updated With How-To]
According to MacRumors, developer Steven Troughton-Smith has managed to enable data tethering in iPhone 3.0. The discovery was made after the developer altered carrier settings in an attempt to enable MMS. Once the preference was discovered, tethering was found to work over both USB and Bluetooth. Enabling tethering initially caused the phone to crash, although screenshots (shown below) later show that he did get things working.
Most interesting of all, jailbreaking the phone is not necessary to enable the feature. Instead, Steven used a modified carrier update bundle to send the correct arguments to his iPhone.
For those who don’t know, tethering is a connection between a mobile phone and a computer used for sharing the phone’s Internet access. Apple admitted during the Q&A session yesterday that 3.0 supports tethering, although it won’t be enabled by default. Carriers will be required to allow tethering and will likely charge an additional fee.
[Update] How-to: After looking through Steven’s tweets (and getting some help from Erica Sadun), I’ve managed to figure out how to enable tethering in 3.0. You MUST have an iPhone 3G for this to work. You’ll need to unzip and edit a file within the ATT_US.ipcc file, located at ~/Library/iTunes/iPhone Carrier Support/ATT_US.ipcc.
- Rename ATT_US.ipcc to ATT_US.zip and unzip
- Located in the Payload folder, show package contents for ATT_US.bundle and replace the carrier.plist file with this one (make sure to rename)
- Also in the ATT_US.bundle folder, replace the Info.plist file with this one (make sure to rename)
- Zip the Payload folder and rename it to something like TETHERING.ipcc
- Option-click (or Shift-click in Windows) on Update in iTunes and select the .ipcc file you created
- Your phone will momentarily freeze. When it responds again, you should see “Internet Tethering” under General>Network in Settings
As far as we know, the plist is ok to distribute. If not, we’ll pull it down and direct you guys to the instructions for editing it yourself.
We haven’t tried this (yet), although it has been said to work. We have tried the method and it does work, although it seems to require the 3.0 SDK to be installed (probably a new MobileDevice.framework). If you try this method, please post your results below.
Major props to Steven Troughton-Smith!