53 virtual void on_packet(
const std::vector<uint8_t> &packet,
float rssi,
float snr) = 0;
57 public spi::SPIDevice<spi::BIT_ORDER_MSB_FIRST, spi::CLOCK_POLARITY_LOW, spi::CLOCK_PHASE_LEADING,
58 spi::DATA_RATE_8MHZ> {
62 void setup()
override;
102 uint8_t
read_fifo_(uint8_t offset, std::vector<uint8_t> &packet);
103 void write_fifo_(uint8_t offset,
const std::vector<uint8_t> &packet);
104 void write_opcode_(uint8_t opcode, uint8_t *data, uint8_t size);
105 uint8_t
read_opcode_(uint8_t opcode, uint8_t *data, uint8_t size);
108 void call_listeners_(
const std::vector<uint8_t> &packet,
float rssi,
float snr);
BedjetMode mode
BedJet operating mode.
The SPIDevice is what components using the SPI will create.
void set_rx_start(bool rx_start)
void set_deviation(uint32_t deviation)
float get_setup_priority() const override
void set_spreading_factor(uint8_t spreading_factor)
void set_pa_ramp(uint8_t ramp)
void set_rf_switch(bool rf_switch)
uint8_t read_fifo_(uint8_t offset, std::vector< uint8_t > &packet)
void write_opcode_(uint8_t opcode, uint8_t *data, uint8_t size)
void set_sync_value(const std::vector< uint8_t > &sync_value)
std::vector< uint8_t > sync_value_
InternalGPIOPin * busy_pin_
std::vector< SX126xListener * > listeners_
size_t get_max_packet_size()
Trigger< std::vector< uint8_t >, float, float > * get_packet_trigger() const
InternalGPIOPin * rst_pin_
void set_mode_standby(SX126xStandbyMode mode)
void set_payload_length(uint8_t payload_length)
void configure_fsk_ook_()
uint8_t read_opcode_(uint8_t opcode, uint8_t *data, uint8_t size)
void dump_config() override
void set_modulation(uint8_t modulation)
void set_frequency(uint32_t frequency)
void set_tcxo_delay(uint32_t tcxo_delay)
void read_register_(uint16_t reg, uint8_t *data, uint8_t size)
void set_bandwidth(SX126xBw bandwidth)
void write_register_(uint16_t reg, uint8_t *data, uint8_t size)
void set_preamble_detect(uint16_t preamble_detect)
void set_shaping(uint8_t shaping)
void set_dio1_pin(InternalGPIOPin *dio1_pin)
void set_hw_version(const std::string &hw_version)
void set_crc_enable(bool crc_enable)
void set_packet_params_(uint8_t payload_length)
void call_listeners_(const std::vector< uint8_t > &packet, float rssi, float snr)
std::vector< uint8_t > packet_
void set_coding_rate(uint8_t coding_rate)
uint16_t preamble_detect_
void set_pa_power(int8_t power)
void set_preamble_size(uint16_t preamble_size)
void register_listener(SX126xListener *listener)
void set_rst_pin(InternalGPIOPin *rst_pin)
Trigger< std::vector< uint8_t >, float, float > * packet_trigger_
void set_bitrate(uint32_t bitrate)
SX126xError transmit_packet(const std::vector< uint8_t > &packet)
void set_busy_pin(InternalGPIOPin *busy_pin)
InternalGPIOPin * dio1_pin_
uint8_t spreading_factor_
void set_tcxo_voltage(uint8_t tcxo_voltage)
void write_fifo_(uint8_t offset, const std::vector< uint8_t > &packet)
virtual void on_packet(const std::vector< uint8_t > &packet, float rssi, float snr)=0
const float PROCESSOR
For components that use data from sensors like displays.
Providing packet encoding functions for exchanging data with a remote host.