Problem with I2C. Sensor TSL2561 return incorrect data when connected to Jetson Nano I2C bus0.

Hi again. I have four identical TSL2561 sensors. If I connect one of these sensors to the Jetson Nano I2C bus 1 (3 - SDA, 5 - SCL) all work fine, sensor responds and returns the correct data.If I connect the same sensor to the Jetson Nano I2C bus 0 (27 - SDA, 28 - SCL), then the sensor returns incorrect data. I have already tried replacing the sensor, the problem is repeated with three other sensors. All sensors are absolutely identical.

They look like this: https://ru.aliexpress.com/item/32891208504.html?spm=a2g0o.productlist.0.0.313a1be5QCf7Nq&algo_pvid=a4895676-b8fb-4614-ab45-bf040e0589eb&algo_expid=a4895676-b8fb-4614-ab45-bf040e0589eb-0&btsid=97da32d9-eb92-427e-8686-5ccaf5e73501&ws_ab_test=searchweb0_0,searchweb201602_,searchweb201603_53

The functionality of the program code and all sensors was tested for Rasberry Pi3B and Raspberry PI Zero W. All work fine.

It’s duplicate with https://devtalk.nvidia.com/default/topic/1055560?

Maybe. The main discussion is in the topic you have indicated.

https://devtalk.nvidia.com/default/topic/1055560?

Good morning andrey.kozeletsky & candanoza & vkuruturi & snarky & fbaez1001 & ShaneCCC. Perhaps I managed to localize two probable sources of the problem.

As you remember, at the moment, we know the following:

  1. Sensors work normally on I2C port 1
  2. Sensors fail when connected to the I2C 0 bus port.
  3. The code normally works on Raspberry Pi 2/3 / 3b / Zero / Zero, OrangePi (various models), Pin64, it works normally on I2C port 1. And it intermittently fails on the I2C 0 bus port.
  4. As previously written in this thread on the I2C 0 bus port, Nvidia Jetson there is an abnormal behavior with TTL logic levels (a problem with voltage levels).
  5. Additionally, there is such a publication on the forum - the problem of controlling the LED directly. You can read more here: https://devtalk.nvidia.com/default/topic/1052785/jetson-nano/jetson-nano-gpio-example-problem/

How do you think? Maybe the problem arises from the bidirectional translators of the voltage level TXB0108 to GPIO allowing you to switch from 1.8 V module levels to 3.3 V header levels?

Two possible sources of problems:

  1. TXB0108
  2. Linux libraries, the Linux kernel, etc. That is, the software component.

Who, what ideas how to check and localize it? And how to fix it?

The problem has not yet been resolved.