VOXL Flight Clock System
-
First, about the context. I want to log (VOXL Flight's) camera feed, IMUs and GPS for development.
I am able to log the camera feed and IMUs (on board the VOXL part) using voxl-logger. And I am able to log the IMUs and GPS on board of the Flight Core part using the default PX4 logging system, specifically Ulog.To make sense of the data it should be synchronized, but I am not sure if it is? Does anybody know?
If I look at the voxl-logger files the timestamp is a 12-digit timestamp in nanoseconds and in the ulogs the timestamp is an 8-digit timestamp in milliseconds.
voxl-log timestamp example: 293857036778
px4 ulog timestamp exmaple: 29438654- Can someone tell me if these timestamps are taken from the same clock source?
- Do I understand correctly that both timestamps are in Unix Timestamp format?
- Is there documentation about the clock system on board of the VOXL Flight?
The Linux timestamp resets to 1st of January 1970, every time I disconnect the battery. I know that there is no RTC onboard.
Does anybody have experience adding RTC to the VOXL Flight Deck? Does it make sense to do it?
If I investigate the ulog files they seem to have correct date in the title. Where is this taken? GPS lock? QGroundControl? -
@boga As of SDK 1.1.3 the applications and px4 got timestamps from Linux MONOTONIC clock so the timestamps are indeed aligned. Starting with SDK 1.2.0 px4 shifts to using the MONOTONIC clock on the DSP (Where most of PX4 runs) for the timestamp and it is not aligned (and drifts over time) with the Linux clock.
-
@Eric-Katzfey thanks for the answer. Are you sure about that?
I have m500 drone, where I have VOXL 1 Flight Deck, not VOXL 2.You said:"Starting with SDK 1.2.0 px4 shifts to using the MONOTONIC clock on the DSP (Where most of PX4 runs)"
This sounds to me like you are talking about VOXL 2 Flight, or not?
I thought that on VOXL 1 Flight the PX4 applications and firmware are running on the ARM M7 STM32F765II - isn't that so?Or do the PX4 appliations really run on DSP, also on VOXL 1 Flight controller?
-
I found the following piece of code that seems to be dealing with the time_sync between VOXL and PX4: https://gitlab.com/voxl-public/voxl-sdk/services/voxl-mavlink-server/-/blob/master/src/mavlink_services.c?ref_type=heads
But I do not fully understand it. Maybe someone can explain? I believe that this means that the logs are also synced or not?
-
@boga Sorry, yes, I was referring to VOXL 2.