AnsweredAssumed Answered

Visa Socket Communication Read/Write Error EXA N9010A

Question asked by instrumentdriver on Mar 15, 2016
Hi,
I want to transfer a trace data from Agilent EXA N9010A Signal Analyzer to PC. To do that, I use C# and 

visa32.dll. The description of what i do and the problem is as follows:
1. I connect and open a session to the instrument using SOCKET, where resourceAddress is 

TCPIP0::192.168.183.10::5025::SOCKET

visa32.viOpen(resourceManager, resourceAddress, visa32.VI_NO_LOCK, 25000, out viSession);
visa32.viSetAttribute(viSession, visa32.VI_ATTR_TMO_VALUE, 25000);
visa32.viSetAttribute(viSession, visa32.VI_ATTR_RD_BUF_OPER_MODE, visa32.VI_FLUSH_DISABLE);
visa32.viSetAttribute(viSession, visa32.VI_ATTR_TERMCHAR, 0x0A);
visa32.viSetAttribute(viSession, visa32.VI_ATTR_TERMCHAR_EN, visa32.VI_TRUE);

2.I set the number of points to 601, set the analyzer into single sweep mode, set the trace data format to "REAL,32", set the trace data byte order to NORM and take one complete sweep.

Now I have two different problem;

3.When I try to read the data(using %#zb format) after sending ":TRACe:DATA? TRACE1" command, the size of the data I get is less than the Instrument buffer(I analyze the TCPIP bus using WireShark). In the Instrument buffer, there is correct number of bytes but I get less data(sometimes 32-bytes, sometimes 300bytes and it changes)

4.When I do above steps more than one, I got format error from visa session

Is there any solution for this.
Regards  

Outcomes