cancel
Showing results for 
Search instead for 
Did you mean: 

Multiple VL53L0X sensors and I2C bus

MikeB100
Associate

I have an application that uses 10 VL53L0X sensors on an I2C bus.  I seem to have ended up damaging multiple STM32 dev boards trying to get this configuration to work reliably.  Any help to understand what I am doing wrong would be appreciated.

So, there are 10 VL53L0X sensors on a single I2C bus connected to the I2C port on a Nucleo dev board.  There is a mechanism to enable each independently to set the I2C address, after which they all operate in continuous sampling mode and the MCU polls for results periodically.  This works fine, sort of, and the data comes in OK.  At some point everything stops and that's the end of it. I have found that the I2C port on the dev board seems to have been damaged and no longer works at all (probing with multi-channel scope).  There was nothing else connected to the dev board, just the I2C lines.

The VL53L0X sensors have their own 3V power supply which is manually switched and is independent from the power to the dev board. In normal polled operation I noted that the sensor power was taking about 200mA; which seems quite a lot to me but maybe that's normal.  My suspicion is that I may at some point have had the dev board powered but without power to the sensors.  Could that somehow have overloaded the I2C bus lines and damaged the dev board?

Before I risk trying another of my dwindling stock of dev boards I want to make sure I am not going to break anything else.  Should I be using some sort of isolation on the bus between the sensors and the sensors and the dev board?  Am I missing something obvious?  I wasn't expecting that anything on an I2C bus could potentially damage the master I2C port.

Open to ideas and suggestions.

1 REPLY 1
TDK
Super User

Powering the dev board and the sensors independently should cause no issues.

TDK_0-1765803258795.png

 

But pulling 200 mA does indicate a hardware issue. Perhaps something else happened.

TDK_1-1765803318644.png

 

Perhaps show a picture of your setup. Place board on a non-conductive surface. Be wary of shorting random pins together.

If you feel a post has answered your question, please click "Accept as Solution".