2024-12-10 07:05 AM - last edited on 2024-12-10 07:10 AM by Andrew Neil
Does anyone have access to documentation with an actual list of registers with addresses and functionality and a full description of the register bits for the VL53L0X?
All I have been able to find is documentation that refers to the questionable API driver package and some doxygen-generated document based on the comments in the API.
2024-12-10 07:44 AM
This is the most asked question - and the answer is we don't give out the register map. And before you ask, there are a few reasons.
1) there are a LOT of registers. And while I'm sure you could write a driver eventually- you would end up hating ST forever.
2) support would be near impossible. You might not get the accuracy or distance you need and there would be no way for me to tell you what you needed to change.
3) Our first chip was duplicated by some company in China. Theirs didn't work very well, but it cost us some sales and we don't want to go through that again.
ST has a driver. It's been well tested over the last 8 years, and it works. There have been many, many designs and the L0 is still one of our best-selling ToF parts.
ST has a driver. It has more lines of code in it than most people want, and I think it should be a lot simpler. But one must argue that it works. And if you don't call a function, a reasonable linker will not include it.
Lots of people have re-engineered our driver, and most of them work. Try one, and if you have an issue, go back the to original and see what differences there are.
One guy used our driver to get the config he wanted, then monitored the I2C traffic, then just implemented functions to duplicate the I2C traffic. I'm not suggesting you do that, but if you were really tight one space, it would work.
- john