Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

What is new with MAX 2.0 and is it compatible with Session Manager?

We added non-IVI instrument information in, basically the same structure as for IVI instruments,
into the ivi.ini file to keep all instrument information in the same place. Using MAX Version 1.1 caused no problems whatsoever and the system worked fine. With the advent of MAX 2.0 you seem to use ivi.ini as well as config.mxs to store instrument information. What we have found now is that given a working ivi.ini file from MAX 1.1, we end up with 2 or 3 copies of all the devices in the IVI Instruments->Devices section! When the duplicate entries are deleted and the application exited, the
ivi.ini file is updated minus the [Hardware->] sections which contain the resource descriptors that our appl
ications look for. As an added complication, under MAX 2.1 (From an evaluation of the Switch Executive) It behaves the same, except that it almost always crashes with one of the following errors. 'OLEChannelWnd Fatal Error', or 'Error#26 window.cpp line 10028 Labview Version 6.0.2' Once opened and closed MAX 2.1 will not open again! (Note we do not have LabVIEW on the system.) What is the relationship between the config.mxs and ivi.ini now? Also, your Session Manager application (for use with TestStand) extracts information from ivi.ini and may expect entries to be manually entered into ivi.ini (e.g. NISessionManager_Reset = True) i.e. Is the TestStand Session Manager compatible with MAX 2.0?
0 Kudos
Message 1 of 4
(3,252 Views)
Hi Brian, good questions! In my opinion the documentation for Session Manager is a bit weak when it comes to describing where it gets it's configuration data. We are also using Session Manager for both IVI and non-IVI instruments. Our solution was to manually configure VISA logical names and VXIpnp logical names in the NISessionManager.ini file. This allows our applications to just use logical names regardless of the driver type.

From what I can tell, MAX stores the non-IVI information in the visaconf.ini file (located NIvisa subdirectory), and of course the IVI information in ivi.ini. MAX does not seem to use NISessionManager.ini at all. Session Manager uses all three of these ini files.

Although MAX is nice for user configuration, I think there
will always be a need to programmatically access/change configuration data. MAX 2.2 solves one big problem for us with the ability to configure remote systems over the network.
0 Kudos
Message 2 of 4
(3,252 Views)
Brian,

The primary difference between MAX 1.1 and 2.x is that there is a new internal architecture. MAX 2.x synchronizes data between the config.mxs and the ivi.ini. The reason you're having trouble is that user-editing of the ivi.ini file is not supported with MAX 2.x.

Some better solutions to accomplish what you want:

1. Do as Mark Ireton suggested in his answer

2. Use the IVI Run-Time Configuration functions. They will allow you to dynamically configure your Logical Names, Virtual Instruments, Instrument Drivers, and Devices. You can then use your own format for storing and retrieving that information, and use the relevant pieces for each execution. You can find information on these functions in the IVI CVI Help file located in Start >> National I
nstruments >> IVI Driver Toolset folder. Go to the chapter on Run-time Initialization Configuration.


I strongly suggest #2, because those functions will continue to be supported in the future, while other mechanisms may not be.

--Bankim

Bankim Tejani
National Instruments
0 Kudos
Message 3 of 4
(3,252 Views)
Session manager does not currently support dynamically created logical names according to this posting by Anand Jain.

http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101&RNAME=ViewQuestion&HOID=506500000008000000E82A0000
0 Kudos
Message 4 of 4
(3,252 Views)