wifi unit buddy
Ah that might explain it. To get your positional data on a WiFi connection it has to look at the SkyHook database to see where you are. If your WiFi isn't registered with SkyHook then it doesn't know where you are.
Here is the registration page.
http://www.skyhookwireless.com/howitworks/submit_ap.php
If you use any WiFi access points owned by telecoms providers (BT/Vodafone etc) then they are already on that DB so it'll work if you are out and about using it if you can get a connection.
That's another nice thing about the 3G unit. Even if i never buy any credit, my GPS will still have a look every once in a while to work out where I am. When I then hook up to a WiFi point somewhere it then uploads the days data and syncs it all.