02-27-2019 03:20 AM
Hi together,
we use 3x NI-9145 EtherCAT expansion chassis. Each has following C-Modules: 1x NI-401, 2x NI-9215, 1x NI-9237. One of the three also has a NI-9403 C-Module.
The same FPGA code is to be compiled on each chassis. Only the NI-9401 ist "layed" on the FPGA, the other modules remain in Scan mode.
Now, the FPGA compilation fails on the one chassis where the NI-9403 is placed. If we remove this module, compilation works. If we place it into another chassis, then the compilation fails there. It seems that whenever this module is present, the compilation for some reason does not work.
Any suggestions here?
Best thanks
Lysandros
02-28-2019 04:48 AM
This might be a problem for NI Support.
Does the compile work if the NI 9403 is not in scan mode? If so you could workaround by writing your own scanning protocol on the FPGA.
02-28-2019 05:08 AM
02-28-2019 09:51 AM
The compilation does not work, whether the NI-9403 is in scan mode or not.
02-28-2019 09:52 AM
The error is, that there is not enough memory. I will try to compile again and check the Xilinx log.
02-28-2019 10:26 AM
You might (especially after looking at the Xilinx log) find this link useful: Interpreting Common Xilinx Compilation Errors in the LabVIEW FPGA Module.
Also, it wasn't initially obvious to me (although perhaps it should be) that Scan Mode I/O modules still have compiled code to the FPGA (unlike DAQmx mode, which doesn't help you with the 9145 as far as I can see). A bunch of details are available here: Understanding NI CompactRIO Scan Mode. This KB has a nice image: Using CompactRIO with the NI-DAQmx API.