github.com/bluenviron/gomavlib/v2@v2.2.1-0.20240308101627-2c07e3da629c/pkg/dialects/asluav/message_timesync.go (about)

     1  //autogenerated:yes
     2  //nolint:revive,misspell,govet,lll
     3  package asluav
     4  
     5  import (
     6  	"github.com/bluenviron/gomavlib/v2/pkg/dialects/common"
     7  )
     8  
     9  // Time synchronization message.
    10  // The message is used for both timesync requests and responses.
    11  // The request is sent with `ts1=syncing component timestamp` and `tc1=0`, and may be broadcast or targeted to a specific system/component.
    12  // The response is sent with `ts1=syncing component timestamp` (mirror back unchanged), and `tc1=responding component timestamp`, with the `target_system` and `target_component` set to ids of the original request.
    13  // Systems can determine if they are receiving a request or response based on the value of `tc`.
    14  // If the response has `target_system==target_component==0` the remote system has not been updated to use the component IDs and cannot reliably timesync; the requestor may report an error.
    15  // Timestamps are UNIX Epoch time or time since system boot in nanoseconds (the timestamp format can be inferred by checking for the magnitude of the number; generally it doesn't matter as only the offset is used).
    16  // The message sequence is repeated numerous times with results being filtered/averaged to estimate the offset.
    17  type MessageTimesync = common.MessageTimesync