TI BLE-Stack for Bluetooth API Documentation  3.03.01.00
Modules | Files | Macros | Functions | Variables
AOA

This module implements the Angle of Arrival (AOA) More...

Modules

 AOA Structures
 

Files

file  AOA.h
 AOA interface.
 

Macros

#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.
 

Functions

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. More...
 
void AOA_cteCapDisable (void)
 This function disables the CTE capture in the rf core. More...
 
void AOA_cteCapEnable (uint8_t cteTime, uint8_t cteScanOvs, uint8_t cteOffset)
 This function enables the CTE capture in the rf core. More...
 
uint8_t AOA_getActiveAnt (void)
 Returns active antenna id. More...
 
void AOA_getPairAngles (void)
 Extract results and estimates an angle between two antennas. More...
 
AoA_IQSampleAOA_getRawSamples (void)
 Returns pointer to raw I/Q samples. More...
 
void AOA_init (AoA_Results_t *aoaResults)
 Initialize AoA for the defined role. More...
 
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. More...
 
void AOA_setupNextRun (void)
 Sets up the next AOA run. More...
 
void AOA_toggleMaker (const uint32_t *in, uint32_t initState, uint32_t len, uint32_t *out)
 Sets the antenna pattern. More...
 

Variables

AoA_AntennaConfig BOOSTXL_AoA_Config_ArrayA1
 Configurations included from first antenna array.
 
AoA_AntennaConfig BOOSTXL_AoA_Config_ArrayA2
 Configurations included from second antenna array.
 
AoA_AntennaResult BOOSTXL_AoA_Result_ArrayA1
 results included from first antenna array
 
AoA_AntennaResult BOOSTXL_AoA_Result_ArrayA2
 results included from second antenna array
 

Detailed Description

This module implements the Angle of Arrival (AOA)

Function Documentation

§ 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()

AoA_IQSample* AOA_getRawSamples ( void  )

Returns pointer to raw I/Q samples.

Returns
Pointer to raw I/Q samples

§ AOA_init()

void AOA_init ( AoA_Results_t aoaResults)

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
© Copyright 1995-2019, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale