pub enum Error<SPI, CS> where
    SPI: Transfer<u8> + Write<u8>,
    CS: OutputPin
{
Show 19 variants Spi(Error<SPI, CS>), Fcs, Phy, BufferTooSmall { required_len: usize, }, ReedSolomon, FrameWaitTimeout, Overrun, PreambleDetectionTimeout, SfdTimeout, FrameFilteringRejection, Frame(Error), DelayedSendTooLate, DelayedSendPowerUpWarning, Ssmarshal(Error), InvalidConfiguration, RxNotFinished, StillAsleep, BadRssiCalculation, RxConfigFrameFilteringUnsupported,
}
Expand description

An error that can occur when sending or receiving data

Variants

Spi(Error<SPI, CS>)

Error occured while using SPI bus

Fcs

Receiver FCS error

Phy

PHY header error

BufferTooSmall

Fields

required_len: usize

Indicates how large a buffer would have been required

Buffer too small

ReedSolomon

Receiver Reed Solomon Frame Sync Loss

FrameWaitTimeout

Receiver Frame Wait Timeout

Overrun

Receiver Overrun

PreambleDetectionTimeout

Preamble Detection Timeout

SfdTimeout

Receiver SFD Timeout

FrameFilteringRejection

Frame was rejected because due to automatic frame filtering

It seems that frame filtering is typically handled transparently by the hardware, and filtered frames aren’t usually visible to the driver. However, sometimes a filtered frame bubbles up and disrupts an ongoing receive operation, which then causes this error.

Frame(Error)

Frame could not be decoded

DelayedSendTooLate

A delayed frame could not be sent in time

Please note that the frame was still sent. Replies could still arrive, and if it was a ranging frame, the resulting range measurement will be wrong.

DelayedSendPowerUpWarning

Transmitter could not power up in time for delayed send

The frame was still transmitted, but the first bytes of the preamble were likely corrupted.

Ssmarshal(Error)

An error occured while serializing or deserializing data

InvalidConfiguration

The configuration was not valid. Some combinations of settings are not allowed.

RxNotFinished

The receive operation hasn’t finished yet

StillAsleep

It was expected that the radio would have woken up, but it hasn’t.

BadRssiCalculation

The RSSI was not calculable.

RxConfigFrameFilteringUnsupported

There are issues with frame filtering in double buffer mode. So it’s not supported now.

Trait Implementations

Formats the value using the given formatter. Read more

Converts to this type from the input type.

Converts to this type from the input type.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Casts the value.

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Casts the value.

Casts the value.

Casts the value.

Returns the argument unchanged.

Calls U::from(self).

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

Performs the conversion.

Performs the conversion.

Casts the value.

OverflowingCasts the value.

Should always be Self

Casts the value.

Casts the value.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Casts the value.

UnwrappedCasts the value.

Casts the value.

WrappingCasts the value.