locationcellular-networkcellid

Mozilla location service vs open cell id


What the difference between opencellid and mozilla location service?


Solution

  • Generally speaking both services collects "visible by device CDMA, GSM, UMTS, LTE cells, Wi-Fi hotspots, Bluetooth beacons at particular latitude, longitude". It is the place where GPS receiver is located at the moment of scanning, not exact base station or it's antenna sector place. When multiple measurements from different places around are available, it is possible to perform averaging of coordinates which is published (see below).

    Things complicated for cellular networks

    Meanwhile, databases contain exact positions of some base stations (or sectors?), check changeable==0 column in CSV dump.

    Mozilla Location Service (MLS)

    Collects cells and Wi-Fi measurements with libstumbler library which is incorporated in Mobile Firefox (collection is disabled by default) and Mozilla stumbler. Bluetooth beacons being collected some other way. Geolocation backend is called Ichnaea (it responsible for data exchange between MLS and OCI).

    Looks like when user requests geoposition through API or Android MozillaNlpBackend, MLS query own collected data database, own copy of Opencellid database, GEO IP, and SkyHook partner. Collected Wi-Fi data is sensitive and used for online geopositon.

    Published data: Public domain license. Daily CSV dumps of estimated cells location only (because of privacy: no raw measurements data, no wi-fi, no bluetooth beacons).

    Opencellid (OCI)

    Collects only cells (with 3-rd party software).

    Published data: CC-BY-SA 3.0 license. CSV dumps of estimated cells location (updated in something around week) and raw measurement data. Free API key required.

    No officially averaged MLS+OCI data published (I want be wrong here). Projects can't merge it because of license and privacy (Mozilla don't wont publish raw measurements). One can download CSV dumps and use it for offline geolocation. There are at least one succeed project for Android - LocalGsmNlpBackend for µg UnifiedNlp.