Does anyone tried ST VL53L5CX or Vl53l7CX?

Hi,

I trying to get to run these sensors and failing. (These are the same sensor with different optics, so library for one have to work with the other.)

I tried Sparkfun library(GitHub - sparkfun/SparkFun_VL53L5CX_Arduino_Library) for Arduino, even tried to program one myself without any success.

I think the AMB82MINI have some issues in communication with this sensor subfamily.

Do anyone have these sensors? Can you please try to connect them and use any of examples with the library to check if it works? I would really appreciate you help!

I would love to have working example how to work with VL53L7CX, because I want to use these sensors with the AMB82MINI for my research and potentialy commercial product. I do not want to use different SoM or MCU to begin my work with, the Amb82mini is the best match! It is dualband wireless, it have video codecs, it is powerfull and tiny!

See my issue on github too: AMB82-mini is not able to communicate with STM vl53l5cx or vl53l7cx using Sparkfun library based on official library/driver · Issue #298 · Ameba-AIoT/ameba-arduino-pro2 · GitHub

Thanks for any help.

Best regards,
electry

Hi @electry,

You may need to study how the other I2C sensors are being ported such as VL53l0x etc in our SDK. There are a lot of I2C devices and it is quite impossible to port them all. The key thing is to understand how to read and write data using AMB82 Mini and communicate with the I2C device.

Tip: Once you understand how VL53L0x is ported in our SDK, I believe you will be able to port other sensors for similar I2C devices.

Thank you!

Hi,

I am sorry to bothering you, but I ported the ST library for the sensor to all my platforms (ST, RPi, Espressif, even I2C IP in Xilinx FPGA) just not the Realtek one. I even tried to use platform layer from VL53L0x example. The newer sensor behaves a bit differently, these needs to setup and check a lot of flags and then upload sensor firmware. It should work but practically it does not. It is not like to write new library according to datasheet and timing requirements. There are reference implementations that work everywhere just not on AMB82mini. It feels like the i2c bus of AMB82mini is unstable after longer usage. I would like describe it better, but VL53L5/7cx have reference implementation, but not detailed datasheet, how its i2c should work.

I tried to add delays after each command and check where AMB82mini read bad value or freeze (busywait where it shouldn’t). But I can’t do much without low level sources of I2C bus.

Why AMB82mini’s I2C behave so differently than other devices? Porting of libraries using standard buses like I2C, SPI, etc. usually need to adapt for special features, but these things are usually abstracted out in Arduino ecosystem. So every Arduino compatible board should work perfectly or at least work badly optimised with arduino libraries, but at least work.

Have a great day,
electry

Hi @electry,

Thanks for your feedback. I agree that there are some tricks that need to be performed, while I ported the VL53L0x sensor the last time too. I also want to make the I2C easier for users like you to port their I2C devices easier on AMB82-Mini.

I would like to inform that I2C slave read/write is still not available yet on AMB82-Mini.

Thank you.