Skip to main content
CSkil.1
Associate
October 9, 2023
Solved

VL53L5CX-SATEL won't respond to I2C?

  • October 9, 2023
  • 2 replies
  • 1493 views
 

I'm trying to get the VL53L5CX-SATEL to talk to a microcontroller.

The lines are connected as follows

INTFloating
I2C_RST22K pull down
SDAMCU SDA Pin with 2.2K pull up to 3.3v
SCLMCU SCL Pin with 2.2K pull up to 3.3v
LPn22K pull up to IOVDD (3.3V)
PWREN22K pull up to AVDD (5V)
AVDD5V
IOVDD3.3V
GNDGND

nack.png

When I try to send a write command, the device does not ACK the address (0x52). Can anyone see what I'm doing wrong?

Best answer by CSkil.1

OK, the I2C driver in the MCU was shifting the address left by 1 so the address was being sent as 0xA4 as seen in the trace. With the address corrected it works. Thanks all.

2 replies

Anne BIGOT
Technical Moderator
October 9, 2023

Hello,

Are you using the SATEL itself or the breakout board ? 

It will change in the fact that the SATEL has already the pull ups while the breakout board doesn't. 

Moreover ST suggests to put a pull-up between 2.2 and 4.7 k and not much than 4.7. (check AN5717)
Regards,

Our community relies on fruitful exchanges and good quality content. You can thank and reward helpful and positive contributions by marking them as 'Accept as Solution'. When marking a solution, make sure it answers your original question or issue that you raised. ST Employees that act as moderators have the right to accept the solution, judging by their expertise. This helps other community members identify useful discussions and refrain from raising the same question. If you notice any false behavior or abuse of the action, do not hesitate to 'Report Inappropriate Content'
asko-k
Graduate
August 27, 2024

@Anne BIGOT wrote:

[...] the SATEL has already the pull ups while the breakout board doesn't. 

Moreover ST suggests to put a pull-up between 2.2 and 4.7 k and not much than 4.7. (check AN5717)
Regards,


Let me note that in the schematics of PCB4109A variant, all the pull-up and pull-down resistors are on the side of the "breakout board" (the little board). Thus, it seems to me very few if any resistors are needed by me, to have the board functioning. 

Disclaimer: I am still working on getting the I2C comms established.

CSkil.1
CSkil.1AuthorBest answer
Associate
October 9, 2023

OK, the I2C driver in the MCU was shifting the address left by 1 so the address was being sent as 0xA4 as seen in the trace. With the address corrected it works. Thanks all.