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 #ifndef _VL53LX_PRESET_SETUP_H_
Charles MacNeill 5:89031b2f5316 13 #define _VL53LX_PRESET_SETUP_H_
Charles MacNeill 5:89031b2f5316 14
Charles MacNeill 5:89031b2f5316 15 #ifdef __cplusplus
Charles MacNeill 5:89031b2f5316 16 extern "C"
Charles MacNeill 5:89031b2f5316 17 {
Charles MacNeill 5:89031b2f5316 18 #endif
Charles MacNeill 5:89031b2f5316 19
Charles MacNeill 5:89031b2f5316 20 /* indexes for the bare driver tuning setting API function */
Charles MacNeill 5:89031b2f5316 21 enum VL53LX_Tuning_t {
Charles MacNeill 5:89031b2f5316 22 VL53LX_TUNING_VERSION = 0,
Charles MacNeill 5:89031b2f5316 23 VL53LX_TUNING_PROXY_MIN,
Charles MacNeill 5:89031b2f5316 24 VL53LX_TUNING_SINGLE_TARGET_XTALK_TARGET_DISTANCE_MM,
Charles MacNeill 5:89031b2f5316 25 VL53LX_TUNING_SINGLE_TARGET_XTALK_SAMPLE_NUMBER,
Charles MacNeill 5:89031b2f5316 26 VL53LX_TUNING_MIN_AMBIENT_DMAX_VALID,
Charles MacNeill 5:89031b2f5316 27 VL53LX_TUNING_MAX_SIMPLE_OFFSET_CALIBRATION_SAMPLE_NUMBER,
Charles MacNeill 5:89031b2f5316 28 VL53LX_TUNING_XTALK_FULL_ROI_TARGET_DISTANCE_MM,
Charles MacNeill 5:89031b2f5316 29 VL53LX_TUNING_SIMPLE_OFFSET_CALIBRATION_REPEAT,
Charles MacNeill 5:89031b2f5316 30 VL53LX_TUNING_XTALK_FULL_ROI_BIN_SUM_MARGIN,
Charles MacNeill 5:89031b2f5316 31 VL53LX_TUNING_XTALK_FULL_ROI_DEFAULT_OFFSET,
Charles MacNeill 5:89031b2f5316 32 VL53LX_TUNING_ZERO_DISTANCE_OFFSET_NON_LINEAR_FACTOR,
Charles MacNeill 5:89031b2f5316 33 VL53LX_TUNING_MAX_TUNABLE_KEY
Charles MacNeill 5:89031b2f5316 34 };
Charles MacNeill 5:89031b2f5316 35
Charles MacNeill 5:89031b2f5316 36 /* default values for the tuning settings parameters */
Charles MacNeill 5:89031b2f5316 37 #define TUNING_VERSION 0x0007
Charles MacNeill 5:89031b2f5316 38
Charles MacNeill 5:89031b2f5316 39 #define TUNING_PROXY_MIN -30 /* min distance in mm */
Charles MacNeill 5:89031b2f5316 40 #define TUNING_SINGLE_TARGET_XTALK_TARGET_DISTANCE_MM 600
Charles MacNeill 5:89031b2f5316 41 /* Target distance in mm for single target Xtalk */
Charles MacNeill 5:89031b2f5316 42 #define TUNING_SINGLE_TARGET_XTALK_SAMPLE_NUMBER 50
Charles MacNeill 5:89031b2f5316 43 /* Number of sample used for single target Xtalk */
Charles MacNeill 5:89031b2f5316 44 #define TUNING_MIN_AMBIENT_DMAX_VALID 8
Charles MacNeill 5:89031b2f5316 45 /* Minimum ambient level to state the Dmax returned by the device is valid */
Charles MacNeill 5:89031b2f5316 46 #ifdef SMALL_FOOTPRINT
Charles MacNeill 5:89031b2f5316 47 #define TUNING_MAX_SIMPLE_OFFSET_CALIBRATION_SAMPLE_NUMBER 50
Charles MacNeill 5:89031b2f5316 48 #else
Charles MacNeill 5:89031b2f5316 49 #define TUNING_MAX_SIMPLE_OFFSET_CALIBRATION_SAMPLE_NUMBER 10
Charles MacNeill 5:89031b2f5316 50 #endif
Charles MacNeill 5:89031b2f5316 51 /* Maximum loops to perform simple offset calibration */
Charles MacNeill 5:89031b2f5316 52 #define TUNING_XTALK_FULL_ROI_TARGET_DISTANCE_MM 600
Charles MacNeill 5:89031b2f5316 53 /* Target distance in mm for target Xtalk from Bins method*/
Charles MacNeill 5:89031b2f5316 54 #ifdef SMALL_FOOTPRINT
Charles MacNeill 5:89031b2f5316 55 #define TUNING_SIMPLE_OFFSET_CALIBRATION_REPEAT 1
Charles MacNeill 5:89031b2f5316 56 #else
Charles MacNeill 5:89031b2f5316 57 #define TUNING_SIMPLE_OFFSET_CALIBRATION_REPEAT 3
Charles MacNeill 5:89031b2f5316 58 #endif
Charles MacNeill 5:89031b2f5316 59 /* Number of loops done during the simple offset calibration*/
Charles MacNeill 5:89031b2f5316 60 #define TUNING_ZERO_DISTANCE_OFFSET_NON_LINEAR_FACTOR_DEFAULT 9
Charles MacNeill 5:89031b2f5316 61 /* zero distance offset calibration non linear compensation default value */
Charles MacNeill 5:89031b2f5316 62
Charles MacNeill 5:89031b2f5316 63 /* The following settings are related to the fix for ticket EwokP #558410 */
Charles MacNeill 5:89031b2f5316 64 #define TUNING_XTALK_FULL_ROI_BIN_SUM_MARGIN 24
Charles MacNeill 5:89031b2f5316 65 /* Acceptance margin for the xtalk_shape bin_data sum computation */
Charles MacNeill 5:89031b2f5316 66 #define TUNING_XTALK_FULL_ROI_DEFAULT_OFFSET 50
Charles MacNeill 5:89031b2f5316 67 /* Recovery value for Xtalk compensation plane offset in kcps */
Charles MacNeill 5:89031b2f5316 68 /* 50 stands for ~0.10 kcps cover glass in 7.9 format */
Charles MacNeill 5:89031b2f5316 69 /* End of settings related to the fix for ticket EwokP #558410 */
Charles MacNeill 5:89031b2f5316 70
Charles MacNeill 5:89031b2f5316 71 #ifdef __cplusplus
Charles MacNeill 5:89031b2f5316 72 }
Charles MacNeill 5:89031b2f5316 73 #endif
Charles MacNeill 5:89031b2f5316 74
Charles MacNeill 5:89031b2f5316 75 #endif /* _VL53LX_PRESET_SETUP_H_ */