SessionConfig

Struct SessionConfig 

Source
pub struct SessionConfig {
Show 16 fields pub dev_version: &'static str, pub default_device_name: &'static str, pub mtu: u16, pub sync_word: u16, pub min_tx_power_dbm: i8, pub max_tx_power_dbm: i8, pub freq_khz_min: u32, pub freq_khz_max: u32, pub defaults: RadioSettings, pub default_duty_limit: u16, pub duty: &'static DutyLedger, pub battery: Option<BatteryFields>, pub alert: Option<AlertConfig>, pub time: Option<TimeConfig>, pub gnss: Option<GnssConfig>, pub illuminance: bool,
}
Expand description

Fixed properties of the device this session runs on.

Fields§

§dev_version: &'static str

PROP_DEV_VERSION string (without NUL terminator).

§default_device_name: &'static str

Factory/post-reset value of PROP_DEV_NAME.

§mtu: u16

PROP_PHY_MTU; must not exceed MAX_MTU.

§sync_word: u16

The only sync word this firmware can use; PROP_PHY_LORA_SW sets must match it (v0 limitation).

§min_tx_power_dbm: i8

Lowest transmit power the radio supports, in dBm.

§max_tx_power_dbm: i8

Highest transmit power the radio supports, in dBm.

§freq_khz_min: u32

Tunable frequency range in kHz, inclusive.

§freq_khz_max: u32§defaults: RadioSettings

Post-reset radio settings. enabled is forced off on reset per the spec regardless of what this carries.

§default_duty_limit: u16

Post-reset PROP_PHY_DUTY_LIMIT.

§duty: &'static DutyLedger

The shared duty ledger. The session owns the limit’s lifecycle and records its own transmissions here, but the ledger is consulted by every radio client on the device (the device node’s TX path draws from the same budget), so PROP_PHY_DUTY_NOW reports the combined figure and PROP_PHY_DUTY_LIMIT bounds the combined airtime.

§battery: Option<BatteryFields>

None: not battery powered; CAP_BATTERY is absent and PROP_BATTERY is unknown. Some: the capability is advertised and the fields say which measurements the platform reports.

§alert: Option<AlertConfig>

None: the board has no way to make itself conspicuous; CAP_ALERT is absent and PROP_ALERT is unknown. Some: the capability is advertised and the config carries the deadline.

§time: Option<TimeConfig>

None: the board keeps no wall clock; CAP_TIME is absent and PROP_TIME / PROP_TZ_OFFSET are unknown.

§gnss: Option<GnssConfig>

None: no GNSS receiver; CAP_GNSS is absent and the positioning properties are unknown. Meaningful only alongside time — see GnssConfig.

§illuminance: bool

Whether an ambient light sensor is fitted. When set, CAP_ILLUMINANCE is advertised and PROP_ILLUMINANCE samples on every read; otherwise the property is unknown.

Trait Implementations§

Source§

impl Clone for SessionConfig

Source§

fn clone(&self) -> SessionConfig

Returns a duplicate of the value. Read more
1.0.0§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for SessionConfig

Source§

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

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

impl Copy for SessionConfig

Auto Trait Implementations§

Blanket Implementations§

§

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

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

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

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

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

§

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

Mutably borrows from an owned value. Read more
§

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

§

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> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

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

§

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> Same for T

Source§

type Output = T

Should always be Self
§

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

§

type Owned = T

The resulting type after obtaining ownership.
§

fn to_owned(&self) -> T

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

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

Uses borrowed data to replace owned data, usually by cloning. Read more
§

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

§

type Error = Infallible

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

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

Performs the conversion.
§

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

§

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

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

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

Performs the conversion.