Skip to main content

BatteryStatus

Struct BatteryStatus 

Source
pub struct BatteryStatus {
    pub voltage: u16,
    pub connected: bool,
    pub full: bool,
}
Expand description

The battery status info.

Contains only stats that can be accessed from the hardware. It’s responsibility of firefly-runtime to calculate State of Charge and any other metrics it might need.

Fields§

§voltage: u16

The current voltage of the battery.

A healthy li-ion battery voltage ranges from 3.0V fully discharged to 4.2V fully charged at 25°C. However, the range changes with age, temperature, and star alignment (the last one is a joke, probably).

Also, the firefly-hal Device implementation doesn’t define the units in which voltage is returned. it can be volts, microvolts, or anything else. The only promise is that it linearly correlates with voltage.

§connected: bool

If true, the device is connected to a charger.

It indicates that the battery is charging, unless it’s full.

§full: bool

If true, the device is fully charged.

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

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<S> FromSample<S> for S

Source§

fn from_sample_(s: S) -> S

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<F, T> IntoSample<T> for F
where T: FromSample<F>,

Source§

fn into_sample(self) -> T

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> ToSample<U> for T
where U: FromSample<T>,

Source§

fn to_sample_(self) -> U

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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<S, T> Duplex<S> for T
where T: FromSample<S> + ToSample<S>,