VL53L1X-MAX
Revision 0:385e286b830a, committed 2019-10-22
- Comitter:
- peng103617
- Date:
- Tue Oct 22 05:47:05 2019 +0000
- Commit message:
- MAX
Changed in this revision
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.gitignore Tue Oct 22 05:47:05 2019 +0000 @@ -0,0 +1,4 @@ +.build +.mbed +projectfiles +*.py*
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/CONTRIBUTING.md Tue Oct 22 05:47:05 2019 +0000 @@ -0,0 +1,5 @@ +# Contributing to Mbed OS + +Mbed OS is an open-source, device software platform for the Internet of Things. Contributions are an important part of the platform, and our goal is to make it as simple as possible to become a contributor. + +To encourage productive collaboration, as well as robust, consistent and maintainable code, we have a set of guidelines for [contributing to Mbed OS](https://os.mbed.com/docs/mbed-os/latest/contributing/index.html).
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/README.md Tue Oct 22 05:47:05 2019 +0000 @@ -0,0 +1,152 @@ +# Getting started example for Mbed OS + +This guide reviews the steps required to get Blinky with the addition of dynamic OS statistics working on an Mbed OS platform. (Note: To see a rendered example you can import into the Arm Online Compiler, please see our [quick start](https://os.mbed.com/docs/mbed-os/latest/quick-start/online-with-the-online-compiler.html#importing-the-code).) + +Please install [Mbed CLI](https://github.com/ARMmbed/mbed-cli#installing-mbed-cli). + +## Import the example application + +From the command-line, import the example: + +``` +mbed import mbed-os-example-blinky +cd mbed-os-example-blinky +``` + +### Now compile + +Invoke `mbed compile`, and specify the name of your platform and your favorite toolchain (`GCC_ARM`, `ARM`, `IAR`). For example, for the Arm Compiler: + +``` +mbed compile -m K64F -t ARM +``` + +Your PC may take a few minutes to compile your code. At the end, you see the following result: + +``` +[snip] + +Image: ./BUILD/K64F/GCC_ARM/mbed-os-example-blinky.bin +``` + +### Program your board + +1. Connect your Mbed device to the computer over USB. +1. Copy the binary file to the Mbed device. +1. Press the reset button to start the program. + +The LED on your platform turns on and off. The main thread will additionally take a snapshot of the device's runtime statistics and display it over serial to your PC. The snapshot includes: + +* System Information: + * Mbed OS Version: Will currently default to 999999 + * Compiler ID + * ARM = 1 + * GCC_ARM = 2 + * IAR = 3 + * [CPUID Register Information](#cpuid-register-information) + * [Compiler Version](#compiler-version) +* CPU Statistics + * Percentage of runtime that the device has spent awake versus in sleep +* Heap Statistics + * Current heap size + * Max heap size which refers to the largest the heap has grown to +* Thread Statistics + * Provides information on all running threads in the OS including + * Thread ID + * Thread Name + * Thread State + * Thread Priority + * Thread Stack Size + * Thread Stack Space + +#### Compiler Version + +| Compiler | Version Layout | +| -------- | -------------- | +| ARM | PVVbbbb (P = Major; VV = Minor; bbbb = build number) | +| GCC | VVRRPP (VV = Version; RR = Revision; PP = Patch) | +| IAR | VRRRPPP (V = Version; RRR = Revision; PPP = Patch) | + +#### CPUID Register Information + +| Bit Field | Field Description | Values | +| --------- | ----------------- | ------ | +|[31:24] | Implementer | 0x41 = ARM | +|[23:20] | Variant | Major revision 0x0 = Revision 0 | +|[19:16] | Architecture | 0xC = Baseline Architecture | +| | | 0xF = Constant (Mainline Architecture) | +|[15:4] | Part Number | 0xC20 = Cortex-M0 | +| | | 0xC60 = Cortex-M0+ | +| | | 0xC23 = Cortex-M3 | +| | | 0xC24 = Cortex-M4 | +| | | 0xC27 = Cortex-M7 | +| | | 0xD20 = Cortex-M23 | +| | | 0xD21 = Cortex-M33 | +|[3:0] | Revision | Minor revision: 0x1 = Patch 1 | + + + +You can view individual examples and additional API information of the statistics collection tools at the bottom of the page in the [related links section](#related-links). + + +### Output + +To view the serial output you can use any terminal client of your choosing such as [PuTTY](http://www.putty.org/) or [CoolTerm](http://freeware.the-meiers.org/). Unless otherwise specified, printf defaults to a baud rate of 9600 on Mbed OS. + +You can find more information on the Mbed OS configuration tools and serial communication in Mbed OS in the related [related links section](#related-links). + +The output should contain the following block transmitted at the blinking LED frequency (actual values may vary depending on your target, build profile, and toolchain): + +``` +=============================== SYSTEM INFO ================================ +Mbed OS Version: 999999 +CPU ID: 0x410fc241 +Compiler ID: 2 +Compiler Version: 60300 +RAM0: Start 0x20000000 Size: 0x30000 +RAM1: Start 0x1fff0000 Size: 0x10000 +ROM0: Start 0x0 Size: 0x100000 +================= CPU STATS ================= +Idle: 98% Usage: 2% +================ HEAP STATS ================= +Current heap: 1096 +Max heap size: 1096 +================ THREAD STATS =============== +ID: 0x20001eac +Name: main_thread +State: 2 +Priority: 24 +Stack Size: 4096 +Stack Space: 3296 + +ID: 0x20000f5c +Name: idle_thread +State: 1 +Priority: 1 +Stack Size: 512 +Stack Space: 352 + +ID: 0x20000f18 +Name: timer_thread +State: 3 +Priority: 40 +Stack Size: 768 +Stack Space: 664 + +``` + +## Troubleshooting + +If you have problems, you can review the [documentation](https://os.mbed.com/docs/latest/tutorials/debugging.html) for suggestions on what could be wrong and how to fix it. + +## Related Links + +* [Mbed OS Stats API](https://os.mbed.com/docs/latest/apis/mbed-statistics.html) +* [Mbed OS Configuration](https://os.mbed.com/docs/latest/reference/configuration.html) +* [Mbed OS Serial Communication](https://os.mbed.com/docs/latest/tutorials/serial-communication.html) + +### License and contributions + +The software is provided under Apache-2.0 license. Contributions to this project are accepted under the same license. Please see contributing.md for more info. + +This project contains code from other projects. The original license text is included in those source files. They must comply with our license guide.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/VL53L1X.cpp Tue Oct 22 05:47:05 2019 +0000
@@ -0,0 +1,308 @@
+#include "VL53L1X.h"
+#include "mbed.h"
+
+//Serial pc(USBTX,USBRX);
+//DigitalOut led1(LED1);
+
+uint8_t configBlock[] = {
+ 0x29, 0x02, 0x10, 0x00, 0x28, 0xBC, 0x7A, 0x81, //8
+ 0x80, 0x07, 0x95, 0x00, 0xED, 0xFF, 0xF7, 0xFD, //16
+ 0x9E, 0x0E, 0x00, 0x10, 0x01, 0x00, 0x00, 0x00, //24
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, //32
+ 0x28, 0x00, 0x0D, 0x0A, 0x00, 0x00, 0x00, 0x00, //40
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, //48
+ 0x02, 0x00, 0x02, 0x08, 0x00, 0x08, 0x10, 0x01, //56
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x02, //64
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x0B, 0x00, //72
+ 0x00, 0x02, 0x0A, 0x21, 0x00, 0x00, 0x02, 0x00, //80
+ 0x00, 0x00, 0x00, 0xC8, 0x00, 0x00, 0x38, 0xFF, //88
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x91, 0x0F, //96
+ 0x00, 0xA5, 0x0D, 0x00, 0x80, 0x00, 0x0C, 0x08, //104
+ 0xB8, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x10, 0x00, //112
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0F, //120
+ 0x0D, 0x0E, 0x0E, 0x01, 0x00, 0x02, 0xC7, 0xFF, //128
+ 0x8B, 0x00, 0x00, 0x00, 0x01, 0x01, 0x40 //129 - 135 (0x81 - 0x87)
+};
+
+VL53L1X::VL53L1X(PinName SDA, PinName SCL) : _i2c(SDA,SCL){
+ //Set I2C fast and bring reset line high
+ _i2c.frequency(400000);
+ _deviceAddress = defaultAddress_VL53L1X << 1;
+ }
+
+bool VL53L1X::begin()
+{
+ //Check the device ID
+ uint16_t modelID = readRegister16(VL53L1_IDENTIFICATION__MODEL_ID);
+ if (modelID != 0xEACC){
+ return (false);
+ }
+ softReset();
+
+ //Polls the bit 0 of the FIRMWARE__SYSTEM_STATUS register to see if the firmware is ready
+ int counter = 0;
+ int Firmware = readRegister16(VL53L1_FIRMWARE__SYSTEM_STATUS);
+ printf("Firmware = %x\r\n", Firmware);
+ while ((Firmware & 0x01) == 0)
+ {
+ Firmware = readRegister16(VL53L1_FIRMWARE__SYSTEM_STATUS);
+ printf("Firmware = %x\r\n", Firmware);
+ if (counter++ == 100) return (false); //Sensor timed out
+ wait(.1);
+ }
+
+ //Set I2C to 2.8V mode. In this mode 3.3V I2C is allowed.
+ uint16_t result = readRegister16(VL53L1_PAD_I2C_HV__EXTSUP_CONFIG);
+ result = (result & 0xFE) | 0x01;
+ writeRegister16(VL53L1_PAD_I2C_HV__EXTSUP_CONFIG, result);
+
+ //Gets trim resistors from chip
+ for (uint16_t i = 0; i < 36; i++) {
+ uint8_t regVal = readRegister(i + 1);
+ configBlock[i] = regVal;
+ }
+
+ startMeasurement();
+ return (true); //Sensor online!
+
+}
+
+
+void VL53L1X::startMeasurement(uint8_t offset)
+{
+ offset = 0; //Start at a location within the configBlock array
+ uint8_t address = 1 + offset; //Start at memory location 0x01, add offset
+ char data_write[32];
+ uint8_t leftToSend = sizeof(configBlock) - offset;
+ while (leftToSend > 0)
+ {
+
+ data_write[0] = 0; //MSB of register address
+ data_write[1] = address; //LSB of register address
+
+ uint8_t toSend = 30; //Max I2C buffer on Arduino is 32, and we need 2 bytes for address
+ if (toSend > leftToSend) toSend = leftToSend;
+ for(int x = 0; x < toSend; x++)
+ {
+ data_write[x+2] = configBlock[x+address-1];
+ }
+ _i2c.write(_deviceAddress, data_write, toSend+2);
+
+ leftToSend -= toSend;
+ address += toSend;
+ }
+}
+
+bool VL53L1X::newDataReady(void)
+{
+ int read = readRegister(VL53L1_GPIO__TIO_HV_STATUS);
+ if (read != 0x03) return(true); //New measurement!
+ return(false); //No new data
+}
+
+//Reset sensor via software
+void VL53L1X::softReset()
+{
+ writeRegister(VL53L1_SOFT_RESET, 0x00); //Reset
+ wait(.001); //Driver uses 100us
+ writeRegister(VL53L1_SOFT_RESET, 0x01); //Exit reset
+}
+
+uint16_t VL53L1X::getDistance()
+{
+ return (readRegister16(VL53L1_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0));
+}
+
+uint16_t VL53L1X::getSignalRate()
+{
+ //From vl53l1_api.c line 2041
+ uint16_t reading = readRegister16(VL53L1_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0);// << 9; //FIXPOINT97TOFIXPOINT1616
+ //float signalRate = (float)reading/65536.0;
+ return (reading);
+}
+
+void VL53L1X::setDistanceMode(uint8_t mode)
+{
+ uint8_t periodA;
+ uint8_t periodB;
+ uint8_t phaseHigh;
+ uint8_t phaseInit;
+
+ switch (mode)
+ {
+ case 0:
+ periodA = 0x07;
+ periodB = 0x05;
+ phaseHigh = 0x38;
+ phaseInit = 6;
+ break;
+ case 1:
+ periodA = 0x0B;
+ periodB = 0x09;
+ phaseHigh = 0x78;
+ phaseInit = 10;
+ break;
+ case 2:
+ periodA = 0x0F;
+ periodB = 0x0D;
+ phaseHigh = 0xB8;
+ phaseInit = 14;
+ break;
+ //If user inputs wrong range, we default to long range
+ default:
+ periodA = 0x0F;
+ periodB = 0x0D;
+ phaseHigh = 0xB8;
+ phaseInit = 14;
+ break;
+ }
+ //timing
+ writeRegister(VL53L1_RANGE_CONFIG__VCSEL_PERIOD_A, periodA);
+ writeRegister(VL53L1_RANGE_CONFIG__VCSEL_PERIOD_B , periodB);
+ writeRegister(VL53L1_RANGE_CONFIG__VALID_PHASE_HIGH, phaseHigh);
+
+ //dynamic
+ writeRegister(VL53L1_SD_CONFIG__WOI_SD0 , periodA);
+ writeRegister(VL53L1_SD_CONFIG__WOI_SD1, periodB);
+ writeRegister(VL53L1_SD_CONFIG__INITIAL_PHASE_SD0, phaseInit);
+ writeRegister(VL53L1_SD_CONFIG__INITIAL_PHASE_SD1, phaseInit);
+
+ _distanceMode = mode;
+}
+uint8_t VL53L1X::getDistanceMode()
+{
+ return _distanceMode;
+}
+
+uint8_t VL53L1X::getRangeStatus()
+{
+#define VL53L1_DEVICEERROR_VCSELCONTINUITYTESTFAILURE ( 1)
+#define VL53L1_DEVICEERROR_VCSELWATCHDOGTESTFAILURE ( 2)
+#define VL53L1_DEVICEERROR_NOVHVVALUEFOUND ( 3)
+#define VL53L1_DEVICEERROR_MSRCNOTARGET ( 4)
+#define VL53L1_DEVICEERROR_RANGEPHASECHECK ( 5)
+#define VL53L1_DEVICEERROR_SIGMATHRESHOLDCHECK ( 6)
+#define VL53L1_DEVICEERROR_PHASECONSISTENCY ( 7)
+#define VL53L1_DEVICEERROR_MINCLIP ( 8)
+#define VL53L1_DEVICEERROR_RANGECOMPLETE ( 9)
+#define VL53L1_DEVICEERROR_ALGOUNDERFLOW ( 10)
+#define VL53L1_DEVICEERROR_ALGOOVERFLOW ( 11)
+#define VL53L1_DEVICEERROR_RANGEIGNORETHRESHOLD ( 12)
+#define VL53L1_DEVICEERROR_USERROICLIP ( 13)
+#define VL53L1_DEVICEERROR_REFSPADCHARNOTENOUGHDPADS ( 14)
+#define VL53L1_DEVICEERROR_REFSPADCHARMORETHANTARGET ( 15)
+#define VL53L1_DEVICEERROR_REFSPADCHARLESSTHANTARGET ( 16)
+#define VL53L1_DEVICEERROR_MULTCLIPFAIL ( 17)
+#define VL53L1_DEVICEERROR_GPHSTREAMCOUNT0READY ( 18)
+#define VL53L1_DEVICEERROR_RANGECOMPLETE_NO_WRAP_CHECK ( 19)
+#define VL53L1_DEVICEERROR_EVENTCONSISTENCY ( 20)
+#define VL53L1_DEVICEERROR_MINSIGNALEVENTCHECK ( 21)
+#define VL53L1_DEVICEERROR_RANGECOMPLETE_MERGED_PULSE ( 22)
+
+#define VL53L1_RANGESTATUS_RANGE_VALID 0 /*!<The Range is valid. */
+#define VL53L1_RANGESTATUS_SIGMA_FAIL 1 /*!<Sigma Fail. */
+#define VL53L1_RANGESTATUS_SIGNAL_FAIL 2 /*!<Signal fail. */
+#define VL53L1_RANGESTATUS_RANGE_VALID_MIN_RANGE_CLIPPED 3 /*!<Target is below minimum detection threshold. */
+#define VL53L1_RANGESTATUS_OUTOFBOUNDS_FAIL 4 /*!<Phase out of valid limits - different to a wrap exit. */
+#define VL53L1_RANGESTATUS_HARDWARE_FAIL 5 /*!<Hardware fail. */
+#define VL53L1_RANGESTATUS_RANGE_VALID_NO_WRAP_CHECK_FAIL 6 /*!<The Range is valid but the wraparound check has not been done. */
+#define VL53L1_RANGESTATUS_WRAP_TARGET_FAIL 7 /*!<Wrapped target - no matching phase in other VCSEL period timing. */
+#define VL53L1_RANGESTATUS_PROCESSING_FAIL 8 /*!<Internal algo underflow or overflow in lite ranging. */
+#define VL53L1_RANGESTATUS_XTALK_SIGNAL_FAIL 9 /*!<Specific to lite ranging. */
+#define VL53L1_RANGESTATUS_SYNCRONISATION_INT 10 /*!<1st interrupt when starting ranging in back to back mode. Ignore data. */
+#define VL53L1_RANGESTATUS_RANGE_VALID_MERGED_PULSE 11 /*!<All Range ok but object is result of multiple pulses merging together.*/
+#define VL53L1_RANGESTATUS_TARGET_PRESENT_LACK_OF_SIGNAL 12 /*!<Used by RQL as different to phase fail. */
+#define VL53L1_RANGESTATUS_MIN_RANGE_FAIL 13 /*!<User ROI input is not valid e.g. beyond SPAD Array.*/
+#define VL53L1_RANGESTATUS_RANGE_INVALID 14 /*!<lld returned valid range but negative value ! */
+#define VL53L1_RANGESTATUS_NONE 255 /*!<No Update. */
+
+ //Read status
+ uint8_t measurementStatus = (readRegister(VL53L1_RESULT__RANGE_STATUS) & 0x1F);
+ //Convert status from one to another - From vl53l1_api.c
+ switch (measurementStatus) {
+ case VL53L1_DEVICEERROR_GPHSTREAMCOUNT0READY:
+ measurementStatus = VL53L1_RANGESTATUS_SYNCRONISATION_INT;
+ break;
+ case VL53L1_DEVICEERROR_RANGECOMPLETE_NO_WRAP_CHECK:
+ measurementStatus = VL53L1_RANGESTATUS_RANGE_VALID_NO_WRAP_CHECK_FAIL;
+ break;
+ case VL53L1_DEVICEERROR_RANGEPHASECHECK:
+ measurementStatus = VL53L1_RANGESTATUS_OUTOFBOUNDS_FAIL;
+ break;
+ case VL53L1_DEVICEERROR_MSRCNOTARGET:
+ measurementStatus = VL53L1_RANGESTATUS_SIGNAL_FAIL;
+ break;
+ case VL53L1_DEVICEERROR_SIGMATHRESHOLDCHECK:
+ measurementStatus = VL53L1_RANGESTATUS_SIGMA_FAIL;
+ break;
+ case VL53L1_DEVICEERROR_PHASECONSISTENCY:
+ measurementStatus = VL53L1_RANGESTATUS_WRAP_TARGET_FAIL;
+ break;
+ case VL53L1_DEVICEERROR_RANGEIGNORETHRESHOLD:
+ measurementStatus = VL53L1_RANGESTATUS_XTALK_SIGNAL_FAIL;
+ break;
+ case VL53L1_DEVICEERROR_MINCLIP:
+ measurementStatus = VL53L1_RANGESTATUS_RANGE_VALID_MIN_RANGE_CLIPPED;
+ break;
+ case VL53L1_DEVICEERROR_RANGECOMPLETE:
+ measurementStatus = VL53L1_RANGESTATUS_RANGE_VALID;
+ break;
+ default:
+ measurementStatus = VL53L1_RANGESTATUS_NONE;
+ }
+
+ return measurementStatus;
+}
+
+uint8_t VL53L1X::readRegister(uint16_t registerAddr)
+{
+ uint8_t data;
+ char data_write[2];
+ char data_read[1];
+ data_write[0] = (registerAddr >> 8) & 0xFF; //MSB of register address
+ data_write[1] = registerAddr & 0xFF; //LSB of register address
+ _i2c.write(_deviceAddress, data_write, 2,0);
+ _i2c.read(_deviceAddress,data_read,1,1);
+ //Read Data from selected register
+ data=data_read[0];
+ return data;
+}
+
+uint16_t VL53L1X::readRegister16(uint16_t registerAddr)
+{
+ uint8_t data_low;
+ uint8_t data_high;
+ uint16_t data;
+
+ char data_write[2];
+ char data_read[2];
+ data_write[0] = (registerAddr >> 8) & 0xFF; //MSB of register address
+ data_write[1] = registerAddr & 0xFF; //LSB of register address
+ _i2c.write(_deviceAddress, data_write, 2,0);
+ _i2c.read(_deviceAddress,data_read,2,1);
+ data_high = data_read[0]; //Read Data from selected register
+ data_low = data_read[1]; //Read Data from selected register
+ data = (data_high << 8)|data_low;
+
+ return data;
+}
+
+void VL53L1X::writeRegister(uint16_t registerAddr, uint8_t data)
+{
+ char data_write[3];
+ data_write[0] = (registerAddr >> 8) & 0xFF; //MSB of register address
+ data_write[1] = registerAddr & 0xFF; //LSB of register address
+ data_write[2] = data & 0xFF;
+ _i2c.write(_deviceAddress, data_write, 3);
+}
+
+void VL53L1X::writeRegister16(uint16_t registerAddr, uint16_t data)
+{
+ char data_write[4];
+ data_write[0] = (registerAddr >> 8) & 0xFF; //MSB of register address
+ data_write[1] = registerAddr & 0xFF; //LSB of register address
+ data_write[2] = (data >> 8) & 0xFF;
+ data_write[3] = data & 0xFF;
+ _i2c.write(_deviceAddress, data_write, 4);
+}
+
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/VL53L1X.h Tue Oct 22 05:47:05 2019 +0000
@@ -0,0 +1,41 @@
+#ifndef VL53L1X_H
+#define VL53L1X_H
+
+#include "mbed.h"
+
+#include "VL53L1X_register_map.h"
+
+#define I2C_BUFFER_LENGTH 32
+
+const char defaultAddress_VL53L1X = 0x29;
+//const char defaultAddress_VL53L1X = 0x52;
+
+class VL53L1X {
+ public:
+ VL53L1X(PinName SDA, PinName SCL);
+ bool begin();
+ void softReset(); //Reset the sensor via software
+ void startMeasurement(uint8_t offset = 0); //Write a block of bytes to the sensor to configure it to take a measurement
+ bool newDataReady(); //Polls the measurement completion bit
+ uint16_t getDistance(); //Returns the results from the last measurement, distance in mm
+ uint16_t getSignalRate(); //Returns the results from the last measurement, signal rate
+ void setDistanceMode(uint8_t mode = 2);//Defaults to long range
+ uint8_t getDistanceMode();
+ uint8_t getRangeStatus(); //Returns the results from the last measurement, 0 = valid
+
+ uint8_t readRegister(uint16_t addr); //Read a byte from a 16-bit address
+ uint16_t readRegister16(uint16_t addr); //Read two bytes from a 16-bit address
+ void writeRegister(uint16_t addr, uint8_t val); //Write a byte to a spot
+ void writeRegister16(uint16_t addr, uint16_t val); //Write two bytes to a spot
+
+ private:
+ I2C _i2c;
+
+ uint8_t _deviceAddress;
+ uint8_t _distanceMode;// = 0; <--- might cause a problem
+};
+
+
+#endif
+
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/VL53L1X_register_map.h Tue Oct 22 05:47:05 2019 +0000
@@ -0,0 +1,11000 @@
+/*******************************************************************************
+Copyright (C) 2016, STMicroelectronics International N.V.
+ All rights reserved.
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are met:
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ * Neither the name of STMicroelectronics nor the
+ names of its contributors may be used to endorse or promote products
+ derived from this software without specific prior written permission.
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND
+ NON-INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED.
+ IN NO EVENT SHALL STMICROELECTRONICS INTERNATIONAL N.V. BE LIABLE FOR ANY
+ DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+******************************************************************************/
+
+/**
+ * @file vl53l1_register_map.h
+ * @brief VL53L1 Register Map definitions
+ */
+
+#ifndef _VL53L1_REGISTER_MAP_H_
+#define _VL53L1_REGISTER_MAP_H_
+
+/** @defgroup VL53L1_register_DefineRegisters_group Define Registers * @brief List of all the defined registers
+ * @{
+ */
+
+#define VL53L1_SOFT_RESET 0x0000
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_I2C_SLAVE__DEVICE_ADDRESS 0x0001
+/*!<
+ type: uint8_t \n
+ default: EWOK_I2C_DEV_ADDR_DEFAULT \n
+ info: \n
+ - msb = 6
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_nvm_managed', 'system_config']
+ fields: \n
+ - [6:0] = i2c_slave_device_address
+*/
+#define VL53L1_ANA_CONFIG__VHV_REF_SEL_VDDPIX 0x0002
+/*!<
+ type: uint8_t \n
+ default: 0x02 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_nvm_managed', 'analog_config']
+ fields: \n
+ - [3:0] = ref_sel_vddpix
+*/
+#define VL53L1_ANA_CONFIG__VHV_REF_SEL_VQUENCH 0x0003
+/*!<
+ type: uint8_t \n
+ default: 0x10 \n
+ info: \n
+ - msb = 6
+ - lsb = 3
+ - i2c_size = 1
+ groups: \n
+ ['static_nvm_managed', 'analog_config']
+ fields: \n
+ - [6:3] = ref_sel_vquench
+*/
+#define VL53L1_ANA_CONFIG__REG_AVDD1V2_SEL 0x0004
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_nvm_managed', 'analog_config']
+ fields: \n
+ - [1:0] = reg_avdd1v2_sel
+*/
+#define VL53L1_ANA_CONFIG__FAST_OSC__TRIM 0x0005
+/*!<
+ type: uint8_t \n
+ default: 0x48 \n
+ info: \n
+ - msb = 6
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_nvm_managed', 'analog_config']
+ fields: \n
+ - [6:0] = fast_osc_trim
+*/
+#define VL53L1_OSC_MEASURED__FAST_OSC__FREQUENCY 0x0006
+/*!<
+ type: uint16_t \n
+ default: OSC_FREQUENCY \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['static_nvm_managed', 'analog_config']
+ fields: \n
+ - [15:0] = osc_frequency (fixed point 4.12)
+*/
+#define VL53L1_OSC_MEASURED__FAST_OSC__FREQUENCY_HI 0x0006
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_OSC_MEASURED__FAST_OSC__FREQUENCY_LO 0x0007
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_VHV_CONFIG__TIMEOUT_MACROP_LOOP_BOUND 0x0008
+/*!<
+ type: uint8_t \n
+ default: 0x81 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_nvm_managed', 'vhv_config']
+ fields: \n
+ - [1:0] = vhv_timeout__macrop
+ - [7:2] = vhv_loop_bound
+*/
+#define VL53L1_VHV_CONFIG__COUNT_THRESH 0x0009
+/*!<
+ type: uint8_t \n
+ default: 0x80 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_nvm_managed', 'vhv_config']
+ fields: \n
+ - [7:0] = vhv_count_thresh
+*/
+#define VL53L1_VHV_CONFIG__OFFSET 0x000A
+/*!<
+ type: uint8_t \n
+ default: 0x07 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_nvm_managed', 'vhv_config']
+ fields: \n
+ - [5:0] = vhv_step_val
+*/
+#define VL53L1_VHV_CONFIG__INIT 0x000B
+/*!<
+ type: uint8_t \n
+ default: 0x20 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_nvm_managed', 'vhv_config']
+ fields: \n
+ - [7] = vhv0_init_enable
+ - [5:0] = vhv0_init_value
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_REF_0 0x000D
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['customer_nvm_managed', 'ref_spad_en']
+ fields: \n
+ - [7:0] = spad_enables_ref_0
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_REF_1 0x000E
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['customer_nvm_managed', 'ref_spad_en']
+ fields: \n
+ - [7:0] = spad_enables_ref_1
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_REF_2 0x000F
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['customer_nvm_managed', 'ref_spad_en']
+ fields: \n
+ - [7:0] = spad_enables_ref_2
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_REF_3 0x0010
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['customer_nvm_managed', 'ref_spad_en']
+ fields: \n
+ - [7:0] = spad_enables_ref_3
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_REF_4 0x0011
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['customer_nvm_managed', 'ref_spad_en']
+ fields: \n
+ - [7:0] = spad_enables_ref_4
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_REF_5 0x0012
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['customer_nvm_managed', 'ref_spad_en']
+ fields: \n
+ - [3:0] = spad_enables_ref_5
+*/
+#define VL53L1_GLOBAL_CONFIG__REF_EN_START_SELECT 0x0013
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['customer_nvm_managed', 'ref_spad_start']
+ fields: \n
+ - [7:0] = ref_en_start_select
+*/
+#define VL53L1_REF_SPAD_MAN__NUM_REQUESTED_REF_SPADS 0x0014
+/*!<
+ type: uint8_t \n
+ default: 0x2C \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['customer_nvm_managed', 'ref_spad_config']
+ fields: \n
+ - [5:0] = ref_spad_man__num_requested_ref_spad
+*/
+#define VL53L1_REF_SPAD_MAN__REF_LOCATION 0x0015
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['customer_nvm_managed', 'ref_spad_config']
+ fields: \n
+ - [1:0] = ref_spad_man__ref_location
+*/
+#define VL53L1_ALGO__CROSSTALK_COMPENSATION_PLANE_OFFSET_KCPS 0x0016
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['customer_nvm_managed', 'algo_config']
+ fields: \n
+ - [15:0] = crosstalk_compensation_plane_offset_kcps (fixed point 7.9)
+*/
+#define VL53L1_ALGO__CROSSTALK_COMPENSATION_PLANE_OFFSET_KCPS_HI 0x0016
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_ALGO__CROSSTALK_COMPENSATION_PLANE_OFFSET_KCPS_LO 0x0017
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_ALGO__CROSSTALK_COMPENSATION_X_PLANE_GRADIENT_KCPS 0x0018
+/*!<
+ type: int16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['customer_nvm_managed', 'algo_config']
+ fields: \n
+ - [15:0] = crosstalk_compensation_x_plane_gradient_kcps (fixed point 5.11)
+*/
+#define VL53L1_ALGO__CROSSTALK_COMPENSATION_X_PLANE_GRADIENT_KCPS_HI 0x0018
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_ALGO__CROSSTALK_COMPENSATION_X_PLANE_GRADIENT_KCPS_LO 0x0019
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_ALGO__CROSSTALK_COMPENSATION_Y_PLANE_GRADIENT_KCPS 0x001A
+/*!<
+ type: int16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['customer_nvm_managed', 'algo_config']
+ fields: \n
+ - [15:0] = crosstalk_compensation_y_plane_gradient_kcps (fixed point 5.11)
+*/
+#define VL53L1_ALGO__CROSSTALK_COMPENSATION_Y_PLANE_GRADIENT_KCPS_HI 0x001A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_ALGO__CROSSTALK_COMPENSATION_Y_PLANE_GRADIENT_KCPS_LO 0x001B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_REF_SPAD_CHAR__TOTAL_RATE_TARGET_MCPS 0x001C
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['customer_nvm_managed', 'ref_spad_char']
+ fields: \n
+ - [15:0] = ref_spad_char__total_rate_target_mcps (fixed point 9.7)
+*/
+#define VL53L1_REF_SPAD_CHAR__TOTAL_RATE_TARGET_MCPS_HI 0x001C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_REF_SPAD_CHAR__TOTAL_RATE_TARGET_MCPS_LO 0x001D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_ALGO__PART_TO_PART_RANGE_OFFSET_MM 0x001E
+/*!<
+ type: int16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 12
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['customer_nvm_managed', 'algo_config']
+ fields: \n
+ - [12:0] = part_to_part_offset_mm (fixed point 11.2)
+*/
+#define VL53L1_ALGO__PART_TO_PART_RANGE_OFFSET_MM_HI 0x001E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_ALGO__PART_TO_PART_RANGE_OFFSET_MM_LO 0x001F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MM_CONFIG__INNER_OFFSET_MM 0x0020
+/*!<
+ type: int16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['customer_nvm_managed', 'mm_config']
+ fields: \n
+ - [15:0] = mm_config__inner_offset_mm
+*/
+#define VL53L1_MM_CONFIG__INNER_OFFSET_MM_HI 0x0020
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MM_CONFIG__INNER_OFFSET_MM_LO 0x0021
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MM_CONFIG__OUTER_OFFSET_MM 0x0022
+/*!<
+ type: int16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['customer_nvm_managed', 'mm_config']
+ fields: \n
+ - [15:0] = mm_config__outer_offset_mm
+*/
+#define VL53L1_MM_CONFIG__OUTER_OFFSET_MM_HI 0x0022
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MM_CONFIG__OUTER_OFFSET_MM_LO 0x0023
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_DSS_CONFIG__TARGET_TOTAL_RATE_MCPS 0x0024
+/*!<
+ type: uint16_t \n
+ default: 0x0380 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['static_config', 'dss_config']
+ fields: \n
+ - [15:0] = dss_config__target_total_rate_mcps (fixed point 9.7)
+*/
+#define VL53L1_DSS_CONFIG__TARGET_TOTAL_RATE_MCPS_HI 0x0024
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_DSS_CONFIG__TARGET_TOTAL_RATE_MCPS_LO 0x0025
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_DEBUG__CTRL 0x0026
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'debug_config']
+ fields: \n
+ - [0] = enable_result_logging
+*/
+#define VL53L1_TEST_MODE__CTRL 0x0027
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'test_mode_config']
+ fields: \n
+ - [3:0] = test_mode__cmd
+*/
+#define VL53L1_CLK_GATING__CTRL 0x0028
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'clk_config']
+ fields: \n
+ - [0] = clk_gate_en__mcu_bank
+ - [1] = clk_gate_en__mcu_patch_ctrl
+ - [2] = clk_gate_en__mcu_timers
+ - [3] = clk_gate_en__mcu_mult_div
+*/
+#define VL53L1_NVM_BIST__CTRL 0x0029
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 4
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'nvm_bist_config']
+ fields: \n
+ - [2:0] = nvm_bist__cmd
+ - [4] = nvm_bist__ctrl
+*/
+#define VL53L1_NVM_BIST__NUM_NVM_WORDS 0x002A
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 6
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'nvm_bist_config']
+ fields: \n
+ - [6:0] = nvm_bist__num_nvm_words
+*/
+#define VL53L1_NVM_BIST__START_ADDRESS 0x002B
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 6
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'nvm_bist_config']
+ fields: \n
+ - [6:0] = nvm_bist__start_address
+*/
+#define VL53L1_HOST_IF__STATUS 0x002C
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'system_status']
+ fields: \n
+ - [0] = host_interface
+*/
+#define VL53L1_PAD_I2C_HV__CONFIG 0x002D
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'gpio_config']
+ fields: \n
+ - [0] = pad_scl_sda__vmodeint_hv
+ - [1] = i2c_pad__test_hv
+ - [2] = pad_scl__fpen_hv
+ - [4:3] = pad_scl__progdel_hv
+ - [5] = pad_sda__fpen_hv
+ - [7:6] = pad_sda__progdel_hv
+*/
+#define VL53L1_PAD_I2C_HV__EXTSUP_CONFIG 0x002E
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'gpio_config']
+ fields: \n
+ - [0] = pad_scl_sda__extsup_hv
+*/
+#define VL53L1_GPIO_HV_PAD__CTRL 0x002F
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'gpio_config']
+ fields: \n
+ - [0] = gpio__extsup_hv
+ - [1] = gpio__vmodeint_hv
+*/
+#define VL53L1_GPIO_HV_MUX__CTRL 0x0030
+/*!<
+ type: uint8_t \n
+ default: 0x11 \n
+ info: \n
+ - msb = 4
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'gpio_config']
+ fields: \n
+ - [3:0] = gpio__mux_select_hv
+ - [4] = gpio__mux_active_high_hv
+*/
+#define VL53L1_GPIO__TIO_HV_STATUS 0x0031
+/*!<
+ type: uint8_t \n
+ default: 0x02 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'gpio_config']
+ fields: \n
+ - [0] = gpio__tio_hv
+ - [1] = fresh_out_of_reset
+*/
+#define VL53L1_GPIO__FIO_HV_STATUS 0x0032
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 1
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'gpio_config']
+ fields: \n
+ - [1] = gpio__fio_hv
+*/
+#define VL53L1_ANA_CONFIG__SPAD_SEL_PSWIDTH 0x0033
+/*!<
+ type: uint8_t \n
+ default: 0x02 \n
+ info: \n
+ - msb = 2
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'analog_config']
+ fields: \n
+ - [2:0] = spad_sel_pswidth
+*/
+#define VL53L1_ANA_CONFIG__VCSEL_PULSE_WIDTH_OFFSET 0x0034
+/*!<
+ type: uint8_t \n
+ default: 0x08 \n
+ info: \n
+ - msb = 4
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'analog_config']
+ fields: \n
+ - [4:0] = vcsel_pulse_width_offset (fixed point 1.4)
+*/
+#define VL53L1_ANA_CONFIG__FAST_OSC__CONFIG_CTRL 0x0035
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'analog_config']
+ fields: \n
+ - [0] = osc_config__latch_bypass
+*/
+#define VL53L1_SIGMA_ESTIMATOR__EFFECTIVE_PULSE_WIDTH_NS 0x0036
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'algo_config']
+ fields: \n
+ - [7:0] = sigma_estimator__eff_pulse_width
+*/
+#define VL53L1_SIGMA_ESTIMATOR__EFFECTIVE_AMBIENT_WIDTH_NS 0x0037
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'algo_config']
+ fields: \n
+ - [7:0] = sigma_estimator__eff_ambient_width
+*/
+#define VL53L1_SIGMA_ESTIMATOR__SIGMA_REF_MM 0x0038
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'algo_config']
+ fields: \n
+ - [7:0] = sigma_estimator__sigma_ref
+*/
+#define VL53L1_ALGO__CROSSTALK_COMPENSATION_VALID_HEIGHT_MM 0x0039
+/*!<
+ type: uint8_t \n
+ default: 0x14 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'algo_config']
+ fields: \n
+ - [7:0] = crosstalk_compensation_valid_height_mm
+*/
+#define VL53L1_SPARE_HOST_CONFIG__STATIC_CONFIG_SPARE_0 0x003A
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'algo_config']
+ fields: \n
+ - [7:0] = static_config_spare_0
+*/
+#define VL53L1_SPARE_HOST_CONFIG__STATIC_CONFIG_SPARE_1 0x003B
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'algo_config']
+ fields: \n
+ - [7:0] = static_config_spare_1
+*/
+#define VL53L1_ALGO__RANGE_IGNORE_THRESHOLD_MCPS 0x003C
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['static_config', 'algo_config']
+ fields: \n
+ - [15:0] = range_ignore_thresh_mcps (fixed point 3.13)
+*/
+#define VL53L1_ALGO__RANGE_IGNORE_THRESHOLD_MCPS_HI 0x003C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_ALGO__RANGE_IGNORE_THRESHOLD_MCPS_LO 0x003D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_ALGO__RANGE_IGNORE_VALID_HEIGHT_MM 0x003E
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'algo_config']
+ fields: \n
+ - [7:0] = range_ignore_height_mm
+*/
+#define VL53L1_ALGO__RANGE_MIN_CLIP 0x003F
+/*!<
+ type: uint8_t \n
+ default: 0x8D \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'algo_config']
+ fields: \n
+ - [0] = algo__range_min_clip_enable
+ - [7:1] = algo__range_min_clip_value_mm
+*/
+#define VL53L1_ALGO__CONSISTENCY_CHECK__TOLERANCE 0x0040
+/*!<
+ type: uint8_t \n
+ default: 0x08 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'algo_config']
+ fields: \n
+ - [3:0] = consistency_check_tolerance (fixed point 1.3)
+*/
+#define VL53L1_SPARE_HOST_CONFIG__STATIC_CONFIG_SPARE_2 0x0041
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'algo_config']
+ fields: \n
+ - [7:0] = static_config_spare_2
+*/
+#define VL53L1_SD_CONFIG__RESET_STAGES_MSB 0x0042
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'sigmadelta_config']
+ fields: \n
+ - [3:0] = loop_init__clear_stage
+*/
+#define VL53L1_SD_CONFIG__RESET_STAGES_LSB 0x0043
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['static_config', 'sigmadelta_config']
+ fields: \n
+ - [7:4] = accum_reset__clear_stage
+ - [3:0] = count_reset__clear_stage
+*/
+#define VL53L1_GPH_CONFIG__STREAM_COUNT_UPDATE_VALUE 0x0044
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['general_config', 'roi_config']
+ fields: \n
+ - [7:0] = stream_count_update_value
+*/
+#define VL53L1_GLOBAL_CONFIG__STREAM_DIVIDER 0x0045
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['general_config', 'roi_config']
+ fields: \n
+ - [7:0] = stream_count_internal_div
+*/
+#define VL53L1_SYSTEM__INTERRUPT_CONFIG_GPIO 0x0046
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['general_config', 'gph_config']
+ fields: \n
+ - [1:0] = int_mode_distance
+ - [3:2] = int_mode_rate
+ - [4] = int_spare
+ - [5] = int_new_measure_ready
+ - [6] = int_no_target_en
+ - [7] = int_combined_mode
+*/
+#define VL53L1_CAL_CONFIG__VCSEL_START 0x0047
+/*!<
+ type: uint8_t \n
+ default: 0x0B \n
+ info: \n
+ - msb = 6
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['general_config', 'cal_config']
+ fields: \n
+ - [6:0] = cal_config__vcsel_start
+*/
+#define VL53L1_CAL_CONFIG__REPEAT_RATE 0x0048
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 11
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['general_config', 'cal_config']
+ fields: \n
+ - [11:0] = cal_config__repeat_rate
+*/
+#define VL53L1_CAL_CONFIG__REPEAT_RATE_HI 0x0048
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_CAL_CONFIG__REPEAT_RATE_LO 0x0049
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GLOBAL_CONFIG__VCSEL_WIDTH 0x004A
+/*!<
+ type: uint8_t \n
+ default: 0x02 \n
+ info: \n
+ - msb = 6
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['general_config', 'global_config']
+ fields: \n
+ - [6:0] = global_config__vcsel_width
+*/
+#define VL53L1_PHASECAL_CONFIG__TIMEOUT_MACROP 0x004B
+/*!<
+ type: uint8_t \n
+ default: 0x04 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['general_config', 'phasecal_config']
+ fields: \n
+ - [7:0] = phasecal_config__timeout_macrop
+*/
+#define VL53L1_PHASECAL_CONFIG__TARGET 0x004C
+/*!<
+ type: uint8_t \n
+ default: 0x21 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['general_config', 'phasecal_config']
+ fields: \n
+ - [7:0] = algo_phasecal_lim
+*/
+#define VL53L1_PHASECAL_CONFIG__OVERRIDE 0x004D
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['general_config', 'phasecal_config']
+ fields: \n
+ - [0] = phasecal_config__override
+*/
+#define VL53L1_DSS_CONFIG__ROI_MODE_CONTROL 0x004F
+/*!<
+ type: uint8_t \n
+ default: 0x01 \n
+ info: \n
+ - msb = 2
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['general_config', 'dss_config']
+ fields: \n
+ - [1:0] = dss_config__input_mode
+ - [2] = calculate_roi_enable
+*/
+#define VL53L1_SYSTEM__THRESH_RATE_HIGH 0x0050
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['general_config', 'gph_config']
+ fields: \n
+ - [15:0] = thresh_rate_high (fixed point 9.7)
+*/
+#define VL53L1_SYSTEM__THRESH_RATE_HIGH_HI 0x0050
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SYSTEM__THRESH_RATE_HIGH_LO 0x0051
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SYSTEM__THRESH_RATE_LOW 0x0052
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['general_config', 'gph_config']
+ fields: \n
+ - [15:0] = thresh_rate_low (fixed point 9.7)
+*/
+#define VL53L1_SYSTEM__THRESH_RATE_LOW_HI 0x0052
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SYSTEM__THRESH_RATE_LOW_LO 0x0053
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_DSS_CONFIG__MANUAL_EFFECTIVE_SPADS_SELECT 0x0054
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['general_config', 'dss_config']
+ fields: \n
+ - [15:0] = dss_config__manual_effective_spads_select
+*/
+#define VL53L1_DSS_CONFIG__MANUAL_EFFECTIVE_SPADS_SELECT_HI 0x0054
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_DSS_CONFIG__MANUAL_EFFECTIVE_SPADS_SELECT_LO 0x0055
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_DSS_CONFIG__MANUAL_BLOCK_SELECT 0x0056
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['general_config', 'dss_config']
+ fields: \n
+ - [7:0] = dss_config__manual_block_select
+*/
+#define VL53L1_DSS_CONFIG__APERTURE_ATTENUATION 0x0057
+/*!<
+ type: uint8_t \n
+ default: 0x33 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['general_config', 'dss_config']
+ fields: \n
+ - [7:0] = dss_config__aperture_attenuation
+*/
+#define VL53L1_DSS_CONFIG__MAX_SPADS_LIMIT 0x0058
+/*!<
+ type: uint8_t \n
+ default: 0xFF \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['general_config', 'dss_config']
+ fields: \n
+ - [7:0] = dss_config__max_spads_limit
+*/
+#define VL53L1_DSS_CONFIG__MIN_SPADS_LIMIT 0x0059
+/*!<
+ type: uint8_t \n
+ default: 0x01 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['general_config', 'dss_config']
+ fields: \n
+ - [7:0] = dss_config__min_spads_limit
+*/
+#define VL53L1_MM_CONFIG__TIMEOUT_MACROP_A_HI 0x005A
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['timing_config', 'mm_config']
+ fields: \n
+ - [3:0] = mm_config__config_timeout_macrop_a_hi
+*/
+#define VL53L1_MM_CONFIG__TIMEOUT_MACROP_A_LO 0x005B
+/*!<
+ type: uint8_t \n
+ default: 0x06 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['timing_config', 'mm_config']
+ fields: \n
+ - [7:0] = mm_config__config_timeout_macrop_a_lo
+*/
+#define VL53L1_MM_CONFIG__TIMEOUT_MACROP_B_HI 0x005C
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['timing_config', 'mm_config']
+ fields: \n
+ - [3:0] = mm_config__config_timeout_macrop_b_hi
+*/
+#define VL53L1_MM_CONFIG__TIMEOUT_MACROP_B_LO 0x005D
+/*!<
+ type: uint8_t \n
+ default: 0x06 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['timing_config', 'mm_config']
+ fields: \n
+ - [7:0] = mm_config__config_timeout_macrop_b_lo
+*/
+#define VL53L1_RANGE_CONFIG__TIMEOUT_MACROP_A_HI 0x005E
+/*!<
+ type: uint8_t \n
+ default: 0x01 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['timing_config', 'range_config']
+ fields: \n
+ - [3:0] = range_timeout_overall_periods_macrop_a_hi
+*/
+#define VL53L1_RANGE_CONFIG__TIMEOUT_MACROP_A_LO 0x005F
+/*!<
+ type: uint8_t \n
+ default: 0x92 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['timing_config', 'range_config']
+ fields: \n
+ - [7:0] = range_timeout_overall_periods_macrop_a_lo
+*/
+#define VL53L1_RANGE_CONFIG__VCSEL_PERIOD_A 0x0060
+/*!<
+ type: uint8_t \n
+ default: 0x0B \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['timing_config', 'range_config']
+ fields: \n
+ - [5:0] = range_config__vcsel_period_a
+*/
+#define VL53L1_RANGE_CONFIG__TIMEOUT_MACROP_B_HI 0x0061
+/*!<
+ type: uint8_t \n
+ default: 0x01 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['timing_config', 'range_config']
+ fields: \n
+ - [3:0] = range_timeout_overall_periods_macrop_b_hi
+*/
+#define VL53L1_RANGE_CONFIG__TIMEOUT_MACROP_B_LO 0x0062
+/*!<
+ type: uint8_t \n
+ default: 0x92 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['timing_config', 'range_config']
+ fields: \n
+ - [7:0] = range_timeout_overall_periods_macrop_b_lo
+*/
+#define VL53L1_RANGE_CONFIG__VCSEL_PERIOD_B 0x0063
+/*!<
+ type: uint8_t \n
+ default: 0x09 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['timing_config', 'range_config']
+ fields: \n
+ - [5:0] = range_config__vcsel_period_b
+*/
+#define VL53L1_RANGE_CONFIG__SIGMA_THRESH 0x0064
+/*!<
+ type: uint16_t \n
+ default: 0x0080 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['timing_config', 'range_config']
+ fields: \n
+ - [15:0] = range_config__sigma_thresh (fixed point 14.2)
+*/
+#define VL53L1_RANGE_CONFIG__SIGMA_THRESH_HI 0x0064
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGE_CONFIG__SIGMA_THRESH_LO 0x0065
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGE_CONFIG__MIN_COUNT_RATE_RTN_LIMIT_MCPS 0x0066
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['timing_config', 'range_config']
+ fields: \n
+ - [15:0] = range_config__min_count_rate_rtn_limit_mcps (fixed point 9.7)
+*/
+#define VL53L1_RANGE_CONFIG__MIN_COUNT_RATE_RTN_LIMIT_MCPS_HI 0x0066
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGE_CONFIG__MIN_COUNT_RATE_RTN_LIMIT_MCPS_LO 0x0067
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGE_CONFIG__VALID_PHASE_LOW 0x0068
+/*!<
+ type: uint8_t \n
+ default: 0x08 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['timing_config', 'range_config']
+ fields: \n
+ - [7:0] = range_config__valid_phase_low (fixed point 5.3)
+*/
+#define VL53L1_RANGE_CONFIG__VALID_PHASE_HIGH 0x0069
+/*!<
+ type: uint8_t \n
+ default: 0x80 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['timing_config', 'range_config']
+ fields: \n
+ - [7:0] = range_config__valid_phase_high (fixed point 5.3)
+*/
+#define VL53L1_SYSTEM__INTERMEASUREMENT_PERIOD 0x006C
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['timing_config', 'system_config']
+ fields: \n
+ - [31:0] = intermeasurement_period
+*/
+#define VL53L1_SYSTEM__INTERMEASUREMENT_PERIOD_3 0x006C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SYSTEM__INTERMEASUREMENT_PERIOD_2 0x006D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SYSTEM__INTERMEASUREMENT_PERIOD_1 0x006E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SYSTEM__INTERMEASUREMENT_PERIOD_0 0x006F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SYSTEM__FRACTIONAL_ENABLE 0x0070
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['timing_config', 'system_config']
+ fields: \n
+ - [0] = range_fractional_enable
+*/
+#define VL53L1_SYSTEM__GROUPED_PARAMETER_HOLD_0 0x0071
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [0] = grouped_parameter_hold
+ - [1] = grouped_parameter_hold_id
+*/
+#define VL53L1_SYSTEM__THRESH_HIGH 0x0072
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [15:0] = thresh_high
+*/
+#define VL53L1_SYSTEM__THRESH_HIGH_HI 0x0072
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SYSTEM__THRESH_HIGH_LO 0x0073
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SYSTEM__THRESH_LOW 0x0074
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [15:0] = thresh_low
+*/
+#define VL53L1_SYSTEM__THRESH_LOW_HI 0x0074
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SYSTEM__THRESH_LOW_LO 0x0075
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SYSTEM__ENABLE_XTALK_PER_QUADRANT 0x0076
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [0] = system__enable_xtalk_per_quadrant
+*/
+#define VL53L1_SYSTEM__SEED_CONFIG 0x0077
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 2
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [1:0] = system__seed_config
+ - [2] = system__fw_pause_ctrl
+*/
+#define VL53L1_SD_CONFIG__WOI_SD0 0x0078
+/*!<
+ type: uint8_t \n
+ default: 0x04 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [7:0] = sd_config__woi_sd0
+*/
+#define VL53L1_SD_CONFIG__WOI_SD1 0x0079
+/*!<
+ type: uint8_t \n
+ default: 0x04 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [7:0] = sd_config__woi_sd1
+*/
+#define VL53L1_SD_CONFIG__INITIAL_PHASE_SD0 0x007A
+/*!<
+ type: uint8_t \n
+ default: 0x03 \n
+ info: \n
+ - msb = 6
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [6:0] = sd_config__initial_phase_sd0
+*/
+#define VL53L1_SD_CONFIG__INITIAL_PHASE_SD1 0x007B
+/*!<
+ type: uint8_t \n
+ default: 0x03 \n
+ info: \n
+ - msb = 6
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [6:0] = sd_config__initial_phase_sd1
+*/
+#define VL53L1_SYSTEM__GROUPED_PARAMETER_HOLD_1 0x007C
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [0] = grouped_parameter_hold
+ - [1] = grouped_parameter_hold_id
+*/
+#define VL53L1_SD_CONFIG__FIRST_ORDER_SELECT 0x007D
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [0] = sd_config__first_order_select_rtn
+ - [1] = sd_config__first_order_select_ref
+*/
+#define VL53L1_SD_CONFIG__QUANTIFIER 0x007E
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [3:0] = sd_config__quantifier
+*/
+#define VL53L1_ROI_CONFIG__USER_ROI_CENTRE_SPAD 0x007F
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [7:0] = user_roi_center_spad
+*/
+#define VL53L1_ROI_CONFIG__USER_ROI_REQUESTED_GLOBAL_XY_SIZE 0x0080
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [7:0] = roi_config__user_roi_requested_global_xy_size
+*/
+#define VL53L1_SYSTEM__SEQUENCE_CONFIG 0x0081
+/*!<
+ type: uint8_t \n
+ default: 0xFF \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [0] = sequence_vhv_en
+ - [1] = sequence_phasecal_en
+ - [2] = sequence_reference_phase_en
+ - [3] = sequence_dss1_en
+ - [4] = sequence_dss2_en
+ - [5] = sequence_mm1_en
+ - [6] = sequence_mm2_en
+ - [7] = sequence_range_en
+*/
+#define VL53L1_SYSTEM__GROUPED_PARAMETER_HOLD 0x0082
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['dynamic_config', 'gph_config']
+ fields: \n
+ - [0] = grouped_parameter_hold
+ - [1] = grouped_parameter_hold_id
+*/
+#define VL53L1_POWER_MANAGEMENT__GO1_POWER_FORCE 0x0083
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['system_control', 'pwrman_ctrl']
+ fields: \n
+ - [0] = go1_dig_powerforce
+*/
+#define VL53L1_SYSTEM__STREAM_COUNT_CTRL 0x0084
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['system_control', 'stream_ctrl']
+ fields: \n
+ - [0] = retain_stream_count
+*/
+#define VL53L1_FIRMWARE__ENABLE 0x0085
+/*!<
+ type: uint8_t \n
+ default: 0x01 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['system_control', 'firmware_ctrl']
+ fields: \n
+ - [0] = firmware_enable
+*/
+#define VL53L1_SYSTEM__INTERRUPT_CLEAR 0x0086
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['system_control', 'system_int_clr']
+ fields: \n
+ - [0] = sys_interrupt_clear_range
+ - [1] = sys_interrupt_clear_error
+*/
+#define VL53L1_SYSTEM__MODE_START 0x0087
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['system_control', 'system_start']
+ fields: \n
+ - [1:0] = scheduler_mode
+ - [3:2] = readout_mode
+ - [4] = mode_range__single_shot
+ - [5] = mode_range__back_to_back
+ - [6] = mode_range__timed
+ - [7] = mode_range__abort
+*/
+#define VL53L1_RESULT__INTERRUPT_STATUS 0x0088
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [2:0] = int_status
+ - [4:3] = int_error_status
+ - [5] = gph_id_gpio_status
+*/
+#define VL53L1_RESULT__RANGE_STATUS 0x0089
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [4:0] = range_status
+ - [5] = max_threshold_hit
+ - [6] = min_threshold_hit
+ - [7] = gph_id_range_status
+*/
+#define VL53L1_RESULT__REPORT_STATUS 0x008A
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [3:0] = report_status
+*/
+#define VL53L1_RESULT__STREAM_COUNT 0x008B
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [7:0] = result__stream_count
+*/
+#define VL53L1_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0 0x008C
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__dss_actual_effective_spads_sd0 (fixed point 8.8)
+*/
+#define VL53L1_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0_HI 0x008C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0_LO 0x008D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0 0x008E
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__peak_signal_count_rate_mcps_sd0 (fixed point 9.7)
+*/
+#define VL53L1_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0_HI 0x008E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0_LO 0x008F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0 0x0090
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__ambient_count_rate_mcps_sd0 (fixed point 9.7)
+*/
+#define VL53L1_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0_HI 0x0090
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0_LO 0x0091
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__SIGMA_SD0 0x0092
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__sigma_sd0 (fixed point 14.2)
+*/
+#define VL53L1_RESULT__SIGMA_SD0_HI 0x0092
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__SIGMA_SD0_LO 0x0093
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__PHASE_SD0 0x0094
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__phase_sd0 (fixed point 5.11)
+*/
+#define VL53L1_RESULT__PHASE_SD0_HI 0x0094
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__PHASE_SD0_LO 0x0095
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0 0x0096
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__final_crosstalk_corrected_range_mm_sd0
+*/
+#define VL53L1_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0_HI 0x0096
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0_LO 0x0097
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0 0x0098
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__peak_signal_count_rate_crosstalk_corrected_mcps_sd0 (fixed point 9.7)
+*/
+#define VL53L1_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0_HI 0x0098
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0_LO 0x0099
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0 0x009A
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__mm_inner_actual_effective_spads_sd0 (fixed point 8.8)
+*/
+#define VL53L1_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0_HI 0x009A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0_LO 0x009B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0 0x009C
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__mm_outer_actual_effective_spads_sd0 (fixed point 8.8)
+*/
+#define VL53L1_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0_HI 0x009C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0_LO 0x009D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0 0x009E
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__avg_signal_count_rate_mcps_sd0 (fixed point 9.7)
+*/
+#define VL53L1_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0_HI 0x009E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0_LO 0x009F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1 0x00A0
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__dss_actual_effective_spads_sd1 (fixed point 8.8)
+*/
+#define VL53L1_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1_HI 0x00A0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1_LO 0x00A1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1 0x00A2
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__peak_signal_count_rate_mcps_sd1 (fixed point 9.7)
+*/
+#define VL53L1_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1_HI 0x00A2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1_LO 0x00A3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1 0x00A4
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__ambient_count_rate_mcps_sd1 (fixed point 9.7)
+*/
+#define VL53L1_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1_HI 0x00A4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1_LO 0x00A5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__SIGMA_SD1 0x00A6
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__sigma_sd1 (fixed point 14.2)
+*/
+#define VL53L1_RESULT__SIGMA_SD1_HI 0x00A6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__SIGMA_SD1_LO 0x00A7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__PHASE_SD1 0x00A8
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__phase_sd1 (fixed point 5.11)
+*/
+#define VL53L1_RESULT__PHASE_SD1_HI 0x00A8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__PHASE_SD1_LO 0x00A9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1 0x00AA
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__final_crosstalk_corrected_range_mm_sd1
+*/
+#define VL53L1_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1_HI 0x00AA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1_LO 0x00AB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__SPARE_0_SD1 0x00AC
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__spare_0_sd1
+*/
+#define VL53L1_RESULT__SPARE_0_SD1_HI 0x00AC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__SPARE_0_SD1_LO 0x00AD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__SPARE_1_SD1 0x00AE
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__spare_1_sd1
+*/
+#define VL53L1_RESULT__SPARE_1_SD1_HI 0x00AE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__SPARE_1_SD1_LO 0x00AF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__SPARE_2_SD1 0x00B0
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [15:0] = result__spare_2_sd1
+*/
+#define VL53L1_RESULT__SPARE_2_SD1_HI 0x00B0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__SPARE_2_SD1_LO 0x00B1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__SPARE_3_SD1 0x00B2
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [7:0] = result__spare_3_sd1
+*/
+#define VL53L1_RESULT__THRESH_INFO 0x00B3
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['system_results', 'results']
+ fields: \n
+ - [3:0] = result__distance_int_info
+ - [7:4] = result__rate_int_info
+*/
+#define VL53L1_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0 0x00B4
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = result_core__ambient_window_events_sd0
+*/
+#define VL53L1_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_3 0x00B4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_2 0x00B5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_1 0x00B6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_0 0x00B7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0 0x00B8
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = result_core__ranging_total_events_sd0
+*/
+#define VL53L1_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_3 0x00B8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_2 0x00B9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_1 0x00BA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_0 0x00BB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0 0x00BC
+/*!<
+ type: int32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = result_core__signal_total_events_sd0
+*/
+#define VL53L1_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_3 0x00BC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_2 0x00BD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_1 0x00BE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_0 0x00BF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0 0x00C0
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = result_core__total_periods_elapsed_sd0
+*/
+#define VL53L1_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_3 0x00C0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_2 0x00C1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_1 0x00C2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_0 0x00C3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1 0x00C4
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = result_core__ambient_window_events_sd1
+*/
+#define VL53L1_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_3 0x00C4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_2 0x00C5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_1 0x00C6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_0 0x00C7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1 0x00C8
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = result_core__ranging_total_events_sd1
+*/
+#define VL53L1_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_3 0x00C8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_2 0x00C9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_1 0x00CA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_0 0x00CB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1 0x00CC
+/*!<
+ type: int32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = result_core__signal_total_events_sd1
+*/
+#define VL53L1_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_3 0x00CC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_2 0x00CD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_1 0x00CE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_0 0x00CF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1 0x00D0
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = result_core__total_periods_elapsed_sd1
+*/
+#define VL53L1_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_3 0x00D0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_2 0x00D1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_1 0x00D2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_0 0x00D3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT_CORE__SPARE_0 0x00D4
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['core_results', 'ranging_core_results']
+ fields: \n
+ - [7:0] = result_core__spare_0
+*/
+#define VL53L1_PHASECAL_RESULT__REFERENCE_PHASE 0x00D6
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['debug_results', 'phasecal_results']
+ fields: \n
+ - [15:0] = result_phasecal__reference_phase (fixed point 5.11)
+*/
+#define VL53L1_PHASECAL_RESULT__REFERENCE_PHASE_HI 0x00D6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PHASECAL_RESULT__REFERENCE_PHASE_LO 0x00D7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PHASECAL_RESULT__VCSEL_START 0x00D8
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 6
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'phasecal_results']
+ fields: \n
+ - [6:0] = result_phasecal__vcsel_start
+*/
+#define VL53L1_REF_SPAD_CHAR_RESULT__NUM_ACTUAL_REF_SPADS 0x00D9
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'ref_spad_status']
+ fields: \n
+ - [5:0] = ref_spad_char_result__num_actual_ref_spads
+*/
+#define VL53L1_REF_SPAD_CHAR_RESULT__REF_LOCATION 0x00DA
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'ref_spad_status']
+ fields: \n
+ - [1:0] = ref_spad_char_result__ref_location
+*/
+#define VL53L1_VHV_RESULT__COLDBOOT_STATUS 0x00DB
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'vhv_results']
+ fields: \n
+ - [0] = vhv_result__coldboot_status
+*/
+#define VL53L1_VHV_RESULT__SEARCH_RESULT 0x00DC
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'vhv_results']
+ fields: \n
+ - [5:0] = cp_sel_result
+*/
+#define VL53L1_VHV_RESULT__LATEST_SETTING 0x00DD
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'vhv_results']
+ fields: \n
+ - [5:0] = cp_sel_latest_setting
+*/
+#define VL53L1_RESULT__OSC_CALIBRATE_VAL 0x00DE
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 9
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['debug_results', 'misc_results']
+ fields: \n
+ - [9:0] = osc_calibrate_val
+*/
+#define VL53L1_RESULT__OSC_CALIBRATE_VAL_HI 0x00DE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RESULT__OSC_CALIBRATE_VAL_LO 0x00DF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_ANA_CONFIG__POWERDOWN_GO1 0x00E0
+/*!<
+ type: uint8_t \n
+ default: 0x02 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'analog_config']
+ fields: \n
+ - [0] = go2_ref_bg_disable_avdd
+ - [1] = go2_regdvdd1v2_enable_avdd
+*/
+#define VL53L1_ANA_CONFIG__REF_BG_CTRL 0x00E1
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'analog_config']
+ fields: \n
+ - [0] = go2_ref_overdrvbg_avdd
+ - [1] = go2_ref_forcebgison_avdd
+*/
+#define VL53L1_ANA_CONFIG__REGDVDD1V2_CTRL 0x00E2
+/*!<
+ type: uint8_t \n
+ default: 0x01 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'analog_config']
+ fields: \n
+ - [0] = go2_regdvdd1v2_sel_pulldown_avdd
+ - [1] = go2_regdvdd1v2_sel_boost_avdd
+ - [3:2] = go2_regdvdd1v2_selv_avdd
+*/
+#define VL53L1_ANA_CONFIG__OSC_SLOW_CTRL 0x00E3
+/*!<
+ type: uint8_t \n
+ default: 0x02 \n
+ info: \n
+ - msb = 2
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'analog_config']
+ fields: \n
+ - [0] = osc_slow_en
+ - [1] = osc_slow_op_en
+ - [2] = osc_slow_freq_sel
+*/
+#define VL53L1_TEST_MODE__STATUS 0x00E4
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'test_mode_status']
+ fields: \n
+ - [0] = test_mode_status
+*/
+#define VL53L1_FIRMWARE__SYSTEM_STATUS 0x00E5
+/*!<
+ type: uint8_t \n
+ default: 0x02 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'firmware_status']
+ fields: \n
+ - [0] = firmware_bootup
+ - [1] = firmware_first_range
+*/
+#define VL53L1_FIRMWARE__MODE_STATUS 0x00E6
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'firmware_status']
+ fields: \n
+ - [7:0] = firmware_mode_status
+*/
+#define VL53L1_FIRMWARE__SECONDARY_MODE_STATUS 0x00E7
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'firmware_status']
+ fields: \n
+ - [7:0] = fw_secondary_mode_status
+*/
+#define VL53L1_FIRMWARE__CAL_REPEAT_RATE_COUNTER 0x00E8
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 11
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['debug_results', 'firmware_status']
+ fields: \n
+ - [11:0] = firmware_cal_repeat_rate
+*/
+#define VL53L1_FIRMWARE__CAL_REPEAT_RATE_COUNTER_HI 0x00E8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_FIRMWARE__CAL_REPEAT_RATE_COUNTER_LO 0x00E9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_FIRMWARE__HISTOGRAM_BIN 0x00EA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__SYSTEM__THRESH_HIGH 0x00EC
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [15:0] = shadow_thresh_high
+*/
+#define VL53L1_GPH__SYSTEM__THRESH_HIGH_HI 0x00EC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__SYSTEM__THRESH_HIGH_LO 0x00ED
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__SYSTEM__THRESH_LOW 0x00EE
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [15:0] = shadow_thresh_low
+*/
+#define VL53L1_GPH__SYSTEM__THRESH_LOW_HI 0x00EE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__SYSTEM__THRESH_LOW_LO 0x00EF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__SYSTEM__ENABLE_XTALK_PER_QUADRANT 0x00F0
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [0] = shadow__enable_xtalk_per_quadrant
+*/
+#define VL53L1_GPH__SPARE_0 0x00F1
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 2
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [0] = fw_safe_to_disable
+ - [1] = shadow__spare_0
+ - [2] = shadow__spare_1
+*/
+#define VL53L1_GPH__SD_CONFIG__WOI_SD0 0x00F2
+/*!<
+ type: uint8_t \n
+ default: 0x04 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [7:0] = shadow_sd_config__woi_sd0
+*/
+#define VL53L1_GPH__SD_CONFIG__WOI_SD1 0x00F3
+/*!<
+ type: uint8_t \n
+ default: 0x04 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [7:0] = shadow_sd_config__woi_sd1
+*/
+#define VL53L1_GPH__SD_CONFIG__INITIAL_PHASE_SD0 0x00F4
+/*!<
+ type: uint8_t \n
+ default: 0x03 \n
+ info: \n
+ - msb = 6
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [6:0] = shadow_sd_config__initial_phase_sd0
+*/
+#define VL53L1_GPH__SD_CONFIG__INITIAL_PHASE_SD1 0x00F5
+/*!<
+ type: uint8_t \n
+ default: 0x03 \n
+ info: \n
+ - msb = 6
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [6:0] = shadow_sd_config__initial_phase_sd1
+*/
+#define VL53L1_GPH__SD_CONFIG__FIRST_ORDER_SELECT 0x00F6
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [0] = shadow_sd_config__first_order_select_rtn
+ - [1] = shadow_sd_config__first_order_select_ref
+*/
+#define VL53L1_GPH__SD_CONFIG__QUANTIFIER 0x00F7
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [3:0] = shadow_sd_config__quantifier
+*/
+#define VL53L1_GPH__ROI_CONFIG__USER_ROI_CENTRE_SPAD 0x00F8
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [7:0] = shadow_user_roi_center_spad_q0
+*/
+#define VL53L1_GPH__ROI_CONFIG__USER_ROI_REQUESTED_GLOBAL_XY_SIZE 0x00F9
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [7:0] = shadow_user_roi_requested_global_xy_size
+*/
+#define VL53L1_GPH__SYSTEM__SEQUENCE_CONFIG 0x00FA
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [0] = shadow_sequence_vhv_en
+ - [1] = shadow_sequence_phasecal_en
+ - [2] = shadow_sequence_reference_phase_en
+ - [3] = shadow_sequence_dss1_en
+ - [4] = shadow_sequence_dss2_en
+ - [5] = shadow_sequence_mm1_en
+ - [6] = shadow_sequence_mm2_en
+ - [7] = shadow_sequence_range_en
+*/
+#define VL53L1_GPH__GPH_ID 0x00FB
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'gph_actual']
+ fields: \n
+ - [0] = shadow_gph_id
+*/
+#define VL53L1_SYSTEM__INTERRUPT_SET 0x00FC
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'system_int_set']
+ fields: \n
+ - [0] = sys_interrupt_set_range
+ - [1] = sys_interrupt_set_error
+*/
+#define VL53L1_INTERRUPT_MANAGER__ENABLES 0x00FD
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 4
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'interrupt_manager']
+ fields: \n
+ - [0] = interrupt_enable__single_shot
+ - [1] = interrupt_enable__back_to_back
+ - [2] = interrupt_enable__timed
+ - [3] = interrupt_enable__abort
+ - [4] = interrupt_enable__test
+*/
+#define VL53L1_INTERRUPT_MANAGER__CLEAR 0x00FE
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 4
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'interrupt_manager']
+ fields: \n
+ - [0] = interrupt_clear__single_shot
+ - [1] = interrupt_clear__back_to_back
+ - [2] = interrupt_clear__timed
+ - [3] = interrupt_clear__abort
+ - [4] = interrupt_clear__test
+*/
+#define VL53L1_INTERRUPT_MANAGER__STATUS 0x00FF
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 4
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'interrupt_manager']
+ fields: \n
+ - [0] = interrupt_status__single_shot
+ - [1] = interrupt_status__back_to_back
+ - [2] = interrupt_status__timed
+ - [3] = interrupt_status__abort
+ - [4] = interrupt_status__test
+*/
+#define VL53L1_MCU_TO_HOST_BANK__WR_ACCESS_EN 0x0100
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'host_bank_ctrl']
+ fields: \n
+ - [0] = mcu_to_host_bank_wr_en
+*/
+#define VL53L1_POWER_MANAGEMENT__GO1_RESET_STATUS 0x0101
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'power_man_status']
+ fields: \n
+ - [0] = go1_status
+*/
+#define VL53L1_PAD_STARTUP_MODE__VALUE_RO 0x0102
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'pad_config']
+ fields: \n
+ - [0] = pad_atest1_val_ro
+ - [1] = pad_atest2_val_ro
+*/
+#define VL53L1_PAD_STARTUP_MODE__VALUE_CTRL 0x0103
+/*!<
+ type: uint8_t \n
+ default: 0x30 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'pad_config']
+ fields: \n
+ - [0] = pad_atest1_val
+ - [1] = pad_atest2_val
+ - [4] = pad_atest1_dig_enable
+ - [5] = pad_atest2_dig_enable
+*/
+#define VL53L1_PLL_PERIOD_US 0x0104
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 17
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['debug_results', 'pll_config']
+ fields: \n
+ - [17:0] = pll_period_us (fixed point 0.24)
+*/
+#define VL53L1_PLL_PERIOD_US_3 0x0104
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PLL_PERIOD_US_2 0x0105
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PLL_PERIOD_US_1 0x0106
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PLL_PERIOD_US_0 0x0107
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_INTERRUPT_SCHEDULER__DATA_OUT 0x0108
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['debug_results', 'debug_timer']
+ fields: \n
+ - [31:0] = interrupt_scheduler_data_out
+*/
+#define VL53L1_INTERRUPT_SCHEDULER__DATA_OUT_3 0x0108
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_INTERRUPT_SCHEDULER__DATA_OUT_2 0x0109
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_INTERRUPT_SCHEDULER__DATA_OUT_1 0x010A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_INTERRUPT_SCHEDULER__DATA_OUT_0 0x010B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_NVM_BIST__COMPLETE 0x010C
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'nvm_bist_status']
+ fields: \n
+ - [0] = nvm_bist__complete
+*/
+#define VL53L1_NVM_BIST__STATUS 0x010D
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['debug_results', 'nvm_bist_status']
+ fields: \n
+ - [0] = nvm_bist__status
+*/
+#define VL53L1_IDENTIFICATION__MODEL_ID 0x010F
+/*!<
+ type: uint8_t \n
+ default: 0xEA \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'identification']
+ fields: \n
+ - [7:0] = model_id
+*/
+#define VL53L1_IDENTIFICATION__MODULE_TYPE 0x0110
+/*!<
+ type: uint8_t \n
+ default: 0xAA \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'identification']
+ fields: \n
+ - [7:0] = module_type
+*/
+#define VL53L1_IDENTIFICATION__REVISION_ID 0x0111
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'identification']
+ fields: \n
+ - [3:0] = nvm_revision_id
+ - [7:4] = mask_revision_id
+*/
+#define VL53L1_IDENTIFICATION__MODULE_ID 0x0112
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['nvm_copy_data', 'identification']
+ fields: \n
+ - [15:0] = module_id
+*/
+#define VL53L1_IDENTIFICATION__MODULE_ID_HI 0x0112
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_IDENTIFICATION__MODULE_ID_LO 0x0113
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_ANA_CONFIG__FAST_OSC__TRIM_MAX 0x0114
+/*!<
+ type: uint8_t \n
+ default: OSC_TRIM_DEFAULT \n
+ info: \n
+ - msb = 6
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'analog_config']
+ fields: \n
+ - [6:0] = osc_trim_max
+*/
+#define VL53L1_ANA_CONFIG__FAST_OSC__FREQ_SET 0x0115
+/*!<
+ type: uint8_t \n
+ default: OSC_FREQ_SET_DEFAULT \n
+ info: \n
+ - msb = 2
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'analog_config']
+ fields: \n
+ - [2:0] = osc_freq_set
+*/
+#define VL53L1_ANA_CONFIG__VCSEL_TRIM 0x0116
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 2
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'analog_config']
+ fields: \n
+ - [2:0] = vcsel_trim
+*/
+#define VL53L1_ANA_CONFIG__VCSEL_SELION 0x0117
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'analog_config']
+ fields: \n
+ - [5:0] = vcsel_selion
+*/
+#define VL53L1_ANA_CONFIG__VCSEL_SELION_MAX 0x0118
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'analog_config']
+ fields: \n
+ - [5:0] = vcsel_selion_max
+*/
+#define VL53L1_PROTECTED_LASER_SAFETY__LOCK_BIT 0x0119
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'laser_safety']
+ fields: \n
+ - [0] = laser_safety__lock_bit
+*/
+#define VL53L1_LASER_SAFETY__KEY 0x011A
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 6
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'laser_safety']
+ fields: \n
+ - [6:0] = laser_safety__key
+*/
+#define VL53L1_LASER_SAFETY__KEY_RO 0x011B
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'laser_safety']
+ fields: \n
+ - [0] = laser_safety__key_ro
+*/
+#define VL53L1_LASER_SAFETY__CLIP 0x011C
+/*!<
+ type: uint8_t \n
+ default: 0x02 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'laser_safety']
+ fields: \n
+ - [5:0] = vcsel_pulse_width_clip
+*/
+#define VL53L1_LASER_SAFETY__MULT 0x011D
+/*!<
+ type: uint8_t \n
+ default: 0x32 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'laser_safety']
+ fields: \n
+ - [5:0] = vcsel_pulse_width_mult
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_0 0x011E
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_0
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_1 0x011F
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_1
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_2 0x0120
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_2
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_3 0x0121
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_3
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_4 0x0122
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_4
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_5 0x0123
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_5
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_6 0x0124
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_6
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_7 0x0125
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_7
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_8 0x0126
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_8
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_9 0x0127
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_9
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_10 0x0128
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_10
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_11 0x0129
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_11
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_12 0x012A
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_12
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_13 0x012B
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_13
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_14 0x012C
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_14
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_15 0x012D
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_15
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_16 0x012E
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_16
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_17 0x012F
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_17
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_18 0x0130
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_18
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_19 0x0131
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_19
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_20 0x0132
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_20
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_21 0x0133
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_21
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_22 0x0134
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_22
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_23 0x0135
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_23
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_24 0x0136
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_24
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_25 0x0137
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_25
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_26 0x0138
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_26
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_27 0x0139
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_27
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_28 0x013A
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_28
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_29 0x013B
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_29
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_30 0x013C
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_30
+*/
+#define VL53L1_GLOBAL_CONFIG__SPAD_ENABLES_RTN_31 0x013D
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'ret_spad_config']
+ fields: \n
+ - [7:0] = spad_enables_rtn_31
+*/
+#define VL53L1_ROI_CONFIG__MODE_ROI_CENTRE_SPAD 0x013E
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'roi_config']
+ fields: \n
+ - [7:0] = mode_roi_center_spad
+*/
+#define VL53L1_ROI_CONFIG__MODE_ROI_XY_SIZE 0x013F
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['nvm_copy_data', 'roi_config']
+ fields: \n
+ - [7:0] = mode_roi_xy_size
+*/
+#define VL53L1_GO2_HOST_BANK_ACCESS__OVERRIDE 0x0300
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__MULTIPLICAND 0x0400
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__MULTIPLICAND_3 0x0400
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__MULTIPLICAND_2 0x0401
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__MULTIPLICAND_1 0x0402
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__MULTIPLICAND_0 0x0403
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__MULTIPLIER 0x0404
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__MULTIPLIER_3 0x0404
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__MULTIPLIER_2 0x0405
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__MULTIPLIER_1 0x0406
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__MULTIPLIER_0 0x0407
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__PRODUCT_HI 0x0408
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__PRODUCT_HI_3 0x0408
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__PRODUCT_HI_2 0x0409
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__PRODUCT_HI_1 0x040A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__PRODUCT_HI_0 0x040B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__PRODUCT_LO 0x040C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__PRODUCT_LO_3 0x040C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__PRODUCT_LO_2 0x040D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__PRODUCT_LO_1 0x040E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__PRODUCT_LO_0 0x040F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__START 0x0410
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_MULTIPLIER__STATUS 0x0411
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__START 0x0412
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__STATUS 0x0413
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__DIVIDEND 0x0414
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__DIVIDEND_3 0x0414
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__DIVIDEND_2 0x0415
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__DIVIDEND_1 0x0416
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__DIVIDEND_0 0x0417
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__DIVISOR 0x0418
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__DIVISOR_3 0x0418
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__DIVISOR_2 0x0419
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__DIVISOR_1 0x041A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__DIVISOR_0 0x041B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__QUOTIENT 0x041C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__QUOTIENT_3 0x041C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__QUOTIENT_2 0x041D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__QUOTIENT_1 0x041E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_UTIL_DIVIDER__QUOTIENT_0 0x041F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TIMER0__VALUE_IN 0x0420
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TIMER0__VALUE_IN_3 0x0420
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TIMER0__VALUE_IN_2 0x0421
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TIMER0__VALUE_IN_1 0x0422
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TIMER0__VALUE_IN_0 0x0423
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TIMER1__VALUE_IN 0x0424
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TIMER1__VALUE_IN_3 0x0424
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TIMER1__VALUE_IN_2 0x0425
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TIMER1__VALUE_IN_1 0x0426
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TIMER1__VALUE_IN_0 0x0427
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TIMER0__CTRL 0x0428
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TIMER1__CTRL 0x0429
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_GENERAL_PURPOSE__GP_0 0x042C
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [7:0] = mcu_gp_0
+*/
+#define VL53L1_MCU_GENERAL_PURPOSE__GP_1 0x042D
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [7:0] = mcu_gp_1
+*/
+#define VL53L1_MCU_GENERAL_PURPOSE__GP_2 0x042E
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [7:0] = mcu_gp_2
+*/
+#define VL53L1_MCU_GENERAL_PURPOSE__GP_3 0x042F
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [7:0] = mcu_gp_3
+*/
+#define VL53L1_MCU_RANGE_CALC__CONFIG 0x0430
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [0] = fw_calc__sigma_delta_sel
+ - [2] = fw_calc__phase_output_en
+ - [3] = fw_calc__peak_signal_rate_en
+ - [4] = fw_calc__ambient_rate_en
+ - [5] = fw_calc__total_rate_per_spad_en
+ - [6] = fw_calc__snr_avg_signal_rate_en
+ - [7] = fw_calc__sigma_en
+*/
+#define VL53L1_MCU_RANGE_CALC__OFFSET_CORRECTED_RANGE 0x0432
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['']
+ fields: \n
+ - [15:0] = offset_corrected_range
+*/
+#define VL53L1_MCU_RANGE_CALC__OFFSET_CORRECTED_RANGE_HI 0x0432
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__OFFSET_CORRECTED_RANGE_LO 0x0433
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_4 0x0434
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 16
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['']
+ fields: \n
+ - [16:0] = mcu_calc__spare_4
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_4_3 0x0434
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_4_2 0x0435
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_4_1 0x0436
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_4_0 0x0437
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__AMBIENT_DURATION_PRE_CALC 0x0438
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 13
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['']
+ fields: \n
+ - [13:0] = ambient_duration_prec_calc
+*/
+#define VL53L1_MCU_RANGE_CALC__AMBIENT_DURATION_PRE_CALC_HI 0x0438
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__AMBIENT_DURATION_PRE_CALC_LO 0x0439
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_VCSEL_PERIOD 0x043C
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [7:0] = algo_vcsel_period
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_5 0x043D
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [7:0] = mcu_calc__spare_5
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_TOTAL_PERIODS 0x043E
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['']
+ fields: \n
+ - [15:0] = algo_total_periods
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_TOTAL_PERIODS_HI 0x043E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_TOTAL_PERIODS_LO 0x043F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_ACCUM_PHASE 0x0440
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['']
+ fields: \n
+ - [31:0] = algo_accum_phase
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_ACCUM_PHASE_3 0x0440
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_ACCUM_PHASE_2 0x0441
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_ACCUM_PHASE_1 0x0442
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_ACCUM_PHASE_0 0x0443
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_SIGNAL_EVENTS 0x0444
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['']
+ fields: \n
+ - [31:0] = algo_signal_events
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_SIGNAL_EVENTS_3 0x0444
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_SIGNAL_EVENTS_2 0x0445
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_SIGNAL_EVENTS_1 0x0446
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_SIGNAL_EVENTS_0 0x0447
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_AMBIENT_EVENTS 0x0448
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['']
+ fields: \n
+ - [31:0] = algo_ambient_events
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_AMBIENT_EVENTS_3 0x0448
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_AMBIENT_EVENTS_2 0x0449
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_AMBIENT_EVENTS_1 0x044A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_AMBIENT_EVENTS_0 0x044B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_6 0x044C
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['']
+ fields: \n
+ - [15:0] = mcu_calc__spare_6
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_6_HI 0x044C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_6_LO 0x044D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_ADJUST_VCSEL_PERIOD 0x044E
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['']
+ fields: \n
+ - [15:0] = algo_adjust_vcsel_period
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_ADJUST_VCSEL_PERIOD_HI 0x044E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__ALGO_ADJUST_VCSEL_PERIOD_LO 0x044F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__NUM_SPADS 0x0450
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['']
+ fields: \n
+ - [15:0] = num_spads
+*/
+#define VL53L1_MCU_RANGE_CALC__NUM_SPADS_HI 0x0450
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__NUM_SPADS_LO 0x0451
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__PHASE_OUTPUT 0x0452
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['']
+ fields: \n
+ - [15:0] = phase_output
+*/
+#define VL53L1_MCU_RANGE_CALC__PHASE_OUTPUT_HI 0x0452
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__PHASE_OUTPUT_LO 0x0453
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__RATE_PER_SPAD_MCPS 0x0454
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 19
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['']
+ fields: \n
+ - [19:0] = rate_per_spad_mcps
+*/
+#define VL53L1_MCU_RANGE_CALC__RATE_PER_SPAD_MCPS_3 0x0454
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__RATE_PER_SPAD_MCPS_2 0x0455
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__RATE_PER_SPAD_MCPS_1 0x0456
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__RATE_PER_SPAD_MCPS_0 0x0457
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_7 0x0458
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [7:0] = mcu_calc__spare_7
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_8 0x0459
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [7:0] = mcu_calc__spare_8
+*/
+#define VL53L1_MCU_RANGE_CALC__PEAK_SIGNAL_RATE_MCPS 0x045A
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['']
+ fields: \n
+ - [15:0] = peak_signal_rate
+*/
+#define VL53L1_MCU_RANGE_CALC__PEAK_SIGNAL_RATE_MCPS_HI 0x045A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__PEAK_SIGNAL_RATE_MCPS_LO 0x045B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__AVG_SIGNAL_RATE_MCPS 0x045C
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['']
+ fields: \n
+ - [15:0] = avg_signal_rate
+*/
+#define VL53L1_MCU_RANGE_CALC__AVG_SIGNAL_RATE_MCPS_HI 0x045C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__AVG_SIGNAL_RATE_MCPS_LO 0x045D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__AMBIENT_RATE_MCPS 0x045E
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['']
+ fields: \n
+ - [15:0] = ambient_rate
+*/
+#define VL53L1_MCU_RANGE_CALC__AMBIENT_RATE_MCPS_HI 0x045E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__AMBIENT_RATE_MCPS_LO 0x045F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__XTALK 0x0460
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['']
+ fields: \n
+ - [15:0] = crosstalk (fixed point 9.7)
+*/
+#define VL53L1_MCU_RANGE_CALC__XTALK_HI 0x0460
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__XTALK_LO 0x0461
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__CALC_STATUS 0x0462
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [7:0] = calc_status
+*/
+#define VL53L1_MCU_RANGE_CALC__DEBUG 0x0463
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [0] = calc_debug__divide_by_zero
+*/
+#define VL53L1_MCU_RANGE_CALC__PEAK_SIGNAL_RATE_XTALK_CORR_MCPS 0x0464
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['']
+ fields: \n
+ - [15:0] = peak_signal_rate_xtalk_corr
+*/
+#define VL53L1_MCU_RANGE_CALC__PEAK_SIGNAL_RATE_XTALK_CORR_MCPS_HI 0x0464
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__PEAK_SIGNAL_RATE_XTALK_CORR_MCPS_LO 0x0465
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_0 0x0468
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [7:0] = mcu_calc__spare_0
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_1 0x0469
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [7:0] = mcu_calc__spare_1
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_2 0x046A
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [7:0] = mcu_calc__spare_2
+*/
+#define VL53L1_MCU_RANGE_CALC__SPARE_3 0x046B
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [7:0] = mcu_calc__spare_3
+*/
+#define VL53L1_PATCH__CTRL 0x0470
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__JMP_ENABLES 0x0472
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__JMP_ENABLES_HI 0x0472
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__JMP_ENABLES_LO 0x0473
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__DATA_ENABLES 0x0474
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__DATA_ENABLES_HI 0x0474
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__DATA_ENABLES_LO 0x0475
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_0 0x0476
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_0_HI 0x0476
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_0_LO 0x0477
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_1 0x0478
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_1_HI 0x0478
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_1_LO 0x0479
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_2 0x047A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_2_HI 0x047A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_2_LO 0x047B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_3 0x047C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_3_HI 0x047C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_3_LO 0x047D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_4 0x047E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_4_HI 0x047E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_4_LO 0x047F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_5 0x0480
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_5_HI 0x0480
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_5_LO 0x0481
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_6 0x0482
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_6_HI 0x0482
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_6_LO 0x0483
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_7 0x0484
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_7_HI 0x0484
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_7_LO 0x0485
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_8 0x0486
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_8_HI 0x0486
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_8_LO 0x0487
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_9 0x0488
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_9_HI 0x0488
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_9_LO 0x0489
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_10 0x048A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_10_HI 0x048A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_10_LO 0x048B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_11 0x048C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_11_HI 0x048C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_11_LO 0x048D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_12 0x048E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_12_HI 0x048E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_12_LO 0x048F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_13 0x0490
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_13_HI 0x0490
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_13_LO 0x0491
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_14 0x0492
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_14_HI 0x0492
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_14_LO 0x0493
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_15 0x0494
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_15_HI 0x0494
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__OFFSET_15_LO 0x0495
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_0 0x0496
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_0_HI 0x0496
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_0_LO 0x0497
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_1 0x0498
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_1_HI 0x0498
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_1_LO 0x0499
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_2 0x049A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_2_HI 0x049A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_2_LO 0x049B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_3 0x049C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_3_HI 0x049C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_3_LO 0x049D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_4 0x049E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_4_HI 0x049E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_4_LO 0x049F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_5 0x04A0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_5_HI 0x04A0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_5_LO 0x04A1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_6 0x04A2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_6_HI 0x04A2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_6_LO 0x04A3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_7 0x04A4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_7_HI 0x04A4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_7_LO 0x04A5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_8 0x04A6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_8_HI 0x04A6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_8_LO 0x04A7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_9 0x04A8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_9_HI 0x04A8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_9_LO 0x04A9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_10 0x04AA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_10_HI 0x04AA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_10_LO 0x04AB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_11 0x04AC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_11_HI 0x04AC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_11_LO 0x04AD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_12 0x04AE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_12_HI 0x04AE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_12_LO 0x04AF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_13 0x04B0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_13_HI 0x04B0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_13_LO 0x04B1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_14 0x04B2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_14_HI 0x04B2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_14_LO 0x04B3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_15 0x04B4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_15_HI 0x04B4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PATCH__ADDRESS_15_LO 0x04B5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SPI_ASYNC_MUX__CTRL 0x04C0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_CLK__CONFIG 0x04C4
+/*!<
+ type: uint8_t \n
+ default: 0x01 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [0] = clk_mcu_en
+*/
+#define VL53L1_GPIO_LV_MUX__CTRL 0x04CC
+/*!<
+ type: uint8_t \n
+ default: 0x08 \n
+ info: \n
+ - msb = 4
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [3:0] = gpio__mux_select_lv
+ - [4] = gpio__mux_active_high_lv
+*/
+#define VL53L1_GPIO_LV_PAD__CTRL 0x04CD
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [0] = gpio__extsup_lv
+*/
+#define VL53L1_PAD_I2C_LV__CONFIG 0x04D0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PAD_STARTUP_MODE__VALUE_RO_GO1 0x04D4
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [0] = pad_spi_csn_val_ro
+*/
+#define VL53L1_HOST_IF__STATUS_GO1 0x04D5
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [0] = host_interface_lv
+*/
+#define VL53L1_MCU_CLK_GATING__CTRL 0x04D8
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['']
+ fields: \n
+ - [0] = clk_gate_en__go1_mcu_bank
+ - [1] = clk_gate_en__go1_mcu_patch_ctrl
+ - [2] = clk_gate_en__go1_mcu_timers
+ - [3] = clk_gate_en__go1_mcu_mult_div
+*/
+#define VL53L1_TEST__BIST_ROM_CTRL 0x04E0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__BIST_ROM_RESULT 0x04E1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__BIST_ROM_MCU_SIG 0x04E2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__BIST_ROM_MCU_SIG_HI 0x04E2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__BIST_ROM_MCU_SIG_LO 0x04E3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__BIST_RAM_CTRL 0x04E4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__BIST_RAM_RESULT 0x04E5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__TMC 0x04E8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__PLL_BIST_MIN_THRESHOLD 0x04F0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__PLL_BIST_MIN_THRESHOLD_HI 0x04F0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__PLL_BIST_MIN_THRESHOLD_LO 0x04F1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__PLL_BIST_MAX_THRESHOLD 0x04F2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__PLL_BIST_MAX_THRESHOLD_HI 0x04F2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__PLL_BIST_MAX_THRESHOLD_LO 0x04F3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__PLL_BIST_COUNT_OUT 0x04F4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__PLL_BIST_COUNT_OUT_HI 0x04F4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__PLL_BIST_COUNT_OUT_LO 0x04F5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__PLL_BIST_GONOGO 0x04F6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_TEST__PLL_BIST_CTRL 0x04F7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__DEVICE_ID 0x0680
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REVISION_ID 0x0681
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__CLK_CTRL1 0x0683
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__CLK_CTRL2 0x0684
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__WOI_1 0x0685
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__WOI_REF_1 0x0686
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__START_RANGING 0x0687
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__LOW_LIMIT_1 0x0690
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__HIGH_LIMIT_1 0x0691
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__LOW_LIMIT_REF_1 0x0692
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__HIGH_LIMIT_REF_1 0x0693
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__QUANTIFIER_1_MSB 0x0694
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__QUANTIFIER_1_LSB 0x0695
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__QUANTIFIER_REF_1_MSB 0x0696
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__QUANTIFIER_REF_1_LSB 0x0697
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_OFFSET_1_MSB 0x0698
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_OFFSET_1_LSB 0x0699
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_OFFSET_REF_1_MSB 0x069A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_OFFSET_REF_1_LSB 0x069B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__FILTER_STRENGTH_1 0x069C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__FILTER_STRENGTH_REF_1 0x069D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SIGNAL_EVENT_LIMIT_1_MSB 0x069E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SIGNAL_EVENT_LIMIT_1_LSB 0x069F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SIGNAL_EVENT_LIMIT_REF_1_MSB 0x06A0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SIGNAL_EVENT_LIMIT_REF_1_LSB 0x06A1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TIMEOUT_OVERALL_PERIODS_MSB 0x06A4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TIMEOUT_OVERALL_PERIODS_LSB 0x06A5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__INVERT_HW 0x06A6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__FORCE_HW 0x06A7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__STATIC_HW_VALUE 0x06A8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__FORCE_CONTINUOUS_AMBIENT 0x06A9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TEST_PHASE_SELECT_TO_FILTER 0x06AA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TEST_PHASE_SELECT_TO_TIMING_GEN 0x06AB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__INITIAL_PHASE_VALUE_1 0x06AC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__INITIAL_PHASE_VALUE_REF_1 0x06AD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__FORCE_UP_IN 0x06AE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__FORCE_DN_IN 0x06AF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__STATIC_UP_VALUE_1 0x06B0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__STATIC_UP_VALUE_REF_1 0x06B1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__STATIC_DN_VALUE_1 0x06B2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__STATIC_DN_VALUE_REF_1 0x06B3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__MONITOR_UP_DN 0x06B4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__INVERT_UP_DN 0x06B5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__CPUMP_1 0x06B6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__CPUMP_2 0x06B7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__CPUMP_3 0x06B8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__OSC_1 0x06B9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__PLL_1 0x06BB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__PLL_2 0x06BC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REFERENCE_1 0x06BD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REFERENCE_3 0x06BF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REFERENCE_4 0x06C0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REFERENCE_5 0x06C1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REGAVDD1V2 0x06C3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__CALIB_1 0x06C4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__CALIB_2 0x06C5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__CALIB_3 0x06C6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TST_MUX_SEL1 0x06C9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TST_MUX_SEL2 0x06CA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TST_MUX 0x06CB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__GPIO_OUT_TESTMUX 0x06CC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__CUSTOM_FE 0x06CD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__CUSTOM_FE_2 0x06CE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SPAD_READOUT 0x06CF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SPAD_READOUT_1 0x06D0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SPAD_READOUT_2 0x06D1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SPAD_PS 0x06D2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__LASER_SAFETY_2 0x06D4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__MODE 0x0780
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__PDN 0x0781
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__PROGN 0x0782
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__READN 0x0783
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__PULSE_WIDTH_MSB 0x0784
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__PULSE_WIDTH_LSB 0x0785
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__HV_RISE_MSB 0x0786
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__HV_RISE_LSB 0x0787
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__HV_FALL_MSB 0x0788
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__HV_FALL_LSB 0x0789
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__TST 0x078A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__TESTREAD 0x078B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__DATAIN_MMM 0x078C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__DATAIN_LMM 0x078D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__DATAIN_LLM 0x078E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__DATAIN_LLL 0x078F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__DATAOUT_MMM 0x0790
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__DATAOUT_LMM 0x0791
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__DATAOUT_LLM 0x0792
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__DATAOUT_LLL 0x0793
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__ADDR 0x0794
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__NVM_CTRL__DATAOUT_ECC 0x0795
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_0 0x0796
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_1 0x0797
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_2 0x0798
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_3 0x0799
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_4 0x079A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_5 0x079B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_6 0x079C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_7 0x079D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_8 0x079E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_9 0x079F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_10 0x07A0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_11 0x07A1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_12 0x07A2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_13 0x07A3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_14 0x07A4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_15 0x07A5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_16 0x07A6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_17 0x07A7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SPAD_SHIFT_EN 0x07BA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SPAD_DISABLE_CTRL 0x07BB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SPAD_EN_SHIFT_OUT_DEBUG 0x07BC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SPI_MODE 0x07BD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__GPIO_DIR 0x07BE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__VCSEL_PERIOD 0x0880
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__VCSEL_START 0x0881
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__VCSEL_STOP 0x0882
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__VCSEL_1 0x0885
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__VCSEL_STATUS 0x088D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__STATUS 0x0980
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__LASER_CONTINUITY_STATE 0x0981
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGE_1_MMM 0x0982
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGE_1_LMM 0x0983
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGE_1_LLM 0x0984
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGE_1_LLL 0x0985
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGE_REF_1_MMM 0x0986
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGE_REF_1_LMM 0x0987
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGE_REF_1_LLM 0x0988
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGE_REF_1_LLL 0x0989
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_WINDOW_EVENTS_1_MMM 0x098A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_WINDOW_EVENTS_1_LMM 0x098B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_WINDOW_EVENTS_1_LLM 0x098C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_WINDOW_EVENTS_1_LLL 0x098D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGING_TOTAL_EVENTS_1_MMM 0x098E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGING_TOTAL_EVENTS_1_LMM 0x098F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGING_TOTAL_EVENTS_1_LLM 0x0990
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGING_TOTAL_EVENTS_1_LLL 0x0991
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SIGNAL_TOTAL_EVENTS_1_MMM 0x0992
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SIGNAL_TOTAL_EVENTS_1_LMM 0x0993
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SIGNAL_TOTAL_EVENTS_1_LLM 0x0994
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SIGNAL_TOTAL_EVENTS_1_LLL 0x0995
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TOTAL_PERIODS_ELAPSED_1_MM 0x0996
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TOTAL_PERIODS_ELAPSED_1_LM 0x0997
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TOTAL_PERIODS_ELAPSED_1_LL 0x0998
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_MISMATCH_MM 0x0999
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_MISMATCH_LM 0x099A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_MISMATCH_LL 0x099B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_WINDOW_EVENTS_REF_1_MMM 0x099C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_WINDOW_EVENTS_REF_1_LMM 0x099D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_WINDOW_EVENTS_REF_1_LLM 0x099E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_WINDOW_EVENTS_REF_1_LLL 0x099F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGING_TOTAL_EVENTS_REF_1_MMM 0x09A0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGING_TOTAL_EVENTS_REF_1_LMM 0x09A1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGING_TOTAL_EVENTS_REF_1_LLM 0x09A2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RANGING_TOTAL_EVENTS_REF_1_LLL 0x09A3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SIGNAL_TOTAL_EVENTS_REF_1_MMM 0x09A4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SIGNAL_TOTAL_EVENTS_REF_1_LMM 0x09A5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SIGNAL_TOTAL_EVENTS_REF_1_LLM 0x09A6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SIGNAL_TOTAL_EVENTS_REF_1_LLL 0x09A7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TOTAL_PERIODS_ELAPSED_REF_1_MM 0x09A8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TOTAL_PERIODS_ELAPSED_REF_1_LM 0x09A9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TOTAL_PERIODS_ELAPSED_REF_1_LL 0x09AA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_MISMATCH_REF_MM 0x09AB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_MISMATCH_REF_LM 0x09AC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__AMBIENT_MISMATCH_REF_LL 0x09AD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__GPIO_CONFIG__A0 0x0A00
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RESET_CONTROL__A0 0x0A01
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__INTR_MANAGER__A0 0x0A02
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__POWER_FSM_TIME_OSC__A0 0x0A06
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__VCSEL_ATEST__A0 0x0A07
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__VCSEL_PERIOD_CLIPPED__A0 0x0A08
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__VCSEL_STOP_CLIPPED__A0 0x0A09
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__CALIB_2__A0 0x0A0A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__STOP_CONDITION__A0 0x0A0B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__STATUS_RESET__A0 0x0A0C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__READOUT_CFG__A0 0x0A0D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__WINDOW_SETTING__A0 0x0A0E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__VCSEL_DELAY__A0 0x0A1A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REFERENCE_2__A0 0x0A1B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REGAVDD1V2__A0 0x0A1D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__TST_MUX__A0 0x0A1F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__CUSTOM_FE_2__A0 0x0A20
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SPAD_READOUT__A0 0x0A21
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__CPUMP_1__A0 0x0A22
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__SPARE_REGISTER__A0 0x0A23
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__VCSEL_CONT_STAGE5_BYPASS__A0 0x0A24
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_18 0x0A25
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_19 0x0A26
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_20 0x0A27
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_21 0x0A28
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_22 0x0A29
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_23 0x0A2A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_24 0x0A2B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_25 0x0A2C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_26 0x0A2D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_27 0x0A2E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_28 0x0A2F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_29 0x0A30
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_30 0x0A31
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__RET_SPAD_EN_31 0x0A32
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REF_SPAD_EN_0__EWOK 0x0A33
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REF_SPAD_EN_1__EWOK 0x0A34
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REF_SPAD_EN_2__EWOK 0x0A35
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REF_SPAD_EN_3__EWOK 0x0A36
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REF_SPAD_EN_4__EWOK 0x0A37
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REF_SPAD_EN_5__EWOK 0x0A38
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REF_EN_START_SELECT 0x0A39
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGING_CORE__REGDVDD1V2_ATEST__EWOK 0x0A41
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SOFT_RESET_GO1 0x0B00
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PRIVATE__PATCH_BASE_ADDR_RSLV 0x0E00
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__INTERRUPT_STATUS 0x0ED0
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [2:0] = prev_shadow_int_status
+ - [4:3] = prev_shadow_int_error_status
+ - [5] = prev_shadow_gph_id_gpio_status
+*/
+#define VL53L1_PREV_SHADOW_RESULT__RANGE_STATUS 0x0ED1
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [4:0] = prev_shadow_range_status
+ - [5] = prev_shadow_max_threshold_hit
+ - [6] = prev_shadow_min_threshold_hit
+ - [7] = prev_shadow_gph_id_range_status
+*/
+#define VL53L1_PREV_SHADOW_RESULT__REPORT_STATUS 0x0ED2
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [3:0] = prev_shadow_report_status
+*/
+#define VL53L1_PREV_SHADOW_RESULT__STREAM_COUNT 0x0ED3
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [7:0] = prev_shadow_result__stream_count
+*/
+#define VL53L1_PREV_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0 0x0ED4
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__dss_actual_effective_spads_sd0 (fixed point 8.8)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0_HI 0x0ED4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0_LO 0x0ED5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0 0x0ED6
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__peak_signal_count_rate_mcps_sd0 (fixed point 9.7)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0_HI 0x0ED6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0_LO 0x0ED7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0 0x0ED8
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__ambient_count_rate_mcps_sd0 (fixed point 9.7)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0_HI 0x0ED8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0_LO 0x0ED9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SIGMA_SD0 0x0EDA
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__sigma_sd0 (fixed point 14.2)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SIGMA_SD0_HI 0x0EDA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SIGMA_SD0_LO 0x0EDB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PHASE_SD0 0x0EDC
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__phase_sd0 (fixed point 5.11)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PHASE_SD0_HI 0x0EDC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PHASE_SD0_LO 0x0EDD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0 0x0EDE
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__final_crosstalk_corrected_range_mm_sd0
+*/
+#define VL53L1_PREV_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0_HI 0x0EDE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0_LO 0x0EDF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0 0x0EE0
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__peak_signal_count_rate_crosstalk_corrected_mcps_sd0 (fixed point 9.7)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0_HI 0x0EE0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0_LO 0x0EE1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0 0x0EE2
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__mm_inner_actual_effective_spads_sd0 (fixed point 8.8)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0_HI 0x0EE2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0_LO 0x0EE3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0 0x0EE4
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__mm_outer_actual_effective_spads_sd0 (fixed point 8.8)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0_HI 0x0EE4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0_LO 0x0EE5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0 0x0EE6
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__avg_signal_count_rate_mcps_sd0 (fixed point 9.7)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0_HI 0x0EE6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0_LO 0x0EE7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1 0x0EE8
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__dss_actual_effective_spads_sd1 (fixed point 8.8)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1_HI 0x0EE8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1_LO 0x0EE9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1 0x0EEA
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__peak_signal_count_rate_mcps_sd1 (fixed point 9.7)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1_HI 0x0EEA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1_LO 0x0EEB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1 0x0EEC
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__ambient_count_rate_mcps_sd1 (fixed point 9.7)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1_HI 0x0EEC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1_LO 0x0EED
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SIGMA_SD1 0x0EEE
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__sigma_sd1 (fixed point 14.2)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SIGMA_SD1_HI 0x0EEE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SIGMA_SD1_LO 0x0EEF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PHASE_SD1 0x0EF0
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__phase_sd1 (fixed point 5.11)
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PHASE_SD1_HI 0x0EF0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__PHASE_SD1_LO 0x0EF1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1 0x0EF2
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__final_crosstalk_corrected_range_mm_sd1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1_HI 0x0EF2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1_LO 0x0EF3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SPARE_0_SD1 0x0EF4
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__spare_0_sd1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SPARE_0_SD1_HI 0x0EF4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SPARE_0_SD1_LO 0x0EF5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SPARE_1_SD1 0x0EF6
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__spare_1_sd1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SPARE_1_SD1_HI 0x0EF6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SPARE_1_SD1_LO 0x0EF7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SPARE_2_SD1 0x0EF8
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__spare_2_sd1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SPARE_2_SD1_HI 0x0EF8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SPARE_2_SD1_LO 0x0EF9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SPARE_3_SD1 0x0EFA
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['prev_shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = prev_shadow_result__spare_3_sd1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SPARE_3_SD1_HI 0x0EFA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT__SPARE_3_SD1_LO 0x0EFB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0 0x0EFC
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['prev_shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = prev_shadow_result_core__ambient_window_events_sd0
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_3 0x0EFC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_2 0x0EFD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_1 0x0EFE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_0 0x0EFF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0 0x0F00
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['prev_shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = prev_shadow_result_core__ranging_total_events_sd0
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_3 0x0F00
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_2 0x0F01
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_1 0x0F02
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_0 0x0F03
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0 0x0F04
+/*!<
+ type: int32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['prev_shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = prev_shadow_result_core__signal_total_events_sd0
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_3 0x0F04
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_2 0x0F05
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_1 0x0F06
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_0 0x0F07
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0 0x0F08
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['prev_shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = prev_shadow_result_core__total_periods_elapsed_sd0
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_3 0x0F08
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_2 0x0F09
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_1 0x0F0A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_0 0x0F0B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1 0x0F0C
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['prev_shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = prev_shadow_result_core__ambient_window_events_sd1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_3 0x0F0C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_2 0x0F0D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_1 0x0F0E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_0 0x0F0F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1 0x0F10
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['prev_shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = prev_shadow_result_core__ranging_total_events_sd1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_3 0x0F10
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_2 0x0F11
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_1 0x0F12
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_0 0x0F13
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1 0x0F14
+/*!<
+ type: int32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['prev_shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = prev_shadow_result_core__signal_total_events_sd1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_3 0x0F14
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_2 0x0F15
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_1 0x0F16
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_0 0x0F17
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1 0x0F18
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['prev_shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = prev_shadow_result_core__total_periods_elapsed_sd1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_3 0x0F18
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_2 0x0F19
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_1 0x0F1A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_0 0x0F1B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PREV_SHADOW_RESULT_CORE__SPARE_0 0x0F1C
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['prev_shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [7:0] = prev_shadow_result_core__spare_0
+*/
+#define VL53L1_RESULT__DEBUG_STATUS 0x0F20
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_debug', 'misc_results']
+ fields: \n
+ - [7:0] = result_debug_status
+*/
+#define VL53L1_RESULT__DEBUG_STAGE 0x0F21
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_debug', 'misc_results']
+ fields: \n
+ - [7:0] = result_debug_stage
+*/
+#define VL53L1_GPH__SYSTEM__THRESH_RATE_HIGH 0x0F24
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['gph_general_config', 'dss_config']
+ fields: \n
+ - [15:0] = gph__system_thresh_rate_high (fixed point 9.7)
+*/
+#define VL53L1_GPH__SYSTEM__THRESH_RATE_HIGH_HI 0x0F24
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__SYSTEM__THRESH_RATE_HIGH_LO 0x0F25
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__SYSTEM__THRESH_RATE_LOW 0x0F26
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['gph_general_config', 'dss_config']
+ fields: \n
+ - [15:0] = gph__system_thresh_rate_low (fixed point 9.7)
+*/
+#define VL53L1_GPH__SYSTEM__THRESH_RATE_LOW_HI 0x0F26
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__SYSTEM__THRESH_RATE_LOW_LO 0x0F27
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__SYSTEM__INTERRUPT_CONFIG_GPIO 0x0F28
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_general_config', 'gph_config']
+ fields: \n
+ - [1:0] = gph__int_mode_distance
+ - [3:2] = gph__int_mode_rate
+ - [4] = gph__int_spare
+ - [5] = gph__int_new_measure_ready
+ - [6] = gph__int_no_target_en
+ - [7] = gph__int_combined_mode
+*/
+#define VL53L1_GPH__DSS_CONFIG__ROI_MODE_CONTROL 0x0F2F
+/*!<
+ type: uint8_t \n
+ default: 0x01 \n
+ info: \n
+ - msb = 2
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_static_config', 'dss_config']
+ fields: \n
+ - [1:0] = gph__dss_config__input_mode
+ - [2] = gph__calculate_roi_enable
+*/
+#define VL53L1_GPH__DSS_CONFIG__MANUAL_EFFECTIVE_SPADS_SELECT 0x0F30
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['gph_static_config', 'dss_config']
+ fields: \n
+ - [15:0] = gph__dss_config__manual_effective_spads_select
+*/
+#define VL53L1_GPH__DSS_CONFIG__MANUAL_EFFECTIVE_SPADS_SELECT_HI 0x0F30
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__DSS_CONFIG__MANUAL_EFFECTIVE_SPADS_SELECT_LO 0x0F31
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__DSS_CONFIG__MANUAL_BLOCK_SELECT 0x0F32
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_static_config', 'dss_config']
+ fields: \n
+ - [7:0] = gph__dss_config__manual_block_select
+*/
+#define VL53L1_GPH__DSS_CONFIG__MAX_SPADS_LIMIT 0x0F33
+/*!<
+ type: uint8_t \n
+ default: 0xFF \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_static_config', 'dss_config']
+ fields: \n
+ - [7:0] = gph__dss_config__max_spads_limit
+*/
+#define VL53L1_GPH__DSS_CONFIG__MIN_SPADS_LIMIT 0x0F34
+/*!<
+ type: uint8_t \n
+ default: 0x01 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_static_config', 'dss_config']
+ fields: \n
+ - [7:0] = gph__dss_config__min_spads_limit
+*/
+#define VL53L1_GPH__MM_CONFIG__TIMEOUT_MACROP_A_HI 0x0F36
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_timing_config', 'mm_config']
+ fields: \n
+ - [3:0] = gph_mm_config__config_timeout_macrop_a_hi
+*/
+#define VL53L1_GPH__MM_CONFIG__TIMEOUT_MACROP_A_LO 0x0F37
+/*!<
+ type: uint8_t \n
+ default: 0x06 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_timing_config', 'mm_config']
+ fields: \n
+ - [7:0] = gph_mm_config__config_timeout_macrop_a_lo
+*/
+#define VL53L1_GPH__MM_CONFIG__TIMEOUT_MACROP_B_HI 0x0F38
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_timing_config', 'mm_config']
+ fields: \n
+ - [3:0] = gph_mm_config__config_timeout_macrop_b_hi
+*/
+#define VL53L1_GPH__MM_CONFIG__TIMEOUT_MACROP_B_LO 0x0F39
+/*!<
+ type: uint8_t \n
+ default: 0x06 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_timing_config', 'mm_config']
+ fields: \n
+ - [7:0] = gph_mm_config__config_timeout_macrop_b_lo
+*/
+#define VL53L1_GPH__RANGE_CONFIG__TIMEOUT_MACROP_A_HI 0x0F3A
+/*!<
+ type: uint8_t \n
+ default: 0x01 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_timing_config', 'range_config']
+ fields: \n
+ - [3:0] = gph_range_timeout_overall_periods_macrop_a_hi
+*/
+#define VL53L1_GPH__RANGE_CONFIG__TIMEOUT_MACROP_A_LO 0x0F3B
+/*!<
+ type: uint8_t \n
+ default: 0x92 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_timing_config', 'range_config']
+ fields: \n
+ - [7:0] = gph_range_timeout_overall_periods_macrop_a_lo
+*/
+#define VL53L1_GPH__RANGE_CONFIG__VCSEL_PERIOD_A 0x0F3C
+/*!<
+ type: uint8_t \n
+ default: 0x0B \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_timing_config', 'range_config']
+ fields: \n
+ - [5:0] = gph_range_config__vcsel_period_a
+*/
+#define VL53L1_GPH__RANGE_CONFIG__VCSEL_PERIOD_B 0x0F3D
+/*!<
+ type: uint8_t \n
+ default: 0x09 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_timing_config', 'range_config']
+ fields: \n
+ - [5:0] = gph_range_config__vcsel_period_b
+*/
+#define VL53L1_GPH__RANGE_CONFIG__TIMEOUT_MACROP_B_HI 0x0F3E
+/*!<
+ type: uint8_t \n
+ default: 0x01 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_timing_config', 'range_config']
+ fields: \n
+ - [3:0] = gph_range_timeout_overall_periods_macrop_b_hi
+*/
+#define VL53L1_GPH__RANGE_CONFIG__TIMEOUT_MACROP_B_LO 0x0F3F
+/*!<
+ type: uint8_t \n
+ default: 0x92 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_timing_config', 'range_config']
+ fields: \n
+ - [7:0] = gph_range_timeout_overall_periods_macrop_b_lo
+*/
+#define VL53L1_GPH__RANGE_CONFIG__SIGMA_THRESH 0x0F40
+/*!<
+ type: uint16_t \n
+ default: 0x0080 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['gph_timing_config', 'range_config']
+ fields: \n
+ - [15:0] = gph_range_config__sigma_thresh (fixed point 14.2)
+*/
+#define VL53L1_GPH__RANGE_CONFIG__SIGMA_THRESH_HI 0x0F40
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__RANGE_CONFIG__SIGMA_THRESH_LO 0x0F41
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__RANGE_CONFIG__MIN_COUNT_RATE_RTN_LIMIT_MCPS 0x0F42
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['gph_timing_config', 'range_config']
+ fields: \n
+ - [15:0] = gph_range_config__min_count_rate_rtn_limit_mcps (fixed point 9.7)
+*/
+#define VL53L1_GPH__RANGE_CONFIG__MIN_COUNT_RATE_RTN_LIMIT_MCPS_HI 0x0F42
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__RANGE_CONFIG__MIN_COUNT_RATE_RTN_LIMIT_MCPS_LO 0x0F43
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_GPH__RANGE_CONFIG__VALID_PHASE_LOW 0x0F44
+/*!<
+ type: uint8_t \n
+ default: 0x08 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_timing_config', 'range_config']
+ fields: \n
+ - [7:0] = gph_range_config__valid_phase_low (fixed point 5.3)
+*/
+#define VL53L1_GPH__RANGE_CONFIG__VALID_PHASE_HIGH 0x0F45
+/*!<
+ type: uint8_t \n
+ default: 0x80 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['gph_timing_config', 'range_config']
+ fields: \n
+ - [7:0] = gph_range_config__valid_phase_high (fixed point 5.3)
+*/
+#define VL53L1_FIRMWARE__INTERNAL_STREAM_COUNT_DIV 0x0F46
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['fw_internal']
+ fields: \n
+ - [7:0] = fw__internal_stream_count_div
+*/
+#define VL53L1_FIRMWARE__INTERNAL_STREAM_COUNTER_VAL 0x0F47
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['fw_internal']
+ fields: \n
+ - [7:0] = fw__internal_stream_counter_val
+*/
+#define VL53L1_DSS_CALC__ROI_CTRL 0x0F54
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 1
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [0] = dss_calc__roi_intersect_enable
+ - [1] = dss_calc__roi_subtract_enable
+*/
+#define VL53L1_DSS_CALC__SPARE_1 0x0F55
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__spare_1
+*/
+#define VL53L1_DSS_CALC__SPARE_2 0x0F56
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__spare_2
+*/
+#define VL53L1_DSS_CALC__SPARE_3 0x0F57
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__spare_3
+*/
+#define VL53L1_DSS_CALC__SPARE_4 0x0F58
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__spare_4
+*/
+#define VL53L1_DSS_CALC__SPARE_5 0x0F59
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__spare_5
+*/
+#define VL53L1_DSS_CALC__SPARE_6 0x0F5A
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__spare_6
+*/
+#define VL53L1_DSS_CALC__SPARE_7 0x0F5B
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__spare_7
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_0 0x0F5C
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_0
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_1 0x0F5D
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_1
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_2 0x0F5E
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_2
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_3 0x0F5F
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_3
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_4 0x0F60
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_4
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_5 0x0F61
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_5
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_6 0x0F62
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_6
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_7 0x0F63
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_7
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_8 0x0F64
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_8
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_9 0x0F65
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_9
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_10 0x0F66
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_10
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_11 0x0F67
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_11
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_12 0x0F68
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_12
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_13 0x0F69
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_13
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_14 0x0F6A
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_14
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_15 0x0F6B
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_15
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_16 0x0F6C
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_16
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_17 0x0F6D
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_17
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_18 0x0F6E
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_18
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_19 0x0F6F
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_19
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_20 0x0F70
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_20
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_21 0x0F71
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_21
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_22 0x0F72
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_22
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_23 0x0F73
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_23
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_24 0x0F74
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_24
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_25 0x0F75
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_25
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_26 0x0F76
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_26
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_27 0x0F77
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_27
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_28 0x0F78
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_28
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_29 0x0F79
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_29
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_30 0x0F7A
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_30
+*/
+#define VL53L1_DSS_CALC__USER_ROI_SPAD_EN_31 0x0F7B
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_spad_en_31
+*/
+#define VL53L1_DSS_CALC__USER_ROI_0 0x0F7C
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_0
+*/
+#define VL53L1_DSS_CALC__USER_ROI_1 0x0F7D
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__user_roi_1
+*/
+#define VL53L1_DSS_CALC__MODE_ROI_0 0x0F7E
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__mode_roi_0
+*/
+#define VL53L1_DSS_CALC__MODE_ROI_1 0x0F7F
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_calc']
+ fields: \n
+ - [7:0] = dss_calc__mode_roi_1
+*/
+#define VL53L1_SIGMA_ESTIMATOR_CALC__SPARE_0 0x0F80
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'sigma_est_spare']
+ fields: \n
+ - [7:0] = sigma_estimator_calc__spare_0
+*/
+#define VL53L1_VHV_RESULT__PEAK_SIGNAL_RATE_MCPS 0x0F82
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['patch_results', 'vhv_results']
+ fields: \n
+ - [15:0] = vhv_result__peak_signal_rate_mcps
+*/
+#define VL53L1_VHV_RESULT__PEAK_SIGNAL_RATE_MCPS_HI 0x0F82
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_VHV_RESULT__PEAK_SIGNAL_RATE_MCPS_LO 0x0F83
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_VHV_RESULT__SIGNAL_TOTAL_EVENTS_REF 0x0F84
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['patch_results', 'vhv_results']
+ fields: \n
+ - [31:0] = vhv_result__signal_total_events_ref
+*/
+#define VL53L1_VHV_RESULT__SIGNAL_TOTAL_EVENTS_REF_3 0x0F84
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_VHV_RESULT__SIGNAL_TOTAL_EVENTS_REF_2 0x0F85
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_VHV_RESULT__SIGNAL_TOTAL_EVENTS_REF_1 0x0F86
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_VHV_RESULT__SIGNAL_TOTAL_EVENTS_REF_0 0x0F87
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PHASECAL_RESULT__PHASE_OUTPUT_REF 0x0F88
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['patch_results', 'phasecal_results']
+ fields: \n
+ - [15:0] = phasecal_result__normalised_phase_ref
+*/
+#define VL53L1_PHASECAL_RESULT__PHASE_OUTPUT_REF_HI 0x0F88
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_PHASECAL_RESULT__PHASE_OUTPUT_REF_LO 0x0F89
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_DSS_RESULT__TOTAL_RATE_PER_SPAD 0x0F8A
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['patch_results', 'dss_results']
+ fields: \n
+ - [15:0] = dss_result__total_rate_per_spad
+*/
+#define VL53L1_DSS_RESULT__TOTAL_RATE_PER_SPAD_HI 0x0F8A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_DSS_RESULT__TOTAL_RATE_PER_SPAD_LO 0x0F8B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_DSS_RESULT__ENABLED_BLOCKS 0x0F8C
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['patch_results', 'dss_results']
+ fields: \n
+ - [7:0] = dss_result__enabled_blocks
+*/
+#define VL53L1_DSS_RESULT__NUM_REQUESTED_SPADS 0x0F8E
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['patch_results', 'dss_results']
+ fields: \n
+ - [15:0] = dss_result__num_requested_spads (fixed point 8.8)
+*/
+#define VL53L1_DSS_RESULT__NUM_REQUESTED_SPADS_HI 0x0F8E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_DSS_RESULT__NUM_REQUESTED_SPADS_LO 0x0F8F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MM_RESULT__INNER_INTERSECTION_RATE 0x0F92
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['patch_results', 'mm_results']
+ fields: \n
+ - [15:0] = mm_result__inner_intersection_rate
+*/
+#define VL53L1_MM_RESULT__INNER_INTERSECTION_RATE_HI 0x0F92
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MM_RESULT__INNER_INTERSECTION_RATE_LO 0x0F93
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MM_RESULT__OUTER_COMPLEMENT_RATE 0x0F94
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['patch_results', 'mm_results']
+ fields: \n
+ - [15:0] = mm_result__outer_complement_rate
+*/
+#define VL53L1_MM_RESULT__OUTER_COMPLEMENT_RATE_HI 0x0F94
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MM_RESULT__OUTER_COMPLEMENT_RATE_LO 0x0F95
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MM_RESULT__TOTAL_OFFSET 0x0F96
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['patch_results', 'mm_results']
+ fields: \n
+ - [15:0] = mm_result__total_offset
+*/
+#define VL53L1_MM_RESULT__TOTAL_OFFSET_HI 0x0F96
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_MM_RESULT__TOTAL_OFFSET_LO 0x0F97
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_CALC__XTALK_FOR_ENABLED_SPADS 0x0F98
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 23
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['patch_results', 'xtalk_calc']
+ fields: \n
+ - [23:0] = xtalk_calc__xtalk_for_enabled_spads (fixed point 11.13)
+*/
+#define VL53L1_XTALK_CALC__XTALK_FOR_ENABLED_SPADS_3 0x0F98
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_CALC__XTALK_FOR_ENABLED_SPADS_2 0x0F99
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_CALC__XTALK_FOR_ENABLED_SPADS_1 0x0F9A
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_CALC__XTALK_FOR_ENABLED_SPADS_0 0x0F9B
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_USER_ROI_KCPS 0x0F9C
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 23
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['patch_results', 'xtalk_results']
+ fields: \n
+ - [23:0] = xtalk_result__avg_xtalk_user_roi_kcps (fixed point 11.13)
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_USER_ROI_KCPS_3 0x0F9C
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_USER_ROI_KCPS_2 0x0F9D
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_USER_ROI_KCPS_1 0x0F9E
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_USER_ROI_KCPS_0 0x0F9F
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_MM_INNER_ROI_KCPS 0x0FA0
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 23
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['patch_results', 'xtalk_results']
+ fields: \n
+ - [23:0] = xtalk_result__avg_xtalk_mm_inner_roi_kcps (fixed point 11.13)
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_MM_INNER_ROI_KCPS_3 0x0FA0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_MM_INNER_ROI_KCPS_2 0x0FA1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_MM_INNER_ROI_KCPS_1 0x0FA2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_MM_INNER_ROI_KCPS_0 0x0FA3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_MM_OUTER_ROI_KCPS 0x0FA4
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 23
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['patch_results', 'xtalk_results']
+ fields: \n
+ - [23:0] = xtalk_result__avg_xtalk_mm_outer_roi_kcps (fixed point 11.13)
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_MM_OUTER_ROI_KCPS_3 0x0FA4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_MM_OUTER_ROI_KCPS_2 0x0FA5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_MM_OUTER_ROI_KCPS_1 0x0FA6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_XTALK_RESULT__AVG_XTALK_MM_OUTER_ROI_KCPS_0 0x0FA7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGE_RESULT__ACCUM_PHASE 0x0FA8
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['patch_results', 'range_results']
+ fields: \n
+ - [31:0] = range_result__accum_phase
+*/
+#define VL53L1_RANGE_RESULT__ACCUM_PHASE_3 0x0FA8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGE_RESULT__ACCUM_PHASE_2 0x0FA9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGE_RESULT__ACCUM_PHASE_1 0x0FAA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGE_RESULT__ACCUM_PHASE_0 0x0FAB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGE_RESULT__OFFSET_CORRECTED_RANGE 0x0FAC
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['patch_results', 'range_results']
+ fields: \n
+ - [15:0] = range_result__offset_corrected_range
+*/
+#define VL53L1_RANGE_RESULT__OFFSET_CORRECTED_RANGE_HI 0x0FAC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_RANGE_RESULT__OFFSET_CORRECTED_RANGE_LO 0x0FAD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_PHASECAL_RESULT__VCSEL_START 0x0FAE
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['shadow_system_results', 'histogram_results']
+ fields: \n
+ - [7:0] = shadow_phasecal_result__vcsel_start
+*/
+#define VL53L1_SHADOW_RESULT__INTERRUPT_STATUS 0x0FB0
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 5
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [2:0] = shadow_int_status
+ - [4:3] = shadow_int_error_status
+ - [5] = shadow_gph_id_gpio_status
+*/
+#define VL53L1_SHADOW_RESULT__RANGE_STATUS 0x0FB1
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [4:0] = shadow_range_status
+ - [5] = shadow_max_threshold_hit
+ - [6] = shadow_min_threshold_hit
+ - [7] = shadow_gph_id_range_status
+*/
+#define VL53L1_SHADOW_RESULT__REPORT_STATUS 0x0FB2
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 3
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [3:0] = shadow_report_status
+*/
+#define VL53L1_SHADOW_RESULT__STREAM_COUNT 0x0FB3
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [7:0] = shadow_result__stream_count
+*/
+#define VL53L1_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0 0x0FB4
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__dss_actual_effective_spads_sd0 (fixed point 8.8)
+*/
+#define VL53L1_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0_HI 0x0FB4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0_LO 0x0FB5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0 0x0FB6
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__peak_signal_count_rate_mcps_sd0 (fixed point 9.7)
+*/
+#define VL53L1_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0_HI 0x0FB6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0_LO 0x0FB7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0 0x0FB8
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__ambient_count_rate_mcps_sd0 (fixed point 9.7)
+*/
+#define VL53L1_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0_HI 0x0FB8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0_LO 0x0FB9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__SIGMA_SD0 0x0FBA
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__sigma_sd0 (fixed point 14.2)
+*/
+#define VL53L1_SHADOW_RESULT__SIGMA_SD0_HI 0x0FBA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__SIGMA_SD0_LO 0x0FBB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__PHASE_SD0 0x0FBC
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__phase_sd0 (fixed point 5.11)
+*/
+#define VL53L1_SHADOW_RESULT__PHASE_SD0_HI 0x0FBC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__PHASE_SD0_LO 0x0FBD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0 0x0FBE
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__final_crosstalk_corrected_range_mm_sd0
+*/
+#define VL53L1_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0_HI 0x0FBE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0_LO 0x0FBF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0 0x0FC0
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__peak_signal_count_rate_crosstalk_corrected_mcps_sd0 (fixed point 9.7)
+*/
+#define VL53L1_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0_HI 0x0FC0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0_LO 0x0FC1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0 0x0FC2
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__mm_inner_actual_effective_spads_sd0 (fixed point 8.8)
+*/
+#define VL53L1_SHADOW_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0_HI 0x0FC2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0_LO 0x0FC3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0 0x0FC4
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__mm_outer_actual_effective_spads_sd0 (fixed point 8.8)
+*/
+#define VL53L1_SHADOW_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0_HI 0x0FC4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0_LO 0x0FC5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0 0x0FC6
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__avg_signal_count_rate_mcps_sd0 (fixed point 9.7)
+*/
+#define VL53L1_SHADOW_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0_HI 0x0FC6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0_LO 0x0FC7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1 0x0FC8
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__dss_actual_effective_spads_sd1 (fixed point 8.8)
+*/
+#define VL53L1_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1_HI 0x0FC8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1_LO 0x0FC9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1 0x0FCA
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__peak_signal_count_rate_mcps_sd1 (fixed point 9.7)
+*/
+#define VL53L1_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1_HI 0x0FCA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1_LO 0x0FCB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1 0x0FCC
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__ambient_count_rate_mcps_sd1 (fixed point 9.7)
+*/
+#define VL53L1_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1_HI 0x0FCC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1_LO 0x0FCD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__SIGMA_SD1 0x0FCE
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__sigma_sd1 (fixed point 14.2)
+*/
+#define VL53L1_SHADOW_RESULT__SIGMA_SD1_HI 0x0FCE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__SIGMA_SD1_LO 0x0FCF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__PHASE_SD1 0x0FD0
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__phase_sd1 (fixed point 5.11)
+*/
+#define VL53L1_SHADOW_RESULT__PHASE_SD1_HI 0x0FD0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__PHASE_SD1_LO 0x0FD1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1 0x0FD2
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__final_crosstalk_corrected_range_mm_sd1
+*/
+#define VL53L1_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1_HI 0x0FD2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1_LO 0x0FD3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__SPARE_0_SD1 0x0FD4
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__spare_0_sd1
+*/
+#define VL53L1_SHADOW_RESULT__SPARE_0_SD1_HI 0x0FD4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__SPARE_0_SD1_LO 0x0FD5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__SPARE_1_SD1 0x0FD6
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__spare_1_sd1
+*/
+#define VL53L1_SHADOW_RESULT__SPARE_1_SD1_HI 0x0FD6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__SPARE_1_SD1_LO 0x0FD7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__SPARE_2_SD1 0x0FD8
+/*!<
+ type: uint16_t \n
+ default: 0x0000 \n
+ info: \n
+ - msb = 15
+ - lsb = 0
+ - i2c_size = 2
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [15:0] = shadow_result__spare_2_sd1
+*/
+#define VL53L1_SHADOW_RESULT__SPARE_2_SD1_HI 0x0FD8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__SPARE_2_SD1_LO 0x0FD9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT__SPARE_3_SD1 0x0FDA
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [7:0] = shadow_result__spare_3_sd1
+*/
+#define VL53L1_SHADOW_RESULT__THRESH_INFO 0x0FDB
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['shadow_system_results', 'results']
+ fields: \n
+ - [3:0] = shadow_result__distance_int_info
+ - [7:4] = shadow_result__rate_int_info
+*/
+#define VL53L1_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0 0x0FDC
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = shadow_result_core__ambient_window_events_sd0
+*/
+#define VL53L1_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_3 0x0FDC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_2 0x0FDD
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_1 0x0FDE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_0 0x0FDF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0 0x0FE0
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = shadow_result_core__ranging_total_events_sd0
+*/
+#define VL53L1_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_3 0x0FE0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_2 0x0FE1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_1 0x0FE2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_0 0x0FE3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0 0x0FE4
+/*!<
+ type: int32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = shadow_result_core__signal_total_events_sd0
+*/
+#define VL53L1_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_3 0x0FE4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_2 0x0FE5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_1 0x0FE6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_0 0x0FE7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0 0x0FE8
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = shadow_result_core__total_periods_elapsed_sd0
+*/
+#define VL53L1_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_3 0x0FE8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_2 0x0FE9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_1 0x0FEA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_0 0x0FEB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1 0x0FEC
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = shadow_result_core__ambient_window_events_sd1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_3 0x0FEC
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_2 0x0FED
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_1 0x0FEE
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_0 0x0FEF
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1 0x0FF0
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = shadow_result_core__ranging_total_events_sd1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_3 0x0FF0
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_2 0x0FF1
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_1 0x0FF2
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_0 0x0FF3
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1 0x0FF4
+/*!<
+ type: int32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = shadow_result_core__signal_total_events_sd1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_3 0x0FF4
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_2 0x0FF5
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_1 0x0FF6
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_0 0x0FF7
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1 0x0FF8
+/*!<
+ type: uint32_t \n
+ default: 0x00000000 \n
+ info: \n
+ - msb = 31
+ - lsb = 0
+ - i2c_size = 4
+ groups: \n
+ ['shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [31:0] = shadow_result_core__total_periods_elapsed_sd1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_3 0x0FF8
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_2 0x0FF9
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_1 0x0FFA
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_0 0x0FFB
+/*!<
+ info: \n
+ - msb = 0
+ - lsb = 0
+ - i2c_size = 1
+*/
+#define VL53L1_SHADOW_RESULT_CORE__SPARE_0 0x0FFC
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['shadow_core_results', 'ranging_core_results']
+ fields: \n
+ - [7:0] = shadow_result_core__spare_0
+*/
+#define VL53L1_SHADOW_PHASECAL_RESULT__REFERENCE_PHASE_HI 0x0FFE
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['shadow_system_results', 'histogram_results']
+ fields: \n
+ - [7:0] = shadow_phasecal_result__reference_phase_hi
+*/
+#define VL53L1_SHADOW_PHASECAL_RESULT__REFERENCE_PHASE_LO 0x0FFF
+/*!<
+ type: uint8_t \n
+ default: 0x00 \n
+ info: \n
+ - msb = 7
+ - lsb = 0
+ - i2c_size = 1
+ groups: \n
+ ['shadow_system_results', 'histogram_results']
+ fields: \n
+ - [7:0] = shadow_phasecal_result__reference_phase_lo
+*/
+
+/** @} VL53L1_register_DefineRegisters_group */
+
+
+#endif
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp Tue Oct 22 05:47:05 2019 +0000
@@ -0,0 +1,31 @@
+
+#include "mbed.h"
+#include "VL53L1X.h"
+#include <string>
+
+Serial pc(USBTX,USBRX);
+bool s1_init = true;
+
+//VL53L1X sensor1(PC_1,PC_0);//VL53L1X(PinName SDA, PinName SCL);
+//VL53L1X sensor1(PC_1,PC_0);//VL53L1X(PinName SDA, PinName SCL);
+//VL53L1X sensor1(PB_9,PB_8);
+//VL53L1X sensor1(P0_04,P0_05);
+
+VL53L1X sensor1(P3_4,P3_5);
+int main()
+{
+
+ pc.baud (115200) ;
+ s1_init = sensor1.begin();
+
+ while(1)
+ {
+ //pc.printf("test\n\r");
+ //pc.printf("\rone.%d\n\r", s1_init);
+
+ printf("%u\n", (unsigned int)sensor1.getDistance());
+ wait(0.1);
+
+ }
+}
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed-os.lib Tue Oct 22 05:47:05 2019 +0000 @@ -0,0 +1,1 @@ +https://github.com/ARMmbed/mbed-os/#b6e5a0a8afa34dec9dae8963778aebce0c82a54b
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed_app.json Tue Oct 22 05:47:05 2019 +0000
@@ -0,0 +1,11 @@
+{
+ "target_overrides": {
+ "*": {
+ "platform.stack-stats-enabled": true,
+ "platform.heap-stats-enabled": true,
+ "platform.cpu-stats-enabled": true,
+ "platform.thread-stats-enabled": true,
+ "platform.sys-stats-enabled": true
+ }
+ }
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/stats_report.h Tue Oct 22 05:47:05 2019 +0000
@@ -0,0 +1,133 @@
+/* mbed Microcontroller Library
+ * Copyright (c) 2018 ARM Limited
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+#ifndef STATS_REPORT_H
+#define STATS_REPORT_H
+
+#include <inttypes.h>
+#include "mbed.h"
+
+/**
+ * System Reporting library. Provides runtime information on device:
+ * - CPU sleep, idle, and wake times
+ * - Heap and stack usage
+ * - Thread information
+ * - Static system information
+ */
+class SystemReport {
+ mbed_stats_heap_t heap_stats;
+ mbed_stats_cpu_t cpu_stats;
+ mbed_stats_sys_t sys_stats;
+
+ mbed_stats_thread_t *thread_stats;
+ uint8_t thread_count;
+ uint8_t max_thread_count;
+ uint32_t sample_time_ms;
+
+public:
+ /**
+ * SystemReport - Sample rate in ms is required to handle the CPU percent awake logic
+ */
+ SystemReport(uint32_t sample_rate) : max_thread_count(8), sample_time_ms(sample_rate)
+ {
+ thread_stats = new mbed_stats_thread_t[max_thread_count];
+
+ // Collect the static system information
+ mbed_stats_sys_get(&sys_stats);
+
+ printf("=============================== SYSTEM INFO ================================\r\n");
+ printf("Mbed OS Version: %" PRIu32 " \r\n", sys_stats.os_version);
+ printf("CPU ID: 0x%" PRIx32 " \r\n", sys_stats.cpu_id);
+ printf("Compiler ID: %d \r\n", sys_stats.compiler_id);
+ printf("Compiler Version: %" PRIu32 " \r\n", sys_stats.compiler_version);
+
+ for (int i = 0; i < MBED_MAX_MEM_REGIONS; i++) {
+ if (sys_stats.ram_size[i] != 0) {
+ printf("RAM%d: Start 0x%" PRIx32 " Size: 0x%" PRIx32 " \r\n", i, sys_stats.ram_start[i], sys_stats.ram_size[i]);
+ }
+ }
+ for (int i = 0; i < MBED_MAX_MEM_REGIONS; i++) {
+ if (sys_stats.rom_size[i] != 0) {
+ printf("ROM%d: Start 0x%" PRIx32 " Size: 0x%" PRIx32 " \r\n", i, sys_stats.rom_start[i], sys_stats.rom_size[i]);
+ }
+ }
+ }
+
+ ~SystemReport(void)
+ {
+ free(thread_stats);
+ }
+
+ /**
+ * Report on each Mbed OS Platform stats API
+ */
+ void report_state(void)
+ {
+ report_cpu_stats();
+ report_heap_stats();
+ report_thread_stats();
+
+ // Clear next line to separate subsequent report logs
+ printf("\r\n");
+ }
+
+ /**
+ * Report CPU idle and awake time in terms of percentage
+ */
+ void report_cpu_stats(void)
+ {
+ static uint64_t prev_idle_time = 0;
+
+ printf("================= CPU STATS =================\r\n");
+
+ // Collect and print cpu stats
+ mbed_stats_cpu_get(&cpu_stats);
+
+ uint64_t diff = (cpu_stats.idle_time - prev_idle_time);
+ uint8_t idle = (diff * 100) / (sample_time_ms * 1000); // usec;
+ uint8_t usage = 100 - ((diff * 100) / (sample_time_ms * 1000)); // usec;;
+ prev_idle_time = cpu_stats.idle_time;
+
+ printf("Idle: %d%% Usage: %d%% \r\n", idle, usage);
+ }
+
+ /**
+ * Report current heap stats. Current heap refers to the current amount of
+ * allocated heap. Max heap refers to the highest amount of heap allocated
+ * since reset.
+ */
+ void report_heap_stats(void)
+ {
+ printf("================ HEAP STATS =================\r\n");
+
+ // Collect and print heap stats
+ mbed_stats_heap_get(&heap_stats);
+
+ printf("Current heap: %" PRIu32 "\r\n", heap_stats.current_size);
+ printf("Max heap size: %" PRIu32 "\r\n", heap_stats.max_size);
+ }
+
+ /**
+ * Report active thread stats
+ */
+ void report_thread_stats(void)
+ {
+ printf("================ THREAD STATS ===============\r\n");
+
+ // Collect and print running thread stats
+ int count = mbed_stats_thread_get_each(thread_stats, max_thread_count);
+
+ for (int i = 0; i < count; i++) {
+ printf("ID: 0x%" PRIx32 " \r\n", thread_stats[i].id);
+ printf("Name: %s \r\n", thread_stats[i].name);
+ printf("State: %" PRIu32 " \r\n", thread_stats[i].state);
+ printf("Priority: %" PRIu32 " \r\n", thread_stats[i].priority);
+ printf("Stack Size: %" PRIu32 " \r\n", thread_stats[i].stack_size);
+ printf("Stack Space: %" PRIu32 " \r\n", thread_stats[i].stack_space);
+ }
+ }
+};
+
+#endif // STATS_REPORT_H
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/README.md Tue Oct 22 05:47:05 2019 +0000 @@ -0,0 +1,12 @@ +# Testing examples + +Examples are tested using tool [htrun](https://github.com/ARMmbed/mbed-os-tools/tree/master/packages/mbed-host-tests) and templated print log. + +To run the test, use following command after you build the example: +``` +mbedhtrun -d D: -p COM4 -m K64F -f .\BUILD\K64F\GCC_ARM\blinky.bin --compare-log tests\blinky.log +``` + + +More details about `htrun` are [here](https://github.com/ARMmbed/mbed-os-tools/tree/master/packages/mbed-host-tests#testing-mbed-os-examples). +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/blinky.log Tue Oct 22 05:47:05 2019 +0000 @@ -0,0 +1,29 @@ +=============================== SYSTEM INFO ================================ +Mbed OS Version: +CPU ID: 0x[0-9a-fA-F]+ +Compiler ID: \d+ +Compiler Version: +================= CPU STATS ================= +Idle: \d+% Usage: \d+% +================ HEAP STATS ================= +Current heap: \d+ +Max heap size: \d+ +================ THREAD STATS =============== +ID: 0x[0-9a-fA-F]+ +Name: main +State: \d+ +Priority: \d+ +Stack Size: \d+ +Stack Space: \d+ +ID: 0x[0-9a-fA-F]+ +Name: rtx_idle +State: \d+ +Priority: \d+ +Stack Size: \d+ +Stack Space: \d+ +ID: 0x[0-9a-fA-F]+ +Name: rtx_timer +State: \d+ +Priority: \d+ +Stack Size: \d+ +Stack Space: \d+