Can I Use SPI and I2C Driver API on sbRIO-9651?

Updated Jan 7, 2023

Reported In

Hardware

  • sbRIO-9651

Issue Details

I have the SPI and I2C Driver API that I downloaded from VI package manager to use SPI and I2C on my FPGA. I have used the SPI and I2C Driver API on my other single board RIOs (sbRIO) and it works great.

I am now trying to use it on my System on Module (SOM) which is the sbRIO-9651, and the "SPI FPGA I/O" cluster, which consists of Input/Output Nodes on the FPGA to select for use, has nothing available to select. When I click on the drop down to select the FPGA lines I want to use I get a dialog box that says "No I/O Available".
This means that I can't run my application. 


If I replace the FPGA I/O nodes inside the cluster with ones from my pallet, I can select my sbRIO's I/O. When I do this however the wire connecting the cluster to the subVI is now a broken wire. 


How do I fix this issue so I can use SPI on my SOM?

Solution

The API has not been updated to work with the SOM yet. Since the SOM handles FPGA I/O differently than other sbRIOs you are seeing these incompatibilities.

You can get around this by replacing all of the FPGA I/O Nodes in the cluster with those from your pallet. Then making this cluster a typedef and going into each SPI subVI and changing the expected cluster input of the subVI to that of your typedef and save.