I don’t think it was new firmware, but these were changes in the backend instead (like maybe the bridge sitting between the TTIG and V2, or between V3 and V2). Given that, even though the TTIG indeed knows time, maybe the time in the meta data is added at some later stage. I guess that’s unlikely though, if only as for large latency then even for perfect clocks that would yield a time that is in advance rather than late.
If one wants to know, maybe one can compare UART logging to the values in the meta data.
If at powerup\startup the Gateway waits for the GPS (which has also just powered up) to get a fix or the time and then updates its internals with that time and then uses the PPS to increment that time; then the time the gateway uses could indeed be out by a second or more.
If however the extraction of the time from the GPS NMEA data is a continuous process (rather than just at startup) then after at most 12.5 minutes of good reception the GPS ought to be putting out the time that is equivalent of UTC.
But at least the coders at Semtech/Cycleo were aware of that:
And each time an NAV-TIMEGPS UBX message has been received:
get the concentrator timestamp (using lgw_get_trigcnt, mutex needed to protect access to the concentrator)
get the GPS time contained in the UBX message (using lgw_gps_get)
call the lgw_gps_sync function (use mutex to protect the time reference that should be a global shared variable).
Then, in other threads, you can simply used that continuously adjusted time reference to convert internal timestamps to GPS time (using lgw_cnt2gps) or the other way around (using lgw_gps2cnt). Inernal concentrator timestamp can also be converted to/from UTC time using lgw_cnt2utc/lgw_utc2cnt functions.
So, does the TTIG UART log for an uplink show (almost) the same time as the meta data?
(Again, I’d also assume that the TTIG includes that time in its Basic Station uplink message, though I now see that such is actually not too clear from the specification? It might be easy to validate by comparing the UART log to the meta data, if you want to know.)
I’d say simply pick a few random uplinks from the UART log, and manually compare to the time in their meta data in TTN Console?
That’s not realtime, indeed. Also, I don’t know what the TTIG logs for an uplink. And all only matters if you want to know what’s the origin of the time in the TTIG’s meta data. Maybe @KrishnaIyerEaswaran2 can also simply tell you.
Not sure what problem this actually creates for you? If a gateway is equipped with GPS module, you typically can obtain GPS timestamp for a packet. And if there’s no GPS module, you hardly can get a precise enough timestamp.
I am seeing the same behaviour (i.e. pressing reset twice with some delays, or power cycling will restart the TTIG). “Last Seen” field in TTN console never updates though.
I only have one TTIG, but it’s yet to work a single time. It’s not even useful as a paperweight, too light…