OnboardComputerStatus

Struct OnboardComputerStatus 

Source
pub struct OnboardComputerStatus {
Show 20 fields pub time_usec: u64, pub uptime: u32, pub type_: u8, pub cpu_cores: [u8; 8], pub cpu_combined: [u8; 10], pub gpu_cores: [u8; 4], pub gpu_combined: [u8; 10], pub temperature_board: i8, pub temperature_core: [i8; 8], pub fan_speed: [i16; 4], pub ram_usage: u32, pub ram_total: u32, pub storage_type: [u32; 4], pub storage_usage: [u32; 4], pub storage_total: [u32; 4], pub link_type: [u32; 6], pub link_tx_rate: [u32; 6], pub link_rx_rate: [u32; 6], pub link_tx_max: [u32; 6], pub link_rx_max: [u32; 6],
}
Expand description

MAVLink ONBOARD_COMPUTER_STATUS message.

The minimum supported MAVLink version is MAVLink 2.

§Description

Hardware status sent by an onboard computer.

§Encoding/Decoding

Message encoding/decoding are provided by implementing core::convert::TryFrom<Payload> for OnboardComputerStatus (encoding) and [IntoPayload] (decoding) traits. These traits are implemented by Message proc macro.

Fields§

§time_usec: u64

MAVLink field time_usec.

Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude of the number.

§uptime: u32

MAVLink field uptime.

Time since system boot.

§type_: u8

MAVLink field type.

Type of the onboard computer: 0: Mission computer primary, 1: Mission computer backup 1, 2: Mission computer backup 2, 3: Compute node, 4-5: Compute spares, 6-9: Payload computers.

§cpu_cores: [u8; 8]

MAVLink field cpu_cores.

CPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused.

§cpu_combined: [u8; 10]

MAVLink field cpu_combined.

Combined CPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused.

§gpu_cores: [u8; 4]

MAVLink field gpu_cores.

GPU usage on the component in percent (100 - idle). A value of UINT8_MAX implies the field is unused.

§gpu_combined: [u8; 10]

MAVLink field gpu_combined.

Combined GPU usage as the last 10 slices of 100 MS (a histogram). This allows to identify spikes in load that max out the system, but only for a short amount of time. A value of UINT8_MAX implies the field is unused.

§temperature_board: i8

MAVLink field temperature_board.

Temperature of the board. A value of INT8_MAX implies the field is unused.

§temperature_core: [i8; 8]

MAVLink field temperature_core.

Temperature of the CPU core. A value of INT8_MAX implies the field is unused.

§fan_speed: [i16; 4]

MAVLink field fan_speed.

Fan speeds. A value of INT16_MAX implies the field is unused.

§ram_usage: u32

MAVLink field ram_usage.

Amount of used RAM on the component system. A value of UINT32_MAX implies the field is unused.

§ram_total: u32

MAVLink field ram_total.

Total amount of RAM on the component system. A value of UINT32_MAX implies the field is unused.

§storage_type: [u32; 4]

MAVLink field storage_type.

Storage type: 0: HDD, 1: SSD, 2: EMMC, 3: SD card (non-removable), 4: SD card (removable). A value of UINT32_MAX implies the field is unused.

§storage_usage: [u32; 4]

MAVLink field storage_usage.

Amount of used storage space on the component system. A value of UINT32_MAX implies the field is unused.

§storage_total: [u32; 4]

MAVLink field storage_total.

Total amount of storage space on the component system. A value of UINT32_MAX implies the field is unused.

§link_type: [u32; 6]

MAVLink field link_type.

Link type: 0-9: UART, 10-19: Wired network, 20-29: Wifi, 30-39: Point-to-point proprietary, 40-49: Mesh proprietary

§link_tx_rate: [u32; 6]

MAVLink field link_tx_rate.

Network traffic from the component system. A value of UINT32_MAX implies the field is unused.

§link_rx_rate: [u32; 6]

MAVLink field link_rx_rate.

Network traffic to the component system. A value of UINT32_MAX implies the field is unused.

§link_tx_max: [u32; 6]

MAVLink field link_tx_max.

Network capacity from the component system. A value of UINT32_MAX implies the field is unused.

§link_rx_max: [u32; 6]

MAVLink field link_rx_max.

Network capacity to the component system. A value of UINT32_MAX implies the field is unused.

Implementations§

Source§

impl OnboardComputerStatus

Source

pub const ID: MessageId = 390u32

MavLink message ID.

Source

pub const fn spec() -> MessageInfo

Returns specification for this message.

Source

pub const fn message_id() -> MessageId

Message ID.

Source

pub const fn crc_extra() -> CrcExtra

Message CRC_EXTRA.

Minimum supported MAVLink version for this message.

Trait Implementations§

Source§

impl Clone for OnboardComputerStatus

Source§

fn clone(&self) -> OnboardComputerStatus

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 Debug for OnboardComputerStatus

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for OnboardComputerStatus

Source§

fn default() -> Self

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

impl<'de> Deserialize<'de> for OnboardComputerStatus

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl From<OnboardComputerStatus> for Common

Source§

fn from(value: OnboardComputerStatus) -> Self

Converts to this type from the input type.
Source§

impl IntoPayload for OnboardComputerStatus

Source§

fn encode(&self, version: MavLinkVersion) -> Result<Payload, SpecError>

Encodes message into MAVLink payload. Read more
Source§

impl MessageSpec for OnboardComputerStatus

Source§

fn id(&self) -> MessageId

MAVLink message ID. Read more
Minimum supported MAVLink protocol version. Read more
Source§

fn crc_extra(&self) -> CrcExtra

Message EXTRA_CRC calculated from message XML definition. Read more
Source§

impl MessageSpecStatic for OnboardComputerStatus

Source§

fn spec() -> MessageInfo

Returns specification for this message.
Source§

fn message_id() -> MessageId

Message ID.
Source§

fn crc_extra() -> CrcExtra

Message CRC_EXTRA.
Minimum supported MAVLink version for this message.
Source§

impl NamedType for OnboardComputerStatus

Source§

fn sid() -> SpectaID

Source§

fn named_data_type( type_map: &mut TypeCollection, generics: &[DataType], ) -> NamedDataType

this is equivalent to Type::inline but returns a NamedDataType instead.
Source§

fn definition_named_data_type(type_map: &mut TypeCollection) -> NamedDataType

this is equivalent to [Type::definition] but returns a NamedDataType instead.
Source§

impl PartialEq for OnboardComputerStatus

Source§

fn eq(&self, other: &OnboardComputerStatus) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for OnboardComputerStatus

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
Source§

impl TryFrom<&Payload> for OnboardComputerStatus

Source§

type Error = SpecError

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

fn try_from(value: &Payload) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl Type for OnboardComputerStatus

Source§

fn inline(type_map: &mut TypeCollection, generics: Generics<'_>) -> DataType

Returns the definition of a type using the provided generics. Read more
Source§

fn reference(type_map: &mut TypeCollection, generics: &[DataType]) -> Reference

Generates a datatype corresponding to a reference to this type, as determined by its category. Getting a reference to a type implies that it should belong in the type map (since it has to be referenced from somewhere), so the output of definition will be put into the type map.
Source§

impl Flatten for OnboardComputerStatus

Source§

impl Message for OnboardComputerStatus

Source§

impl StructuralPartialEq for OnboardComputerStatus

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
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.

Source§

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

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,