esp-sdr-zephyr
Raw I/Q receive and transmit on the ESP32-S3/C6 Wi-Fi radio, for Zephyr
Loading...
Searching...
No Matches
esp_sdr.h File Reference

ESP-SDR: raw I/Q receive and transmit on the ESP32-S3 Wi-Fi radio. More...

#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include <esp_sdr/esp_sdr_rx.h>
#include <esp_sdr/esp_sdr_tx.h>

Go to the source code of this file.

Data Structures

struct  esp_sdr_iq16
struct  esp_sdr_stats

Macros

#define ESP_SDR_FREQ_MIN_MHZ   100U
#define ESP_SDR_SAMPLES_MIN   256U
#define ESP_SDR_BANKS   2
#define ESP_SDR_HIGH_RAM   __attribute__((section(".esp_sdr_high")))
#define ESP_SDR_HIGH_BUF_DEFINE(type, name, dims, align)
#define ESP_SDR_HIGH_STACK_DEFINE(name, size)

Enumerations

enum  esp_sdr_rate

Functions

int esp_sdr_init (void)
 Bring the radio up and tune it to the default frequency.
int esp_sdr_set_freq (uint32_t mhz)
 Tune the LO, shared by receive and transmit.
uint32_t esp_sdr_get_freq (void)
int esp_sdr_set_freq_offset (int32_t khz)
 Set a PLL offset in kHz and retune.
int esp_sdr_set_channel_bw (unsigned int cbw)
 Set the channel bandwidth flag of the vendor tuning call (experimental).
void esp_sdr_get_stats (struct esp_sdr_stats *stats)
int esp_sdr_bbtop_read (unsigned int reg)
 Read or write a register of the analog baseband (I2C block 0x67), for characterization.
int esp_sdr_set_turnaround (uint32_t settle_us, bool retune)
 Set the front end turnaround between transmit and receive.

Detailed Description

ESP-SDR: raw I/Q receive and transmit on the ESP32-S3 Wi-Fi radio.

Zephyr port of ESPARGOS esp-sdr, extended with transmit. Both directions share the radio, its LO and the dump engine's SRAM banks: one user at a time, all calls may sleep. Receive: esp_sdr_rx.h; transmit: esp_sdr_tx.h (both included here).