So a few weeks ago my brother lost his credit card and had it canceled. He also never updated our wireless account to auto withdraw from the new credit card. Because of this I found myself in a situation where I needed to rely only on WIFI for calling and text for a few days till we were able to get our bill sorted out. I started this adventure thinking this should be no sweat since this is Android were talking about. There has to be an easy way to get 3G/4G/WIFI (read data plan only) calling.
Google Accounts
The first thing you need to have set up and working is Google Voice. It is important when you set up Google Voice that you choose the option that gives you a "new" number. I am not certain if you can convert your Google Voice account from one that is voice mail only to one with a number. This will be the number you will text/call from/to.
Next you need to make sure you have a Google chat/talk account. Google chat/talk now can be used with a PBX/SIP/VOIP solution to route calls over the Internet.
Software
The next thing you need to do is download the free and open source software Sipdroid. This FOSS SIP/VOIP client will work with Android 2.0+ so just about every one with unlimited data or WiFi can get in on the fun!
NOTE: I did test the built in VOIP client (Android 2.3+) but the audio quality (but not volume/amplitude) and battery life were worse compared to sipdroid and outbound calls required using Google Voice Callback. Also, Sipdroid will install on Android 1.5+, but in order to use the pbxes.org account creation feature, you need to be running Android>=2.0
Setting up Google Voice
The first thing to do is configure Google Voice to forward calls to your Google chat account. Log in to GV and go to the upper right corner and choose the Google Voice settings by clicking the gear and choosing "Settings" from the drop down.
Now you should be looking at your "Phones" tab under Google voice. Here you need to check off the box to forward calls to your Google chat account.
For my account, I have free calling for nights and weekends. So to take advantage of the fact that Google lets you set up custom calling times, I also have my Mobile number only ring when calling is free. That is why there is a clock icon next to my Mobile number.
You may need to verify that you have Google talk/chat enabled in Gmail if your Google chat account does not show up in the settings.
Now we need to set up Sipdroid. Since version 2.0, Sipdroid now has the ability to create a FREE pbxes.org account and link it to your GV/GC account automatically. Sipdroid has a set of steps that you have to go through to set it up after the first time you launch to get connected.
Now you will have created an account on pbxes.org as well. This site will be used to manage your SIP/VOIP trunks (aka in/out bound phone to Internet call routing). After sipdroid sets you up with a free account, you need to go to the website (either on your phone browser or another computer) and fill in your personal information like name and address to keep you free account from being deleted (for not being used).
Now to test, you should be able to dial out through sipdroid and if you set it to make calls all the time, sipdroid will automatically take over when you try to call someone. Finally, have some one call your Google voice number and make sure that sipdroid rings with an incoming call and not your regular phone app. If your regular phone app is ringing, check your forwarding settings for GV.
Minor Issues
So after playing with this for a little while I have discovered a few key setbacks:
Audio quality - Although I can hear others fine (albeit slightly quiet), I get reports of an echo. Particularly when talking with older people.
Battery Life - Since the phone has to constantly check for incoming calls, the battery life is prone to draining fast. I honestly turn off sipdroid at night and on the weekends. I may buy the app Tasker to do this automatically.
Mobility - This is the worst part IMHO. If you are like me, half the phone calls you make involve pacing about an area aimlessly while you talk. If you are on WiFi and walk away, and the network switches to 3/4G, the call will drop. If your switching between 3/4G towers (like when driving on the highway long distances) your call will drop. If you are on 3/4G and are driving but are on the same signal the whole time, then get to a location that has a remembered WiFi AP your call will drop.
These three minor issues to me make it worth the savings every month I now enjoy because I was able to reduce my family plan with unlimited texting and lots of unused minutes.
Also, be careful as there are a lot of sipdroid clones that go by other names . These are not recommended as they may contain other software that could possibly steal information from your device. Always know what you are installing from the Android Market before you install it.