Installing the ATT carrier file from here:
http://cache.gizmodo.com/assets/iphonetetheringfile.dmg
And then modifying the State setting to 1023 in /private/var/mobile/Library/Preferences/com.apple.MobileInternetSharing.plist got the toggle switch for Internet Tetherhing to show up on my 2G under Settings > General > Network. My mac recognized the connection, but it's showing as disconnected. Console shows this:
Wed Jul 1 11:59:53 unknown kernel[0] <Debug>: virtual IOReturn AppleUSBDeviceMux::message(UInt32, IOService*, void*) - kMessageInterfaceWasDeActivated
Wed Jul 1 11:59:53 unknown kernel[0] <Debug>: AppleUSBDeviceMux::reportStats: USB mux statistics:
Wed Jul 1 11:59:53 unknown kernel[0] <Debug>: USB mux: 1361 reads / 0 errors, 2259 writes / 0 errors
Wed Jul 1 11:59:53 unknown kernel[0] <Debug>: USB mux: 0 short packets, 0 dups
Wed Jul 1 11:59:53 unknown /usr/libexec/ptpd[820] <Notice>: PTP interface has been deactivated.
Wed Jul 1 11:59:53 unknown /usr/libexec/ptpd[820] <Notice>: PTP interface bas been activated at high speed.
Wed Jul 1 11:59:54 unknown Preferences[943] <Warning>: BTM: setting discoverable status enabled
Wed Jul 1 11:59:54 unknown Preferences[943] <Warning>: BTM: BTLocalDeviceSetDiscoverable returned error 111
Wed Jul 1 12:01:19 unknown kernel[0] <Debug>: AppleUSBEthernetDevice::message: kIOUSBDeviceInterfaceMessageTypeSetAlternateSettin g, new alt-setting 1
Wed Jul 1 12:01:19 unknown misd[946] <Notice>: carrier service is not available
Wed Jul 1 12:01:19 unknown misd[946] <Notice>: carrier service is not available
Wed Jul 1 12:01:19 unknown misd[946] <Error>: PDP[nowait]: Operation not supported
Wed Jul 1 12:01:19 unknown misd[946] <Notice>: carrier service is not available
Wed Jul 1 12:01:19 unknown misd[946] <Notice>: carrier service is not available
Wed Jul 1 12:01:19 unknown misd[946] <Error>: unable to start com.apple.MobileInternetSharing.broadcast-0: Operation not supported
Wed Jul 1 12:01:19 unknown configd[23] <Error>: usbeth_start_sharing:255 _MISStartServiceDHCP(0xeac3, en1, ) failed: 45
Wed Jul 1 12:01:20 unknown Preferences[943] <Warning>: BTM: setting discoverable status disabled
Wed Jul 1 12:01:20 unknown kernel[0] <Debug>: virtual IOReturn AppleUSBDeviceMux::message(UInt32, IOService*, void*) - kMessageInterfaceWasDeActivated
Wed Jul 1 12:01:20 unknown kernel[0] <Debug>: AppleUSBDeviceMux::reportStats: USB mux statistics:
Wed Jul 1 12:01:20 unknown Preferences[943] <Warning>: BTM: BTLocalDeviceSetDiscoverable returned error 111
Wed Jul 1 12:01:20 unknown kernel[0] <Debug>: USB mux: 104 reads / 0 errors, 204 writes / 0 errors
Wed Jul 1 12:01:20 unknown kernel[0] <Debug>: USB mux: 0 short packets, 0 dups
Wed Jul 1 12:01:20 unknown /usr/libexec/ptpd[820] <Notice>: PTP interface has been deactivated.
Wed Jul 1 12:01:20 unknown /usr/libexec/ptpd[820] <Notice>: PTP interface bas been activated at high speed.
Wed Jul 1 12:01:44 unknown misd[946] <Notice>: carrier service is not available
I used to have an aircard that worked for 2G and 3G. When no 3G service was available it would pick up Edge. What happens if there is no 3G service available for the iPhone? Perhaps someone with a 3G can test tethering somewhere without 3G service and see if tethering works? If so, we know it's simply settings of some type and not that it's specifically looking for a 3G connection.
**EDGE: Looks like the 3G will drop back to EDGE if 3G isn't available according to this guy's blog. So this proves that tethering can be done over edge using the built-in apple app:
http://www.taborcg.com/?p=145
Also, it'd be good if we could see the console output of someone with a 3G using tethering.
Also, there's work going on this over here:
iPhone 2G tethering with 3.0 - any news? - Hackint0sh