Knowledge Base

[Geolocation] HTTP Response Bug Report

Hi everybody,

Here I am again but this time to report a small bug that kept me stuck in my code for quite some time until I realized my code was correct but there was wrong JSON being returned from the HTTP POST request.
Whenever I use cURL with the correct TOKEN, URI and JSON to the /api/v2/tdoa and /api/v2/tdoaMultiframe endpoints always return "algorithmType": "Rssi" instead of "algorithmType":"Tdoa".
I noticed that for the same JSON I get different coordinates, thus I think the only problem is this string value. =)
Image Attachments
Hi there,

the way that the geolocation API works for the V2 API is that it will attempt TDOA and, if it fails, then it will attempt an RSSI location. It will return the location algorithm that resulted in the location being returned. If you switch to the V3 API then there is more control over this behavior.

Incidentally, it is more difficult to get a result from the TDOA algorithm and you must have an uplink from a device that satisfies the following:
(1) it must be received by 3 or more Gateways
(2) at least 3 of the receiving gateways need to be based on the the V2 GW reference design and supply the 'fine timestamp' value (this is a timestamp in 'ns' & not the same as the regular timestamp supplied with all V1 & V2 gateways which is simply not accurate enough to produce any location estimate)
(3) the gateways must all be synchronized to the same time epoch- such as having a fully locked internal GPS in each gateway.

So, in all likelihood, you have received a location estimate calculated using RSSI even though you tried the TDOA endpoint.

Hi Rich, thanks for your reply!

Now I wonder if it's using RSSI in the end (due to my JSON), why are the coordinates being slightly different from each other? When I send the same request to /api/v2/rssi I always get the exact same location, but with /api/v2/tdoa I get something else than with the RSSI one, though in the end it's the same geolocation estimation (both RSSI).
Can you tell me if the location you get back from the TDOA endpoint changes each time you make the call or if it is merely a little different from the one directly from the RSSI endpoint.
There's just a little difference between RSSI and TDOA. It doesn't change its values for each TDOA request.