Antennas for Android 1.0

Antennas is a simple app which reads data from the phone's telephony manager and displays it in a graphical fashion on top of Google Maps.

The program can be used to give you a rough idea of the antenna locations in your neighborhood, to help you compare networks of different carriers (by running the app using multiple SIMs), or to get a real-time picture of how your GSM phone selects which antennas to connect to (which can be quite fascinating, especially at high speeds on the highway - but only if someone else is driving!). Power users can also save the data to a log file or a .kml file for detailed analysis on their PC.

This is by no means a professional-level tool. Still it can be quite informative (I'm being told), for as long as you take time to understand the display and know what the app will or will not do. First, let's look at an example:

Our GPS location is marked with a G (for GPS).

The phone is on a 2G (EDGE) network. It is connected to a nearby antenna (in red), and the signal strength is 25 (on a scale of 1 to 32, see the help file for dBm equivalents). This antenna's Location Area Code (LAC) is 12320, its Cell ID (CID) is 2616, and the signal strength expressed in dBm is -63.

There are 5 other antennas (yellow circles) that the phone's radio receiver is also connected to. Note that this information is not available for CDMA phones.

The smaller yellow dots (about 6 of them on this map) are other antennas in the area that the receives is presently not connected to. The application knows that these antennas exist because the phone was connected to them earlier in this session.

If you want to see more information on these other "yellow" antennas, you can save the map to KML, and then browse it in Google Earth.

The network location reported by the phone is marked with a blue N circle. This is the location that Google maps would report if your GPS was turned off.

Here is an example of a KML file, from another area: (Click to download, Google Earth required)

The help file detailing app features and options is here

What the application CAN do:

  • It will show network information for your network carrier only. All other carriers are invisible to it.

  • It will display antenna locations listed in Google's antenna database.

  • On 2G GSM networks (GPRS/EDGE), it can display the LAC/CID/Signal strength and location (if available) of active connected antenna and the active neighbor antennas.

  • On 3G GSM networks, coverage is more sparse. You will generally see only the current antenna (LAC/CID/Signal strength, and location, if available).

  • On CDMA networks, you will only see the current antenna (BID/NID/SID and location, if available). The signal strength indicator may be unavailable. CDMA support requires Android 2.x (on 1.6 devices you will only see network location)

  • The app can log information into a file. Power users can use this to perform all sorts of analysis.

  • The app can generate KML files so you can easily review the information on your PC.

    What the application CAN NOT do:

  • The application does not compute the true location of the antennas. There is absolutely no way a consumer grade phone can do this. But with some programming and some math skills, one can use the log files generated to create coverage maps and estimated locations. This is not for the faint of heart.

  • The locations are not guaranteed to be accurate. They are determined by looking up the Google database, which is sometimes very accurate, and sometimes very wrong (and by that I mean very, very wrong). See below.

  • The app will not instantly display all the antennas in your neighborhood. Your phone must connect to an antenna in order for the app to display it. If you want to build a comprehensive map of your area, you should leave the app running, and walk, bike or drive around for a while in order to collect data.

  • The app cannot locate antennas not in the database. There are many areas (especially non-urban ones) for which no data is available. Read further down on what you can do to add or improve the data.

  • The application is NOT a location tool. That's what the GPS in your phone is for. Please enable the GPS to get a location fix. Otherwise, don't blame me for putting you in East Fugawistan.

  • This is NOT a replacement for Google Maps! It is not a navigation app! Did I ever say it was? Where do some people get this idea from? :-)

    More on Google's antenna database:

    Google build their antenna database via "crowdsourcing": Collecting data from any phone running Google Maps (possibly including yours - check the disclaimer that appears when you enable wireless networks in Setting/Location).

    Thanks to the large number of phones running Google Maps, the data is frequently good, but not always. Location data is sometimes off by thousands of miles, or completely unavailable. For more details, you can read an interesting thread on this issue on Slashdot

    In theory, leaving your phone running with the GPS on will eventually allow Google to collect more data for your area which will improve the database. In theory.

    Data for 3G cells is especially sparse and unreliable. For best results, set the phone to "2G Only", and use the GPS to get an accurate fix for your own location. Even in the U.S., where coverage is best, there are areas for which no data exist. This application can help you examine the data in your area.

    In any case, antenna locations are only approximate. In actual use, some antenna locations are accurate to a few meters. In my area most antennas are within 200 meters from the location shown. Your experience may vary.

    About feedback:

    A lot of effort has gone into this freely distributed application. I'd really appreciate your feedback in Market. Please be considerate. If you encounter a problem, contact me; I will do my best to fix it. Simply leaving a rude comment that the app sucks does not give me enough information to fix the problem (I already know that the app sucks, give me more details!)

    This is an early release, I'm sure there will be plenty of bugs and even a few FCs to be found. Let me know.


    Michael Polymenakos

    mpoly at panix dot com

    Change Log:

    0.75: Added "scan in background" option. We'll need this when we get a logging option (soon!)

    0.76: Added wakelock.

    0.81: Added compass option; Bug fixes: Release GPS when not needed (reported by Jacob), fixed lines overlapping circles (reported by Piotr).

    1.0: Added CDMA, Logfile & KML output. Revamped help files. Many thanks to Gary, John C, John K, John S, Marc, Jacob and all the other beta testers who helped!