38 #include <ti/drivers/PIN.h> 39 #include "ble_user_config.h" 57 #define RTLSSRV_CTE_SAMPLING_NOT_INIT LL_CTE_SAMPLING_NOT_INIT 59 #define RTLSSRV_CTE_SAMPLING_ENABLE LL_CTE_SAMPLING_ENABLE 60 #define RTLSSRV_CTE_SAMPLING_DISABLE LL_CTE_SAMPLING_DISABLE 62 #define RTLSSRV_CTE_SAMPLE_SLOT_1US LL_CTE_SAMPLE_SLOT_1US 64 #define RTLSSRV_CTE_SAMPLE_SLOT_2US LL_CTE_SAMPLE_SLOT_2US 66 #define RTLSSRV_CTE_SAMPLE_RATE_1US_AOD_TX LL_CTE_SAMPLE_RATE_1US_AOD_TX 68 #define RTLSSRV_CTE_SAMPLE_RATE_1US_AOD_RX LL_CTE_SAMPLE_RATE_1US_AOD_RX 69 #define RTLSSRV_CTE_SAMPLE_RATE_1US_AOA_RX LL_CTE_SAMPLE_RATE_1US_AOA_RX 71 #define RTLSSRV_CTE_TYPE_AOA LL_CTE_TYPE_AOA 74 #define RTLSSRV_CTE_SAMPLE_RATE_1MHZ CTE_SAMPLING_CONFIG_1MHZ 76 #define RTLSSRV_CTE_SAMPLE_RATE_2MHZ CTE_SAMPLING_CONFIG_2MHZ 77 #define RTLSSRV_CTE_SAMPLE_RATE_3MHZ CTE_SAMPLING_CONFIG_3MHZ 78 #define RTLSSRV_CTE_SAMPLE_RATE_4MHZ CTE_SAMPLING_CONFIG_4MHZ 80 #define RTLSSRV_CTE_SAMPLE_SIZE_8BITS LL_CTE_SAMPLE_SIZE_8BITS 82 #define RTLSSRV_CTE_SAMPLE_SIZE_16BITS LL_CTE_SAMPLE_SIZE_16BITS 84 #define RTLSSRV_CTE_SAMPLE_CONTROL_RF_DEFAULT_FILTERING CTE_SAMPLING_CONTROL_DEFAULT_FILTERING 86 #define RTLSSRV_CTE_SAMPLE_CONTROL_RF_RAW_NO_FILTERING CTE_SAMPLING_CONTROL_RF_RAW_NO_FILTERING 89 #define RTLSSRV_CL_CTE_ANTENNA_LIST_MIN_LENGTH LL_CTE_ANTENNA_LIST_MIN_LENGTH 90 #define RTLSSRV_CL_CTE_ANTENNA_LIST_MAX_LENGTH LL_CTE_ANTENNA_LIST_MAX_LENGTH 94 #define RTLSSRV_CL_CTE_MIN_LEN LL_CTE_MIN_LEN 95 #define RTLSSRV_CL_CTE_MAX_LEN LL_CTE_MAX_LEN 99 #define RTLSSRV_CL_CTE_MIN_COUNT LL_CTE_COUNT_MIN 100 #define RTLSSRV_CL_CTE_MAX_COUNT LL_CTE_COUNT_MAX 104 #define RTLSSRV_SYNC_HANDLE_MASK 0x1000 105 #define RTLSSRV_REVERSE_SYNC_HANDLE 0x0FFF 122 #define RTLSSRV_CONNECTION_CTE_IQ_REPORT_EVT 1 128 #define RTLSSRV_ANTENNA_INFORMATION_EVT 2 133 #define RTLSSRV_CTE_REQUEST_FAILED_EVT 3 138 #define RTLSSRV_ERROR_EVT 4 143 #define RTLSSRV_CL_CTE_EVT 5 149 #define RTLSSRV_READ_PERIODIC_LIST_SIZE_EVT 6 155 #define RTLSSRV_SYNC_EST_EVT 7 161 #define RTLSSRV_SYNC_LOST_EVT 8 167 #define RTLSSRV_PERIODIC_ADV_RPT 9 173 #define RTLSSRV_CL_CTE_IQ_REPORT_EVT 10 179 #define RTLSSRV_PERIODIC_ADV_TERMINATE_SYNC 11 185 #define RTLSSRV_CL_AOA_ENABLE_EVT 12 198 #define RTLSSRV_CONN_HANDLE_INVALID 0x02 199 #define RTLSSRV_OUT_OF_MEMORY 0x07 200 #define RTLSSRV_COMMAND_DISALLOWED 0x0C 201 #define RTLSSRV_ERROR_DUE_TO_LIMITED_RESOURCES 0x0D 202 #define RTLSSRV_FEATURE_NOT_SUPPORTED 0x11 203 #define RTLSSRV_BAD_PARAMETER 0x12 204 #define RTLSSRV_REMOTE_FEATURE_NOT_SUPPORTED 0x1A 205 #define RTLSSRV_UNKNOWN_ADVERTISING_IDENTIFIER 0x42 217 #define RTLSSRV_SET_CONNECTION_CTE_RECEIVE_PARAMS 0x2054 218 #define RTLSSRV_SET_CONNECTION_CTE_TRANSMIT_PARAMS 0x2055 219 #define RTLSSRV_SET_CONNECTION_CTE_REQUEST_ENABLE 0x2056 220 #define RTLSSRV_SET_CONNECTION_CTE_RESPONSE_ENABLE 0x2057 221 #define RTLSSRV_SET_CL_CTE_TRANSMIT_PARAMS 0x2051 222 #define RTLSSRV_SET_CL_CTE_TRANSMIT_ENABLE 0x2052 223 #define RTLSSRV_SET_CL_IQ_SAMPLING_ENABLE 0x2053 325 uint8_t advAddress[6];
426 uint8_t samplingEnable,
427 uint8_t slotDurations,
506 uint8_t sampleRate1M,
507 uint8_t sampleSize1M,
508 uint8_t sampleRate2M,
509 uint8_t sampleSize2M,
604 uint8_t slotDuration,
605 uint8_t maxSampleCte,
607 uint8_t pAntPattern[] );
uint8_t advClockAccuracy
Accuracy of the periodic advertiser's clock: 0x00 - 500 ppm 0x01 - 250 ppm 0x02 - 150 ppm 0x03 - ...
Definition: rtls_srv_api.h:328
uint16_t sampleCount
number of samples
Definition: rtls_srv_api.h:250
uint8_t slotDuration
sampling slot 1us or 2us
Definition: rtls_srv_api.h:266
uint8_t slotDuration
sampling slot 1us or 2us
Definition: rtls_srv_api.h:247
LE CTE Antenna Information Event RTLSSRV_ANTENNA_INFORMATION_EVT.
Definition: rtls_srv_api.h:279
bStatus_t RTLSSrv_setCteSampleAccuracy(uint16_t handle, uint8_t sampleRate1M, uint8_t sampleSize1M, uint8_t sampleRate2M, uint8_t sampleSize2M, uint8_t sampleCtrl)
uint16_t errCause
subEvt RTLS Services error codes
Definition: rtls_srv_api.h:299
uint8_t maxCteLen
maximum cte length supported by the controller
Definition: rtls_srv_api.h:284
Periodic advertising sync lost event.
Definition: rtls_srv_api.h:332
uint8_t sampleSize
sample size: 8 or 16 bit samples
Definition: rtls_srv_api.h:268
uint8_t cteType
cte type
Definition: rtls_srv_api.h:246
uint8_t status
packet status (success or CRC error)
Definition: rtls_srv_api.h:248
uint16_t rssi
current rssi
Definition: rtls_srv_api.h:263
uint16_t syncHandle
sync handle
Definition: rtls_srv_api.h:261
uint8_t opcode
RTLS event opcode.
Definition: rtls_srv_api.h:334
uint8_t opcode
RTLS event opcode.
Definition: rtls_srv_api.h:341
uint8_t numAnt
number of antennas we are using
Definition: rtls_srv_api.h:254
uint16_t periodicAdvInt
Periodic advertising interval Range: 0x0006 to 0xFFFF. Time = N * 1.25 ms (Time Range: 7...
Definition: rtls_srv_api.h:327
uint16_t syncHandle
Handle identifying the periodic advertising train.
Definition: rtls_srv_api.h:314
uint8_t phy
current phy
Definition: rtls_srv_api.h:242
uint8_t status
Event status.
Definition: rtls_srv_api.h:313
uint8_t maxSwitchPatternLen
maximum size of switch pattern supported by the controller
Definition: rtls_srv_api.h:283
bStatus_t RTLSSrv_setConnCteRequestEnableCmd(uint16_t connHandle, uint8_t enable, uint16_t interval, uint8_t length, uint8_t type)
uint8_t cteType
0x00 AoA CTE 0x01 - AoD CTE with 1us slots 0x02 - AoD CTE with 2us slots 0xFF - No CTE ...
Definition: rtls_srv_api.h:345
uint8_t numAnt
number of antennas we are using
Definition: rtls_srv_api.h:272
uint16_t connHandle
connection handle
Definition: rtls_srv_api.h:291
uint16_t evtSize
Size.
Definition: rtls_srv_api.h:365
uint16_t syncHandle
Handle identifying the periodic advertising train.
Definition: rtls_srv_api.h:322
CL AoA command complete event.
Definition: rtls_srv_api.h:303
uint8_t packetStatus
packet status (success or CRC error)
Definition: rtls_srv_api.h:270
int8_t txPower
Tx Power information (Range: -127 to +20 dBm)
Definition: rtls_srv_api.h:343
int8_t rssi
RSSI value for the received packet (Range: -127 to +20 dBm); If the packet contains CTE...
Definition: rtls_srv_api.h:344
uint16_t connEvent
connection event
Definition: rtls_srv_api.h:249
bStatus_t RTLSSrv_register(pfnAppEventHandlerCB_t pCB)
uint16_t connHandle
connection handle
Definition: rtls_srv_api.h:297
bStatus_t RTLSSrv_CLCteTransmitEnable(uint8 advHandle, uint8 enable)
uint8_t sampleCtrl
default filtering or RAW_RF
Definition: rtls_srv_api.h:253
PIN_Handle RTLSSrv_initAntArray(uint8_t mainAntenna)
uint8_t advPhy
Advertiser PHY: 0x01 - LE 1M 0x02 - LE 2M 0x03 - LE Coded.
Definition: rtls_srv_api.h:326
bStatus_t RTLSSrv_readAntennaInformationCmd(void)
uint16_t connHandle
connection handle
Definition: rtls_srv_api.h:241
bStatus_t RTLSSrv_processHciEvent(uint16_t hciEvt, uint16_t hciEvtSz, uint8_t *pEvtData)
Periodic advertising sync establish event structure.
Definition: rtls_srv_api.h:318
RTLS Services error structure RTLSSRV_ERROR_EVT.
Definition: rtls_srv_api.h:295
uint8_t advSid
Value of the Advertising SID subfield in the ADI field of the PDU.
Definition: rtls_srv_api.h:323
void(* pfnAppEventHandlerCB_t)(rtlsSrv_evt_t *pEvt)
Definition: rtls_srv_api.h:378
uint8_t * pData
Data received from a Periodic Advertising packet.
Definition: rtls_srv_api.h:348
uint8_t sampleRate
sample rate of frontend: 1Mhz, 2Mhz, 3Mhz, 4Mhz
Definition: rtls_srv_api.h:267
uint8_t sampleRates
sample rates supported by the controller
Definition: rtls_srv_api.h:281
int8_t * iqSamples
list of IQ samples, format is [i,q,i,q,i,q....]
Definition: rtls_srv_api.h:274
CL AoA Enable command complete event.
Definition: rtls_srv_api.h:310
Type definitions and macros for BLE stack.
uint16_t rssi
current rssi
Definition: rtls_srv_api.h:244
uint8_t maxNumOfAntennas
maximum number of antennas supported by the controller
Definition: rtls_srv_api.h:282
uint16_t eventCounter
periodic adv event counter
Definition: rtls_srv_api.h:271
uint8_t status
Periodic advertising sync HCI status.
Definition: rtls_srv_api.h:321
uint8_t dataStatus
0x00 - Data complete 0x01 - Data incomplete, more data to come 0x02 - Data incomplete, data truncated, no more to come
Definition: rtls_srv_api.h:346
uint8_t opcode
RTLS event opcode.
Definition: rtls_srv_api.h:320
uint8_t rssiAntenna
antenna ID
Definition: rtls_srv_api.h:264
uint8_t dataLen
Length of the Data field (Range: 0 to 247)
Definition: rtls_srv_api.h:347
uint8_t maxNumClCteBufs
Maximum number of buffers for CL AoA.
bStatus_t RTLSSrv_setConnCteTransmitParams(uint16_t connHandle, uint8_t types, uint8_t length, uint8_t antArray[])
uint16_t opcode
RTLS event opcode.
Definition: rtls_srv_api.h:312
CTE Connection IQ Report Event RTLSSRV_CONNECTION_CTE_IQ_REPORT_EVT.
Definition: rtls_srv_api.h:239
LE CTE Request Failed Event RTLSSRV_CTE_REQUEST_FAILED_EVT.
Definition: rtls_srv_api.h:288
uint8_t sampleCtrl
default filtering or RAW_RF
Definition: rtls_srv_api.h:269
RTLS Services passes messages in this format.
Definition: rtls_srv_api.h:362
uint8_t status
status
Definition: rtls_srv_api.h:290
uint16_t sampleCount
number of samples
Definition: rtls_srv_api.h:273
uint16_t syncHandle
Handle identifying the periodic advertising train.
Definition: rtls_srv_api.h:335
bStatus_t RTLSSrv_init(uint8_t numOfRTLSConns)
Status_t bStatus_t
BLE Generic Status return.
Definition: bcomdef.h:251
bStatus_t RTLSSrv_setCLCteSamplingEnableCmd(uint16_t syncHandle, uint8_t enable, uint8_t slotDuration, uint8_t maxSampleCte, uint8_t numAnt, uint8_t pAntPattern[])
bStatus_t RTLSSrv_SetCLCteTransmitParams(uint8 advHandle, uint8 cteLength, uint8 cteType, uint8 cteCount, uint8 switchLen, uint8 *pAntenna)
uint8_t advAddrType
Advertiser address type: 0x00 - Public 0x01 - Random 0x02 - Public Identity Address 0x03 - Random...
Definition: rtls_srv_api.h:324
uint8_t status
Event status.
Definition: rtls_srv_api.h:306
uint16_t opcode
RTLS event opcode.
Definition: rtls_srv_api.h:305
uint8_t dataChIndex
index of data channel
Definition: rtls_srv_api.h:243
bStatus_t RTLSSrv_setConnCteResponseEnableCmd(uint16_t connHandle, uint8_t enable)
uint16_t errSrc
the command that caused the error
Definition: rtls_srv_api.h:298
uint8_t sampleRate
sample rate of frontend: 1Mhz, 2Mhz, 3Mhz, 4Mhz
Definition: rtls_srv_api.h:251
uint8_t sampleSize
sample size: 8 or 16 bit samples
Definition: rtls_srv_api.h:252
uint8_t channelIndex
index of data channel
Definition: rtls_srv_api.h:262
int8_t * iqSamples
list of IQ samples, format is [i,q,i,q,i,q....]
Definition: rtls_srv_api.h:255
uint8_t evtType
Type.
Definition: rtls_srv_api.h:364
uint8_t cteType
cte type
Definition: rtls_srv_api.h:265
Periodic adverting report event.
Definition: rtls_srv_api.h:339
uint8_t rssiAntenna
antenna ID
Definition: rtls_srv_api.h:245
bStatus_t RTLSSrv_setConnCteReceiveParams(uint16_t connHandle, uint8_t samplingEnable, uint8_t slotDurations, uint8_t numAnt, uint8_t antArray[])
CTE Connectionless IQ Report Event RTLSSRV_CL_CTE_IQ_REPORT_EVT.
Definition: rtls_srv_api.h:259
uint8_t * evtData
Pointer to Event Data.
Definition: rtls_srv_api.h:366
uint16_t syncHandle
Handle identifying the periodic advertising train.
Definition: rtls_srv_api.h:342