High Latency When Using NI-9860 with cDAQ in Polling Mode

Updated Apr 7, 2025

Issue Details

When using the NI-9860 and a cDAQ chassis, users may experience significant latency in the data returned from their ECU. This issue arises when using Measurement Read.vi in polling mode. In polling mode, every measurement is polled separately, so the polling frequency is not just 5 Hz but 5 Hz multiplied with the number of measurements.

Solution

 If cDAQ must be used, NI recommends using DAQ list mode. If the ECU does not support DAQ list mode, NI suggests using an NI-cRIO controller with the NI-9860 to achieve consistent low latency responses.

Alternatively, users can opt for the NI-9862 instead of the NI-9860. The NI-9860 is slower due to TDP limits, requiring its two processors to run at a slower speed. Additionally, the NI-9860 has resource sharing for its two ports, which does not exist for the NI-9862.

Additional Information

The hardware architecture of the NI-9860 and NI-9862 modules causes differences in performance when used with cDAQ, which cannot be altered by software or firmware.

  • USB and Ethernet cDAQs: These devices buffer packets in the transport controller to balance bandwidth and latency. However, these buses and architectures are not designed for constant low-latency and jitter-free communication. The cDAQ is optimized for throughput in DAQ applications.
  • cRIO: This platform is PCIe-based, allowing drivers to DMA data whenever needed, providing better performance. This is a viable option for customers seeking improved performance.
  • NI-9860: Implements two processing cores but runs at a slower processing clock due to thermal dissipation (TDP). It uses both slower and faster types of memory and requires serialization of traffic across a single backplane interface when both ports are used.
  • NI-9862: Implements one processing core and uses only fast memory, providing higher performance without the need for resource sharing between ports.