Struct CookedTelemetry

Source
pub struct CookedTelemetry {
    pub(crate) pll_time: i64,
    pub(crate) phase: [ScaledStatistics; 2],
    pub(crate) rf_power: [f32; 2],
    pub(crate) raw: [ChannelTelemetry; 2],
    pub(crate) ch_freq: [f64; 2],
    pub(crate) temp: f32,
}
Expand description

Telemetry structure. This structure is published via MQTT at the telemetry_interval configured in Settings. There is no dedicated AA filtering for telemetry data (except for stats), it is just decimated by the telemetry interval. Use streaming for full bandwidth data.

Fields§

§pll_time: i64

PLL time DDS PLL time as seen by CPU (sample) clock. Settles increments of approximately 0x140_0000.

§phase: [ScaledStatistics; 2]

Statistics of scaled (settings.phase_scale) phase including wraps. Phase statistics state. Each message corresponds to the statistics of the phase data since the last message.

§rf_power: [f32; 2]

RF power in dBm as reported by the RF detector and ADC. Functionality limited. https://github.com/sinara-hw/Pounder/issues/95

§raw: [ChannelTelemetry; 2]

Raw (binary) channel telemetry, mostly “stateful”

§ch_freq: [f64; 2]

Channel frequency estimate (PI counter between telemetry messages) TODO: deprecate

§temp: f32

Pounder board temperature

Trait Implementations§

Source§

impl Clone for CookedTelemetry

Source§

fn clone(&self) -> CookedTelemetry

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Default for CookedTelemetry

Source§

fn default() -> CookedTelemetry

Returns the “default value” for a type. Read more
Source§

impl Serialize for CookedTelemetry

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T, M> ForwardCompat<T, M> for T

§

fn forward(self) -> Forward<T, M>

Create an e-h-c forward compatibility wrapper around and e-h object Available methods depend on the wrapped type
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> ReverseCompat<T> for T

§

fn reverse(self) -> Reverse<T>

Create an e-h-c wrapper around and e-h object Available methods depend on the wrapped type

§

fn reverse_cell(self) -> Reverse<RefCell<T>>

Create an e-h-c reverse compatibility wrapper using a ref-cell for interior mutability (required for InputPin types)

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.