Interface class for SDR frontend baseband configurations. More...
#include <SDRFrontEndConfigurations.hxx>
Public Member Functions | |
virtual | ~SDRFrontEndBasebandConfigurations ()=default |
virtual double | getRxSensitivity ()=0 |
Get the receiver sensitivity. | |
virtual void | setRxSensitivity (double rxSensitivity)=0 |
Set the receiver sensitivity. | |
virtual bool | isRxResampleBypassFIR ()=0 |
Check if FIR filter is bypassed in Rx resampling. | |
virtual void | setRxResampleBypassFIR (bool bypass)=0 |
Set whether to bypass FIR filter in Rx resampling. | |
virtual bool | isTxSplitHighLow ()=0 |
Check if high/low split is enabled for Tx. | |
virtual void | setTxSplitHighLow (bool split)=0 |
Set whether to split high/low for Tx. | |
virtual bool | isRxMergeHighLow ()=0 |
Check if high/low merge is enabled for Rx. | |
virtual void | setRxMergeHighLow (bool merge)=0 |
Set whether to merge high/low for Rx. | |
virtual std::optional< double > | getCarrierFrequencyOffset4TxEncoding ()=0 |
Get the carrier frequency offset for Tx encoding. | |
virtual void | setCarrierFrequencyOffset4TxEncoding (double carrierFrequencyOffset)=0 |
Set the carrier frequency offset for Tx encoding. | |
virtual std::optional< double > | getSamplingFrequencyOffset4TxEncoding ()=0 |
Get the sampling frequency offset for Tx encoding. | |
virtual void | setSamplingFrequencyOffset4TxEncoding (double samplingFrequencyOffset)=0 |
Set the sampling frequency offset for Tx encoding. | |
virtual std::optional< double > | getCarrierFrequencyOffset4RxDecoding ()=0 |
Get the carrier frequency offset for Rx decoding. | |
virtual void | setCarrierFrequencyOffset4RxDecoding (double carrierFrequencyOffset)=0 |
Set the carrier frequency offset for Rx decoding. | |
virtual std::optional< double > | getSamplingFrequencyOffset4RxDecoding ()=0 |
Get the sampling frequency offset for Rx decoding. | |
virtual void | setSamplingFrequencyOffset4RxDecoding (double samplingFrequencyOffset)=0 |
Set the sampling frequency offset for Rx decoding. | |
virtual double | getTxResampleRatio ()=0 |
Get the Tx resampling ratio. | |
virtual void | setTxResampleRatio (double txResampleRatio)=0 |
Set the Tx resampling ratio. | |
virtual double | getRxResampleRatio ()=0 |
Get the Rx resampling ratio. | |
virtual void | setRxResampleRatio (double rxResampleRatio)=0 |
Set the Rx resampling ratio. | |
virtual double | getSDRFrontEndTime ()=0 |
Get the current SDR hardware time. | |
virtual ChannelBandwidthEnum | getRxChannelBandwidthMode ()=0 |
Get the current channel bandwidth mode for Rx. | |
virtual void | setRxChannelBandwidthMode (ChannelBandwidthEnum rxCbw)=0 |
Set the channel bandwidth mode for Rx. | |
virtual void | setTxIQMismatch (double iq_ratio_db, double iq_crosstalk_degree)=0 |
Set I/Q mismatch parameters for Tx. | |
virtual void | setRxIQMismatch (double iq_ratio_db, double iq_crosstalk_degree)=0 |
Set I/Q mismatch parameters for Rx. | |
virtual double | getTxIqRatioDB ()=0 |
Get the I/Q ratio for Tx in dB. | |
virtual double | getTxIqCrossTalkDegree ()=0 |
Get the I/Q crosstalk angle for Tx. | |
virtual double | getRxIqRatioDB ()=0 |
Get the I/Q ratio for Rx in dB. | |
virtual double | getRxIqCrossTalkDegree ()=0 |
Get the I/Q crosstalk angle for Rx. | |
virtual bool | isFullDuplexEnabled ()=0 |
Check if full duplex mode is enabled. | |
virtual void | setFullDuplex (bool enableFullduplex)=0 |
Set full duplex mode. | |
virtual double | getRxOfdmSymbolOffset ()=0 |
Get the Rx OFDM symbol offset. | |
virtual void | setRxOfdmSymbolOffset (double rxOfdmSymbolOffset)=0 |
Set the Rx OFDM symbol offset. | |
virtual double | getNumSamplesSavedBeforeStart ()=0 |
Get the number of samples saved before start. | |
virtual void | getNumSamplesSavedBeforeStart (double numSamplesSavedBeforeStart)=0 |
Set the number of samples saved before start. | |
virtual bool | isReturnBasebandSignals () const =0 |
Check if baseband signals should be returned. | |
virtual bool | useConventionalPacketDetector () const =0 |
Check if conventional packet detector should be used. | |
Interface class for SDR frontend baseband configurations.
This class defines the interface for configuring and controlling the baseband processing aspects of an SDR frontend, including both transmit and receive paths. It provides methods for setting and getting various parameters that affect signal processing, such as sensitivity, frequency offsets, and resampling ratios.
Definition at line 76 of file SDRFrontEndConfigurations.hxx.
|
virtualdefault |
|
pure virtual |
Get the carrier frequency offset for Rx decoding.
Returns the carrier frequency offset used for received signal compensation
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Get the carrier frequency offset for Tx encoding.
Returns the deliberate carrier frequency offset added to transmitted signals
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Get the number of samples saved before start.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set the number of samples saved before start.
numSamplesSavedBeforeStart | Desired number of samples |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Get the current channel bandwidth mode for Rx.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Get the I/Q crosstalk angle for Rx.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Get the I/Q ratio for Rx in dB.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Get the Rx OFDM symbol offset.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Get the Rx resampling ratio.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Get the receiver sensitivity.
Rx sensitivity (in dB) is the lowest threshold that can trigger power-level detection and subsequent packet detection. Higher sensitivity may reject more packets with low SNR, while lower sensitivity may accept more packets but with slower baseband processing rate.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Get the sampling frequency offset for Rx decoding.
Returns the sampling frequency offset used for received signal compensation
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Get the sampling frequency offset for Tx encoding.
Returns the deliberate sampling frequency offset added to transmitted signals
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Get the current SDR hardware time.
Implemented in AbstractSDRFrontEnd, and VirtualSDRFrontEnd.
|
pure virtual |
Get the I/Q crosstalk angle for Tx.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Get the I/Q ratio for Tx in dB.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Get the Tx resampling ratio.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Check if full duplex mode is enabled.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Check if baseband signals should be returned.
|
pure virtual |
Check if high/low merge is enabled for Rx.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Check if FIR filter is bypassed in Rx resampling.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Check if high/low split is enabled for Tx.
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set the carrier frequency offset for Rx decoding.
carrierFrequencyOffset | Desired carrier frequency offset |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set the carrier frequency offset for Tx encoding.
carrierFrequencyOffset | Desired carrier frequency offset |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set full duplex mode.
When enabled, Tx and Rx operate simultaneously, allowing Rx to receive signals transmitted by the Tx path
enableFullduplex | True to enable full duplex, false otherwise |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set the channel bandwidth mode for Rx.
rxCbw | Desired Rx channel bandwidth mode |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set I/Q mismatch parameters for Rx.
iq_ratio_db | Ratio between I and Q components in dB (default 1.0) |
iq_crosstalk_degree | Angle between I and Q components in degrees (default 0.0) |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set whether to merge high/low for Rx.
merge | True to enable high/low merge, false otherwise |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set the Rx OFDM symbol offset.
rxOfdmSymbolOffset | Desired Rx OFDM symbol offset |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set whether to bypass FIR filter in Rx resampling.
bypass | True to bypass FIR filter, false otherwise |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set the Rx resampling ratio.
Used to down-sample received signals from higher hardware sampling rate to Wi-Fi baseband rate (20/40/80/160-MHz)
rxResampleRatio | Desired Rx resampling ratio |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set the receiver sensitivity.
rxSensitivity | New sensitivity value in dB |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set the sampling frequency offset for Rx decoding.
samplingFrequencyOffset | Desired sampling frequency offset |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set the sampling frequency offset for Tx encoding.
samplingFrequencyOffset | Desired sampling frequency offset |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set I/Q mismatch parameters for Tx.
iq_ratio_db | Ratio between I and Q components in dB (default 1.0) |
iq_crosstalk_degree | Angle between I and Q components in degrees (default 0.0) |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set the Tx resampling ratio.
Used to up-sample the generated Tx signal to match higher hardware sampling rate
txResampleRatio | Desired Tx resampling ratio |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Set whether to split high/low for Tx.
split | True to enable high/low split, false otherwise |
Implemented in AbstractSDRFrontEnd.
|
pure virtual |
Check if conventional packet detector should be used.