Open LouneCode opened 1 year ago
I'm happy to add support for the fine-timestamp, but I'm hesitant to implement features which are not part of the "official" documented protocol and implementation. I would rather wait until https://github.com/lorabasics/basicstation/issues/177 has been integrated in the "official" Basics Station implementation.
I agree that. Sounds like a good plan. Looking forward "official" support of the fine-timestamp in the Basic station implementation.
I have run about five months that "unofficial" version of the fine-timestamp patch and it works like a charm ;)
Summary
Hi all,
It looks like the ChirpStack Gateway Bridge with Basic Station backend don't support fine timestamps? Actually the websocket message of the Basic Station backend has a “fts” tag for fine timestamps, but this feature is missing from the ChirpStack Gateway bridge?
Basic Station backend websocket message (SX1303, SX1302):
What is the use-case?
A Fine timestamp is used to get the TDoA geolocation of the transmitter (sensor).
Implementation description
ChirpStack Gateway Bridge
The RadioMetaDataUpInfo structure in radio_meta_data.go implements which elements of a websocket message to parse.
A fine timestamp (Fts element) could be added quite simply to the RadioMetaDataUpInfo structure as follows:
Func SetRadioMetaDataToProto() in the same file needs a little refactoring:
After these small changes, the fine timestamp information exist in the uplink event as follows (if you are using the GLS Basic Station instead of Basic Station backend):
This feature can be patched with the following commands:
More information about this idea can be found at:
Can you implement this by yourself and make a pull request?
See the implementation proposal above.