Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Identification of a PXI-8420

Hi,
I am using RS232 cards like the PXI/PCI-8420/2 in some (not in all) of our systems. To identify which system it is I have to find out which card is available. I can see the card in the MAX but I didn't find a solution to find it from the software

- How can I identify from my software if such a card is available in the system ?
- Can I differ with the software if it is a PXI-8420/2 or a PXI-8430/8 ?

Thanks in advance

Oliver
0 Kudos
Message 1 of 7
(4,647 Views)
For this purpose you could use the DEVCON utility from Microsoft.
You can use this tool to list all PCI-bus devices that are installed in your system in a command line (e. g. "devcon find pci\*"). If you are using LabVIEW you can call this command using the System Exec.vi. Then you can search the output string for the devices you are looking for.

Best regards,

Jochen Klier
National Instruments Germany
0 Kudos
Message 2 of 7
(4,633 Views)
Hi,
thank you for the tip. I will try it and I will give you a reply of the success.

Best regards
Oliver
0 Kudos
Message 3 of 7
(4,625 Views)
Hi,
the DEVCON Utility might work but I need a solution "inside" my software. To be compatible with all our delivered systems I need a possibility to identify which cards are in the computer.

For example: If I use a DAQ card I can identify this card with the command "Get_DAQ_Device_Info". This command give back a Id with which I can identify the DAQ-board.

I need a similar possibility to identify which seriell board is used. Our system have three different possibilities:

1) No seriell card inside
2) PXI-8420 (eight seriell ports)
3) PXI-8430 (two seriell ports)

How can I automatically find out with my software which type it is ?


Oliver
0 Kudos
Message 4 of 7
(4,599 Views)
The reason why this is not so easy is the fact that DAQ boards are accessed through an NI driver but the COM ports of the 84xx devices are accessed through operating system functions (even VISA doesn't talk to the ports directly but through the Windows API). With DAQ it's easy for us to implement a function to identify devices but this feature is not available for serial devices.

Here are some other ideas:

1. Open and close VISA sessions to a list of ports in an initialization step in your program. If you don't receive an error you know that the port is present.

2. Check the registry for instances of the devices you are looking for. I don't have a 84xx device here but I would expect it to show up somewhere here: HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\.
Find out where the key for your hardware is located and use the Windows Registry Access VIs from the Advanced palette to read it.

Best regards,

Jochen Klier
National Instruments Germany
0 Kudos
Message 5 of 7
(4,594 Views)
Hi,
I think it is a good idea to list all the possible COM-Ports. This will be the easiest and best way to find out if a card and how many ports are available or not.

I will try it

Thanks
Oliver Zind
0 Kudos
Message 6 of 7
(4,591 Views)
Hi,
yes it works. Its just easy. I try to open an seriel interface and when I will not get a handle and know if the port exists or not.
So I can identify if it is a 2-port or a 8-port or no seriel card.

Thanks for your help
Oliver
0 Kudos
Message 7 of 7
(4,579 Views)