Skydel Plug-ins Documentation
  • Introduction
  • Development Environment
    • Ubuntu 22.04
    • Windows 10 & 11
    • Compilation
    • Featured Plug-ins
      • IMU Plug-in
  • Plug-in Development
    • Roles
      • Core
      • RAPI
      • Position Observer
      • Raw Data Observer
      • HIL Observer
      • Radio Time Observer
      • Transmitter Observer
      • Simulator State Observer
    • Enabling
    • Runtime
    • Time Synchronization
  • Plug-ins in Skydel
    • Using Plug-ins
  • Legacy Custom Signal
    • Migration
Powered by GitBook
On this page
  • Radio Time
  • Helper Functions
  • Dynamic User Interface
  • Example
  1. Plug-in Development
  2. Roles

Radio Time Observer

This section contains a description of the SkydelRadioTimeObserverInterface supported by Skydel.

PreviousHIL ObserverNextTransmitter Observer

Last updated 1 month ago

Radio Time

During simulation initialization, Skydel will ask for a SkydelRuntimeRadioTimeObserver* from every plug-in via the createRuntimeRadioTimeObserver method. It is mandatory to give full ownership of the returned pointer to Skydel.

During simulation, Skydel will send an estimate of the radio time at 1000 Hz via the pushRadioTime method with the following data structure. For more details on the usage of this information, see the Time Synchronization section.

RadioTimeEstimate
Definition
Unit

radioElapsedTimeMs

Latest radio simulation estimated time

millisecond

osTime

Operating system time point of when the estimate was made

std::chrono::time_point

Helper Functions

getDeadline(int64_t elapsedMs, const RadioTimeEstimate& recentEstimate)

Returns an operating system time_point for when the RF corresponding to the given elapsedMsis expected to be broadcast from the radio.

This same deadline can be used in conjunction with the DelayedBroadcaster in the given example to broadcast a UDP packet at the same time as the RF.

microsecondsUntilRadioTransmission(int64_t elapsedMs, const RadioTimeEstimate& recentEstimate)

Returns an integer number of microseconds until RF corresponding to the given elapsedMs is expected to be broadcast from the radio.

Dynamic User Interface

Same as SkydelPositionObsereverInterface, see of Position Observer for more details.

Example

  • Receiving the radio time data in real time

  • Updating the user interface

  • Synchronizing multiple types of real time data

  • Synchronizing real time data with RF transmission

See the plug-in example for more information. It covers:

radio_time_observer_plugin
Dynamic User Interface