Rename library

Dependencies:   X_NUCLEO_COMMON ST_INTERFACES

Dependents:   VL53L3CX_NoShield_1Sensor_poll_Mb06x VL53L3_NoShield_1Sensor_polling_Mb63 X_NUCLEO_53L3A2 53L3A2_Ranging

Committer:
charlesmn
Date:
Wed Jul 21 14:07:59 2021 +0000
Revision:
7:7f1bbf370283
Parent:
5:89031b2f5316
Moved vl53l3cx_class.cpp and .h to 53l3a2_RangingClass

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Charles MacNeill 5:89031b2f5316 1
Charles MacNeill 5:89031b2f5316 2 /* SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause */
Charles MacNeill 5:89031b2f5316 3 /******************************************************************************
Charles MacNeill 5:89031b2f5316 4 * Copyright (c) 2020, STMicroelectronics - All Rights Reserved
Charles MacNeill 5:89031b2f5316 5
Charles MacNeill 5:89031b2f5316 6 This file is part of VL53LX and is dual licensed,
Charles MacNeill 5:89031b2f5316 7 either GPL-2.0+
Charles MacNeill 5:89031b2f5316 8 or 'BSD 3-clause "New" or "Revised" License' , at your option.
Charles MacNeill 5:89031b2f5316 9 ******************************************************************************
Charles MacNeill 5:89031b2f5316 10 */
Charles MacNeill 5:89031b2f5316 11
Charles MacNeill 5:89031b2f5316 12
Charles MacNeill 5:89031b2f5316 13
Charles MacNeill 5:89031b2f5316 14
Charles MacNeill 5:89031b2f5316 15 #ifndef _VL53LX_LL_DEVICE_H_
Charles MacNeill 5:89031b2f5316 16 #define _VL53LX_LL_DEVICE_H_
Charles MacNeill 5:89031b2f5316 17
Charles MacNeill 5:89031b2f5316 18 #include "vl53lx_platform_user_config.h"
Charles MacNeill 5:89031b2f5316 19 #include "vl53lx_types.h"
Charles MacNeill 5:89031b2f5316 20
Charles MacNeill 5:89031b2f5316 21 #define VL53LX_I2C 0x01
Charles MacNeill 5:89031b2f5316 22 #define VL53LX_SPI 0x00
Charles MacNeill 5:89031b2f5316 23
Charles MacNeill 5:89031b2f5316 24
Charles MacNeill 5:89031b2f5316 25
Charles MacNeill 5:89031b2f5316 26
Charles MacNeill 5:89031b2f5316 27
Charles MacNeill 5:89031b2f5316 28 typedef uint8_t VL53LX_WaitMethod;
Charles MacNeill 5:89031b2f5316 29
Charles MacNeill 5:89031b2f5316 30 #define VL53LX_WAIT_METHOD_BLOCKING ((VL53LX_WaitMethod) 0)
Charles MacNeill 5:89031b2f5316 31 #define VL53LX_WAIT_METHOD_NON_BLOCKING ((VL53LX_WaitMethod) 1)
Charles MacNeill 5:89031b2f5316 32
Charles MacNeill 5:89031b2f5316 33
Charles MacNeill 5:89031b2f5316 34
Charles MacNeill 5:89031b2f5316 35
Charles MacNeill 5:89031b2f5316 36 typedef uint8_t VL53LX_DeviceState;
Charles MacNeill 5:89031b2f5316 37
Charles MacNeill 5:89031b2f5316 38 #define VL53LX_DEVICESTATE_POWERDOWN ((VL53LX_DeviceState) 0)
Charles MacNeill 5:89031b2f5316 39 #define VL53LX_DEVICESTATE_HW_STANDBY ((VL53LX_DeviceState) 1)
Charles MacNeill 5:89031b2f5316 40 #define VL53LX_DEVICESTATE_FW_COLDBOOT ((VL53LX_DeviceState) 2)
Charles MacNeill 5:89031b2f5316 41 #define VL53LX_DEVICESTATE_SW_STANDBY ((VL53LX_DeviceState) 3)
Charles MacNeill 5:89031b2f5316 42 #define VL53LX_DEVICESTATE_RANGING_DSS_AUTO ((VL53LX_DeviceState) 4)
Charles MacNeill 5:89031b2f5316 43 #define VL53LX_DEVICESTATE_RANGING_DSS_MANUAL ((VL53LX_DeviceState) 5)
Charles MacNeill 5:89031b2f5316 44 #define VL53LX_DEVICESTATE_RANGING_WAIT_GPH_SYNC ((VL53LX_DeviceState) 6)
Charles MacNeill 5:89031b2f5316 45 #define VL53LX_DEVICESTATE_RANGING_GATHER_DATA ((VL53LX_DeviceState) 7)
Charles MacNeill 5:89031b2f5316 46 #define VL53LX_DEVICESTATE_RANGING_OUTPUT_DATA ((VL53LX_DeviceState) 8)
Charles MacNeill 5:89031b2f5316 47
Charles MacNeill 5:89031b2f5316 48 #define VL53LX_DEVICESTATE_UNKNOWN ((VL53LX_DeviceState) 98)
Charles MacNeill 5:89031b2f5316 49 #define VL53LX_DEVICESTATE_ERROR ((VL53LX_DeviceState) 99)
Charles MacNeill 5:89031b2f5316 50
Charles MacNeill 5:89031b2f5316 51
Charles MacNeill 5:89031b2f5316 52
Charles MacNeill 5:89031b2f5316 53 typedef uint8_t VL53LX_DeviceZonePreset;
Charles MacNeill 5:89031b2f5316 54
Charles MacNeill 5:89031b2f5316 55
Charles MacNeill 5:89031b2f5316 56 typedef uint8_t VL53LX_DevicePresetModes;
Charles MacNeill 5:89031b2f5316 57
Charles MacNeill 5:89031b2f5316 58 #define VL53LX_DEVICEPRESETMODE_NONE \
Charles MacNeill 5:89031b2f5316 59 ((VL53LX_DevicePresetModes) 0)
Charles MacNeill 5:89031b2f5316 60 #define VL53LX_DEVICEPRESETMODE_STANDARD_RANGING \
Charles MacNeill 5:89031b2f5316 61 ((VL53LX_DevicePresetModes) 1)
Charles MacNeill 5:89031b2f5316 62 #define VL53LX_DEVICEPRESETMODE_HISTOGRAM_LONG_RANGE \
Charles MacNeill 5:89031b2f5316 63 ((VL53LX_DevicePresetModes) 27)
Charles MacNeill 5:89031b2f5316 64 #define VL53LX_DEVICEPRESETMODE_HISTOGRAM_MEDIUM_RANGE \
Charles MacNeill 5:89031b2f5316 65 ((VL53LX_DevicePresetModes) 30)
Charles MacNeill 5:89031b2f5316 66 #define VL53LX_DEVICEPRESETMODE_HISTOGRAM_SHORT_RANGE \
Charles MacNeill 5:89031b2f5316 67 ((VL53LX_DevicePresetModes) 33)
Charles MacNeill 5:89031b2f5316 68
Charles MacNeill 5:89031b2f5316 69
Charles MacNeill 5:89031b2f5316 70
Charles MacNeill 5:89031b2f5316 71
Charles MacNeill 5:89031b2f5316 72
Charles MacNeill 5:89031b2f5316 73 typedef uint8_t VL53LX_DeviceMeasurementModes;
Charles MacNeill 5:89031b2f5316 74
Charles MacNeill 5:89031b2f5316 75 #define VL53LX_DEVICEMEASUREMENTMODE_STOP \
Charles MacNeill 5:89031b2f5316 76 ((VL53LX_DeviceMeasurementModes) 0x00)
Charles MacNeill 5:89031b2f5316 77 #define VL53LX_DEVICEMEASUREMENTMODE_SINGLESHOT \
Charles MacNeill 5:89031b2f5316 78 ((VL53LX_DeviceMeasurementModes) 0x10)
Charles MacNeill 5:89031b2f5316 79 #define VL53LX_DEVICEMEASUREMENTMODE_BACKTOBACK \
Charles MacNeill 5:89031b2f5316 80 ((VL53LX_DeviceMeasurementModes) 0x20)
Charles MacNeill 5:89031b2f5316 81 #define VL53LX_DEVICEMEASUREMENTMODE_TIMED \
Charles MacNeill 5:89031b2f5316 82 ((VL53LX_DeviceMeasurementModes) 0x40)
Charles MacNeill 5:89031b2f5316 83 #define VL53LX_DEVICEMEASUREMENTMODE_ABORT \
Charles MacNeill 5:89031b2f5316 84 ((VL53LX_DeviceMeasurementModes) 0x80)
Charles MacNeill 5:89031b2f5316 85
Charles MacNeill 5:89031b2f5316 86
Charles MacNeill 5:89031b2f5316 87
Charles MacNeill 5:89031b2f5316 88
Charles MacNeill 5:89031b2f5316 89
Charles MacNeill 5:89031b2f5316 90 typedef uint8_t VL53LX_OffsetCalibrationMode;
Charles MacNeill 5:89031b2f5316 91
Charles MacNeill 5:89031b2f5316 92 #define VL53LX_OFFSETCALIBRATIONMODE__NONE \
Charles MacNeill 5:89031b2f5316 93 ((VL53LX_OffsetCalibrationMode) 0)
Charles MacNeill 5:89031b2f5316 94 #define VL53LX_OFFSETCALIBRATIONMODE__MM1_MM2__STANDARD \
Charles MacNeill 5:89031b2f5316 95 ((VL53LX_OffsetCalibrationMode) 1)
Charles MacNeill 5:89031b2f5316 96 #define VL53LX_OFFSETCALIBRATIONMODE__MM1_MM2__HISTOGRAM \
Charles MacNeill 5:89031b2f5316 97 ((VL53LX_OffsetCalibrationMode) 2)
Charles MacNeill 5:89031b2f5316 98 #define VL53LX_OFFSETCALIBRATIONMODE__MM1_MM2__STANDARD_PRE_RANGE_ONLY \
Charles MacNeill 5:89031b2f5316 99 ((VL53LX_OffsetCalibrationMode) 3)
Charles MacNeill 5:89031b2f5316 100 #define VL53LX_OFFSETCALIBRATIONMODE__MM1_MM2__HISTOGRAM_PRE_RANGE_ONLY \
Charles MacNeill 5:89031b2f5316 101 ((VL53LX_OffsetCalibrationMode) 4)
Charles MacNeill 5:89031b2f5316 102
Charles MacNeill 5:89031b2f5316 103
Charles MacNeill 5:89031b2f5316 104
Charles MacNeill 5:89031b2f5316 105
Charles MacNeill 5:89031b2f5316 106
Charles MacNeill 5:89031b2f5316 107 typedef uint8_t VL53LX_OffsetCorrectionMode;
Charles MacNeill 5:89031b2f5316 108
Charles MacNeill 5:89031b2f5316 109 #define VL53LX_OFFSETCORRECTIONMODE__NONE \
Charles MacNeill 5:89031b2f5316 110 ((VL53LX_OffsetCorrectionMode) 0)
Charles MacNeill 5:89031b2f5316 111 #define VL53LX_OFFSETCORRECTIONMODE__MM1_MM2_OFFSETS \
Charles MacNeill 5:89031b2f5316 112 ((VL53LX_OffsetCorrectionMode) 1)
Charles MacNeill 5:89031b2f5316 113 #define VL53LX_OFFSETCORRECTIONMODE__PER_VCSEL_OFFSETS \
Charles MacNeill 5:89031b2f5316 114 ((VL53LX_OffsetCorrectionMode) 3)
Charles MacNeill 5:89031b2f5316 115
Charles MacNeill 5:89031b2f5316 116
Charles MacNeill 5:89031b2f5316 117
Charles MacNeill 5:89031b2f5316 118
Charles MacNeill 5:89031b2f5316 119
Charles MacNeill 5:89031b2f5316 120 typedef uint8_t VL53LX_DeviceDmaxMode;
Charles MacNeill 5:89031b2f5316 121
Charles MacNeill 5:89031b2f5316 122 #define VL53LX_DEVICEDMAXMODE__NONE \
Charles MacNeill 5:89031b2f5316 123 ((VL53LX_DeviceDmaxMode) 0)
Charles MacNeill 5:89031b2f5316 124 #define VL53LX_DEVICEDMAXMODE__FMT_CAL_DATA \
Charles MacNeill 5:89031b2f5316 125 ((VL53LX_DeviceDmaxMode) 1)
Charles MacNeill 5:89031b2f5316 126 #define VL53LX_DEVICEDMAXMODE__CUST_CAL_DATA \
Charles MacNeill 5:89031b2f5316 127 ((VL53LX_DeviceDmaxMode) 2)
Charles MacNeill 5:89031b2f5316 128
Charles MacNeill 5:89031b2f5316 129
Charles MacNeill 5:89031b2f5316 130
Charles MacNeill 5:89031b2f5316 131
Charles MacNeill 5:89031b2f5316 132
Charles MacNeill 5:89031b2f5316 133 typedef uint8_t VL53LX_DeviceSequenceConfig;
Charles MacNeill 5:89031b2f5316 134
Charles MacNeill 5:89031b2f5316 135 #define VL53LX_DEVICESEQUENCECONFIG_VHV \
Charles MacNeill 5:89031b2f5316 136 ((VL53LX_DeviceSequenceConfig) 0)
Charles MacNeill 5:89031b2f5316 137 #define VL53LX_DEVICESEQUENCECONFIG_PHASECAL \
Charles MacNeill 5:89031b2f5316 138 ((VL53LX_DeviceSequenceConfig) 1)
Charles MacNeill 5:89031b2f5316 139 #define VL53LX_DEVICESEQUENCECONFIG_REFERENCE_PHASE \
Charles MacNeill 5:89031b2f5316 140 ((VL53LX_DeviceSequenceConfig) 2)
Charles MacNeill 5:89031b2f5316 141 #define VL53LX_DEVICESEQUENCECONFIG_DSS1 \
Charles MacNeill 5:89031b2f5316 142 ((VL53LX_DeviceSequenceConfig) 3)
Charles MacNeill 5:89031b2f5316 143 #define VL53LX_DEVICESEQUENCECONFIG_DSS2 \
Charles MacNeill 5:89031b2f5316 144 ((VL53LX_DeviceSequenceConfig) 4)
Charles MacNeill 5:89031b2f5316 145 #define VL53LX_DEVICESEQUENCECONFIG_MM1 \
Charles MacNeill 5:89031b2f5316 146 ((VL53LX_DeviceSequenceConfig) 5)
Charles MacNeill 5:89031b2f5316 147 #define VL53LX_DEVICESEQUENCECONFIG_MM2 \
Charles MacNeill 5:89031b2f5316 148 ((VL53LX_DeviceSequenceConfig) 6)
Charles MacNeill 5:89031b2f5316 149 #define VL53LX_DEVICESEQUENCECONFIG_RANGE \
Charles MacNeill 5:89031b2f5316 150 ((VL53LX_DeviceSequenceConfig) 7)
Charles MacNeill 5:89031b2f5316 151
Charles MacNeill 5:89031b2f5316 152
Charles MacNeill 5:89031b2f5316 153
Charles MacNeill 5:89031b2f5316 154
Charles MacNeill 5:89031b2f5316 155
Charles MacNeill 5:89031b2f5316 156 typedef uint8_t VL53LX_DeviceInterruptPolarity;
Charles MacNeill 5:89031b2f5316 157
Charles MacNeill 5:89031b2f5316 158 #define VL53LX_DEVICEINTERRUPTPOLARITY_ACTIVE_HIGH \
Charles MacNeill 5:89031b2f5316 159 ((VL53LX_DeviceInterruptPolarity) 0x00)
Charles MacNeill 5:89031b2f5316 160 #define VL53LX_DEVICEINTERRUPTPOLARITY_ACTIVE_LOW \
Charles MacNeill 5:89031b2f5316 161 ((VL53LX_DeviceInterruptPolarity) 0x10)
Charles MacNeill 5:89031b2f5316 162 #define VL53LX_DEVICEINTERRUPTPOLARITY_BIT_MASK \
Charles MacNeill 5:89031b2f5316 163 ((VL53LX_DeviceInterruptPolarity) 0x10)
Charles MacNeill 5:89031b2f5316 164 #define VL53LX_DEVICEINTERRUPTPOLARITY_CLEAR_MASK \
Charles MacNeill 5:89031b2f5316 165 ((VL53LX_DeviceInterruptPolarity) 0xEF)
Charles MacNeill 5:89031b2f5316 166
Charles MacNeill 5:89031b2f5316 167
Charles MacNeill 5:89031b2f5316 168
Charles MacNeill 5:89031b2f5316 169
Charles MacNeill 5:89031b2f5316 170
Charles MacNeill 5:89031b2f5316 171 typedef uint8_t VL53LX_DeviceGpioMode;
Charles MacNeill 5:89031b2f5316 172
Charles MacNeill 5:89031b2f5316 173 #define VL53LX_DEVICEGPIOMODE_OUTPUT_CONSTANT_ZERO \
Charles MacNeill 5:89031b2f5316 174 ((VL53LX_DeviceGpioMode) 0x00)
Charles MacNeill 5:89031b2f5316 175 #define VL53LX_DEVICEGPIOMODE_OUTPUT_RANGE_AND_ERROR_INTERRUPTS \
Charles MacNeill 5:89031b2f5316 176 ((VL53LX_DeviceGpioMode) 0x01)
Charles MacNeill 5:89031b2f5316 177 #define VL53LX_DEVICEGPIOMODE_OUTPUT_TIMIER_INTERRUPTS \
Charles MacNeill 5:89031b2f5316 178 ((VL53LX_DeviceGpioMode) 0x02)
Charles MacNeill 5:89031b2f5316 179 #define VL53LX_DEVICEGPIOMODE_OUTPUT_RANGE_MODE_INTERRUPT_STATUS \
Charles MacNeill 5:89031b2f5316 180 ((VL53LX_DeviceGpioMode) 0x03)
Charles MacNeill 5:89031b2f5316 181 #define VL53LX_DEVICEGPIOMODE_OUTPUT_SLOW_OSCILLATOR_CLOCK \
Charles MacNeill 5:89031b2f5316 182 ((VL53LX_DeviceGpioMode) 0x04)
Charles MacNeill 5:89031b2f5316 183 #define VL53LX_DEVICEGPIOMODE_BIT_MASK \
Charles MacNeill 5:89031b2f5316 184 ((VL53LX_DeviceGpioMode) 0x0F)
Charles MacNeill 5:89031b2f5316 185 #define VL53LX_DEVICEGPIOMODE_CLEAR_MASK \
Charles MacNeill 5:89031b2f5316 186 ((VL53LX_DeviceGpioMode) 0xF0)
Charles MacNeill 5:89031b2f5316 187
Charles MacNeill 5:89031b2f5316 188
Charles MacNeill 5:89031b2f5316 189
Charles MacNeill 5:89031b2f5316 190
Charles MacNeill 5:89031b2f5316 191
Charles MacNeill 5:89031b2f5316 192 typedef uint8_t VL53LX_DeviceError;
Charles MacNeill 5:89031b2f5316 193
Charles MacNeill 5:89031b2f5316 194 #define VL53LX_DEVICEERROR_NOUPDATE \
Charles MacNeill 5:89031b2f5316 195 ((VL53LX_DeviceError) 0)
Charles MacNeill 5:89031b2f5316 196
Charles MacNeill 5:89031b2f5316 197 #define VL53LX_DEVICEERROR_VCSELCONTINUITYTESTFAILURE \
Charles MacNeill 5:89031b2f5316 198 ((VL53LX_DeviceError) 1)
Charles MacNeill 5:89031b2f5316 199 #define VL53LX_DEVICEERROR_VCSELWATCHDOGTESTFAILURE \
Charles MacNeill 5:89031b2f5316 200 ((VL53LX_DeviceError) 2)
Charles MacNeill 5:89031b2f5316 201 #define VL53LX_DEVICEERROR_NOVHVVALUEFOUND \
Charles MacNeill 5:89031b2f5316 202 ((VL53LX_DeviceError) 3)
Charles MacNeill 5:89031b2f5316 203 #define VL53LX_DEVICEERROR_MSRCNOTARGET \
Charles MacNeill 5:89031b2f5316 204 ((VL53LX_DeviceError) 4)
Charles MacNeill 5:89031b2f5316 205 #define VL53LX_DEVICEERROR_RANGEPHASECHECK \
Charles MacNeill 5:89031b2f5316 206 ((VL53LX_DeviceError) 5)
Charles MacNeill 5:89031b2f5316 207 #define VL53LX_DEVICEERROR_SIGMATHRESHOLDCHECK \
Charles MacNeill 5:89031b2f5316 208 ((VL53LX_DeviceError) 6)
Charles MacNeill 5:89031b2f5316 209 #define VL53LX_DEVICEERROR_PHASECONSISTENCY \
Charles MacNeill 5:89031b2f5316 210 ((VL53LX_DeviceError) 7)
Charles MacNeill 5:89031b2f5316 211 #define VL53LX_DEVICEERROR_MINCLIP \
Charles MacNeill 5:89031b2f5316 212 ((VL53LX_DeviceError) 8)
Charles MacNeill 5:89031b2f5316 213 #define VL53LX_DEVICEERROR_RANGECOMPLETE \
Charles MacNeill 5:89031b2f5316 214 ((VL53LX_DeviceError) 9)
Charles MacNeill 5:89031b2f5316 215 #define VL53LX_DEVICEERROR_ALGOUNDERFLOW \
Charles MacNeill 5:89031b2f5316 216 ((VL53LX_DeviceError) 10)
Charles MacNeill 5:89031b2f5316 217 #define VL53LX_DEVICEERROR_ALGOOVERFLOW \
Charles MacNeill 5:89031b2f5316 218 ((VL53LX_DeviceError) 11)
Charles MacNeill 5:89031b2f5316 219 #define VL53LX_DEVICEERROR_RANGEIGNORETHRESHOLD \
Charles MacNeill 5:89031b2f5316 220 ((VL53LX_DeviceError) 12)
Charles MacNeill 5:89031b2f5316 221 #define VL53LX_DEVICEERROR_USERROICLIP \
Charles MacNeill 5:89031b2f5316 222 ((VL53LX_DeviceError) 13)
Charles MacNeill 5:89031b2f5316 223 #define VL53LX_DEVICEERROR_REFSPADCHARNOTENOUGHDPADS \
Charles MacNeill 5:89031b2f5316 224 ((VL53LX_DeviceError) 14)
Charles MacNeill 5:89031b2f5316 225 #define VL53LX_DEVICEERROR_REFSPADCHARMORETHANTARGET \
Charles MacNeill 5:89031b2f5316 226 ((VL53LX_DeviceError) 15)
Charles MacNeill 5:89031b2f5316 227 #define VL53LX_DEVICEERROR_REFSPADCHARLESSTHANTARGET \
Charles MacNeill 5:89031b2f5316 228 ((VL53LX_DeviceError) 16)
Charles MacNeill 5:89031b2f5316 229 #define VL53LX_DEVICEERROR_MULTCLIPFAIL \
Charles MacNeill 5:89031b2f5316 230 ((VL53LX_DeviceError) 17)
Charles MacNeill 5:89031b2f5316 231 #define VL53LX_DEVICEERROR_GPHSTREAMCOUNT0READY \
Charles MacNeill 5:89031b2f5316 232 ((VL53LX_DeviceError) 18)
Charles MacNeill 5:89031b2f5316 233 #define VL53LX_DEVICEERROR_RANGECOMPLETE_NO_WRAP_CHECK \
Charles MacNeill 5:89031b2f5316 234 ((VL53LX_DeviceError) 19)
Charles MacNeill 5:89031b2f5316 235 #define VL53LX_DEVICEERROR_EVENTCONSISTENCY \
Charles MacNeill 5:89031b2f5316 236 ((VL53LX_DeviceError) 20)
Charles MacNeill 5:89031b2f5316 237 #define VL53LX_DEVICEERROR_MINSIGNALEVENTCHECK \
Charles MacNeill 5:89031b2f5316 238 ((VL53LX_DeviceError) 21)
Charles MacNeill 5:89031b2f5316 239 #define VL53LX_DEVICEERROR_RANGECOMPLETE_MERGED_PULSE \
Charles MacNeill 5:89031b2f5316 240 ((VL53LX_DeviceError) 22)
Charles MacNeill 5:89031b2f5316 241
Charles MacNeill 5:89031b2f5316 242
Charles MacNeill 5:89031b2f5316 243 #define VL53LX_DEVICEERROR_PREV_RANGE_NO_TARGETS \
Charles MacNeill 5:89031b2f5316 244 ((VL53LX_DeviceError) 23)
Charles MacNeill 5:89031b2f5316 245
Charles MacNeill 5:89031b2f5316 246
Charles MacNeill 5:89031b2f5316 247
Charles MacNeill 5:89031b2f5316 248
Charles MacNeill 5:89031b2f5316 249
Charles MacNeill 5:89031b2f5316 250 typedef uint8_t VL53LX_DeviceReportStatus;
Charles MacNeill 5:89031b2f5316 251
Charles MacNeill 5:89031b2f5316 252 #define VL53LX_DEVICEREPORTSTATUS_NOUPDATE \
Charles MacNeill 5:89031b2f5316 253 ((VL53LX_DeviceReportStatus) 0)
Charles MacNeill 5:89031b2f5316 254
Charles MacNeill 5:89031b2f5316 255 #define VL53LX_DEVICEREPORTSTATUS_ROI_SETUP \
Charles MacNeill 5:89031b2f5316 256 ((VL53LX_DeviceReportStatus) 1)
Charles MacNeill 5:89031b2f5316 257 #define VL53LX_DEVICEREPORTSTATUS_VHV \
Charles MacNeill 5:89031b2f5316 258 ((VL53LX_DeviceReportStatus) 2)
Charles MacNeill 5:89031b2f5316 259 #define VL53LX_DEVICEREPORTSTATUS_PHASECAL \
Charles MacNeill 5:89031b2f5316 260 ((VL53LX_DeviceReportStatus) 3)
Charles MacNeill 5:89031b2f5316 261 #define VL53LX_DEVICEREPORTSTATUS_REFERENCE_PHASE \
Charles MacNeill 5:89031b2f5316 262 ((VL53LX_DeviceReportStatus) 4)
Charles MacNeill 5:89031b2f5316 263 #define VL53LX_DEVICEREPORTSTATUS_DSS1 \
Charles MacNeill 5:89031b2f5316 264 ((VL53LX_DeviceReportStatus) 5)
Charles MacNeill 5:89031b2f5316 265 #define VL53LX_DEVICEREPORTSTATUS_DSS2 \
Charles MacNeill 5:89031b2f5316 266 ((VL53LX_DeviceReportStatus) 6)
Charles MacNeill 5:89031b2f5316 267 #define VL53LX_DEVICEREPORTSTATUS_MM1 \
Charles MacNeill 5:89031b2f5316 268 ((VL53LX_DeviceReportStatus) 7)
Charles MacNeill 5:89031b2f5316 269 #define VL53LX_DEVICEREPORTSTATUS_MM2 \
Charles MacNeill 5:89031b2f5316 270 ((VL53LX_DeviceReportStatus) 8)
Charles MacNeill 5:89031b2f5316 271 #define VL53LX_DEVICEREPORTSTATUS_RANGE \
Charles MacNeill 5:89031b2f5316 272 ((VL53LX_DeviceReportStatus) 9)
Charles MacNeill 5:89031b2f5316 273 #define VL53LX_DEVICEREPORTSTATUS_HISTOGRAM \
Charles MacNeill 5:89031b2f5316 274 ((VL53LX_DeviceReportStatus) 10)
Charles MacNeill 5:89031b2f5316 275
Charles MacNeill 5:89031b2f5316 276
Charles MacNeill 5:89031b2f5316 277
Charles MacNeill 5:89031b2f5316 278
Charles MacNeill 5:89031b2f5316 279
Charles MacNeill 5:89031b2f5316 280 typedef uint8_t VL53LX_DeviceDssMode;
Charles MacNeill 5:89031b2f5316 281
Charles MacNeill 5:89031b2f5316 282 #define VL53LX_DEVICEDSSMODE__DISABLED \
Charles MacNeill 5:89031b2f5316 283 ((VL53LX_DeviceDssMode) 0)
Charles MacNeill 5:89031b2f5316 284 #define VL53LX_DEVICEDSSMODE__TARGET_RATE \
Charles MacNeill 5:89031b2f5316 285 ((VL53LX_DeviceDssMode) 1)
Charles MacNeill 5:89031b2f5316 286 #define VL53LX_DEVICEDSSMODE__REQUESTED_EFFFECTIVE_SPADS \
Charles MacNeill 5:89031b2f5316 287 ((VL53LX_DeviceDssMode) 2)
Charles MacNeill 5:89031b2f5316 288 #define VL53LX_DEVICEDSSMODE__BLOCK_SELECT \
Charles MacNeill 5:89031b2f5316 289 ((VL53LX_DeviceDssMode) 3)
Charles MacNeill 5:89031b2f5316 290
Charles MacNeill 5:89031b2f5316 291
Charles MacNeill 5:89031b2f5316 292
Charles MacNeill 5:89031b2f5316 293
Charles MacNeill 5:89031b2f5316 294
Charles MacNeill 5:89031b2f5316 295
Charles MacNeill 5:89031b2f5316 296 typedef uint8_t VL53LX_HistAlgoSelect;
Charles MacNeill 5:89031b2f5316 297
Charles MacNeill 5:89031b2f5316 298 #define VL53LX_HIST_ALGO_SELECT__PW_HIST_GEN1 \
Charles MacNeill 5:89031b2f5316 299 ((VL53LX_HistAlgoSelect) 1)
Charles MacNeill 5:89031b2f5316 300 #define VL53LX_HIST_ALGO_SELECT__PW_HIST_GEN2 \
Charles MacNeill 5:89031b2f5316 301 ((VL53LX_HistAlgoSelect) 2)
Charles MacNeill 5:89031b2f5316 302 #define VL53LX_HIST_ALGO_SELECT__PW_HIST_GEN3 \
Charles MacNeill 5:89031b2f5316 303 ((VL53LX_HistAlgoSelect) 3)
Charles MacNeill 5:89031b2f5316 304 #define VL53LX_HIST_ALGO_SELECT__PW_HIST_GEN4 \
Charles MacNeill 5:89031b2f5316 305 ((VL53LX_HistAlgoSelect) 4)
Charles MacNeill 5:89031b2f5316 306
Charles MacNeill 5:89031b2f5316 307
Charles MacNeill 5:89031b2f5316 308
Charles MacNeill 5:89031b2f5316 309
Charles MacNeill 5:89031b2f5316 310
Charles MacNeill 5:89031b2f5316 311
Charles MacNeill 5:89031b2f5316 312 typedef uint8_t VL53LX_HistTargetOrder;
Charles MacNeill 5:89031b2f5316 313
Charles MacNeill 5:89031b2f5316 314 #define VL53LX_HIST_TARGET_ORDER__INCREASING_DISTANCE \
Charles MacNeill 5:89031b2f5316 315 ((VL53LX_HistTargetOrder) 1)
Charles MacNeill 5:89031b2f5316 316 #define VL53LX_HIST_TARGET_ORDER__STRONGEST_FIRST \
Charles MacNeill 5:89031b2f5316 317 ((VL53LX_HistTargetOrder) 2)
Charles MacNeill 5:89031b2f5316 318
Charles MacNeill 5:89031b2f5316 319
Charles MacNeill 5:89031b2f5316 320
Charles MacNeill 5:89031b2f5316 321
Charles MacNeill 5:89031b2f5316 322
Charles MacNeill 5:89031b2f5316 323
Charles MacNeill 5:89031b2f5316 324 typedef uint8_t VL53LX_HistAmbEstMethod;
Charles MacNeill 5:89031b2f5316 325
Charles MacNeill 5:89031b2f5316 326 #define VL53LX_HIST_AMB_EST_METHOD__AMBIENT_BINS \
Charles MacNeill 5:89031b2f5316 327 ((VL53LX_HistAmbEstMethod) 1)
Charles MacNeill 5:89031b2f5316 328 #define VL53LX_HIST_AMB_EST_METHOD__THRESHOLDED_BINS \
Charles MacNeill 5:89031b2f5316 329 ((VL53LX_HistAmbEstMethod) 2)
Charles MacNeill 5:89031b2f5316 330
Charles MacNeill 5:89031b2f5316 331
Charles MacNeill 5:89031b2f5316 332
Charles MacNeill 5:89031b2f5316 333
Charles MacNeill 5:89031b2f5316 334
Charles MacNeill 5:89031b2f5316 335
Charles MacNeill 5:89031b2f5316 336 typedef uint8_t VL53LX_HistXtalkCompEnable;
Charles MacNeill 5:89031b2f5316 337
Charles MacNeill 5:89031b2f5316 338 #define VL53LX_HIST_XTALK_COMP__DIS \
Charles MacNeill 5:89031b2f5316 339 ((VL53LX_HistXtalkCompEnable) 0)
Charles MacNeill 5:89031b2f5316 340 #define VL53LX_HIST_XTALK_COMP__EN \
Charles MacNeill 5:89031b2f5316 341 ((VL53LX_HistXtalkCompEnable) 1)
Charles MacNeill 5:89031b2f5316 342
Charles MacNeill 5:89031b2f5316 343
Charles MacNeill 5:89031b2f5316 344
Charles MacNeill 5:89031b2f5316 345
Charles MacNeill 5:89031b2f5316 346 typedef uint8_t VL53LX_DeviceConfigLevel;
Charles MacNeill 5:89031b2f5316 347
Charles MacNeill 5:89031b2f5316 348 #define VL53LX_DEVICECONFIGLEVEL_SYSTEM_CONTROL \
Charles MacNeill 5:89031b2f5316 349 ((VL53LX_DeviceConfigLevel) 0)
Charles MacNeill 5:89031b2f5316 350
Charles MacNeill 5:89031b2f5316 351 #define VL53LX_DEVICECONFIGLEVEL_DYNAMIC_ONWARDS \
Charles MacNeill 5:89031b2f5316 352 ((VL53LX_DeviceConfigLevel) 1)
Charles MacNeill 5:89031b2f5316 353
Charles MacNeill 5:89031b2f5316 354 #define VL53LX_DEVICECONFIGLEVEL_TIMING_ONWARDS \
Charles MacNeill 5:89031b2f5316 355 ((VL53LX_DeviceConfigLevel) 2)
Charles MacNeill 5:89031b2f5316 356
Charles MacNeill 5:89031b2f5316 357 #define VL53LX_DEVICECONFIGLEVEL_GENERAL_ONWARDS \
Charles MacNeill 5:89031b2f5316 358 ((VL53LX_DeviceConfigLevel) 3)
Charles MacNeill 5:89031b2f5316 359
Charles MacNeill 5:89031b2f5316 360 #define VL53LX_DEVICECONFIGLEVEL_STATIC_ONWARDS \
Charles MacNeill 5:89031b2f5316 361 ((VL53LX_DeviceConfigLevel) 4)
Charles MacNeill 5:89031b2f5316 362
Charles MacNeill 5:89031b2f5316 363 #define VL53LX_DEVICECONFIGLEVEL_CUSTOMER_ONWARDS \
Charles MacNeill 5:89031b2f5316 364 ((VL53LX_DeviceConfigLevel) 5)
Charles MacNeill 5:89031b2f5316 365
Charles MacNeill 5:89031b2f5316 366 #define VL53LX_DEVICECONFIGLEVEL_FULL \
Charles MacNeill 5:89031b2f5316 367 ((VL53LX_DeviceConfigLevel) 6)
Charles MacNeill 5:89031b2f5316 368
Charles MacNeill 5:89031b2f5316 369
Charles MacNeill 5:89031b2f5316 370
Charles MacNeill 5:89031b2f5316 371
Charles MacNeill 5:89031b2f5316 372
Charles MacNeill 5:89031b2f5316 373
Charles MacNeill 5:89031b2f5316 374 typedef uint8_t VL53LX_DeviceResultsLevel;
Charles MacNeill 5:89031b2f5316 375
Charles MacNeill 5:89031b2f5316 376 #define VL53LX_DEVICERESULTSLEVEL_SYSTEM_RESULTS \
Charles MacNeill 5:89031b2f5316 377 ((VL53LX_DeviceResultsLevel) 0)
Charles MacNeill 5:89031b2f5316 378
Charles MacNeill 5:89031b2f5316 379 #define VL53LX_DEVICERESULTSLEVEL_UPTO_CORE \
Charles MacNeill 5:89031b2f5316 380 ((VL53LX_DeviceResultsLevel) 1)
Charles MacNeill 5:89031b2f5316 381
Charles MacNeill 5:89031b2f5316 382 #define VL53LX_DEVICERESULTSLEVEL_FULL \
Charles MacNeill 5:89031b2f5316 383 ((VL53LX_DeviceResultsLevel) 2)
Charles MacNeill 5:89031b2f5316 384
Charles MacNeill 5:89031b2f5316 385
Charles MacNeill 5:89031b2f5316 386
Charles MacNeill 5:89031b2f5316 387
Charles MacNeill 5:89031b2f5316 388
Charles MacNeill 5:89031b2f5316 389
Charles MacNeill 5:89031b2f5316 390
Charles MacNeill 5:89031b2f5316 391 typedef uint8_t VL53LX_DeviceTestMode;
Charles MacNeill 5:89031b2f5316 392
Charles MacNeill 5:89031b2f5316 393 #define VL53LX_DEVICETESTMODE_NONE \
Charles MacNeill 5:89031b2f5316 394 ((VL53LX_DeviceTestMode) 0x00)
Charles MacNeill 5:89031b2f5316 395
Charles MacNeill 5:89031b2f5316 396 #define VL53LX_DEVICETESTMODE_NVM_ZERO \
Charles MacNeill 5:89031b2f5316 397 ((VL53LX_DeviceTestMode) 0x01)
Charles MacNeill 5:89031b2f5316 398
Charles MacNeill 5:89031b2f5316 399 #define VL53LX_DEVICETESTMODE_NVM_COPY \
Charles MacNeill 5:89031b2f5316 400 ((VL53LX_DeviceTestMode) 0x02)
Charles MacNeill 5:89031b2f5316 401
Charles MacNeill 5:89031b2f5316 402 #define VL53LX_DEVICETESTMODE_PATCH \
Charles MacNeill 5:89031b2f5316 403 ((VL53LX_DeviceTestMode) 0x03)
Charles MacNeill 5:89031b2f5316 404
Charles MacNeill 5:89031b2f5316 405 #define VL53LX_DEVICETESTMODE_DCR \
Charles MacNeill 5:89031b2f5316 406 ((VL53LX_DeviceTestMode) 0x04)
Charles MacNeill 5:89031b2f5316 407
Charles MacNeill 5:89031b2f5316 408 #define VL53LX_DEVICETESTMODE_LCR_VCSEL_OFF \
Charles MacNeill 5:89031b2f5316 409 ((VL53LX_DeviceTestMode) 0x05)
Charles MacNeill 5:89031b2f5316 410
Charles MacNeill 5:89031b2f5316 411 #define VL53LX_DEVICETESTMODE_LCR_VCSEL_ON \
Charles MacNeill 5:89031b2f5316 412 ((VL53LX_DeviceTestMode) 0x06)
Charles MacNeill 5:89031b2f5316 413
Charles MacNeill 5:89031b2f5316 414 #define VL53LX_DEVICETESTMODE_SPOT_CENTRE_LOCATE \
Charles MacNeill 5:89031b2f5316 415 ((VL53LX_DeviceTestMode) 0x07)
Charles MacNeill 5:89031b2f5316 416
Charles MacNeill 5:89031b2f5316 417 #define VL53LX_DEVICETESTMODE_REF_SPAD_CHAR_WITH_PRE_VHV \
Charles MacNeill 5:89031b2f5316 418 ((VL53LX_DeviceTestMode) 0x08)
Charles MacNeill 5:89031b2f5316 419
Charles MacNeill 5:89031b2f5316 420 #define VL53LX_DEVICETESTMODE_REF_SPAD_CHAR_ONLY \
Charles MacNeill 5:89031b2f5316 421 ((VL53LX_DeviceTestMode) 0x09)
Charles MacNeill 5:89031b2f5316 422
Charles MacNeill 5:89031b2f5316 423
Charles MacNeill 5:89031b2f5316 424
Charles MacNeill 5:89031b2f5316 425
Charles MacNeill 5:89031b2f5316 426
Charles MacNeill 5:89031b2f5316 427
Charles MacNeill 5:89031b2f5316 428
Charles MacNeill 5:89031b2f5316 429 typedef uint8_t VL53LX_DeviceSscArray;
Charles MacNeill 5:89031b2f5316 430
Charles MacNeill 5:89031b2f5316 431 #define VL53LX_DEVICESSCARRAY_RTN ((VL53LX_DeviceSscArray) 0x00)
Charles MacNeill 5:89031b2f5316 432
Charles MacNeill 5:89031b2f5316 433 #define VL53LX_DEVICETESTMODE_REF ((VL53LX_DeviceSscArray) 0x01)
Charles MacNeill 5:89031b2f5316 434
Charles MacNeill 5:89031b2f5316 435
Charles MacNeill 5:89031b2f5316 436
Charles MacNeill 5:89031b2f5316 437
Charles MacNeill 5:89031b2f5316 438
Charles MacNeill 5:89031b2f5316 439
Charles MacNeill 5:89031b2f5316 440
Charles MacNeill 5:89031b2f5316 441 #define VL53LX_RETURN_ARRAY_ONLY 0x01
Charles MacNeill 5:89031b2f5316 442
Charles MacNeill 5:89031b2f5316 443 #define VL53LX_REFERENCE_ARRAY_ONLY 0x10
Charles MacNeill 5:89031b2f5316 444
Charles MacNeill 5:89031b2f5316 445 #define VL53LX_BOTH_RETURN_AND_REFERENCE_ARRAYS 0x11
Charles MacNeill 5:89031b2f5316 446
Charles MacNeill 5:89031b2f5316 447 #define VL53LX_NEITHER_RETURN_AND_REFERENCE_ARRAYS 0x00
Charles MacNeill 5:89031b2f5316 448
Charles MacNeill 5:89031b2f5316 449
Charles MacNeill 5:89031b2f5316 450
Charles MacNeill 5:89031b2f5316 451
Charles MacNeill 5:89031b2f5316 452
Charles MacNeill 5:89031b2f5316 453
Charles MacNeill 5:89031b2f5316 454 #define VL53LX_DEVICEINTERRUPTLEVEL_ACTIVE_HIGH 0x00
Charles MacNeill 5:89031b2f5316 455
Charles MacNeill 5:89031b2f5316 456 #define VL53LX_DEVICEINTERRUPTLEVEL_ACTIVE_LOW 0x10
Charles MacNeill 5:89031b2f5316 457
Charles MacNeill 5:89031b2f5316 458 #define VL53LX_DEVICEINTERRUPTLEVEL_ACTIVE_MASK 0x10
Charles MacNeill 5:89031b2f5316 459
Charles MacNeill 5:89031b2f5316 460
Charles MacNeill 5:89031b2f5316 461
Charles MacNeill 5:89031b2f5316 462
Charles MacNeill 5:89031b2f5316 463
Charles MacNeill 5:89031b2f5316 464
Charles MacNeill 5:89031b2f5316 465 #define VL53LX_POLLING_DELAY_US 1000
Charles MacNeill 5:89031b2f5316 466
Charles MacNeill 5:89031b2f5316 467 #define VL53LX_SOFTWARE_RESET_DURATION_US 100
Charles MacNeill 5:89031b2f5316 468
Charles MacNeill 5:89031b2f5316 469 #define VL53LX_FIRMWARE_BOOT_TIME_US 1200
Charles MacNeill 5:89031b2f5316 470
Charles MacNeill 5:89031b2f5316 471 #define VL53LX_ENABLE_POWERFORCE_SETTLING_TIME_US 250
Charles MacNeill 5:89031b2f5316 472
Charles MacNeill 5:89031b2f5316 473 #define VL53LX_SPAD_ARRAY_WIDTH 16
Charles MacNeill 5:89031b2f5316 474
Charles MacNeill 5:89031b2f5316 475 #define VL53LX_SPAD_ARRAY_HEIGHT 16
Charles MacNeill 5:89031b2f5316 476
Charles MacNeill 5:89031b2f5316 477 #define VL53LX_NVM_SIZE_IN_BYTES 512
Charles MacNeill 5:89031b2f5316 478
Charles MacNeill 5:89031b2f5316 479 #define VL53LX_NO_OF_SPAD_ENABLES 256
Charles MacNeill 5:89031b2f5316 480
Charles MacNeill 5:89031b2f5316 481 #define VL53LX_RTN_SPAD_BUFFER_SIZE 32
Charles MacNeill 5:89031b2f5316 482
Charles MacNeill 5:89031b2f5316 483 #define VL53LX_REF_SPAD_BUFFER_SIZE 6
Charles MacNeill 5:89031b2f5316 484
Charles MacNeill 5:89031b2f5316 485 #define VL53LX_AMBIENT_WINDOW_VCSEL_PERIODS 256
Charles MacNeill 5:89031b2f5316 486
Charles MacNeill 5:89031b2f5316 487 #define VL53LX_RANGING_WINDOW_VCSEL_PERIODS 2048
Charles MacNeill 5:89031b2f5316 488
Charles MacNeill 5:89031b2f5316 489 #define VL53LX_MACRO_PERIOD_VCSEL_PERIODS \
Charles MacNeill 5:89031b2f5316 490 (VL53LX_AMBIENT_WINDOW_VCSEL_PERIODS + \
Charles MacNeill 5:89031b2f5316 491 VL53LX_RANGING_WINDOW_VCSEL_PERIODS)
Charles MacNeill 5:89031b2f5316 492
Charles MacNeill 5:89031b2f5316 493 #define VL53LX_MAX_ALLOWED_PHASE 0xFFFF
Charles MacNeill 5:89031b2f5316 494
Charles MacNeill 5:89031b2f5316 495
Charles MacNeill 5:89031b2f5316 496 #define VL53LX_RTN_SPAD_UNITY_TRANSMISSION 0x0100
Charles MacNeill 5:89031b2f5316 497
Charles MacNeill 5:89031b2f5316 498 #define VL53LX_RTN_SPAD_APERTURE_TRANSMISSION 0x0038
Charles MacNeill 5:89031b2f5316 499
Charles MacNeill 5:89031b2f5316 500
Charles MacNeill 5:89031b2f5316 501 #define VL53LX_SPAD_TOTAL_COUNT_MAX ((0x01 << 29) - 1)
Charles MacNeill 5:89031b2f5316 502
Charles MacNeill 5:89031b2f5316 503 #define VL53LX_SPAD_TOTAL_COUNT_RES_THRES (0x01 << 24)
Charles MacNeill 5:89031b2f5316 504
Charles MacNeill 5:89031b2f5316 505 #define VL53LX_COUNT_RATE_INTERNAL_MAX ((0x01 << 24) - 1)
Charles MacNeill 5:89031b2f5316 506
Charles MacNeill 5:89031b2f5316 507 #define VL53LX_SPEED_OF_LIGHT_IN_AIR 299704
Charles MacNeill 5:89031b2f5316 508
Charles MacNeill 5:89031b2f5316 509 #define VL53LX_SPEED_OF_LIGHT_IN_AIR_DIV_8 (299704 >> 3)
Charles MacNeill 5:89031b2f5316 510
Charles MacNeill 5:89031b2f5316 511
Charles MacNeill 5:89031b2f5316 512
Charles MacNeill 5:89031b2f5316 513
Charles MacNeill 5:89031b2f5316 514
Charles MacNeill 5:89031b2f5316 515
Charles MacNeill 5:89031b2f5316 516
Charles MacNeill 5:89031b2f5316 517
Charles MacNeill 5:89031b2f5316 518 typedef uint8_t VL53LX_ZoneConfig_BinConfig_select;
Charles MacNeill 5:89031b2f5316 519
Charles MacNeill 5:89031b2f5316 520 #define VL53LX_ZONECONFIG_BINCONFIG__LOWAMB \
Charles MacNeill 5:89031b2f5316 521 ((VL53LX_ZoneConfig_BinConfig_select) 1)
Charles MacNeill 5:89031b2f5316 522 #define VL53LX_ZONECONFIG_BINCONFIG__MIDAMB \
Charles MacNeill 5:89031b2f5316 523 ((VL53LX_ZoneConfig_BinConfig_select) 2)
Charles MacNeill 5:89031b2f5316 524 #define VL53LX_ZONECONFIG_BINCONFIG__HIGHAMB \
Charles MacNeill 5:89031b2f5316 525 ((VL53LX_ZoneConfig_BinConfig_select) 3)
Charles MacNeill 5:89031b2f5316 526
Charles MacNeill 5:89031b2f5316 527
Charles MacNeill 5:89031b2f5316 528
Charles MacNeill 5:89031b2f5316 529
Charles MacNeill 5:89031b2f5316 530
Charles MacNeill 5:89031b2f5316 531 typedef uint8_t VL53LX_GPIO_Interrupt_Mode;
Charles MacNeill 5:89031b2f5316 532
Charles MacNeill 5:89031b2f5316 533 #define VL53LX_GPIOINTMODE_LEVEL_LOW \
Charles MacNeill 5:89031b2f5316 534 ((VL53LX_GPIO_Interrupt_Mode) 0)
Charles MacNeill 5:89031b2f5316 535
Charles MacNeill 5:89031b2f5316 536 #define VL53LX_GPIOINTMODE_LEVEL_HIGH \
Charles MacNeill 5:89031b2f5316 537 ((VL53LX_GPIO_Interrupt_Mode) 1)
Charles MacNeill 5:89031b2f5316 538
Charles MacNeill 5:89031b2f5316 539 #define VL53LX_GPIOINTMODE_OUT_OF_WINDOW \
Charles MacNeill 5:89031b2f5316 540 ((VL53LX_GPIO_Interrupt_Mode) 2)
Charles MacNeill 5:89031b2f5316 541
Charles MacNeill 5:89031b2f5316 542 #define VL53LX_GPIOINTMODE_IN_WINDOW \
Charles MacNeill 5:89031b2f5316 543 ((VL53LX_GPIO_Interrupt_Mode) 3)
Charles MacNeill 5:89031b2f5316 544
Charles MacNeill 5:89031b2f5316 545
Charles MacNeill 5:89031b2f5316 546
Charles MacNeill 5:89031b2f5316 547
Charles MacNeill 5:89031b2f5316 548
Charles MacNeill 5:89031b2f5316 549
Charles MacNeill 5:89031b2f5316 550 typedef uint16_t VL53LX_TuningParms;
Charles MacNeill 5:89031b2f5316 551
Charles MacNeill 5:89031b2f5316 552 #define VL53LX_TUNINGPARMS_LLD_PUBLIC_MIN_ADDRESS \
Charles MacNeill 5:89031b2f5316 553 ((VL53LX_TuningParms) VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS)
Charles MacNeill 5:89031b2f5316 554 #define VL53LX_TUNINGPARMS_LLD_PUBLIC_MAX_ADDRESS \
Charles MacNeill 5:89031b2f5316 555 ((VL53LX_TuningParms) VL53LX_TUNINGPARM_UWR_LONG_CORRECTION_ZONE_5_RANGEB)
Charles MacNeill 5:89031b2f5316 556
Charles MacNeill 5:89031b2f5316 557 #define VL53LX_TUNINGPARMS_LLD_PRIVATE_MIN_ADDRESS \
Charles MacNeill 5:89031b2f5316 558 ((VL53LX_TuningParms) VL53LX_TUNINGPARM_PRIVATE_PAGE_BASE_ADDRESS)
Charles MacNeill 5:89031b2f5316 559 #define VL53LX_TUNINGPARMS_LLD_PRIVATE_MAX_ADDRESS \
Charles MacNeill 5:89031b2f5316 560 ((VL53LX_TuningParms) VL53LX_TUNINGPARMS_LLD_PRIVATE_MIN_ADDRESS)
Charles MacNeill 5:89031b2f5316 561
Charles MacNeill 5:89031b2f5316 562 #define VL53LX_TUNINGPARM_VERSION \
Charles MacNeill 5:89031b2f5316 563 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 0))
Charles MacNeill 5:89031b2f5316 564 #define VL53LX_TUNINGPARM_KEY_TABLE_VERSION \
Charles MacNeill 5:89031b2f5316 565 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 1))
Charles MacNeill 5:89031b2f5316 566 #define VL53LX_TUNINGPARM_LLD_VERSION \
Charles MacNeill 5:89031b2f5316 567 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 2))
Charles MacNeill 5:89031b2f5316 568 #define VL53LX_TUNINGPARM_HIST_ALGO_SELECT \
Charles MacNeill 5:89031b2f5316 569 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 3))
Charles MacNeill 5:89031b2f5316 570 #define VL53LX_TUNINGPARM_HIST_TARGET_ORDER \
Charles MacNeill 5:89031b2f5316 571 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 4))
Charles MacNeill 5:89031b2f5316 572 #define VL53LX_TUNINGPARM_HIST_FILTER_WOI_0 \
Charles MacNeill 5:89031b2f5316 573 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 5))
Charles MacNeill 5:89031b2f5316 574 #define VL53LX_TUNINGPARM_HIST_FILTER_WOI_1 \
Charles MacNeill 5:89031b2f5316 575 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 6))
Charles MacNeill 5:89031b2f5316 576 #define VL53LX_TUNINGPARM_HIST_AMB_EST_METHOD \
Charles MacNeill 5:89031b2f5316 577 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 7))
Charles MacNeill 5:89031b2f5316 578 #define VL53LX_TUNINGPARM_HIST_AMB_THRESH_SIGMA_0 \
Charles MacNeill 5:89031b2f5316 579 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 8))
Charles MacNeill 5:89031b2f5316 580 #define VL53LX_TUNINGPARM_HIST_AMB_THRESH_SIGMA_1 \
Charles MacNeill 5:89031b2f5316 581 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 9))
Charles MacNeill 5:89031b2f5316 582 #define VL53LX_TUNINGPARM_HIST_MIN_AMB_THRESH_EVENTS \
Charles MacNeill 5:89031b2f5316 583 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 10))
Charles MacNeill 5:89031b2f5316 584 #define VL53LX_TUNINGPARM_HIST_AMB_EVENTS_SCALER \
Charles MacNeill 5:89031b2f5316 585 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 11))
Charles MacNeill 5:89031b2f5316 586 #define VL53LX_TUNINGPARM_HIST_NOISE_THRESHOLD \
Charles MacNeill 5:89031b2f5316 587 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 12))
Charles MacNeill 5:89031b2f5316 588 #define VL53LX_TUNINGPARM_HIST_SIGNAL_TOTAL_EVENTS_LIMIT \
Charles MacNeill 5:89031b2f5316 589 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 13))
Charles MacNeill 5:89031b2f5316 590 #define VL53LX_TUNINGPARM_HIST_SIGMA_EST_REF_MM \
Charles MacNeill 5:89031b2f5316 591 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 14))
Charles MacNeill 5:89031b2f5316 592 #define VL53LX_TUNINGPARM_HIST_SIGMA_THRESH_MM \
Charles MacNeill 5:89031b2f5316 593 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 15))
Charles MacNeill 5:89031b2f5316 594 #define VL53LX_TUNINGPARM_HIST_GAIN_FACTOR \
Charles MacNeill 5:89031b2f5316 595 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 16))
Charles MacNeill 5:89031b2f5316 596 #define VL53LX_TUNINGPARM_CONSISTENCY_HIST_PHASE_TOLERANCE \
Charles MacNeill 5:89031b2f5316 597 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 17))
Charles MacNeill 5:89031b2f5316 598 #define VL53LX_TUNINGPARM_CONSISTENCY_HIST_MIN_MAX_TOLERANCE_MM \
Charles MacNeill 5:89031b2f5316 599 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 18))
Charles MacNeill 5:89031b2f5316 600 #define VL53LX_TUNINGPARM_CONSISTENCY_HIST_EVENT_SIGMA \
Charles MacNeill 5:89031b2f5316 601 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 19))
Charles MacNeill 5:89031b2f5316 602 #define VL53LX_TUNINGPARM_CONSISTENCY_HIST_EVENT_SIGMA_MIN_SPAD_LIMIT \
Charles MacNeill 5:89031b2f5316 603 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 20))
Charles MacNeill 5:89031b2f5316 604 #define VL53LX_TUNINGPARM_INITIAL_PHASE_RTN_HISTO_LONG_RANGE \
Charles MacNeill 5:89031b2f5316 605 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 21))
Charles MacNeill 5:89031b2f5316 606 #define VL53LX_TUNINGPARM_INITIAL_PHASE_RTN_HISTO_MED_RANGE \
Charles MacNeill 5:89031b2f5316 607 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 22))
Charles MacNeill 5:89031b2f5316 608 #define VL53LX_TUNINGPARM_INITIAL_PHASE_RTN_HISTO_SHORT_RANGE \
Charles MacNeill 5:89031b2f5316 609 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 23))
Charles MacNeill 5:89031b2f5316 610 #define VL53LX_TUNINGPARM_INITIAL_PHASE_REF_HISTO_LONG_RANGE \
Charles MacNeill 5:89031b2f5316 611 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 24))
Charles MacNeill 5:89031b2f5316 612 #define VL53LX_TUNINGPARM_INITIAL_PHASE_REF_HISTO_MED_RANGE \
Charles MacNeill 5:89031b2f5316 613 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 25))
Charles MacNeill 5:89031b2f5316 614 #define VL53LX_TUNINGPARM_INITIAL_PHASE_REF_HISTO_SHORT_RANGE \
Charles MacNeill 5:89031b2f5316 615 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 26))
Charles MacNeill 5:89031b2f5316 616 #define VL53LX_TUNINGPARM_XTALK_DETECT_MIN_VALID_RANGE_MM \
Charles MacNeill 5:89031b2f5316 617 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 27))
Charles MacNeill 5:89031b2f5316 618 #define VL53LX_TUNINGPARM_XTALK_DETECT_MAX_VALID_RANGE_MM \
Charles MacNeill 5:89031b2f5316 619 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 28))
Charles MacNeill 5:89031b2f5316 620 #define VL53LX_TUNINGPARM_XTALK_DETECT_MAX_SIGMA_MM \
Charles MacNeill 5:89031b2f5316 621 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 29))
Charles MacNeill 5:89031b2f5316 622 #define VL53LX_TUNINGPARM_XTALK_DETECT_MIN_MAX_TOLERANCE \
Charles MacNeill 5:89031b2f5316 623 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 30))
Charles MacNeill 5:89031b2f5316 624 #define VL53LX_TUNINGPARM_XTALK_DETECT_MAX_VALID_RATE_KCPS \
Charles MacNeill 5:89031b2f5316 625 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 31))
Charles MacNeill 5:89031b2f5316 626 #define VL53LX_TUNINGPARM_XTALK_DETECT_EVENT_SIGMA \
Charles MacNeill 5:89031b2f5316 627 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 32))
Charles MacNeill 5:89031b2f5316 628 #define VL53LX_TUNINGPARM_HIST_XTALK_MARGIN_KCPS \
Charles MacNeill 5:89031b2f5316 629 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 33))
Charles MacNeill 5:89031b2f5316 630 #define VL53LX_TUNINGPARM_CONSISTENCY_LITE_PHASE_TOLERANCE \
Charles MacNeill 5:89031b2f5316 631 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 34))
Charles MacNeill 5:89031b2f5316 632 #define VL53LX_TUNINGPARM_PHASECAL_TARGET \
Charles MacNeill 5:89031b2f5316 633 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 35))
Charles MacNeill 5:89031b2f5316 634 #define VL53LX_TUNINGPARM_LITE_CAL_REPEAT_RATE \
Charles MacNeill 5:89031b2f5316 635 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 36))
Charles MacNeill 5:89031b2f5316 636 #define VL53LX_TUNINGPARM_LITE_RANGING_GAIN_FACTOR \
Charles MacNeill 5:89031b2f5316 637 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 37))
Charles MacNeill 5:89031b2f5316 638 #define VL53LX_TUNINGPARM_LITE_MIN_CLIP_MM \
Charles MacNeill 5:89031b2f5316 639 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 38))
Charles MacNeill 5:89031b2f5316 640 #define VL53LX_TUNINGPARM_LITE_LONG_SIGMA_THRESH_MM \
Charles MacNeill 5:89031b2f5316 641 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 39))
Charles MacNeill 5:89031b2f5316 642 #define VL53LX_TUNINGPARM_LITE_MED_SIGMA_THRESH_MM \
Charles MacNeill 5:89031b2f5316 643 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 40))
Charles MacNeill 5:89031b2f5316 644 #define VL53LX_TUNINGPARM_LITE_SHORT_SIGMA_THRESH_MM \
Charles MacNeill 5:89031b2f5316 645 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 41))
Charles MacNeill 5:89031b2f5316 646 #define VL53LX_TUNINGPARM_LITE_LONG_MIN_COUNT_RATE_RTN_MCPS \
Charles MacNeill 5:89031b2f5316 647 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 42))
Charles MacNeill 5:89031b2f5316 648 #define VL53LX_TUNINGPARM_LITE_MED_MIN_COUNT_RATE_RTN_MCPS \
Charles MacNeill 5:89031b2f5316 649 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 43))
Charles MacNeill 5:89031b2f5316 650 #define VL53LX_TUNINGPARM_LITE_SHORT_MIN_COUNT_RATE_RTN_MCPS \
Charles MacNeill 5:89031b2f5316 651 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 44))
Charles MacNeill 5:89031b2f5316 652 #define VL53LX_TUNINGPARM_LITE_SIGMA_EST_PULSE_WIDTH \
Charles MacNeill 5:89031b2f5316 653 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 45))
Charles MacNeill 5:89031b2f5316 654 #define VL53LX_TUNINGPARM_LITE_SIGMA_EST_AMB_WIDTH_NS \
Charles MacNeill 5:89031b2f5316 655 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 46))
Charles MacNeill 5:89031b2f5316 656 #define VL53LX_TUNINGPARM_LITE_SIGMA_REF_MM \
Charles MacNeill 5:89031b2f5316 657 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 47))
Charles MacNeill 5:89031b2f5316 658 #define VL53LX_TUNINGPARM_LITE_RIT_MULT \
Charles MacNeill 5:89031b2f5316 659 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 48))
Charles MacNeill 5:89031b2f5316 660 #define VL53LX_TUNINGPARM_LITE_SEED_CONFIG \
Charles MacNeill 5:89031b2f5316 661 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 49))
Charles MacNeill 5:89031b2f5316 662 #define VL53LX_TUNINGPARM_LITE_QUANTIFIER \
Charles MacNeill 5:89031b2f5316 663 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 50))
Charles MacNeill 5:89031b2f5316 664 #define VL53LX_TUNINGPARM_LITE_FIRST_ORDER_SELECT \
Charles MacNeill 5:89031b2f5316 665 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 51))
Charles MacNeill 5:89031b2f5316 666 #define VL53LX_TUNINGPARM_LITE_XTALK_MARGIN_KCPS \
Charles MacNeill 5:89031b2f5316 667 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 52))
Charles MacNeill 5:89031b2f5316 668 #define VL53LX_TUNINGPARM_INITIAL_PHASE_RTN_LITE_LONG_RANGE \
Charles MacNeill 5:89031b2f5316 669 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 53))
Charles MacNeill 5:89031b2f5316 670 #define VL53LX_TUNINGPARM_INITIAL_PHASE_RTN_LITE_MED_RANGE \
Charles MacNeill 5:89031b2f5316 671 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 54))
Charles MacNeill 5:89031b2f5316 672 #define VL53LX_TUNINGPARM_INITIAL_PHASE_RTN_LITE_SHORT_RANGE \
Charles MacNeill 5:89031b2f5316 673 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 55))
Charles MacNeill 5:89031b2f5316 674 #define VL53LX_TUNINGPARM_INITIAL_PHASE_REF_LITE_LONG_RANGE \
Charles MacNeill 5:89031b2f5316 675 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 56))
Charles MacNeill 5:89031b2f5316 676 #define VL53LX_TUNINGPARM_INITIAL_PHASE_REF_LITE_MED_RANGE \
Charles MacNeill 5:89031b2f5316 677 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 57))
Charles MacNeill 5:89031b2f5316 678 #define VL53LX_TUNINGPARM_INITIAL_PHASE_REF_LITE_SHORT_RANGE \
Charles MacNeill 5:89031b2f5316 679 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 58))
Charles MacNeill 5:89031b2f5316 680 #define VL53LX_TUNINGPARM_TIMED_SEED_CONFIG \
Charles MacNeill 5:89031b2f5316 681 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 59))
Charles MacNeill 5:89031b2f5316 682 #define VL53LX_TUNINGPARM_DMAX_CFG_SIGNAL_THRESH_SIGMA \
Charles MacNeill 5:89031b2f5316 683 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 60))
Charles MacNeill 5:89031b2f5316 684 #define VL53LX_TUNINGPARM_DMAX_CFG_REFLECTANCE_ARRAY_0 \
Charles MacNeill 5:89031b2f5316 685 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 61))
Charles MacNeill 5:89031b2f5316 686 #define VL53LX_TUNINGPARM_DMAX_CFG_REFLECTANCE_ARRAY_1 \
Charles MacNeill 5:89031b2f5316 687 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 62))
Charles MacNeill 5:89031b2f5316 688 #define VL53LX_TUNINGPARM_DMAX_CFG_REFLECTANCE_ARRAY_2 \
Charles MacNeill 5:89031b2f5316 689 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 63))
Charles MacNeill 5:89031b2f5316 690 #define VL53LX_TUNINGPARM_DMAX_CFG_REFLECTANCE_ARRAY_3 \
Charles MacNeill 5:89031b2f5316 691 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 64))
Charles MacNeill 5:89031b2f5316 692 #define VL53LX_TUNINGPARM_DMAX_CFG_REFLECTANCE_ARRAY_4 \
Charles MacNeill 5:89031b2f5316 693 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 65))
Charles MacNeill 5:89031b2f5316 694 #define VL53LX_TUNINGPARM_VHV_LOOPBOUND \
Charles MacNeill 5:89031b2f5316 695 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 66))
Charles MacNeill 5:89031b2f5316 696 #define VL53LX_TUNINGPARM_REFSPADCHAR_DEVICE_TEST_MODE \
Charles MacNeill 5:89031b2f5316 697 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 67))
Charles MacNeill 5:89031b2f5316 698 #define VL53LX_TUNINGPARM_REFSPADCHAR_VCSEL_PERIOD \
Charles MacNeill 5:89031b2f5316 699 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 68))
Charles MacNeill 5:89031b2f5316 700 #define VL53LX_TUNINGPARM_REFSPADCHAR_PHASECAL_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 701 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 69))
Charles MacNeill 5:89031b2f5316 702 #define VL53LX_TUNINGPARM_REFSPADCHAR_TARGET_COUNT_RATE_MCPS \
Charles MacNeill 5:89031b2f5316 703 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 70))
Charles MacNeill 5:89031b2f5316 704 #define VL53LX_TUNINGPARM_REFSPADCHAR_MIN_COUNTRATE_LIMIT_MCPS \
Charles MacNeill 5:89031b2f5316 705 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 71))
Charles MacNeill 5:89031b2f5316 706 #define VL53LX_TUNINGPARM_REFSPADCHAR_MAX_COUNTRATE_LIMIT_MCPS \
Charles MacNeill 5:89031b2f5316 707 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 72))
Charles MacNeill 5:89031b2f5316 708 #define VL53LX_TUNINGPARM_XTALK_EXTRACT_NUM_OF_SAMPLES \
Charles MacNeill 5:89031b2f5316 709 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 73))
Charles MacNeill 5:89031b2f5316 710 #define VL53LX_TUNINGPARM_XTALK_EXTRACT_MIN_FILTER_THRESH_MM \
Charles MacNeill 5:89031b2f5316 711 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 74))
Charles MacNeill 5:89031b2f5316 712 #define VL53LX_TUNINGPARM_XTALK_EXTRACT_MAX_FILTER_THRESH_MM \
Charles MacNeill 5:89031b2f5316 713 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 75))
Charles MacNeill 5:89031b2f5316 714 #define VL53LX_TUNINGPARM_XTALK_EXTRACT_DSS_RATE_MCPS \
Charles MacNeill 5:89031b2f5316 715 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 76))
Charles MacNeill 5:89031b2f5316 716 #define VL53LX_TUNINGPARM_XTALK_EXTRACT_PHASECAL_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 717 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 77))
Charles MacNeill 5:89031b2f5316 718 #define VL53LX_TUNINGPARM_XTALK_EXTRACT_MAX_VALID_RATE_KCPS \
Charles MacNeill 5:89031b2f5316 719 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 78))
Charles MacNeill 5:89031b2f5316 720 #define VL53LX_TUNINGPARM_XTALK_EXTRACT_SIGMA_THRESHOLD_MM \
Charles MacNeill 5:89031b2f5316 721 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 79))
Charles MacNeill 5:89031b2f5316 722 #define VL53LX_TUNINGPARM_XTALK_EXTRACT_DSS_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 723 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 80))
Charles MacNeill 5:89031b2f5316 724 #define VL53LX_TUNINGPARM_XTALK_EXTRACT_BIN_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 725 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 81))
Charles MacNeill 5:89031b2f5316 726 #define VL53LX_TUNINGPARM_OFFSET_CAL_DSS_RATE_MCPS \
Charles MacNeill 5:89031b2f5316 727 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 82))
Charles MacNeill 5:89031b2f5316 728 #define VL53LX_TUNINGPARM_OFFSET_CAL_PHASECAL_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 729 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 83))
Charles MacNeill 5:89031b2f5316 730 #define VL53LX_TUNINGPARM_OFFSET_CAL_MM_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 731 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 84))
Charles MacNeill 5:89031b2f5316 732 #define VL53LX_TUNINGPARM_OFFSET_CAL_RANGE_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 733 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 85))
Charles MacNeill 5:89031b2f5316 734 #define VL53LX_TUNINGPARM_OFFSET_CAL_PRE_SAMPLES \
Charles MacNeill 5:89031b2f5316 735 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 86))
Charles MacNeill 5:89031b2f5316 736 #define VL53LX_TUNINGPARM_OFFSET_CAL_MM1_SAMPLES \
Charles MacNeill 5:89031b2f5316 737 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 87))
Charles MacNeill 5:89031b2f5316 738 #define VL53LX_TUNINGPARM_OFFSET_CAL_MM2_SAMPLES \
Charles MacNeill 5:89031b2f5316 739 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 88))
Charles MacNeill 5:89031b2f5316 740 #define VL53LX_TUNINGPARM_ZONE_CAL_DSS_RATE_MCPS \
Charles MacNeill 5:89031b2f5316 741 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 89))
Charles MacNeill 5:89031b2f5316 742 #define VL53LX_TUNINGPARM_ZONE_CAL_PHASECAL_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 743 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 90))
Charles MacNeill 5:89031b2f5316 744 #define VL53LX_TUNINGPARM_ZONE_CAL_DSS_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 745 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 91))
Charles MacNeill 5:89031b2f5316 746 #define VL53LX_TUNINGPARM_ZONE_CAL_PHASECAL_NUM_SAMPLES \
Charles MacNeill 5:89031b2f5316 747 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 92))
Charles MacNeill 5:89031b2f5316 748 #define VL53LX_TUNINGPARM_ZONE_CAL_RANGE_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 749 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 93))
Charles MacNeill 5:89031b2f5316 750 #define VL53LX_TUNINGPARM_ZONE_CAL_ZONE_NUM_SAMPLES \
Charles MacNeill 5:89031b2f5316 751 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 94))
Charles MacNeill 5:89031b2f5316 752 #define VL53LX_TUNINGPARM_SPADMAP_VCSEL_PERIOD \
Charles MacNeill 5:89031b2f5316 753 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 95))
Charles MacNeill 5:89031b2f5316 754 #define VL53LX_TUNINGPARM_SPADMAP_VCSEL_START \
Charles MacNeill 5:89031b2f5316 755 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 96))
Charles MacNeill 5:89031b2f5316 756 #define VL53LX_TUNINGPARM_SPADMAP_RATE_LIMIT_MCPS \
Charles MacNeill 5:89031b2f5316 757 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 97))
Charles MacNeill 5:89031b2f5316 758 #define VL53LX_TUNINGPARM_LITE_DSS_CONFIG_TARGET_TOTAL_RATE_MCPS \
Charles MacNeill 5:89031b2f5316 759 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 98))
Charles MacNeill 5:89031b2f5316 760 #define VL53LX_TUNINGPARM_RANGING_DSS_CONFIG_TARGET_TOTAL_RATE_MCPS \
Charles MacNeill 5:89031b2f5316 761 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 99))
Charles MacNeill 5:89031b2f5316 762 #define VL53LX_TUNINGPARM_MZ_DSS_CONFIG_TARGET_TOTAL_RATE_MCPS \
Charles MacNeill 5:89031b2f5316 763 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 100))
Charles MacNeill 5:89031b2f5316 764 #define VL53LX_TUNINGPARM_TIMED_DSS_CONFIG_TARGET_TOTAL_RATE_MCPS \
Charles MacNeill 5:89031b2f5316 765 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 101))
Charles MacNeill 5:89031b2f5316 766 #define VL53LX_TUNINGPARM_LITE_PHASECAL_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 767 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 102))
Charles MacNeill 5:89031b2f5316 768 #define VL53LX_TUNINGPARM_RANGING_LONG_PHASECAL_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 769 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 103))
Charles MacNeill 5:89031b2f5316 770 #define VL53LX_TUNINGPARM_RANGING_MED_PHASECAL_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 771 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 104))
Charles MacNeill 5:89031b2f5316 772 #define VL53LX_TUNINGPARM_RANGING_SHORT_PHASECAL_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 773 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 105))
Charles MacNeill 5:89031b2f5316 774 #define VL53LX_TUNINGPARM_MZ_LONG_PHASECAL_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 775 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 106))
Charles MacNeill 5:89031b2f5316 776 #define VL53LX_TUNINGPARM_MZ_MED_PHASECAL_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 777 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 107))
Charles MacNeill 5:89031b2f5316 778 #define VL53LX_TUNINGPARM_MZ_SHORT_PHASECAL_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 779 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 108))
Charles MacNeill 5:89031b2f5316 780 #define VL53LX_TUNINGPARM_TIMED_PHASECAL_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 781 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 109))
Charles MacNeill 5:89031b2f5316 782 #define VL53LX_TUNINGPARM_LITE_MM_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 783 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 110))
Charles MacNeill 5:89031b2f5316 784 #define VL53LX_TUNINGPARM_RANGING_MM_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 785 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 111))
Charles MacNeill 5:89031b2f5316 786 #define VL53LX_TUNINGPARM_MZ_MM_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 787 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 112))
Charles MacNeill 5:89031b2f5316 788 #define VL53LX_TUNINGPARM_TIMED_MM_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 789 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 113))
Charles MacNeill 5:89031b2f5316 790 #define VL53LX_TUNINGPARM_LITE_RANGE_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 791 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 114))
Charles MacNeill 5:89031b2f5316 792 #define VL53LX_TUNINGPARM_RANGING_RANGE_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 793 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 115))
Charles MacNeill 5:89031b2f5316 794 #define VL53LX_TUNINGPARM_MZ_RANGE_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 795 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 116))
Charles MacNeill 5:89031b2f5316 796 #define VL53LX_TUNINGPARM_TIMED_RANGE_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 797 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 117))
Charles MacNeill 5:89031b2f5316 798 #define VL53LX_TUNINGPARM_DYNXTALK_SMUDGE_MARGIN \
Charles MacNeill 5:89031b2f5316 799 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 118))
Charles MacNeill 5:89031b2f5316 800 #define VL53LX_TUNINGPARM_DYNXTALK_NOISE_MARGIN \
Charles MacNeill 5:89031b2f5316 801 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 119))
Charles MacNeill 5:89031b2f5316 802 #define VL53LX_TUNINGPARM_DYNXTALK_XTALK_OFFSET_LIMIT \
Charles MacNeill 5:89031b2f5316 803 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 120))
Charles MacNeill 5:89031b2f5316 804 #define VL53LX_TUNINGPARM_DYNXTALK_XTALK_OFFSET_LIMIT_HI \
Charles MacNeill 5:89031b2f5316 805 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 121))
Charles MacNeill 5:89031b2f5316 806 #define VL53LX_TUNINGPARM_DYNXTALK_SAMPLE_LIMIT \
Charles MacNeill 5:89031b2f5316 807 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 122))
Charles MacNeill 5:89031b2f5316 808 #define VL53LX_TUNINGPARM_DYNXTALK_SINGLE_XTALK_DELTA \
Charles MacNeill 5:89031b2f5316 809 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 123))
Charles MacNeill 5:89031b2f5316 810 #define VL53LX_TUNINGPARM_DYNXTALK_AVERAGED_XTALK_DELTA \
Charles MacNeill 5:89031b2f5316 811 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 124))
Charles MacNeill 5:89031b2f5316 812 #define VL53LX_TUNINGPARM_DYNXTALK_CLIP_LIMIT \
Charles MacNeill 5:89031b2f5316 813 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 125))
Charles MacNeill 5:89031b2f5316 814 #define VL53LX_TUNINGPARM_DYNXTALK_SCALER_CALC_METHOD \
Charles MacNeill 5:89031b2f5316 815 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 126))
Charles MacNeill 5:89031b2f5316 816 #define VL53LX_TUNINGPARM_DYNXTALK_XGRADIENT_SCALER \
Charles MacNeill 5:89031b2f5316 817 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 127))
Charles MacNeill 5:89031b2f5316 818 #define VL53LX_TUNINGPARM_DYNXTALK_YGRADIENT_SCALER \
Charles MacNeill 5:89031b2f5316 819 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 128))
Charles MacNeill 5:89031b2f5316 820 #define VL53LX_TUNINGPARM_DYNXTALK_USER_SCALER_SET \
Charles MacNeill 5:89031b2f5316 821 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 129))
Charles MacNeill 5:89031b2f5316 822 #define VL53LX_TUNINGPARM_DYNXTALK_SMUDGE_COR_SINGLE_APPLY \
Charles MacNeill 5:89031b2f5316 823 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 130))
Charles MacNeill 5:89031b2f5316 824 #define VL53LX_TUNINGPARM_DYNXTALK_XTALK_AMB_THRESHOLD \
Charles MacNeill 5:89031b2f5316 825 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 131))
Charles MacNeill 5:89031b2f5316 826 #define VL53LX_TUNINGPARM_DYNXTALK_NODETECT_AMB_THRESHOLD_KCPS \
Charles MacNeill 5:89031b2f5316 827 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 132))
Charles MacNeill 5:89031b2f5316 828 #define VL53LX_TUNINGPARM_DYNXTALK_NODETECT_SAMPLE_LIMIT \
Charles MacNeill 5:89031b2f5316 829 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 133))
Charles MacNeill 5:89031b2f5316 830 #define VL53LX_TUNINGPARM_DYNXTALK_NODETECT_XTALK_OFFSET_KCPS \
Charles MacNeill 5:89031b2f5316 831 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 134))
Charles MacNeill 5:89031b2f5316 832 #define VL53LX_TUNINGPARM_DYNXTALK_NODETECT_MIN_RANGE_MM \
Charles MacNeill 5:89031b2f5316 833 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 135))
Charles MacNeill 5:89031b2f5316 834 #define VL53LX_TUNINGPARM_LOWPOWERAUTO_VHV_LOOP_BOUND \
Charles MacNeill 5:89031b2f5316 835 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 136))
Charles MacNeill 5:89031b2f5316 836 #define VL53LX_TUNINGPARM_LOWPOWERAUTO_MM_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 837 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 137))
Charles MacNeill 5:89031b2f5316 838 #define VL53LX_TUNINGPARM_LOWPOWERAUTO_RANGE_CONFIG_TIMEOUT_US \
Charles MacNeill 5:89031b2f5316 839 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 138))
Charles MacNeill 5:89031b2f5316 840 #define VL53LX_TUNINGPARM_VERY_SHORT_DSS_RATE_MCPS \
Charles MacNeill 5:89031b2f5316 841 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 139))
Charles MacNeill 5:89031b2f5316 842 #define VL53LX_TUNINGPARM_PHASECAL_PATCH_POWER \
Charles MacNeill 5:89031b2f5316 843 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 140))
Charles MacNeill 5:89031b2f5316 844 #define VL53LX_TUNINGPARM_HIST_MERGE \
Charles MacNeill 5:89031b2f5316 845 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 141))
Charles MacNeill 5:89031b2f5316 846 #define VL53LX_TUNINGPARM_RESET_MERGE_THRESHOLD \
Charles MacNeill 5:89031b2f5316 847 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 142))
Charles MacNeill 5:89031b2f5316 848 #define VL53LX_TUNINGPARM_HIST_MERGE_MAX_SIZE \
Charles MacNeill 5:89031b2f5316 849 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 143))
Charles MacNeill 5:89031b2f5316 850 #define VL53LX_TUNINGPARM_DYNXTALK_MAX_SMUDGE_FACTOR \
Charles MacNeill 5:89031b2f5316 851 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 144))
Charles MacNeill 5:89031b2f5316 852 #define VL53LX_TUNINGPARM_UWR_ENABLE \
Charles MacNeill 5:89031b2f5316 853 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 145))
Charles MacNeill 5:89031b2f5316 854 #define VL53LX_TUNINGPARM_UWR_MEDIUM_ZONE_1_MIN \
Charles MacNeill 5:89031b2f5316 855 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 146))
Charles MacNeill 5:89031b2f5316 856 #define VL53LX_TUNINGPARM_UWR_MEDIUM_ZONE_1_MAX \
Charles MacNeill 5:89031b2f5316 857 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 147))
Charles MacNeill 5:89031b2f5316 858 #define VL53LX_TUNINGPARM_UWR_MEDIUM_ZONE_2_MIN \
Charles MacNeill 5:89031b2f5316 859 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 148))
Charles MacNeill 5:89031b2f5316 860 #define VL53LX_TUNINGPARM_UWR_MEDIUM_ZONE_2_MAX \
Charles MacNeill 5:89031b2f5316 861 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 149))
Charles MacNeill 5:89031b2f5316 862 #define VL53LX_TUNINGPARM_UWR_MEDIUM_ZONE_3_MIN \
Charles MacNeill 5:89031b2f5316 863 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 150))
Charles MacNeill 5:89031b2f5316 864 #define VL53LX_TUNINGPARM_UWR_MEDIUM_ZONE_3_MAX \
Charles MacNeill 5:89031b2f5316 865 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 151))
Charles MacNeill 5:89031b2f5316 866 #define VL53LX_TUNINGPARM_UWR_MEDIUM_ZONE_4_MIN \
Charles MacNeill 5:89031b2f5316 867 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 152))
Charles MacNeill 5:89031b2f5316 868 #define VL53LX_TUNINGPARM_UWR_MEDIUM_ZONE_4_MAX \
Charles MacNeill 5:89031b2f5316 869 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 153))
Charles MacNeill 5:89031b2f5316 870 #define VL53LX_TUNINGPARM_UWR_MEDIUM_ZONE_5_MIN \
Charles MacNeill 5:89031b2f5316 871 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 154))
Charles MacNeill 5:89031b2f5316 872 #define VL53LX_TUNINGPARM_UWR_MEDIUM_ZONE_5_MAX \
Charles MacNeill 5:89031b2f5316 873 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 155))
Charles MacNeill 5:89031b2f5316 874 #define VL53LX_TUNINGPARM_UWR_MEDIUM_CORRECTION_ZONE_1_RANGEA \
Charles MacNeill 5:89031b2f5316 875 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 156))
Charles MacNeill 5:89031b2f5316 876 #define VL53LX_TUNINGPARM_UWR_MEDIUM_CORRECTION_ZONE_1_RANGEB \
Charles MacNeill 5:89031b2f5316 877 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 157))
Charles MacNeill 5:89031b2f5316 878 #define VL53LX_TUNINGPARM_UWR_MEDIUM_CORRECTION_ZONE_2_RANGEA \
Charles MacNeill 5:89031b2f5316 879 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 158))
Charles MacNeill 5:89031b2f5316 880 #define VL53LX_TUNINGPARM_UWR_MEDIUM_CORRECTION_ZONE_2_RANGEB \
Charles MacNeill 5:89031b2f5316 881 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 159))
Charles MacNeill 5:89031b2f5316 882 #define VL53LX_TUNINGPARM_UWR_MEDIUM_CORRECTION_ZONE_3_RANGEA \
Charles MacNeill 5:89031b2f5316 883 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 160))
Charles MacNeill 5:89031b2f5316 884 #define VL53LX_TUNINGPARM_UWR_MEDIUM_CORRECTION_ZONE_3_RANGEB \
Charles MacNeill 5:89031b2f5316 885 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 161))
Charles MacNeill 5:89031b2f5316 886 #define VL53LX_TUNINGPARM_UWR_MEDIUM_CORRECTION_ZONE_4_RANGEA \
Charles MacNeill 5:89031b2f5316 887 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 162))
Charles MacNeill 5:89031b2f5316 888 #define VL53LX_TUNINGPARM_UWR_MEDIUM_CORRECTION_ZONE_4_RANGEB \
Charles MacNeill 5:89031b2f5316 889 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 163))
Charles MacNeill 5:89031b2f5316 890 #define VL53LX_TUNINGPARM_UWR_MEDIUM_CORRECTION_ZONE_5_RANGEA \
Charles MacNeill 5:89031b2f5316 891 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 164))
Charles MacNeill 5:89031b2f5316 892 #define VL53LX_TUNINGPARM_UWR_MEDIUM_CORRECTION_ZONE_5_RANGEB \
Charles MacNeill 5:89031b2f5316 893 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 165))
Charles MacNeill 5:89031b2f5316 894 #define VL53LX_TUNINGPARM_UWR_LONG_ZONE_1_MIN \
Charles MacNeill 5:89031b2f5316 895 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 166))
Charles MacNeill 5:89031b2f5316 896 #define VL53LX_TUNINGPARM_UWR_LONG_ZONE_1_MAX \
Charles MacNeill 5:89031b2f5316 897 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 167))
Charles MacNeill 5:89031b2f5316 898 #define VL53LX_TUNINGPARM_UWR_LONG_ZONE_2_MIN \
Charles MacNeill 5:89031b2f5316 899 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 168))
Charles MacNeill 5:89031b2f5316 900 #define VL53LX_TUNINGPARM_UWR_LONG_ZONE_2_MAX \
Charles MacNeill 5:89031b2f5316 901 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 169))
Charles MacNeill 5:89031b2f5316 902 #define VL53LX_TUNINGPARM_UWR_LONG_ZONE_3_MIN \
Charles MacNeill 5:89031b2f5316 903 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 170))
Charles MacNeill 5:89031b2f5316 904 #define VL53LX_TUNINGPARM_UWR_LONG_ZONE_3_MAX \
Charles MacNeill 5:89031b2f5316 905 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 171))
Charles MacNeill 5:89031b2f5316 906 #define VL53LX_TUNINGPARM_UWR_LONG_ZONE_4_MIN \
Charles MacNeill 5:89031b2f5316 907 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 172))
Charles MacNeill 5:89031b2f5316 908 #define VL53LX_TUNINGPARM_UWR_LONG_ZONE_4_MAX \
Charles MacNeill 5:89031b2f5316 909 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 173))
Charles MacNeill 5:89031b2f5316 910 #define VL53LX_TUNINGPARM_UWR_LONG_ZONE_5_MIN \
Charles MacNeill 5:89031b2f5316 911 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 174))
Charles MacNeill 5:89031b2f5316 912 #define VL53LX_TUNINGPARM_UWR_LONG_ZONE_5_MAX \
Charles MacNeill 5:89031b2f5316 913 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 175))
Charles MacNeill 5:89031b2f5316 914 #define VL53LX_TUNINGPARM_UWR_LONG_CORRECTION_ZONE_1_RANGEA \
Charles MacNeill 5:89031b2f5316 915 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 176))
Charles MacNeill 5:89031b2f5316 916 #define VL53LX_TUNINGPARM_UWR_LONG_CORRECTION_ZONE_1_RANGEB \
Charles MacNeill 5:89031b2f5316 917 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 177))
Charles MacNeill 5:89031b2f5316 918 #define VL53LX_TUNINGPARM_UWR_LONG_CORRECTION_ZONE_2_RANGEA \
Charles MacNeill 5:89031b2f5316 919 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 178))
Charles MacNeill 5:89031b2f5316 920 #define VL53LX_TUNINGPARM_UWR_LONG_CORRECTION_ZONE_2_RANGEB \
Charles MacNeill 5:89031b2f5316 921 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 179))
Charles MacNeill 5:89031b2f5316 922 #define VL53LX_TUNINGPARM_UWR_LONG_CORRECTION_ZONE_3_RANGEA \
Charles MacNeill 5:89031b2f5316 923 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 180))
Charles MacNeill 5:89031b2f5316 924 #define VL53LX_TUNINGPARM_UWR_LONG_CORRECTION_ZONE_3_RANGEB \
Charles MacNeill 5:89031b2f5316 925 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 181))
Charles MacNeill 5:89031b2f5316 926 #define VL53LX_TUNINGPARM_UWR_LONG_CORRECTION_ZONE_4_RANGEA \
Charles MacNeill 5:89031b2f5316 927 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 182))
Charles MacNeill 5:89031b2f5316 928 #define VL53LX_TUNINGPARM_UWR_LONG_CORRECTION_ZONE_4_RANGEB \
Charles MacNeill 5:89031b2f5316 929 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 183))
Charles MacNeill 5:89031b2f5316 930 #define VL53LX_TUNINGPARM_UWR_LONG_CORRECTION_ZONE_5_RANGEA \
Charles MacNeill 5:89031b2f5316 931 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 184))
Charles MacNeill 5:89031b2f5316 932 #define VL53LX_TUNINGPARM_UWR_LONG_CORRECTION_ZONE_5_RANGEB \
Charles MacNeill 5:89031b2f5316 933 ((VL53LX_TuningParms) (VL53LX_TUNINGPARM_PUBLIC_PAGE_BASE_ADDRESS + 185))
Charles MacNeill 5:89031b2f5316 934
Charles MacNeill 5:89031b2f5316 935
Charles MacNeill 5:89031b2f5316 936
Charles MacNeill 5:89031b2f5316 937
Charles MacNeill 5:89031b2f5316 938 #endif
Charles MacNeill 5:89031b2f5316 939
Charles MacNeill 5:89031b2f5316 940
Charles MacNeill 5:89031b2f5316 941
Charles MacNeill 5:89031b2f5316 942
Charles MacNeill 5:89031b2f5316 943