sparkfun / OpenLog_Artemis

The OpenLog Artemis is an open source datalogger the comes preprogrammed to automatically log IMU, GPS, serial data, and various pressure, humidity, and distance sensors. All without writing a single line of code!
https://www.sparkfun.com/products/15846
Other
88 stars 47 forks source link

time stamps in serial data file #192

Closed HolgerSiebert closed 6 months ago

HolgerSiebert commented 8 months ago

time stamps in serial data file

Dear Paul

thanks for solving issue #182 but one issue remains with logging serial data (same setupas in #182 but now with firmware 2.7 beta): I want to include a timestamp in the serial data file which looks like (without time stamp)

S 01.54 D 087 U -01.53 V -00.09 W 00.14 T 09.88 H 62.07 P 1009.21 PI 000.4 RO -006.2 MD 348 S 01.31 D 082 U -01.29 V -00.18 W 00.19 T 09.55 H 63.58 P 1009.23 PI 000.4 RO -006.2 MD 359 S 01.29 D 087 U -01.29 V -00.06 W 00.03 T 09.43 H 64.10 P 1009.24 PI 000.4 RO -006.2 MD 348

I asked OLA to include the time stamp after token = 84 ("T") which is unique in every individual telegram; however, the time stamp appears "somewhere" and my logged data looks like:

S 01.54 D 087 U -01.53 V -00.09 W 00.14 T 09.88 H 62 ^02/28/2024,12:28:12.63 .07 P 1009.21 PI 000.4 RO -006.2 MD 348 S 01.31 D 082 U -01.29 V -00.18 W 00.19 T 09.55 H 63 ^02/28/2024,12:28:12.67 .58 P 1009.23 PI 000.4 RO -006.2 MD 359 S 01.29 D 087 U -01.29 V -00.06 W 00.03 T 09.43 H 64 ^02/28/2024,12:28:12.69 .10 P 1009.24 PI 000.4 RO -006.2 MD 348

Sometimes the data looks even worse and parts of the telegram are missing; I never observed this issue when logging without time stamps so I assume the general serial data transmission works fine (after you solved issue #182). I also tried to add the time stamp after the carriage return/line feed at the end of the telegram but with the same result

Any thoughts about this?

Best wishes Holger

PaulZC commented 8 months ago

Hi Holger (@HolgerSiebert ),

Thanks for reporting this. (OLA is years old and yet it continues to create surprises!)

I think I can see a flaw in the code, which causes the token timestamp to be printed 'late'. Any remaining serial data in the receive buffer is printed to file first, before the timestamp.

Can you please share how the data looks with the token set to carriage return / line feed - whichever is the final character?

Thank you, Paul

PaulZC commented 8 months ago

Hi Holger (@HolgerSiebert ),

Please try v2.8_BETA : https://github.com/sparkfun/OpenLog_Artemis/tree/main/Binaries

Best wishes, Paul

HolgerSiebert commented 8 months ago

Hi Paul,

thanks for your prompt response - I only had a first look at the results but it looks promising. I will report in detail later.

Best wishes

Holger


Holger Siebert PhD Leibniz Institute for Tropospheric Research (TROPOS) Dept of Experimental Aerosol and Cloud Microphysics

PaulZC commented 6 months ago

Closing... Please reopen if you need more help with this.