Driver for the sx1280 LoRa radio device. More...
Driver for the sx1280 LoRa radio device.
Files | |
| file | sx1280.h | 
| file | sx1280_constants.h | 
| Internal addresses, registers and constants.  | |
| file | sx1280_netdev.h | 
| Netdev driver definitions for LoRa SX1280 Driver driver.  | |
| file | sx1280_params.h | 
| Default configuration.  | |
Data Structures | |
| struct | sx1280_params_t | 
| Device initialization parameters.  More... | |
| struct | sx1280 | 
| Device descriptor for the driver.  More... | |
Typedefs | |
| typedef struct sx1280 | sx1280_t | 
Functions | |
| void | sx1280_setup (sx1280_t *dev, const sx1280_params_t *params, uint8_t index) | 
| Setup the radio device.  More... | |
| int | sx1280_init (sx1280_t *dev) | 
| Initialize the given device.  More... | |
| uint32_t | sx1280_get_channel (const sx1280_t *dev) | 
| Gets the channel RF frequency.  More... | |
| uint32_t | sx1280_random (const sx1280_t *dev) | 
| Gets a random number.  More... | |
| void | sx1280_set_channel (sx1280_t *dev, uint32_t freq) | 
| Sets the channel RF frequency.  More... | |
| uint32_t | sx1280_get_bandwidth (const sx1280_t *dev) | 
| Gets the LoRa bandwidth.  More... | |
| void | sx1280_set_bandwidth (sx1280_t *dev, uint16_t bandwidth) | 
| Sets the LoRa bandwidth.  More... | |
| uint8_t | sx1280_get_spreading_factor (const sx1280_t *dev) | 
| Gets the LoRa spreading factor.  More... | |
| void | sx1280_set_spreading_factor (sx1280_t *dev, uint8_t sf) | 
| Sets the LoRa spreading factor.  More... | |
| uint8_t | sx1280_get_coding_rate (const sx1280_t *dev) | 
| Gets the LoRa coding rate.  More... | |
| void | sx1280_set_coding_rate (sx1280_t *dev, uint8_t cr) | 
| Sets the LoRa coding rate.  More... | |
| uint8_t | sx1280_get_lora_payload_length (const sx1280_t *dev) | 
| Gets the payload length.  More... | |
| void | sx1280_set_lora_payload_length (sx1280_t *dev, uint8_t len) | 
| Sets the payload length.  More... | |
| bool | sx1280_get_lora_crc (const sx1280_t *dev) | 
| Checks if CRC verification mode is enabled.  More... | |
| void | sx1280_set_lora_crc (sx1280_t *dev, bool crc) | 
| Enable/Disable CRC verification mode.  More... | |
| bool | sx1280_get_lora_implicit_header (const sx1280_t *dev) | 
| Gets the LoRa implicit header mode.  More... | |
| void | sx1280_set_lora_implicit_header (sx1280_t *dev, bool mode) | 
| Sets LoRa implicit header mode.  More... | |
| uint16_t | sx1280_get_lora_preamble_length (const sx1280_t *dev) | 
| Gets the LoRa preamble length.  More... | |
| void | sx1280_set_lora_preamble_length (sx1280_t *dev, uint16_t preamble) | 
| Sets the LoRa preamble length.  More... | |
| bool | sx1280_get_lora_iq_invert (const sx1280_t *dev) | 
| Checks if the LoRa inverted IQ mode is enabled/disabled.  More... | |
| void | sx1280_set_lora_iq_invert (sx1280_t *dev, bool iq_invert) | 
| Enable/disable the LoRa IQ inverted mode.  More... | |
SX1280 device default configuration | |
| #define | SX1280_CHANNEL_DEFAULT (2403000000UL) | 
| Default channel frequency, 2403MHz.  | |
| #define | SX1280_RADIO_TX_POWER (SX1280_PWR_MAX) | 
| Radio power in dBm.  | |
| uint32_t sx1280_get_bandwidth | ( | const sx1280_t * | dev | ) | 
Gets the LoRa bandwidth.
| [in] | dev | Device descriptor of the driver | 
| uint32_t sx1280_get_channel | ( | const sx1280_t * | dev | ) | 
Gets the channel RF frequency.
| [in] | dev | Device descriptor of the driver | 
| uint8_t sx1280_get_coding_rate | ( | const sx1280_t * | dev | ) | 
Gets the LoRa coding rate.
| [in] | dev | Device descriptor of the driver | 
| bool sx1280_get_lora_crc | ( | const sx1280_t * | dev | ) | 
Checks if CRC verification mode is enabled.
| [in] | dev | Device descriptor of the driver | 
| bool sx1280_get_lora_implicit_header | ( | const sx1280_t * | dev | ) | 
Gets the LoRa implicit header mode.
| [in] | dev | Device descriptor of the driver | 
| bool sx1280_get_lora_iq_invert | ( | const sx1280_t * | dev | ) | 
Checks if the LoRa inverted IQ mode is enabled/disabled.
| [in] | dev | Device descriptor of the driver | 
| uint8_t sx1280_get_lora_payload_length | ( | const sx1280_t * | dev | ) | 
Gets the payload length.
| [in] | dev | Device descriptor of the driver | 
| uint16_t sx1280_get_lora_preamble_length | ( | const sx1280_t * | dev | ) | 
Gets the LoRa preamble length.
| [in] | dev | Device descriptor of the driver | 
| uint8_t sx1280_get_spreading_factor | ( | const sx1280_t * | dev | ) | 
Gets the LoRa spreading factor.
| [in] | dev | Device descriptor of the driver | 
| int sx1280_init | ( | sx1280_t * | dev | ) | 
Initialize the given device.
| [in,out] | dev | Device descriptor of the driver | 
| uint32_t sx1280_random | ( | const sx1280_t * | dev | ) | 
Gets a random number.
| [in] | dev | Device descriptor of the driver | 
| void sx1280_set_bandwidth | ( | sx1280_t * | dev, | 
| uint16_t | bandwidth | ||
| ) | 
Sets the LoRa bandwidth.
| [in] | dev | Device descriptor of the driver | 
| [in] | bandwidth | The new bandwidth | 
| void sx1280_set_channel | ( | sx1280_t * | dev, | 
| uint32_t | freq | ||
| ) | 
Sets the channel RF frequency.
| [in] | dev | Device descriptor of the driver | 
| [in] | freq | Channel RF frequency | 
| void sx1280_set_coding_rate | ( | sx1280_t * | dev, | 
| uint8_t | cr | ||
| ) | 
Sets the LoRa coding rate.
| [in] | dev | Device descriptor of the driver | 
| [in] | cr | The LoRa coding rate | 
| void sx1280_set_lora_crc | ( | sx1280_t * | dev, | 
| bool | crc | ||
| ) | 
Enable/Disable CRC verification mode.
| [in] | dev | Device descriptor of the driver | 
| [in] | crc | The CRC check mode | 
| void sx1280_set_lora_implicit_header | ( | sx1280_t * | dev, | 
| bool | mode | ||
| ) | 
Sets LoRa implicit header mode.
| [in] | dev | Device descriptor of the driver | 
| [in] | mode | The header mode | 
| void sx1280_set_lora_iq_invert | ( | sx1280_t * | dev, | 
| bool | iq_invert | ||
| ) | 
Enable/disable the LoRa IQ inverted mode.
| [in] | dev | Device descriptor of the driver | 
| [in] | iq_invert | The LoRa IQ inverted mode | 
| void sx1280_set_lora_payload_length | ( | sx1280_t * | dev, | 
| uint8_t | len | ||
| ) | 
Sets the payload length.
| [in] | dev | Device descriptor of the driver | 
| [in] | len | The payload len | 
| void sx1280_set_lora_preamble_length | ( | sx1280_t * | dev, | 
| uint16_t | preamble | ||
| ) | 
Sets the LoRa preamble length.
| [in] | dev | Device descriptor of the driver | 
| [in] | preamble | The LoRa preamble length | 
| void sx1280_set_spreading_factor | ( | sx1280_t * | dev, | 
| uint8_t | sf | ||
| ) | 
Sets the LoRa spreading factor.
| [in] | dev | Device descriptor of the driver | 
| [in] | sf | The spreading factor | 
| void sx1280_setup | ( | sx1280_t * | dev, | 
| const sx1280_params_t * | params, | ||
| uint8_t | index | ||
| ) | 
Setup the radio device.
| [in] | dev | Device descriptor | 
| [in] | params | Parameters for device initialization | 
| [in] | index | Index of params in a global parameter struct array. If initialized manually, pass a unique identifier instead.  |