Oyster Sigfox devices have a GPS, and will generally provide very accurate positions. This data is recorded in the "data" payload. It is often confused with what is sent by the Sigfox network - "lat" and "lng" in the callback.


For example, consider this callback content:

{
  "device":"214E64",
  "time":1513918420,
  "duplicate":false,
  "snr":10.94,
  "station":"4A2A",
  "data":"10b67dcc0006efda3d9816c2",
  "avgSnr":53.53,
  "lat":1.3,
  "lng":103.8,
  "rssi":-136.00,
  "seqNumber":289,
  "ack":false
}

In here, we have two sources of position:

  1. In the "data" payload, which is created by the Oyster, we have the lat/long. Use this link to decode the message. This decodes to give us "Latitude": 1.3401526,  "Longitude": 103.7758214.
  2. In the callback, the fields "lat" and "lng" are provided by the Sigfox network. These are estimates of the location made using the base station positions. They will often be close to the "data" payloads position, but not as accurate. We cannot say how accurate they are, as it depends on the network.