2

I am trying to use the Google geolocation API as documented here:

https://developers.google.com/maps/documentation/business/geolocation/

To help locate a 4G mobile device

However, the API states:

radioType: The mobile radio type. Supported values are gsm, cdma, and wcdma. While this field is optional, it should be included if a value is available, for more accurate results.

And then asks for: locationAreaCode (required): The Location Area Code (LAC) for GSM and WCDMAnetworks. The Network ID (NID) for CDMA networks.

Since this is a 4G device, it has a TAC, not a LAC

Does anyone know whether the API can work with LTE devices, and if not whether this is likely to change?

user1447903
  • 303
  • 2
  • 7
  • 14

1 Answers1

1

LTE support for geolocation API has already been added. First of all you should use "radioType": "lte" in the API call. Then, after some experiments I've realized the location of an LTE cell can be obtained by its ECI that uniquely identifies every LTE cell within operator's network (for details see eCGI and CGI for LTE and GSM networks). In other words ECI can be calculated this way: ECI = eNB_ID*256 + Cell_ID. Small problem is that some operators use their ECI only to identify an LTE cell while others use pair eNB_ID/Cell_ID (which has the same meaning but different form). You must experiment a bit :)

The geolocation API call itself is following:


    {
        "radioType": "lte"
    ,
    "cellTowers": [
      {
       "cellId": ECI,
       "locationAreaCode": 0,
       "mobileCountryCode": MCC,
       "mobileNetworkCode": MNC
      }
     ]
    }

Some working samples:

O2 Czech:


    {
        "radioType": "lte"
    ,
    "cellTowers": [
      {
       "cellId": 217774337,
       "locationAreaCode": 0,
       "mobileCountryCode": 230,
       "mobileNetworkCode": 2
      }
     ]
    }

Vodafone Czech:


    {
        "radioType": "lte"
    ,
    "cellTowers": [
      {
       "cellId": 561156,
       "locationAreaCode": 0,
       "mobileCountryCode": 230,
       "mobileNetworkCode": 3
      }
     ]
    }

Community
  • 1
  • 1
Daniel Smolka
  • 176
  • 1
  • 5