Using spi on a xavier nx

I am having some trouble getting the SPI interface on the xavier nx to work.

I have succeded making the spi devices appear in /dev as /dev/spidev0.0, /dev/spidev0.1, /dev/spidev2.0 and /dev/spidev2.1. These interfaces are visible, whenever i reload the container and type modprobe -s -v spidev (the container has the label io.balena.features.kernel-modules: ‘1’, in order for this to work.

Even though, I can not get the physical spi port to give any signals, when trying to send anything via any of the spidev devices.

I have tried sending with a python script using the spidev library (using the methods sendbytes(), xfer() and xfer2()). I have also found a version of the spidev_test program and tried testing with this.

When testing, I don’t get any software errors (except it only reads 0x00), but when I measure the physical pins using a oscilloscope, I don’t see any changes while sending data.

I am testing it as a loopback.

Is there anything I need to do in order to activate the spi port?

Hello @Kaare apologizes for the delay replying this message.

Did you fixed this issue?

In the meantime i contacted our devices team to see how we can help you more :slight_smile:

Hi @mpous

I was not able to solve this at the moment. So it was put on standby from my side.

I was also in contact with the support via a support ticket, but this did not solve it (not part of our support package)

Verify that the GPIO pins are correctly configured for SPI functionality (not set to GPIO or other alternate modes). Use NVIDIA’s pinmux configuration tool if necessary.

1 Like