Troubleshoot SPI Communication Failure on NI-DAQmx sbRIO Controllers

Updated Sep 21, 2026

Reported In

Hardware

  • sbRIO-9628
  • sbRIO-9638
  • sbRIO-9629
  • sbRIO-9609
  • sbRIO-9608
  • sbRIO-9603

Software

  • LabVIEW
  • JKI VI Package Manager
  • LabVIEW FPGA Module

Issue Details

I migrated my application from an NI sbRIO-9637 to an NI sbRIO-9638, and SPI communication with a third-party device stopped working. The same code previously worked on the NI sbRIO-9637 and continues to use the SPI examples provided with the I2C & SPI API and NI SPI IP packages available through VI Package Manager (VIPM).
I observed that no SPI data was exchanged with the external device after deploying the application to the NI sbRIO-9638. 

Solution

The NI sbRIO-9638 uses a different hardware architecture than the NI sbRIO-9637. Because NI-DAQmx functionality is integrated into the NI sbRIO-9638, digital signals routed through Connector 1 pass through an additional hardware selection layer before reaching the FPGA. 

This behavior applies when SPI signals are routed through Connector 1 digital I/O lines on the NI sbRIO-9638. SPI implementations using other connectors such as RMC connector  may not require additional configuration.

If SPI communication is implemented using Connector 1 digital lines, configure the corresponding pins as inputs or outputs before running the application.
  1. Open the LabVIEW project containing the NI sbRIO-9638 target.
  2. Locate the Connector 1 configuration item in the project tree.
  3. Right-click the connector block and select Properties.
  4. Configure each SPI signal line with the appropriate direction:
    • Set SPI output signals to Output.
    • Set SPI input signals to Input.
  5. Apply the configuration.
  6. Redeploy the application.
  7. Verify communication with the external SPI device.
After configuring the Connector 1 pin directions, SPI communication should operate normally.

 

Additional Information

Validation performed during testing showed the following:
  • The I2C & SPI API examples installed through VI Package Manager function correctly on the NI sbRIO-9638.
  • The NI SPI IP shipping examples function correctly on the NI sbRIO-9638.
  • SPI communication was successfully tested with a master clock frequency of 40 MHz.


The behavior was reproducible across multiple LabVIEW versions, including LabVIEW 2019 and LabVIEW 2023.