The iPod Touch, Location Services, and Skyhook: Let's Make This Work.
If you're one of the lucky ones, your iPod's Location Services will work the instant you connect to a WiFi network, like they're supposed to. But for the many of us, that nasty "Location cannot be determined" pop-up is a constant reminder of our device's limits. So why does this work for some people, and not for others? It all depends on where you live and what wireless networks your device finds. For example, my iPod's Location Services were absolutely useless at home, but when I drove two hours to the Apple Store to have them look at it (hey, I had other shopping to do, too!), suddenly there wasn't a problem.
The reason for the discrepancy is that the iPod relies on Skyhook for location information. Don't be surprised if you've never heard of it; the Apple "Geniuses" hadn't, either. Skyhook is essentially a database of known WiFi points and their addresses that supplies the technology behind non-GPS Location Services on the iDevices. (See the "how it works" page.) Here's the catch, though: if your WiFi access point isn't registered with Skyhook, Location Services simply won't work. Skyhook's coverage is far from comprehensive, focusing primarily on urban areas, so this isn't exactly an uncommon problem.To remedy the situation, you can register your router on their website by entering your email address, your physical address, and your router's MAC address. Instructions for finding your MAC address are available on their website, and after submitting the information it takes 1-3 weeks for Location Services to work.
And that's it! So, if you were wondering why Location Services just won't work on your iPod...here's the likely answer. :)
Let us know if you've had a similar experience, and/or if this works for you. As for me, I'll be enjoying my newfound ability to, you know, use Maps. What a relief!