This is not totally off topic.....Android is based on Linux....;-)

I need some advice from an expert in networks to give me some advice on getting my phone to make WiFi calls....

Anyway, I have a T-Mobile MyTouch 4g phone. It is supposed to be able to make calls over WiFi, which do not use an plan minutes...ie "free" calls. I depend on this phone for my business, and I have a wireless network at the office, so I don't have to pay for gillions of minutes. This worked great when I had my Blackberrys - I could talk all day in the office and not use any minutes. All of this is above board with T-Mobile - I actually pay a low monthly fee for unlimited WiFi calling.

Anyway, much to my chagrin, I discovered yesterday that I had gone way over my plan minutes. I checked with T-Mobile, and none of my calls had gone over WiFi. The agent refunded all the charges for the over-plan minutes and gave me extra minutes to get through the rest of the month. She sent me to technical support, and we could not get my phone to make calls over my WiFi network. Even though the phone says I am connected to WiFi. So, I went to the T-Mobile corporate store in Fashion Square, and the manager (she has the same phone) and I tried to connect to the mall WiFi, and we could connect to the mall WiFi, but could not make WiFi calls. Same error - could not connect to T-Mobile network.  I then tried to make a WiFi call at Starbucks, and it worked! It also worked at Barnes and Noble after I agreed to the free Internet terms and services (didn't work before then).

I googled for issues with WiFi calls with this phone, and found a lot of them. Sometimes it works and sometimes it doesn't. The error message that pops up says the phone cannot connect to the T-Mobile network. T-Mobile is aware of the issue, but does not have a fix or ETA for one.

One posting had this to say about the WiFi calling.....

The WiFi Calling app is Kineto's WiFi Calling app branded for T-Mobile.  The WiFi Calling app is an implementation of 3GPP GAN, which allows something on the Internet to get into a cellular network and do stuff (in this case, make and receive calls).If you care to pull up the most recent version of the spec, linked above, you'll find that "registering" (ie, logging into home base) involves these steps (get a glass of warm milk and see 8.4.1.6) ...

1) Performing a DNS query to get the address of thing it's trying to connect to (if necessary)

2) Setting up an IPSec tunnel to thing resolved in step 1 (called a SEGW)

 3) Resolving and connecting to (using TCP over the tunnel setup in step 2) yet another thing called a GANC

4) Sending the GANC a "register request", which includes your phone's IMSI, information about the cell you're currently connected to, or last connected to if no longer connected, and other stuff

5) Getting back a response that the GANC is happy with you and all is well

I started to think that perhaps I have a router issue on my network. I have a Linksys WRT54G wireless access point going through a BEFSX-41 Linksys router to my cable modem. I checked the routers, and IPsec is enabled for both. The WRT54G uses MAC filter to allow only certain devices to connect, and WPA Personal, AES algorithm, and a shared key of 64 characters in it. The WRT54G says I am connected to the phone when I enable WiFi on the phone.

This is a long way to get to my question...thanks for staying with me. is there a way to look at what the phone is doing when I try to enable WiFi calling to see where it fails? A wireless sniffer?? Does any of the above give you network gurus an idea of what may be wrong and if it could be in issue with my router?

Thanks for any help you can provide....I would hate to go back to a Blackberry as I really like Android now!

Mark