AnsweredAssumed Answered

GetState and PutState commands AgilentInfiniium IVI-COM MATLAB

Question asked by alexbaz on Oct 28, 2015
I try to save scope state using IVI-COM driver for MATLAB.
But it looks that GetState returns cropped result (only first 300000 characters)
It looks like some input buffer size limit, but I can't find what is this and how to fix it.

example Matlab code:

    driver = instrument.driver.AgilentInfiniium();
         resourceDesc = 'TCPIP0::10.0.0.11::INSTR';
    initOptions = 'QueryInstrStatus=true, Simulate=false, DriverSetup= Trace=false';               
    idquery = true;
    reset   = true;
    driver.Initialize(resourceDesc, idquery, reset, initOptions);
         tmp = zeros(1,1000000);
    out_state = driver.DeviceSpecific.System3.GetState(tmp); % Tried also System and System2

    % To see what it contains:
    char(out_state)

out_state size is 1x300000 of uint8 and it ends by:    
    
     .\n
     </setup>.\n\n

Playing with tmp variable also have no effect. (but If it less than 2 elements it crashes matlab, Also tried pass NET.createArray and libpointer with no success)

On PC installed:
Matlab R2014b 32bit with Instrument Control Toolbox
IVI Shared Components v2.3.0
IO Libraries 17.1.20011.4
driver_ivi_matlab_AgilentInfiniium v1.4.4.0

Trying to run PutState and GetScreenBitmap caused Matlab to crash.

I'm thinking about switching back to work with raw SCPI commands. May be some one already have link to implemented driver ?

Outcomes