This module implements the Angle of Arrival (AOA)
More...
|
file | AOA.h |
| AOA interface.
|
|
|
#define | ANT1 (28) |
|
#define | ANT2 (29) |
|
#define | ANT3 (30) |
|
#define | ANT_ARRAY (27) |
|
#define | ANT_ARRAY_1 1 |
|
#define | ANT_ARRAY_2 2 |
|
#define | AOA_NUM_ANTENNAS 3 |
| Number of antennas in antenna array.
|
|
#define | AOA_PIN(x) (1 << (x&0xff)) |
| Relevent only for RTLS Passive.
|
|
#define | AOA_RES_MAX_CTE_TIME 20 |
| CTE Time at maximum resolution.
|
|
#define | AOA_RES_MAX_SIZE 512 |
| Relevent only for RTLS Passive. More...
|
|
|
enum | AoA_IQSampleState { SAMPLES_NOT_READY,
SAMPLES_NOT_VALID,
SAMPLES_READY
} |
| IQ Sample state - relevant for Passive.
|
|
This module implements the Angle of Arrival (AOA)
§ AOA_RES_MAX_SIZE
#define AOA_RES_MAX_SIZE 512 |
Relevent only for RTLS Passive.
Data Size at maximum resolution
§ AOA_calcNumOfCteSamples()
uint16_t AOA_calcNumOfCteSamples |
( |
uint8_t |
cteTime, |
|
|
uint8_t |
cteScanOvs, |
|
|
uint8_t |
cteOffset |
|
) |
| |
This function calculate the number of IQ samples based on the cte parameters from the CTEInfo header and our patch params.
- Parameters
-
cteTime | - CTEInfo parameter defined in spec |
cteScanOvs | - used to enable CTE capturing and set the sampling rate in the IQ buffer |
cteOffset | - number of microseconds from the beginning of the tone until the sampling starts |
- Returns
- uint16_t - The number of IQ samples to process
§ AOA_cteCapDisable()
void AOA_cteCapDisable |
( |
void |
| ) |
|
This function disables the CTE capture in the rf core.
- Returns
- None
§ AOA_cteCapEnable()
void AOA_cteCapEnable |
( |
uint8_t |
cteTime, |
|
|
uint8_t |
cteScanOvs, |
|
|
uint8_t |
cteOffset |
|
) |
| |
This function enables the CTE capture in the rf core.
- Parameters
-
cteTime | - CTETime parameter defined in spec |
cteScanOvs | - used to enable CTE capturing and set the sampling rate in the IQ buffer |
cteOffset | - number of microseconds from the beginning of the tone until the sampling starts |
- Returns
- None
§ AOA_getActiveAnt()
uint8_t AOA_getActiveAnt |
( |
void |
| ) |
|
Returns active antenna id.
- Returns
- Pointer to raw I/Q samples
§ AOA_getRawSamples()
Returns pointer to raw I/Q samples.
- Returns
- Pointer to raw I/Q samples
§ AOA_getSampleState()
Returns active antenna id.
- Returns
- Pointer to Sample State
§ AOA_init()
Initialize AoA for the defined role.
- Parameters
-
aoaResults | - result structure |
- Returns
- none
§ AOA_postProcess()
void AOA_postProcess |
( |
int8_t |
rssi, |
|
|
uint8_t |
channel, |
|
|
AoA_IQSample * |
samplesBuff |
|
) |
| |
This function will update the final result report with rssi and channel For RTLS Passive it will also send a command to enable RF RAM so we can read the samples that we captured (if any)
- Parameters
-
rssi | - rssi to be stamped on final result |
channel | - channel to be stamped on final result |
samplesBuff | - buffer to copy samples to |
§ AOA_setupNextRun()
void AOA_setupNextRun |
( |
uint8_t |
antArraySwitchIo | ) |
|
Sets up the next AOA run.
- Parameters
-
antArraySwitchIo | - GPIO used for antenna array switching |
- Returns
- none