As some of you may know, I monkey around quite a bit with old Android phones. I have a few T-Mobile G1 (aka HTC Dream) phones that friends have given me after they've upgraded, as well as one of my own. The G1 was my first Android phone, and thanks to rooting, I wasn't hard-pressed to upgrade for several years. I just hadn't seen new phones that could do things my old phone couldn't.
I finally upgraded to an LG G2X, which I also love. But the G1 is still incredibly viable. And with the double-sized battery I got two years ago, I can turn on every single feature and still have battery power for two days at a time, even with aggressive data use.
Today, I decided to make my old phone a phone again, instead of just a wireless terminal. :-P
My G1 has been rooted. This allows me to unlock my phone without needing a SIM card or active mobile phone account associated with it. I can then turn on WiFi and have full connectivity with my phone.
I configured Google Voice for use with an email account I use for developing apps. I picked a phone number that would be local to me, and pointed it to my home phone line number. Once I got Voice up and running on my phone, I logged in using my PC's browser, and switched the receiving phone from my home number to Google Talk. Now when someone calls the number, the phone call rings through to my Google Talk client on my phone. Or at least it's supposed to. It didn't seem to want to, though.
Next, I installed Groove IP, a voice-over-IP application. It's in the Android Market / Google Play, and it's free. Once I gave it my GMail account log-in, it connected flawlessly. As long as I'm in range of connectable WiFi, I can make or receive calls, and send or receive SMS messages. Domestic U.S. calls are free. There's a slight delay in signal, but it's easily manageable.