reComputer Jetson-20-1-H2 (SS110061401 ) SPI on the 40 pin

I have reComputer Jetson 20-1-h2 and I wanted to use SPI on the 40 pin. If anyone could advise where I could be wrong or have successfully installed right library to access SPI on 40 pin.

I have installed a NVMe SSD and flashed Jetpack 5 to the SSD using the Nvidia’s SDKmanger tool and included all developer tools. I have also tried flashing Jetpacl 4.6 but I get the same problem with the device tree not being setup to use the 40 pin header.

If I try to use the official Jestson.GPIO library that comes installed with Jetpack OS found here GitHub - NVIDIA/jetson-gpio: A Python library that enables the use of Jetson's GPIOs then I get the following warnings

WARNING: Carrier board is not from a Jetson Developer Kit.
WARNNIG: Jetson.GPIO library has not been verified with this carrier board,
WARNING: and in fact is unlikely to work correctly.

When I put my scope on the pins they are low until I try to operate the pin with Jetson.GPIO then I get a 50Hz sinewave between 1.2v and 2v on the pin see below a screen grab from the scope.

If I try to use the Jetson-io tool to setup to use the SPI on the 40 pin header after saving and rebooting ls /dev/spi* results in no file found so I am unable to use the SPI.

One thing that does work is if I install the Adafruit busio library then I can use the I2C on the 40 pin header. It does give me the same warning as above but it still works.

You can try using Raspberry Pi’s GPIO library.

Ok I am the customer with the problem as Pakronics the seller just posted upon my behalf.

The RPI.GPIO and Jetson.GPIO library is the same library the Jetson.GPIO is just a wrapper. I have tried both and got the same result (not surprising as they are the same.)

Let me explain the problem a bit better. I can’t get the 40 pin header to work with either using GPIO or SPI and both get the same result. If I put my oscilloscope on the pins to see what’s happening, what I get is that before I try to use the pin the pin is low as expected but when I try to set the pin high with GPIO or send data using SPI what the scope sees on the pin is a sine wave of 50Hz between 2v and 1.2v. If I try to set the pin back to low or deinit the pin it doesn’t affect the sine wave on the pin, only shutting down and restarting of the OS will reset the pin back to low.

The official Nvidia carrier board has an eprom that tells the OS that it is the offical Nvidia carrier board. I am not sure if it is the fact that the Seed Studios A206 carrier board is not being detected by the OS that is causing the problem??

I have got the I2C bus working on the 40 pin header though using Adafruit busio libiary. It does give me the follwoing warning but it still works.

WARNING: Carrier board is not from a Jetson Developer Kit.
WARNNIG: Jetson.GPIO library has not been verified with this carrier board,
WARNING: and in fact is unlikely to work correctly.

We have paid attention to this problem, we are following up to solve, we have a solution we will contact you first.

Thank you.

I have been building a humanoid robot that will interact with humans

see the project so far Robot head - YouTube

We just finished testing with the Jetson GPIO library, but the GPIO voltage output is normal. It is true that a warning message will pop up, but this is normal.

I still have some doubts about the question you raised. When you say ‘40pin’, do you mean the pin numbered 40 in the upper left corner, or do you mean all the GPIO pins on top of the A206 carrier board, where the IIC and SPI functions are not available to you?

The whole header in the picture is what I am talking about. On my board it doesn’t work, the I2C bus works on board pins 3 and 5 (GPIO2 and GPIO3) using Adafruit busio but the GPIO library doesn’t work and I can’t set pins high or low. If I use Jetsion-io to setup the PWM or SPI they don’t work either. I haven’t tried the UART so I don’t know if it works.

Can you please send me a video of your results testing the pins. Why is the meter in the picture you posted showing 1.18v instead of 3.3v

here is the correct pinout fo the Jetson Xavier NX NVIDIA Jetson Xavier NX GPIO Header Pinout - JetsonHacks

I have made a video to very clearly show what the problem is see header problem - YouTube

In the video I said that I hadn’t been able to get the UART workign but since making the video I have successfully used /dev/ttyTHS0 in pins 8 and 10.

Also as stated in the video I have been succesfully using I2C on pins 3 and 5

I am using Jetpack 5.01 but have also tried using Jetpack 4.6 and it was exactly the same.

Ok I understand, this should be an example. You may have received a carrier board of questionable quality. Please contact our technical support email and they will have someone to solve this problem for you.

Wait a long time, for your carrier board problems, the results of our investigation are as follows.

  1. Problems with warnings.
    – Nvidia’s official carrier board has no warning message, the current carrier board sold by reComputer has a warning message.
    – Nvidia will upload the SN information of the carrier board to the internal system and verify whether it is the official carrier board when powering on, and output a warning message if it is inconsistent.
    Conclusion: The warning does appear because of the unofficial carrier board, the performance of our carrier board is no problem.
  2. Calling GPIO library command Output voltage is not correct problem
    – Nvidia and reComputer board phenomenon consistent
    – The reason is the choice of TI materials TXB0108 problem, IC drive ability is weak, external resistance needs > 50K to stabilize the output 3.3V, Nvidia has a special document to explain.

Thanks for taking the time to look in to this problem.

If I understand this document correctly it means the Jetson module has very precise needs on the GPIO setup on the carrier board?

Does this mean the carrier board on the reComputer needs a slight change in design for the end user to be able to use the 40pin GPIO header?

Thank you for your reply, at present, the official carrier board will have similar such problems, for larger changes, we will make careful consideration, thank you for your feedback, but also sorry for your bad experience here. At present your carrier board we judge to be no problem, we first send you back, is this feasible?

I am a little confused. Will the 40pin GPIO header work when you return it?

The project that I am building need to be able to use GPIO pins, the Timers on the 40 pin header and the SPI on the 40 pin header. When I sent the board back to Seed Studios none of these were working.