How can I determine if/how many/which cDAQ-9189 chassis are connected to my PC/cRIO?
To be clear, I do not mean
1) how do I RESERVE a chassis. This can be done using the 'DAQmx Reserve Network Device.vi'
2) how do I ADD a chassis. This can be done using 'DAQmx Add Network Device.vi' one you know the devices IP address
What I want is a LabVIEW function that will list all of the cDAQ ethernet chassis hooked up to the system (regardless of Reserved or Added state). Ideally this function would allow me to specify which interface on the PC that I want to use (in case there are multiple network cards). The function would return a list of devices, their IP addresses, DHCP/link-local setting, the type of device/chassis, which interface they are connected too, serial number, reserved status, etc. This function should work both on in Windows and on a realtime cRIO chassis.
Does such a thing exists for LabVIEW?
A few specifics: I'm using the 9189 chassis specifically for the TSN capabilities. I'll be using a star topology through a Cisco IE4000 switch connected to an arbitrary number of cDAQ-9189 chassis. The host might be either a Windows PC or a cRIO-9035. I want the host to detect which chassis are connected, configure them for use, and then use them for acquisition and generation depending on the hardware on the chassis.
Thanks for the help
Solved! Go to Solution.
When I run this example, it gives me a list of all NI-9189 (Ethernet cDAQ Chassis) registered in MAX whether it is currently present in the network or not. There is no way to tell if a particular cDAQ chassis is connected to the PC or not. I suppose there is a way (use the "DAQmx Reserve Network Device.vi" on every NI-9189 returned by the DAQmx System property node until you find one that not does not return an error) but this can take several minutes depending on how many devices you have registered in MAX.
Ideally the DAQmx Device property node, should have an output called DevIsConnected (similar to the DevIsSimulated output. Is there another way?