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. |