Issue reading Lidar Lite v3HP through I2C on first boot w/ extended cable

I am reading the Lidar Lite v3HP through I2C bus 1 (pin 3 & 5) on Jetson Nano. Everything works fine except now I’m trying to extend the i2c cable for extra 3 meters using CAT6e cable.

Garmin manual (https://support.garmin.com/en-US/?partNumber=010-01722-10&tab=manuals) suggests to add a pull-up resistor for each SDA & SCL wire when extending to long cable. I did that by hook wire up 4.7kohm between each wire to the 5v pin.

The behavior I observe that happened consistently was:

  1. If I turn off the Jetson completely for a few minutes, then turn back on again. I cannot read anything from the Lidar. However, when I ran
sudo i2cdetect -y -r 1

, I could see the address of the device detected. So this tells me the device is recognized but went to fault somehow. At the this point, if I reset the power for the Lidar (unplug and plug back either 5v or GND) wire, I can read the data from the device just fine.

  1. After the device is already up and running, no matter how many times I turn off the device and turn back on right away, it would just keep working fine unless I repeat the 1st scenarios by waiting for several minutes before turning back on.

I’m not knowledgeable on electrical to know what to call the name of the problem describe in the first issue. Could it be a power problem or something else? Ideally, I want to have the device up and running together with the PC instead of doing the power cycle hack.

(Jetson is powered by a 5v, 3A source through power jack)

Thank you and really appreciate any input.

Hi, this I2C is 3.3V level which should not be pulled up to 5V and there are internal 2.2k pull-up in module, no need to add 4.7k.If the I2C of device is 5V level, then you need to add a level shift to transfer 5V to 3.3V.