Solution
This error is caused by an issue with VISA Reads and Writes being called too closely in the
Error Query.vi which is a part of the Agilent 3446X Series Meter Instrument Driver - this subVI is called by
Initialize.vi, which is the VI referenced in the reported error.
In order to fix this issue, there are several options you could take.
- You'll can make a minor edit to Error Query.vi to allow for time between the VISA Reads and Writes called by the VI.
- Open Error Query.vi by navigating to C:\Program Files (x86)\National Instruments\<Your LabVIEW Version>\instr.lib\Agilent 34401\Public\Utility\Error Query.vi.
- Inside of the While Loop present in Error Query.vi, add a case structure between the VISA Read and VISA Write commands, and wire the error output of the VISA Write command to the case structure's case selector. In the "No Error" case, place a 1 second wait, and pass the error wire through the case structure in both cases. The results of these edits are shown below, highlighted in red.
- Save Error Query.vi. With the new edits in place, you'll be able to successfully call Initialize.vi without incurring a timeout error, and successfully run an example.
- You can open Default Instrument Setup.vi, which can be found in C:\Program Files (x86)\National Instruments\<Your LabVIEW Version>\instr.lib\Agilent 34401\Private\Default Instrument Setup.vi and delete "*SRE48;" from the string constant wired to VISA Write.vi.
- You can also try installing Keysight IO Library Suite as this is written as a requirement in the ReadMe file of the Agilent 3446X Series Instrument Driver.