pub struct LocalStats {Show 15 fields
pub uptime_seconds: u32,
pub channel_utilization: f32,
pub air_util_tx: f32,
pub num_packets_tx: u32,
pub num_packets_rx: u32,
pub num_packets_rx_bad: u32,
pub num_online_nodes: u32,
pub num_total_nodes: u32,
pub num_rx_dupe: u32,
pub num_tx_relay: u32,
pub num_tx_relay_canceled: u32,
pub heap_total_bytes: u32,
pub heap_free_bytes: u32,
pub num_tx_dropped: u32,
pub noise_floor: i32,
}Expand description
Local device mesh statistics
Fields§
§uptime_seconds: u32How long the device has been running since the last reboot (in seconds)
channel_utilization: f32Utilization for the current channel, including well formed TX, RX and malformed RX (aka noise).
air_util_tx: f32Percent of airtime for transmission used within the last hour.
num_packets_tx: u32Number of packets sent
num_packets_rx: u32Number of packets received (both good and bad)
num_packets_rx_bad: u32Number of packets received that are malformed or violate the protocol
num_online_nodes: u32Number of nodes online (in the past 2 hours)
num_total_nodes: u32Number of nodes total
num_rx_dupe: u32Number of received packets that were duplicates (due to multiple nodes relaying). If this number is high, there are nodes in the mesh relaying packets when it’s unnecessary, for example due to the ROUTER/REPEATER role.
num_tx_relay: u32Number of packets we transmitted that were a relay for others (not originating from ourselves).
num_tx_relay_canceled: u32Number of times we canceled a packet to be relayed, because someone else did it before us. This will always be zero for ROUTERs/REPEATERs. If this number is high, some other node(s) is/are relaying faster than you.
heap_total_bytes: u32Number of bytes used in the heap
heap_free_bytes: u32Number of bytes free in the heap
num_tx_dropped: u32Number of packets that were dropped because the transmit queue was full.
noise_floor: i32Noise floor value measured in dBm
Trait Implementations§
Source§impl Clone for LocalStats
impl Clone for LocalStats
Source§fn clone(&self) -> LocalStats
fn clone(&self) -> LocalStats
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LocalStats
impl Debug for LocalStats
Source§impl Default for LocalStats
impl Default for LocalStats
Source§impl<'de> Deserialize<'de> for LocalStats
impl<'de> Deserialize<'de> for LocalStats
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Message for LocalStats
impl Message for LocalStats
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.Source§impl PartialEq for LocalStats
impl PartialEq for LocalStats
Source§fn eq(&self, other: &LocalStats) -> bool
fn eq(&self, other: &LocalStats) -> bool
self and other values to be equal, and is used by ==.