Jetson Nano SPI - Can I modify drive strength?

Hello,
I am using the Jetson Nano Development Kit - B01. I’m experiencing issues when trying to read values via SPI communication from sensors with pull-up resistors on the Jetson Nano.


The first image shows an oscilloscope measurement of the CS pin from an ENS160 + aht21 gas sensor. The voltage doesn’t completely drop to 0V, resulting in inconsistent readings - sometimes it reads correctly, other times it doesn’t.

The second image shows an oscilloscope measurement of the CS pin from a different accelerometer sensor. The voltage constantly fluctuates, making it impossible to read any values.
I have tested both sensors on different boards with other MCUs, and they output values normally. I can guarantee that there are no issues with the sensors themselves.
I’m wondering if adjusting the drive strength of the Jetson Nano board might help to fully control the CS pin voltage.
Additionally, I unfortunately couldn’t activate SPI through Jetson-IO on my board. Instead, I followed iflybri2’s post (SPI setup issues with Jetson Nano B01 DevKit) as a reference. I was able to activate SPI by first decompiling the dtb file, modifying it, then compiling and flashing it.
I’ve also uploaded my current dtb file for reference. Due to upload issues, I changed the extension to txt.

Thanks.

tegra210-p3448-0000-p3449-0000-b00.txt (231.8 KB)

Plus

I flashed through Nvidia SDK Manager, so I am using L4T 32.7.5, Jetpack 4.6.5

Hi jushine1209,

Please share the block diagram of your connection in SPI.

Have you also verified with SPI loopback test before connect with your sensor?

Please also check your SPI device to make sure it can meet the pin load requirement as requested in below doc.
Jetson Nano Developer Kit 40-Pin Expansion Header GPIO Usage Considerations Applications Note

Yes. I have verified SPI loopback test.
When Jetson Nano is connected with other sensor, which has no pull-up resistors, SPI works fine.

I connected pins like this:
sensor : Jetson nano
VDD : pin 17
GND : pin 20
MOSI : pin 19
MISO : pin 21
SCLK : pin 23
CS : pin 24

I am discussing SPI communication with sensors which have pull-up resistors.
I verified cases:
SPI, sensor without pull-up resistor - works all fine in Jetson Nano, and other mcu boards.
SPI, sensor with pull-up resistor - works fine in other mcu boards, does not work in Jetson Nano.

So, for example, if I connect a sensor with a 10k ohm resistor to the Jetson Nano, it won’t work properly?

Is it impossible to solve it by modifying the dtb file?

It can’t be solved by sw.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.