[Windows Mobile Development and Hacking General] TalynOne:
Note that the NEW thread is at http://xdaforums.com/showthread.php?p=1801986

The topic maintainer (who has done a great job) has been fairly absent recently, which is why the thread has been continued elsewhere. The current topic also includes the information on how to do this all manually, without WMWifiRouter.

(End of Menneisyys' update; original original post follows.)

Breaking News!:

Chainfire has released WMWifiRouter v0.80. An app that automates the launching of Internet Sharing/Registry Changes/WiFi power Cycling/with a new 10 minute timeout fix/process! If you appreciate his work on this or his KaiserTweak application, feel free to donate something to him via PayPal.

IMPORTANT NOTES:

If you use this application, NO hacked .dlls are are needed/used. Ignore my (TalynOne's) tutorial, except for any sections referenced in Chainfire's notes below.

Make sure you have a working version of Internet Sharing installed, and tested, before trying to share it via WiFi.

WMWifiRouter info from ChainFire:

Changelog:

v0.80

Changed interface to use big icons and animations

Added new program icons, still needs some work though

Added option to make the log visible

Added about screen (with new logo)

Added options to create/remove shortcut in your program menu

Added extra registry backup/restore functionality

Added detection for ICS, with the optional error message

v0.76

Made "Unattended mode" the default power saving mode (seems to work for everybody)

Tweaked clean-up code

v0.75

Changed the power tweak with two different power saving modes: "idle" and "unattended". This fixed the power tweak for all users as far as I can tell.

v0.74

Changed the way ICS is launched and forced to connect (hopefully this will end the manual-connect issue once and for all)

Added code to prevent multiple instances

Added an icon

v0.73

Adjustments in power tweak

Adjustments in timings

Added registry tweaks for Sprint users

Put the configurable options in a menu

Added some code that cleans up your registry if the program crashed or you needed to soft-reset

Code cleaned up

v0.7

Added a power tweak

Made start sharing on start configurable (handy for troubleshooting)

Made quit when ICS quits configurable (handy for troubleshooting)

Added option to reconnect data connection when it drops

v0.6

Maintenance update, no new features added. The sole difference is that I rebuilt WMWifiRouter using a different widget set. The executable dropped 14-fold in size from 1.25mb to 93kb. This results in the application loading faster, consuming less storage, as well as less memory when running. This widget set is also lighter on the CPU, though I do not think that will be noticeable.

v0.5

Just a small maintenance update. In short, the app has simple become more responsive / usable:

App should be more responsive and load faster

'Loading' indicator is now used

Screen Toggle is disabled, as with further testing it causes too many problems

v0.4

Back to basics, all 'hacked files' removed. The name of your WiFi interface _should_ no longer matter.

New way to get around the 10 minute time out problem

Screen Toggle function added. Turns the screen off without disconnecting WiFi

WLAN state is recorded on start and restored on exit. So if you had WLAN turned on before you started WMWifiRouter, it will be turned on again after WMWifiRouter is done cleaning up after itself

More beers drank while making this version than during any other version!

The power tweak:

This replaces the old screen toggle. This should tell your device to not turn WiFi off when it goes into standby mode. On my Kaiser (TyTN II) this allows me to put the device into standby mode using the power button while the connection keeps being shared. Obviously this consumes a lot less power. I do not know if this will work on all devices, please let me know. Also note that while it usually works for me, it doesn't _always_ work, so try a few times. Wait for the connections to be established before putting the device into standby.

Upgrading:

Remove any old WMWifiRouter files you have

Follow the installation instructions

Installation:

Download the new zip HERE.

Unpack the zip file on your PC somewhere

Copy the WMWifiRouter.exe files to your mobile device

Usage:

Make sure you have an Ad-Hoc WiFi network configured. If not, follow TalynOne's instructions in the start of this thread.

Run WMWifiRouter.exe

Wait. WMWifiRouter does it's best to start ICS and initiate the connection, but this can take a few seconds. If the "ICS Status" label at the top if the WMWifiRouter screen says "Connected!", all should be well.

Usage Notes:

WMWifiRouter does it's best to launch ICS and initiate the connection, but I have noticed once or twice it didn't actually connect. When this happens, just task-switch to ICS and click "Connect" manually.

As a different hack is now used to prevent the 10-minute timeout problem, no hacked DLL's are used anymore, and your normal ICS tool is used. This does however lead to the ICS program screen saying you should "check your usb-cable" instead of it saying "connected". Don't worry about it

If your phone has a hardware WLAN switch (HTC Mogul), put this in the ON position before starting WMWifiRouter

Sets the IP of your WiFi to 192.168.0.1, which may break operation of regular USB cable Internet Sharing. If you have trouble getting regular USB Internet Sharing to work, read the FAQ titled "Help, when I go back to the non hacked version of Internet Sharing to tether via USB, it no longer works!", in TalynOne's tutorial for a possible fix.

So get testing all!

----------------------------------------------------------------

Now back to the regular tutorial...

Description:

A tutorial on how to share your mobile device's dial-up (GPRS/EDGE/UMTS/HSDPA/EV-DO, etc. cellular) connection over an Ad Hoc WiFi connection.

Starting with Windows Mobile 5 AKU3 Microsoft included an "Internet Sharing" application, for free, that allowed you to share your Internet connection (like the commercial apps PDANet and USBModem). But all of these applications only supported sharing your dial-up connection via a USB cable or Bluetooth PAN/DUN connection. This hacked version lets you share your Internet connection via an Ad Hoc WiFi network. This useful, among other reasons, if you want to share your Internet Connection with a device that doesn't support Bluetooth PAN, or USB Host connectivity, but does support Ad Hoc WiFi networks, such as a Sony PSP or iPod Touch.

Introduction:

To find out how this method differs from fluxist's read the FAQ located below. The tutorial is very verbose, because I think it's better to include too much information, rather than not enough. Expect a good number of edits/updates/corrections to this tutorial because of its length. I'm also hoping to include as much information as possible in the hopes that someone smarter than me can use this information to come up with an even better solution. This tutorial is HTC Mogul centric (since that's what I have), and includes certain notes that only apply to the Mogul (I will specify this in the note itself).

Requirements:

A Windows Mobile device with a working version of the Internet Sharing application (introduced in Windows Mobile 5 AKU3).

The ishare_over_wifi_usb_edition_v0.2.zip archive attached to the bottom of this post.

A hacked "intshare.dll" that's been modified to share you connection via WiFi through the USB selection in the "Internet Sharing" application, for the WiFi radio on your mobile device. Look at FAQ below for a list of included hacked .dlls, and the known mobile devices that they are for.

A client device that supports Ad Hoc WiFi networks.

Setup Summary

Setup an Ad Hoc WiFi connection on your mobile device

Set a static IP address on your WiFi device of "192.168.0.1" with a subnetmask of "255.255.255.0".

Setup an Ad Hoc WiFi connection on your client device

Download/uncompress the contents of ishare_over_wifi_usb_edition_v0.2.zip to a folder on your mobile device (eg. \Program Files\WiFiShare).

Copy the correct hacked "intshare.dll" into the same folder as you created in the above step (so it's in the same folder as "intshrui.exe").

Connect Summary

Make sure the Wifi radio is off.

Run the new "intshrui.exe", make sure USB is selected from the list, and press "Connect" (left softkey).

Turn your Wifi radio on.

Connect with your Ad Hoc client device (Laptop, PSP, etc...) and enjoy the INTARWEB!