2024-05-29 12:25 AM - edited 2024-05-29 10:24 AM
Hi
I refer to the VL53L0X Datasheet DoclD029104 rev5 page 15 article 2.10 Ranging Sequence.
There not a lot descritption in your document
I need to understant how GPIO1 stay down before the sensor pull it up when init/ranging/housekeeping phase is finish.
hypothesys 1/ GPIO1 is not pulled up, the sensor pull it down, then the sensor pull it up when init/ranging/housekeeping phase is finish.
hypothesys 2/ GPIO1 is pulled up by 10k ohms, the sensor pull it down, then the sensor pull it up when init/ranging/housekeeping phase is finish.
hypothesys 3/ GPIO1 is not pulled down, the sensor pull it up when , then the sensor pull it up when init/ranging/housekeeping phase is finish.
hypothesys 4/ the API pull the GPIO1 down and wait that the sensor pull it up when init/ranging/housekeeping phase is finish.
Thanks in advance for answers
Solved! Go to Solution.
2024-05-29 09:05 PM
Hi
The GPIO1 is designed for interrupt function, the interrupt trig could be based on data ready, lower than threshold, higher than threshold, in window and out of window.
And the default Polarity is configurable, it can be either default low or default high, this set up need to align with you host side GPIO settings.
#define VL53L0X_INTERRUPTPOLARITY_LOW ((VL53L0X_InterruptPolarity) 0)
/*!< Set active low polarity best setup for falling edge. */
#define VL53L0X_INTERRUPTPOLARITY_HIGH ((VL53L0X_InterruptPolarity) 1)
/*!< Set active high polarity best setup for rising edge. */
if you set it to active high, the GPIO1 default status will be low, once data ready, sensor will pull it high.
if you set it to active low, the GPIO1 default status will be high, once data ready, sensor will drive it to low.
Br
Zhiyuan.Han
2024-05-29 09:05 PM
Hi
The GPIO1 is designed for interrupt function, the interrupt trig could be based on data ready, lower than threshold, higher than threshold, in window and out of window.
And the default Polarity is configurable, it can be either default low or default high, this set up need to align with you host side GPIO settings.
#define VL53L0X_INTERRUPTPOLARITY_LOW ((VL53L0X_InterruptPolarity) 0)
/*!< Set active low polarity best setup for falling edge. */
#define VL53L0X_INTERRUPTPOLARITY_HIGH ((VL53L0X_InterruptPolarity) 1)
/*!< Set active high polarity best setup for rising edge. */
if you set it to active high, the GPIO1 default status will be low, once data ready, sensor will pull it high.
if you set it to active low, the GPIO1 default status will be high, once data ready, sensor will drive it to low.
Br
Zhiyuan.Han