tinygo.org/x/drivers@v0.27.1-0.20240509133757-7dbca2a54349/vl53l1x/registers.go (about)

     1  package vl53l1x
     2  
     3  // The I2C address which this device listens to.
     4  const Address = 0x29 //0x52
     5  
     6  // Registers
     7  const (
     8  	CHIP_ID                                                 = 0xEACC
     9  	SOFT_RESET                                              = 0x0000
    10  	I2C_SLAVE_DEVICE_ADDRESS                                = 0x0001
    11  	OSC_MEASURED_FAST_OSC_FREQUENCY                         = 0x0006
    12  	VHV_CONFIG_TIMEOUT_MACROP_LOOP_BOUND                    = 0x0008
    13  	VHV_CONFIG_INIT                                         = 0x000B
    14  	ALGO_PART_TO_PART_RANGE_OFFSET_MM                       = 0x001E
    15  	MM_CONFIG_OUTER_OFFSET_MM                               = 0x0022
    16  	DSS_CONFIG_TARGET_TOTAL_RATE_MCPS                       = 0x0024
    17  	PAD_I2C_HV_EXTSUP_CONFIG                                = 0x002E
    18  	GPIO_TIO_HV_STATUS                                      = 0x0031
    19  	SIGMA_ESTIMATOR_EFFECTIVE_PULSE_WIDTH_NS                = 0x0036
    20  	SIGMA_ESTIMATOR_EFFECTIVE_AMBIENT_WIDTH_NS              = 0x0037
    21  	ALGO_CROSSTALK_COMPENSATION_VALID_HEIGHT_MM             = 0x0039
    22  	ALGO_RANGE_MIN_CLIP                                     = 0x003F
    23  	ALGO_CONSISTENCY_CHECK_TOLERANCE                        = 0x0040
    24  	CAL_CONFIG_VCSEL_START                                  = 0x0047
    25  	PHASECAL_CONFIG_TIMEOUT_MACROP                          = 0x004B
    26  	PHASECAL_CONFIG_OVERRIDE                                = 0x004D
    27  	DSS_CONFIG_ROI_MODE_CONTROL                             = 0x004F
    28  	SYSTEM_THRESH_RATE_HIGH                                 = 0x0050
    29  	SYSTEM_THRESH_RATE_LOW                                  = 0x0052
    30  	DSS_CONFIG_MANUAL_EFFECTIVE_SPADS_SELECT                = 0x0054
    31  	DSS_CONFIG_APERTURE_ATTENUATION                         = 0x0057
    32  	MM_CONFIG_TIMEOUT_MACROP_A                              = 0x005A
    33  	MM_CONFIG_TIMEOUT_MACROP_B                              = 0x005C
    34  	RANGE_CONFIG_TIMEOUT_MACROP_A                           = 0x005E
    35  	RANGE_CONFIG_VCSEL_PERIOD_A                             = 0x0060
    36  	RANGE_CONFIG_TIMEOUT_MACROP_B                           = 0x0061
    37  	RANGE_CONFIG_VCSEL_PERIOD_B                             = 0x0063
    38  	RANGE_CONFIG_SIGMA_THRESH                               = 0x0064
    39  	RANGE_CONFIG_MIN_COUNT_RATE_RTN_LIMIT_MCPS              = 0x0066
    40  	RANGE_CONFIG_VALID_PHASE_HIGH                           = 0x0069
    41  	SYSTEM_INTERMEASUREMENT_PERIOD                          = 0x006C
    42  	SYSTEM_GROUPED_PARAMETER_HOLD_0                         = 0x0071
    43  	SYSTEM_SEED_CONFIG                                      = 0x0077
    44  	SD_CONFIG_WOI_SD0                                       = 0x0078
    45  	SD_CONFIG_WOI_SD1                                       = 0x0079
    46  	SD_CONFIG_INITIAL_PHASE_SD0                             = 0x007A
    47  	SD_CONFIG_INITIAL_PHASE_SD1                             = 0x007B
    48  	SYSTEM_GROUPED_PARAMETER_HOLD_1                         = 0x007C
    49  	SD_CONFIG_QUANTIFIER                                    = 0x007E
    50  	ROI_CONFIG_USER_ROI_CENTRE_SPAD                         = 0x007F
    51  	ROI_CONFIG_USER_ROI_REQUESTED_GLOBAL_XY_SIZE            = 0x0080
    52  	SYSTEM_SEQUENCE_CONFIG                                  = 0x0081
    53  	SYSTEM_GROUPED_PARAMETER_HOLD                           = 0x0082
    54  	SYSTEM_INTERRUPT_CLEAR                                  = 0x0086
    55  	SYSTEM_MODE_START                                       = 0x0087
    56  	RESULT_RANGE_STATUS                                     = 0x0089
    57  	PHASECAL_RESULT_VCSEL_START                             = 0x00D8
    58  	RESULT_OSC_CALIBRATE_VAL                                = 0x00DE
    59  	FIRMWARE_SYSTEM_STATUS                                  = 0x00E5
    60  	WHO_AM_I                                                = 0x010F
    61  	SHADOW_RESULT_FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0_HI = 0x0FBE
    62  
    63  	TIMING_GUARD = 4528
    64  	TARGETRATE   = 0x0A00
    65  )
    66  
    67  const (
    68  	SHORT DistanceMode = iota
    69  	MEDIUM
    70  	LONG
    71  )
    72  
    73  const (
    74  	RangeValid RangeStatus = iota
    75  	SigmaFail
    76  	SignalFail
    77  	RangeValidMinRangeClipped
    78  	OutOfBoundsFail
    79  	HardwareFail
    80  	RangeValidNoWrapCheckFail
    81  	WrapTargetFail
    82  	ProcessingFail
    83  	XtalkSignalFail
    84  	SynchronizationInt
    85  	MergedPulse
    86  	TargetPresentLackOfSignal
    87  	MinRangeFail
    88  	RangeInvalid
    89  
    90  	None RangeStatus = 255
    91  )