28 #ifndef RTLS_CTRL_TOF_H_ 29 #define RTLS_CTRL_TOF_H_ 52 #define RTLS_CTRL_TOF_RSSI_THRESHOLD_HYSTERESIS -5 53 #define MAX_TOF_SAMPLES_SINGLE_CHUNK 16 54 #define RTLS_TOF_FREQ_PER_NV_BLOCK 4 59 #define SNV_ID_CAL_PARAMS BLE_NVID_CUST_START 60 #define SNV_ID_CAL_DATA_SET BLE_NVID_CUST_START+1 93 TOF_CALIB_NOT_INITIALIZED,
94 TOF_CALIB_CALIBRATING,
129 } rtlsTofCalibData_t;
135 rtlsTofCalibData_t calibVals[];
136 } rtlsTofCalibForNV_t;
142 uint16_t numSyncwordsPerBurst;
144 uint8_t slaveLqiFilter;
145 uint8_t postProcessLqiThresh;
146 uint16_t postProcessMagnRatio;
148 uint16_t frequencies[];
161 } rtlsEnableTofCmd_t;
167 uint16_t samplesPerFreq;
168 uint8_t calibDistance;
169 uint8_t useCalibFromNV;
170 } rtlsEnableTofCalib_t;
177 } rtlsTofResultDistance_t;
185 } rtlsTofResultRaw_t;
191 uint16_t samplesLength;
192 rtlsTofResultRaw_t samples[];
193 } rtlsTofResultRawAggr_t;
203 } rtlsTofResultStat_t;
tofCalibState_e tofCalibState
Calibration state.
Definition: rtls_ctrl_tof.h:109
rtlsStatus_e RTLSCtrl_writeCalibToNV(rtlsTofCalibParams_t calibParams, ToF_BurstStat *pCalibVals)
Write calibration to NV.
ToF_BurstStat * pTofAverage
Array to save average of samples (for each frequency)
Definition: rtls_ctrl_tof.h:213
ToF_BurstStat * pTofLastRun
Array to save samples from the last ToF run.
Definition: rtls_ctrl_tof.h:212
void RTLSCtrl_outputTofStat(uint8_t cmdId, uint16_t numFreq, ToF_BurstStat *tofStatArray, uint8_t rssi)
Output array of ToF_BurstStat.
tofResultMode_e
Enumeration for ToF Result Mode.
Definition: rtls_ctrl_tof.h:76
uint8_t numFreq
Number of frequencies.
Definition: rtls_ctrl_tof.h:118
tofRunMode_e runMode
One-shot/continuous/auto.
Definition: rtls_ctrl_tof.h:103
ToF_BurstStat * pCalibVals
Array to save calibration values.
Definition: rtls_ctrl_tof.h:112
void RTLSCtrl_outputCalibFromNV(uint8_t cmdId, uint8_t numFreq, uint16_t calibDistance, ToF_BurstStat *pCalibVals)
Output calibration parameters and values.
rtlsTofCalib_t tofCalibInfo
Information about ToF calibration.
Definition: rtls_ctrl_tof.h:211
uint8_t bSlaveTofEnabled
Used to determine whether slave is doing ToF or not.
Definition: rtls_ctrl_tof.h:216
TOF Burst Stats Structure.
Definition: TOF.h:186
ToF calibration information.
Definition: rtls_ctrl_tof.h:107
rtlsTofConfig_t tofConfig
Values configured by the user.
Definition: rtls_ctrl_tof.h:210
int8_t autoTofRssiTresh
RSSI threshold.
Definition: rtls_ctrl_tof.h:101
tofCalibState_e
Enumeration for ToF calibration states.
Definition: rtls_ctrl_tof.h:91
ToF_Role
Enumeration for TOF roles of operation.
Definition: TOF.h:100
uint16_t calibDistance
The distance at which calibration is being performed (will be subtracted from final result) ...
Definition: rtls_ctrl_tof.h:119
Type definitions and macros for BLE stack.
void RTLSCtrl_postProcessTof(rtlsTof_t *tofControlBlock, int8_t rssi)
Post process a ToF run.
Aggregation of ToF structures needed for RTLS Control operation (saved in gRtlsData) ...
Definition: rtls_ctrl_tof.h:206
ToF_Struct tofStruct
Struct will be filled by TOF_open.
Definition: rtls_ctrl_tof.h:208
struct __attribute__((packed))
BLE Connection information.
Definition: rtls_ble.h:59
#define TOF_SEEDLEN
Seed Length in Bytes.
Definition: TOF.h:53
tofRunMode_e
Enumeration for ToF Run Mode.
Definition: rtls_ctrl_tof.h:84
tofResultMode_e resultMode
On/off-chip result processing.
Definition: rtls_ctrl_tof.h:102
uint8_t bTofValuesInitialized
Flag to check if ToF was run at least once.
Definition: rtls_ctrl_tof.h:214
uint16_t calibrationOffset
The distance at which calibration is being performed (will be subtracted from final result) ...
Definition: rtls_ctrl_tof.h:111
ToF_Handle tofHandle
Handle will be passed to the TOF driver for actions.
Definition: rtls_ctrl_tof.h:209
ToF Calibration Parameters For NV.
Definition: rtls_ctrl_tof.h:116
rtlsStatus_e
Enumeration for RTLS Status.
Definition: rtls_ctrl_api.h:94
This file contains the RTLS Control API's.
uint8_t bSlaveTofParamPend
Used to determine whether to send params to slave when a connection is formed.
Definition: rtls_ctrl_tof.h:215
rtlsStatus_e RTLSCtrl_loadAndverifyCalibNVParams(rtlsTof_t *tofControlBlock)
Verify calibration and load calibration from NV.
Various ToF configurations.
Definition: rtls_ctrl_tof.h:99
void RTLSCtrl_readCalibFromNV(rtlsTof_t *tofControlBlock)
Read calibration From NV.
uint8_t runsForCalibration
Amount runs (instances of TOF_run) needed until calibration is complete.
Definition: rtls_ctrl_tof.h:110