This module implements the Angle of Arrival (AOA)
More...
|
file | AOA.h |
| AOA interface.
|
|
|
#define | AOA_NUM_ANTENNAS 3 |
| Number of antennas in antenna array.
|
|
#define | AOA_PIN(x) (1 << (x&0xff)) |
| AOA_PIN Creates bitmap for antenna array pins.
|
|
This module implements the Angle of Arrival (AOA)
§ 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_getPairAngles()
void AOA_getPairAngles |
( |
void |
| ) |
|
Extract results and estimates an angle between two antennas.
- Returns
- none
§ AOA_getRawSamples()
Returns pointer to raw I/Q samples.
- Returns
- Pointer to raw I/Q samples
§ AOA_init()
Initialize AoA for the defined role.
- Parameters
-
aoaResults | - result structure |
- Returns
- none
§ AOA_postProcess()
uint8_t AOA_postProcess |
( |
int8_t |
rssi, |
|
|
uint8_t |
channel |
|
) |
| |
This function will stop the HW timer that toggles the antennas, get the Rx I/Q samples from RF Core memory (if they exist) and copy them to our memory. Once it's finished it will configure the HW for the next run.
- Parameters
-
rssi | - Last Rx rssi |
channel | - Channel |
- Returns
- status - indicates caller whether the AoA run was successful
§ AOA_setupNextRun()
void AOA_setupNextRun |
( |
void |
| ) |
|
Sets up the next AOA run.
- Returns
- none
§ AOA_toggleMaker()
void AOA_toggleMaker |
( |
const uint32_t * |
in, |
|
|
uint32_t |
initState, |
|
|
uint32_t |
len, |
|
|
uint32_t * |
out |
|
) |
| |
Sets the antenna pattern.
- Parameters
-
in | - antenna pattern |
initState | - initialized or not |
len | - length of in |
out | - result buffer |
- Returns
- none