|
Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
|
Data Structures | |
| struct | lora_driver_api |
| Driver Operations LoRa driver operations More... | |
Typedefs | |
| typedef void(* | lora_recv_cb) (const struct device *dev, uint8_t *data, uint16_t size, int16_t rssi, int8_t snr, void *user_data) |
| Callback API for receiving data asynchronously. | |
| typedef void(* | lora_cad_cb) (const struct device *dev, bool activity_detected, void *user_data) |
| Callback API for channel activity detection asynchronously. | |
| typedef int(* | lora_api_config) (const struct device *dev, const struct lora_modem_config *config) |
| Callback API for configuring the LoRa module. | |
| typedef uint32_t(* | lora_api_airtime) (const struct device *dev, uint32_t data_len) |
| Callback API for querying packet airtime. | |
| typedef int(* | lora_api_send) (const struct device *dev, uint8_t *data, uint32_t data_len) |
| Callback API for sending data over LoRa. | |
| typedef int(* | lora_api_send_async) (const struct device *dev, uint8_t *data, uint32_t data_len, struct k_poll_signal *async) |
| Callback API for sending data asynchronously over LoRa. | |
| typedef int(* | lora_api_recv) (const struct device *dev, uint8_t *data, uint8_t size, k_timeout_t timeout, int16_t *rssi, int8_t *snr) |
| Callback API for receiving data over LoRa. | |
| typedef int(* | lora_api_recv_async) (const struct device *dev, lora_recv_cb cb, void *user_data) |
| Callback API for receiving data asynchronously over LoRa. | |
| typedef int(* | lora_api_cad) (const struct device *dev, k_timeout_t timeout) |
| Callback API for channel activity detection. | |
| typedef int(* | lora_api_cad_async) (const struct device *dev, lora_cad_cb cb, void *user_data) |
| Callback API for channel activity detection asynchronously. | |
| typedef int(* | lora_api_recv_duty_cycle) (const struct device *dev, k_timeout_t rx_period, k_timeout_t sleep_period, uint8_t *data, uint8_t size, k_timeout_t timeout, int16_t *rssi, int8_t *snr) |
| Callback API for blocking receive with duty cycling. | |
| typedef int(* | lora_api_recv_duty_cycle_async) (const struct device *dev, k_timeout_t rx_period, k_timeout_t sleep_period, lora_recv_cb cb, void *user_data) |
| Callback API for receive duty cycling (wake-on-radio). | |
| typedef int(* | lora_api_test_cw) (const struct device *dev, uint32_t frequency, int8_t tx_power, uint16_t duration) |
| Callback API for transmitting a continuous wave. | |
This group contains the API type definitions, callback signatures, and other helpers required to implement a LoRa driver.
#include <zephyr/drivers/lora.h>
Callback API for querying packet airtime.
| typedef int(* lora_api_cad) (const struct device *dev, k_timeout_t timeout) |
#include <zephyr/drivers/lora.h>
Callback API for channel activity detection.
| typedef int(* lora_api_cad_async) (const struct device *dev, lora_cad_cb cb, void *user_data) |
#include <zephyr/drivers/lora.h>
Callback API for channel activity detection asynchronously.
| typedef int(* lora_api_config) (const struct device *dev, const struct lora_modem_config *config) |
#include <zephyr/drivers/lora.h>
Callback API for configuring the LoRa module.
| typedef int(* lora_api_recv) (const struct device *dev, uint8_t *data, uint8_t size, k_timeout_t timeout, int16_t *rssi, int8_t *snr) |
#include <zephyr/drivers/lora.h>
Callback API for receiving data over LoRa.
| typedef int(* lora_api_recv_async) (const struct device *dev, lora_recv_cb cb, void *user_data) |
#include <zephyr/drivers/lora.h>
Callback API for receiving data asynchronously over LoRa.
| dev | Modem to receive data on. |
| cb | Callback to run on receiving data. |
| typedef int(* lora_api_recv_duty_cycle) (const struct device *dev, k_timeout_t rx_period, k_timeout_t sleep_period, uint8_t *data, uint8_t size, k_timeout_t timeout, int16_t *rssi, int8_t *snr) |
#include <zephyr/drivers/lora.h>
Callback API for blocking receive with duty cycling.
| typedef int(* lora_api_recv_duty_cycle_async) (const struct device *dev, k_timeout_t rx_period, k_timeout_t sleep_period, lora_recv_cb cb, void *user_data) |
#include <zephyr/drivers/lora.h>
Callback API for receive duty cycling (wake-on-radio).
#include <zephyr/drivers/lora.h>
Callback API for sending data over LoRa.
| typedef int(* lora_api_send_async) (const struct device *dev, uint8_t *data, uint32_t data_len, struct k_poll_signal *async) |
#include <zephyr/drivers/lora.h>
Callback API for sending data asynchronously over LoRa.
| typedef int(* lora_api_test_cw) (const struct device *dev, uint32_t frequency, int8_t tx_power, uint16_t duration) |
#include <zephyr/drivers/lora.h>
Callback API for transmitting a continuous wave.
#include <zephyr/drivers/lora.h>
Callback API for channel activity detection asynchronously.
| dev | LoRa device |
| activity_detected | true if LoRa activity was detected on the channel |
| user_data | User data passed to lora_cad_async |
| typedef void(* lora_recv_cb) (const struct device *dev, uint8_t *data, uint16_t size, int16_t rssi, int8_t snr, void *user_data) |
#include <zephyr/drivers/lora.h>
Callback API for receiving data asynchronously.