Fork Charles's library
Dependencies: X_NUCLEO_COMMON ST_INTERFACES
Dependents: VL53L3ExpansionBoard
vl53lx_error_codes.h@3:316175f392f7, 2020-11-03 (annotated)
- Committer:
- johnAlexander
- Date:
- Tue Nov 03 15:16:36 2020 +0000
- Revision:
- 3:316175f392f7
- Parent:
- vl53l3inc/vl53lx_error_codes.h@0:0be0bd219e72
Add ST common libs
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
charlesmn | 0:0be0bd219e72 | 1 | /****************************************************************************** |
charlesmn | 0:0be0bd219e72 | 2 | * Copyright (c) 2019, STMicroelectronics - All Rights Reserved |
charlesmn | 0:0be0bd219e72 | 3 | |
charlesmn | 0:0be0bd219e72 | 4 | This file is part of VL53LX Core and is dual licensed, |
charlesmn | 0:0be0bd219e72 | 5 | either 'STMicroelectronics Proprietary license' |
charlesmn | 0:0be0bd219e72 | 6 | or 'BSD 3-clause "New" or "Revised" License' , at your option. |
charlesmn | 0:0be0bd219e72 | 7 | |
charlesmn | 0:0be0bd219e72 | 8 | ****************************************************************************** |
charlesmn | 0:0be0bd219e72 | 9 | |
charlesmn | 0:0be0bd219e72 | 10 | 'STMicroelectronics Proprietary license' |
charlesmn | 0:0be0bd219e72 | 11 | |
charlesmn | 0:0be0bd219e72 | 12 | ******************************************************************************* |
charlesmn | 0:0be0bd219e72 | 13 | |
charlesmn | 0:0be0bd219e72 | 14 | License terms: STMicroelectronics Proprietary in accordance with licensing |
charlesmn | 0:0be0bd219e72 | 15 | terms at www.st.com/sla0081 |
charlesmn | 0:0be0bd219e72 | 16 | |
charlesmn | 0:0be0bd219e72 | 17 | STMicroelectronics confidential |
charlesmn | 0:0be0bd219e72 | 18 | Reproduction and Communication of this document is strictly prohibited unless |
charlesmn | 0:0be0bd219e72 | 19 | specifically authorized in writing by STMicroelectronics. |
charlesmn | 0:0be0bd219e72 | 20 | |
charlesmn | 0:0be0bd219e72 | 21 | |
charlesmn | 0:0be0bd219e72 | 22 | ******************************************************************************* |
charlesmn | 0:0be0bd219e72 | 23 | |
charlesmn | 0:0be0bd219e72 | 24 | Alternatively, VL53LX Core may be distributed under the terms of |
charlesmn | 0:0be0bd219e72 | 25 | 'BSD 3-clause "New" or "Revised" License', in which case the following |
charlesmn | 0:0be0bd219e72 | 26 | provisions apply instead of the ones mentioned above : |
charlesmn | 0:0be0bd219e72 | 27 | |
charlesmn | 0:0be0bd219e72 | 28 | ******************************************************************************* |
charlesmn | 0:0be0bd219e72 | 29 | |
charlesmn | 0:0be0bd219e72 | 30 | License terms: BSD 3-clause "New" or "Revised" License. |
charlesmn | 0:0be0bd219e72 | 31 | |
charlesmn | 0:0be0bd219e72 | 32 | Redistribution and use in source and binary forms, with or without |
charlesmn | 0:0be0bd219e72 | 33 | modification, are permitted provided that the following conditions are met: |
charlesmn | 0:0be0bd219e72 | 34 | |
charlesmn | 0:0be0bd219e72 | 35 | 1. Redistributions of source code must retain the above copyright notice, this |
charlesmn | 0:0be0bd219e72 | 36 | list of conditions and the following disclaimer. |
charlesmn | 0:0be0bd219e72 | 37 | |
charlesmn | 0:0be0bd219e72 | 38 | 2. Redistributions in binary form must reproduce the above copyright notice, |
charlesmn | 0:0be0bd219e72 | 39 | this list of conditions and the following disclaimer in the documentation |
charlesmn | 0:0be0bd219e72 | 40 | and/or other materials provided with the distribution. |
charlesmn | 0:0be0bd219e72 | 41 | |
charlesmn | 0:0be0bd219e72 | 42 | 3. Neither the name of the copyright holder nor the names of its contributors |
charlesmn | 0:0be0bd219e72 | 43 | may be used to endorse or promote products derived from this software |
charlesmn | 0:0be0bd219e72 | 44 | without specific prior written permission. |
charlesmn | 0:0be0bd219e72 | 45 | |
charlesmn | 0:0be0bd219e72 | 46 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
charlesmn | 0:0be0bd219e72 | 47 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
charlesmn | 0:0be0bd219e72 | 48 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
charlesmn | 0:0be0bd219e72 | 49 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE |
charlesmn | 0:0be0bd219e72 | 50 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
charlesmn | 0:0be0bd219e72 | 51 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
charlesmn | 0:0be0bd219e72 | 52 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
charlesmn | 0:0be0bd219e72 | 53 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
charlesmn | 0:0be0bd219e72 | 54 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
charlesmn | 0:0be0bd219e72 | 55 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
charlesmn | 0:0be0bd219e72 | 56 | |
charlesmn | 0:0be0bd219e72 | 57 | |
charlesmn | 0:0be0bd219e72 | 58 | ******************************************************************************* |
charlesmn | 0:0be0bd219e72 | 59 | */ |
charlesmn | 0:0be0bd219e72 | 60 | |
charlesmn | 0:0be0bd219e72 | 61 | /** |
charlesmn | 0:0be0bd219e72 | 62 | * @file vl53lx_error_codes.h |
charlesmn | 0:0be0bd219e72 | 63 | * |
charlesmn | 0:0be0bd219e72 | 64 | * @brief Error Code definitions for VL53LX API. |
charlesmn | 0:0be0bd219e72 | 65 | * |
charlesmn | 0:0be0bd219e72 | 66 | */ |
charlesmn | 0:0be0bd219e72 | 67 | |
charlesmn | 0:0be0bd219e72 | 68 | #ifndef _VL53LX_ERROR_CODES_H_ |
charlesmn | 0:0be0bd219e72 | 69 | #define _VL53LX_ERROR_CODES_H_ |
charlesmn | 0:0be0bd219e72 | 70 | |
charlesmn | 0:0be0bd219e72 | 71 | #include "vl53lx_types.h" |
charlesmn | 0:0be0bd219e72 | 72 | |
charlesmn | 0:0be0bd219e72 | 73 | #ifdef __cplusplus |
charlesmn | 0:0be0bd219e72 | 74 | extern "C" { |
charlesmn | 0:0be0bd219e72 | 75 | #endif |
charlesmn | 0:0be0bd219e72 | 76 | |
charlesmn | 0:0be0bd219e72 | 77 | |
charlesmn | 0:0be0bd219e72 | 78 | /* |
charlesmn | 0:0be0bd219e72 | 79 | **************************************** |
charlesmn | 0:0be0bd219e72 | 80 | * PRIVATE define do not edit |
charlesmn | 0:0be0bd219e72 | 81 | *************************************** |
charlesmn | 0:0be0bd219e72 | 82 | */ |
charlesmn | 0:0be0bd219e72 | 83 | |
charlesmn | 0:0be0bd219e72 | 84 | /* |
charlesmn | 0:0be0bd219e72 | 85 | * @defgroup VL53LX_define_Error_group Error and Warning code returned by API |
charlesmn | 0:0be0bd219e72 | 86 | * The following DEFINE are used to identify the PAL ERROR |
charlesmn | 0:0be0bd219e72 | 87 | * @{ |
charlesmn | 0:0be0bd219e72 | 88 | */ |
charlesmn | 0:0be0bd219e72 | 89 | |
charlesmn | 0:0be0bd219e72 | 90 | typedef int8_t VL53LX_Error; |
charlesmn | 0:0be0bd219e72 | 91 | |
charlesmn | 0:0be0bd219e72 | 92 | #define VL53LX_ERROR_NONE ((VL53LX_Error) 0) |
charlesmn | 0:0be0bd219e72 | 93 | #define VL53LX_ERROR_CALIBRATION_WARNING ((VL53LX_Error) - 1) |
charlesmn | 0:0be0bd219e72 | 94 | /*!< Warning invalid calibration data may be in used |
charlesmn | 0:0be0bd219e72 | 95 | * \a VL53LX_InitData() |
charlesmn | 0:0be0bd219e72 | 96 | * \a VL53LX_GetOffsetCalibrationData |
charlesmn | 0:0be0bd219e72 | 97 | * \a VL53LX_SetOffsetCalibrationData |
charlesmn | 0:0be0bd219e72 | 98 | */ |
charlesmn | 0:0be0bd219e72 | 99 | #define VL53LX_ERROR_MIN_CLIPPED ((VL53LX_Error) - 2) |
charlesmn | 0:0be0bd219e72 | 100 | /*!< Warning parameter passed was clipped to min before to be applied */ |
charlesmn | 0:0be0bd219e72 | 101 | |
charlesmn | 0:0be0bd219e72 | 102 | #define VL53LX_ERROR_UNDEFINED ((VL53LX_Error) - 3) |
charlesmn | 0:0be0bd219e72 | 103 | /*!< Unqualified error */ |
charlesmn | 0:0be0bd219e72 | 104 | #define VL53LX_ERROR_INVALID_PARAMS ((VL53LX_Error) - 4) |
charlesmn | 0:0be0bd219e72 | 105 | /*!< Parameter passed is invalid or out of range */ |
charlesmn | 0:0be0bd219e72 | 106 | #define VL53LX_ERROR_NOT_SUPPORTED ((VL53LX_Error) - 5) |
charlesmn | 0:0be0bd219e72 | 107 | /*!< Function is not supported in current mode or configuration */ |
charlesmn | 0:0be0bd219e72 | 108 | #define VL53LX_ERROR_RANGE_ERROR ((VL53LX_Error) - 6) |
charlesmn | 0:0be0bd219e72 | 109 | /*!< Device report a ranging error interrupt status */ |
charlesmn | 0:0be0bd219e72 | 110 | #define VL53LX_ERROR_TIME_OUT ((VL53LX_Error) - 7) |
charlesmn | 0:0be0bd219e72 | 111 | /*!< Aborted due to time out */ |
charlesmn | 0:0be0bd219e72 | 112 | #define VL53LX_ERROR_MODE_NOT_SUPPORTED ((VL53LX_Error) - 8) |
charlesmn | 0:0be0bd219e72 | 113 | /*!< Asked mode is not supported by the device */ |
charlesmn | 0:0be0bd219e72 | 114 | #define VL53LX_ERROR_BUFFER_TOO_SMALL ((VL53LX_Error) - 9) |
charlesmn | 0:0be0bd219e72 | 115 | /*!< ... */ |
charlesmn | 0:0be0bd219e72 | 116 | #define VL53LX_ERROR_COMMS_BUFFER_TOO_SMALL ((VL53LX_Error) - 10) |
charlesmn | 0:0be0bd219e72 | 117 | /*!< Supplied buffer is larger than I2C supports */ |
charlesmn | 0:0be0bd219e72 | 118 | #define VL53LX_ERROR_GPIO_NOT_EXISTING ((VL53LX_Error) - 11) |
charlesmn | 0:0be0bd219e72 | 119 | /*!< User tried to setup a non-existing GPIO pin */ |
charlesmn | 0:0be0bd219e72 | 120 | #define VL53LX_ERROR_GPIO_FUNCTIONALITY_NOT_SUPPORTED ((VL53LX_Error) - 12) |
charlesmn | 0:0be0bd219e72 | 121 | /*!< unsupported GPIO functionality */ |
charlesmn | 0:0be0bd219e72 | 122 | #define VL53LX_ERROR_CONTROL_INTERFACE ((VL53LX_Error) - 13) |
charlesmn | 0:0be0bd219e72 | 123 | /*!< error reported from IO functions */ |
charlesmn | 0:0be0bd219e72 | 124 | #define VL53LX_ERROR_INVALID_COMMAND ((VL53LX_Error) - 14) |
charlesmn | 0:0be0bd219e72 | 125 | /*!< The command is not allowed in the current device state |
charlesmn | 0:0be0bd219e72 | 126 | * (power down) |
charlesmn | 0:0be0bd219e72 | 127 | */ |
charlesmn | 0:0be0bd219e72 | 128 | #define VL53LX_ERROR_DIVISION_BY_ZERO ((VL53LX_Error) - 15) |
charlesmn | 0:0be0bd219e72 | 129 | /*!< In the function a division by zero occurs */ |
charlesmn | 0:0be0bd219e72 | 130 | #define VL53LX_ERROR_REF_SPAD_INIT ((VL53LX_Error) - 16) |
charlesmn | 0:0be0bd219e72 | 131 | /*!< Error during reference SPAD initialization */ |
charlesmn | 0:0be0bd219e72 | 132 | #define VL53LX_ERROR_GPH_SYNC_CHECK_FAIL ((VL53LX_Error) - 17) |
charlesmn | 0:0be0bd219e72 | 133 | /*!< GPH sync interrupt check fail - API out of sync with device*/ |
charlesmn | 0:0be0bd219e72 | 134 | #define VL53LX_ERROR_STREAM_COUNT_CHECK_FAIL ((VL53LX_Error) - 18) |
charlesmn | 0:0be0bd219e72 | 135 | /*!< Stream count check fail - API out of sync with device */ |
charlesmn | 0:0be0bd219e72 | 136 | #define VL53LX_ERROR_GPH_ID_CHECK_FAIL ((VL53LX_Error) - 19) |
charlesmn | 0:0be0bd219e72 | 137 | /*!< GPH ID check fail - API out of sync with device */ |
charlesmn | 0:0be0bd219e72 | 138 | #define VL53LX_ERROR_ZONE_STREAM_COUNT_CHECK_FAIL ((VL53LX_Error) - 20) |
charlesmn | 0:0be0bd219e72 | 139 | /*!< Zone dynamic config stream count check failed - API out of sync */ |
charlesmn | 0:0be0bd219e72 | 140 | #define VL53LX_ERROR_ZONE_GPH_ID_CHECK_FAIL ((VL53LX_Error) - 21) |
charlesmn | 0:0be0bd219e72 | 141 | /*!< Zone dynamic config GPH ID check failed - API out of sync */ |
charlesmn | 0:0be0bd219e72 | 142 | |
charlesmn | 0:0be0bd219e72 | 143 | #define VL53LX_ERROR_XTALK_EXTRACTION_NO_SAMPLE_FAIL ((VL53LX_Error) - 22) |
charlesmn | 0:0be0bd219e72 | 144 | /*!< Thrown when run_xtalk_extraction fn has 0 succesful samples |
charlesmn | 0:0be0bd219e72 | 145 | * when using the full array to sample the xtalk. In this case there is |
charlesmn | 0:0be0bd219e72 | 146 | * not enough information to generate new Xtalk parm info. The function |
charlesmn | 0:0be0bd219e72 | 147 | * will exit and leave the current xtalk parameters unaltered |
charlesmn | 0:0be0bd219e72 | 148 | */ |
charlesmn | 0:0be0bd219e72 | 149 | #define VL53LX_ERROR_XTALK_EXTRACTION_SIGMA_LIMIT_FAIL ((VL53LX_Error) - 23) |
charlesmn | 0:0be0bd219e72 | 150 | /*!< Thrown when run_xtalk_extraction fn has found that the |
charlesmn | 0:0be0bd219e72 | 151 | * avg sigma estimate of the full array xtalk sample is > than the |
charlesmn | 0:0be0bd219e72 | 152 | * maximal limit allowed. In this case the xtalk sample is too noisy for |
charlesmn | 0:0be0bd219e72 | 153 | * measurement. The function will exit and leave the current xtalk |
charlesmn | 0:0be0bd219e72 | 154 | * parameters unaltered. |
charlesmn | 0:0be0bd219e72 | 155 | */ |
charlesmn | 0:0be0bd219e72 | 156 | |
charlesmn | 0:0be0bd219e72 | 157 | |
charlesmn | 0:0be0bd219e72 | 158 | #define VL53LX_ERROR_OFFSET_CAL_NO_SAMPLE_FAIL ((VL53LX_Error) - 24) |
charlesmn | 0:0be0bd219e72 | 159 | /*!< Thrown if there one of stages has no valid offset calibration |
charlesmn | 0:0be0bd219e72 | 160 | * samples. A fatal error calibration not valid |
charlesmn | 0:0be0bd219e72 | 161 | */ |
charlesmn | 0:0be0bd219e72 | 162 | #define VL53LX_ERROR_OFFSET_CAL_NO_SPADS_ENABLED_FAIL ((VL53LX_Error) - 25) |
charlesmn | 0:0be0bd219e72 | 163 | /*!< Thrown if there one of stages has zero effective SPADS |
charlesmn | 0:0be0bd219e72 | 164 | * Traps the case when MM1 SPADs is zero. |
charlesmn | 0:0be0bd219e72 | 165 | * A fatal error calibration not valid |
charlesmn | 0:0be0bd219e72 | 166 | */ |
charlesmn | 0:0be0bd219e72 | 167 | #define VL53LX_ERROR_ZONE_CAL_NO_SAMPLE_FAIL ((VL53LX_Error) - 26) |
charlesmn | 0:0be0bd219e72 | 168 | /*!< Thrown if then some of the zones have no valid samples |
charlesmn | 0:0be0bd219e72 | 169 | * A fatal error calibration not valid |
charlesmn | 0:0be0bd219e72 | 170 | */ |
charlesmn | 0:0be0bd219e72 | 171 | |
charlesmn | 0:0be0bd219e72 | 172 | #define VL53LX_ERROR_TUNING_PARM_KEY_MISMATCH ((VL53LX_Error) - 27) |
charlesmn | 0:0be0bd219e72 | 173 | /*!< Thrown if the tuning file key table version does not match with |
charlesmn | 0:0be0bd219e72 | 174 | * expected value. The driver expects the key table version to match |
charlesmn | 0:0be0bd219e72 | 175 | * the compiled default version number in the define |
charlesmn | 0:0be0bd219e72 | 176 | * #VL53LX_TUNINGPARM_KEY_TABLE_VERSION_DEFAULT |
charlesmn | 0:0be0bd219e72 | 177 | */ |
charlesmn | 0:0be0bd219e72 | 178 | |
charlesmn | 0:0be0bd219e72 | 179 | #define VL53LX_WARNING_REF_SPAD_CHAR_NOT_ENOUGH_SPADS ((VL53LX_Error) - 28) |
charlesmn | 0:0be0bd219e72 | 180 | /*!< Thrown if there are less than 5 good SPADs are available. */ |
charlesmn | 0:0be0bd219e72 | 181 | #define VL53LX_WARNING_REF_SPAD_CHAR_RATE_TOO_HIGH ((VL53LX_Error) - 29) |
charlesmn | 0:0be0bd219e72 | 182 | /*!< Thrown if the final reference rate is greater than |
charlesmn | 0:0be0bd219e72 | 183 | * the upper reference rate limit - default is 40 Mcps. |
charlesmn | 0:0be0bd219e72 | 184 | * Implies a minimum Q3 (x10) SPAD (5) selected |
charlesmn | 0:0be0bd219e72 | 185 | */ |
charlesmn | 0:0be0bd219e72 | 186 | #define VL53LX_WARNING_REF_SPAD_CHAR_RATE_TOO_LOW ((VL53LX_Error) - 30) |
charlesmn | 0:0be0bd219e72 | 187 | /*!< Thrown if the final reference rate is less than |
charlesmn | 0:0be0bd219e72 | 188 | * the lower reference rate limit - default is 10 Mcps. |
charlesmn | 0:0be0bd219e72 | 189 | * Implies maximum Q1 (x1) SPADs selected |
charlesmn | 0:0be0bd219e72 | 190 | */ |
charlesmn | 0:0be0bd219e72 | 191 | |
charlesmn | 0:0be0bd219e72 | 192 | |
charlesmn | 0:0be0bd219e72 | 193 | #define VL53LX_WARNING_OFFSET_CAL_MISSING_SAMPLES ((VL53LX_Error) - 31) |
charlesmn | 0:0be0bd219e72 | 194 | /*!< Thrown if there is less than the requested number of |
charlesmn | 0:0be0bd219e72 | 195 | * valid samples. |
charlesmn | 0:0be0bd219e72 | 196 | */ |
charlesmn | 0:0be0bd219e72 | 197 | #define VL53LX_WARNING_OFFSET_CAL_SIGMA_TOO_HIGH ((VL53LX_Error) - 32) |
charlesmn | 0:0be0bd219e72 | 198 | /*!< Thrown if the offset calibration range sigma estimate is greater |
charlesmn | 0:0be0bd219e72 | 199 | * than 8.0 mm. This is the recommended min value to yield a stable |
charlesmn | 0:0be0bd219e72 | 200 | * offset measurement |
charlesmn | 0:0be0bd219e72 | 201 | */ |
charlesmn | 0:0be0bd219e72 | 202 | #define VL53LX_WARNING_OFFSET_CAL_RATE_TOO_HIGH ((VL53LX_Error) - 33) |
charlesmn | 0:0be0bd219e72 | 203 | /*!< Thrown when VL53LX_run_offset_calibration() peak rate is greater |
charlesmn | 0:0be0bd219e72 | 204 | * than that 50.0Mcps. This is the recommended max rate to avoid |
charlesmn | 0:0be0bd219e72 | 205 | * pile-up influencing the offset measurement |
charlesmn | 0:0be0bd219e72 | 206 | */ |
charlesmn | 0:0be0bd219e72 | 207 | #define VL53LX_WARNING_OFFSET_CAL_SPAD_COUNT_TOO_LOW ((VL53LX_Error) - 34) |
charlesmn | 0:0be0bd219e72 | 208 | /*!< Thrown when VL53LX_run_offset_calibration() when one of stages |
charlesmn | 0:0be0bd219e72 | 209 | * range has less that 5.0 effective SPADS. This is the recommended |
charlesmn | 0:0be0bd219e72 | 210 | * min value to yield a stable offset |
charlesmn | 0:0be0bd219e72 | 211 | */ |
charlesmn | 0:0be0bd219e72 | 212 | |
charlesmn | 0:0be0bd219e72 | 213 | |
charlesmn | 0:0be0bd219e72 | 214 | #define VL53LX_WARNING_ZONE_CAL_MISSING_SAMPLES ((VL53LX_Error) - 35) |
charlesmn | 0:0be0bd219e72 | 215 | /*!< Thrown if one of more of the zones have less than |
charlesmn | 0:0be0bd219e72 | 216 | * the requested number of valid samples |
charlesmn | 0:0be0bd219e72 | 217 | */ |
charlesmn | 0:0be0bd219e72 | 218 | #define VL53LX_WARNING_ZONE_CAL_SIGMA_TOO_HIGH ((VL53LX_Error) - 36) |
charlesmn | 0:0be0bd219e72 | 219 | /*!< Thrown if one or more zones have sigma estimate value greater |
charlesmn | 0:0be0bd219e72 | 220 | * than 8.0 mm. This is the recommended min value to yield a stable |
charlesmn | 0:0be0bd219e72 | 221 | * offset measurement |
charlesmn | 0:0be0bd219e72 | 222 | */ |
charlesmn | 0:0be0bd219e72 | 223 | #define VL53LX_WARNING_ZONE_CAL_RATE_TOO_HIGH ((VL53LX_Error) - 37) |
charlesmn | 0:0be0bd219e72 | 224 | /*!< Thrown if one of more zones have peak rate higher than |
charlesmn | 0:0be0bd219e72 | 225 | * that 50.0Mcps. This is the recommended max rate to avoid |
charlesmn | 0:0be0bd219e72 | 226 | * pile-up influencing the offset measurement |
charlesmn | 0:0be0bd219e72 | 227 | */ |
charlesmn | 0:0be0bd219e72 | 228 | |
charlesmn | 0:0be0bd219e72 | 229 | |
charlesmn | 0:0be0bd219e72 | 230 | #define VL53LX_WARNING_XTALK_MISSING_SAMPLES ((VL53LX_Error) - 38) |
charlesmn | 0:0be0bd219e72 | 231 | /*!< Thrown to notify that some of the xtalk samples did not yield |
charlesmn | 0:0be0bd219e72 | 232 | * valid ranging pulse data while attempting to measure |
charlesmn | 0:0be0bd219e72 | 233 | * the xtalk signal in vl53lx_run_xtalk_extract(). This can signify any |
charlesmn | 0:0be0bd219e72 | 234 | * of the zones are missing samples, for further debug information the |
charlesmn | 0:0be0bd219e72 | 235 | * xtalk_results struct should be referred to. This warning is for |
charlesmn | 0:0be0bd219e72 | 236 | * notification only, xtalk pulse and shape have still been generated |
charlesmn | 0:0be0bd219e72 | 237 | */ |
charlesmn | 0:0be0bd219e72 | 238 | #define VL53LX_WARNING_XTALK_NO_SAMPLES_FOR_GRADIENT ((VL53LX_Error) - 39) |
charlesmn | 0:0be0bd219e72 | 239 | /*!< Thrown to notify that some of teh xtalk samples used for gradient |
charlesmn | 0:0be0bd219e72 | 240 | * generation did not yield valid ranging pulse data while attempting to |
charlesmn | 0:0be0bd219e72 | 241 | * measure the xtalk signal in vl53lx_run_xtalk_extract(). This can |
charlesmn | 0:0be0bd219e72 | 242 | * signify that any one of the zones 0-3 yielded no successful samples. |
charlesmn | 0:0be0bd219e72 | 243 | * xtalk_results struct should be referred to for further debug info. |
charlesmn | 0:0be0bd219e72 | 244 | * This warning is for notification only, the xtalk pulse and shape |
charlesmn | 0:0be0bd219e72 | 245 | * have still been generated. |
charlesmn | 0:0be0bd219e72 | 246 | */ |
charlesmn | 0:0be0bd219e72 | 247 | #define VL53LX_WARNING_XTALK_SIGMA_LIMIT_FOR_GRADIENT ((VL53LX_Error) - 40) |
charlesmn | 0:0be0bd219e72 | 248 | /*!< Thrown to notify that some of the xtalk samples used for gradient |
charlesmn | 0:0be0bd219e72 | 249 | * generation did not pass the sigma limit check while attempting to |
charlesmn | 0:0be0bd219e72 | 250 | * measure the xtalk signal in vl53lx_run_xtalk_extract(). This can |
charlesmn | 0:0be0bd219e72 | 251 | * signify that any one of the zones 0-3 yielded an avg sigma_mm |
charlesmn | 0:0be0bd219e72 | 252 | * value > the limit. The xtalk_results struct should be referred to for |
charlesmn | 0:0be0bd219e72 | 253 | * further debug info. |
charlesmn | 0:0be0bd219e72 | 254 | * This warning is for notification only, the xtalk pulse and shape |
charlesmn | 0:0be0bd219e72 | 255 | * have still been generated. |
charlesmn | 0:0be0bd219e72 | 256 | */ |
charlesmn | 0:0be0bd219e72 | 257 | |
charlesmn | 0:0be0bd219e72 | 258 | #define VL53LX_ERROR_NOT_IMPLEMENTED ((VL53LX_Error) - 41) |
charlesmn | 0:0be0bd219e72 | 259 | /*!< Tells requested functionality has not been implemented yet or |
charlesmn | 0:0be0bd219e72 | 260 | * not compatible with the device |
charlesmn | 0:0be0bd219e72 | 261 | */ |
charlesmn | 0:0be0bd219e72 | 262 | #define VL53LX_ERROR_PLATFORM_SPECIFIC_START ((VL53LX_Error) - 60) |
charlesmn | 0:0be0bd219e72 | 263 | /*!< Tells the starting code for platform */ |
charlesmn | 0:0be0bd219e72 | 264 | /** @} VL53LX_define_Error_group */ |
charlesmn | 0:0be0bd219e72 | 265 | |
charlesmn | 0:0be0bd219e72 | 266 | |
charlesmn | 0:0be0bd219e72 | 267 | #ifdef __cplusplus |
charlesmn | 0:0be0bd219e72 | 268 | } |
charlesmn | 0:0be0bd219e72 | 269 | #endif |
charlesmn | 0:0be0bd219e72 | 270 | |
charlesmn | 0:0be0bd219e72 | 271 | |
charlesmn | 0:0be0bd219e72 | 272 | #endif /* _VL53LX_ERROR_CODES_H_ */ |
charlesmn | 0:0be0bd219e72 | 273 |