pub trait InterfaceVariant {
    // Required methods
    fn set_board_type(&mut self, board_type: BoardType);
    async fn set_nss_low(&mut self) -> Result<(), RadioError>;
    async fn set_nss_high(&mut self) -> Result<(), RadioError>;
    async fn reset(
        &mut self,
        delay: &mut impl DelayUs
    ) -> Result<(), RadioError>;
    async fn wait_on_busy(&mut self) -> Result<(), RadioError>;
    async fn await_irq(&mut self) -> Result<(), RadioError>;
    async fn enable_rf_switch_rx(&mut self) -> Result<(), RadioError>;
    async fn enable_rf_switch_tx(&mut self) -> Result<(), RadioError>;
    async fn disable_rf_switch(&mut self) -> Result<(), RadioError>;
}
Expand description

Functions implemented for an embedded framework for an MCU/LoRa chip combination to allow this crate to control the LoRa chip.

Required Methods§

source

fn set_board_type(&mut self, board_type: BoardType)

Set the LoRa board type

source

async fn set_nss_low(&mut self) -> Result<(), RadioError>

Select the LoRa chip for an operation

source

async fn set_nss_high(&mut self) -> Result<(), RadioError>

De-select the LoRa chip after an operation

source

async fn reset(&mut self, delay: &mut impl DelayUs) -> Result<(), RadioError>

Reset the LoRa chip

source

async fn wait_on_busy(&mut self) -> Result<(), RadioError>

Wait for the LoRa chip to become available for an operation

source

async fn await_irq(&mut self) -> Result<(), RadioError>

Wait for the LoRa chip to indicate an event has occurred

source

async fn enable_rf_switch_rx(&mut self) -> Result<(), RadioError>

Enable an antenna used for receive operations, disabling other antennas

source

async fn enable_rf_switch_tx(&mut self) -> Result<(), RadioError>

Enable an antenna used for send operations, disabling other antennas

source

async fn disable_rf_switch(&mut self) -> Result<(), RadioError>

Disable all antennas

Implementors§