Post Go back to editing

Talise Matlab File for ADRV9009+ZC706

Hi every one, i would like to generate a custom profile that i can load in Matlab to configure the ADRV9009+ZC706.

Using the talise software, here is the configuration of the profile.

Everything goes well, i can programm the board succefully I can capture this spectrum With the Talise.

 

I would like to make the same Capture in Matlab with 245.76MHz of sampling frequency. Some body knows how i can do that?

I generated a Matlab script from the Talise

%Make DLL visible to matlab
NET.addAssembly('C:\Program Files (x86)\Analog Devices\ADRV9009 Transceiver Evaluation Software\AdiCmdServerClient.dll');            
            
Link = AdiCmdServerClient.AdiCommandServerClient.Instance;
status = Link.hw.Connect('192.168.1.10', 55555);
if status == 1
    fprintf('Connected to Zync\n');
else
    fprintf('Unable to connect to Zync platform\n');
end

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % GUI Version: 3.6.0.6		DLL Version: 3.6.0.6	FPGA Version: 4E00021A	ArmVersion: 0.0.0 Build type = TAL_ARM_BUILD_DEBUG	StreamVersion: 2.17
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Link.FpgaTalise.StopTxData();
Link.Ad9528.InitDeviceDataStructure(122880000, 30720000, 245760000);
Link.Ad9528.ResetDevice();
Link.Ad9528.Initialize();
pause(0.5);
arePllsLocked = Link.Ad9528.WaitForPllLock();
fprintf('Ad9528 arePllsLocked = %d\n', arePllsLocked);

Link.Ad9528.EnableClockOutputs(hex2dec('300A'));
Link.SetSpiChannel(1);
Link.FpgaTalise.ResetFpgaRegisters();
Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Init Structures
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Link.Talise.InitClearProfiles();
Link.Talise.InitClocks(1, 245760, 9830400, 2, AdiCmdServerClient.HsDiv.HsDiv2p5);
Link.Talise.InitRfPllUseExternalLo(1, 0);
Link.Talise.InitRxProfiles(1, 2, 4, 1, 245760, 200000000, 200000, [182, 142, 173, 90, 1280, 982, 1335, 96, 1369, 48, 1012, 18, 48, 48, 37, 208, 0, 0, 0, 0, 52, 0, 7, 6, 42, 0, 7, 6, 42, 0, 25, 27, 0, 0, 25, 27, 0, 0, 165, 44, 31, 905],AdiCmdServerClient.RxDdcMode.RxDdcBypass);
Link.Talise.InitFirFilters(1, AdiCmdServerClient.FilterName.Rx, 'C:\Program Files (x86)\Analog Devices\ADRV9009 Transceiver Evaluation Software\Resources\DigitalFilters\RxPFIRApp215_BW200_ADC1966p08_OR245p76.ftr');
Link.Talise.InitRxSettings(1, AdiCmdServerClient.RxChannel.Rx1Rx2, AdiCmdServerClient.FramerSelect.FramerA);
Link.Talise.InitTxProfiles(1, 1, 1, 2, 2, 2, 1, 245760, 100000000, 225000000, 225000, 113000, [212, 140, 175, 90, 1280, 699, 1304, 59, 1343, 33, 913, 27, 48, 48, 34, 192, 0, 0, 0, 0, 48, 0, 7, 6, 42, 0, 7, 6, 42, 0, 25, 27, 0, 0, 25, 27, 0, 0, 165, 44, 31, 905]);
Link.Talise.InitFirFilters(1, AdiCmdServerClient.FilterName.Tx, 'C:\Program Files (x86)\Analog Devices\ADRV9009 Transceiver Evaluation Software\Resources\DigitalFilters\TxPFIRApp110_IR245p76_BW225_PriSigBW100.ftr');
Link.Talise.InitTxSettings(1, AdiCmdServerClient.TxAttenStepSize.TxAtten0P05DB, AdiCmdServerClient.TxChannel.Tx1Tx2, 0, 0, AdiCmdServerClient.DeframerSelect.DeframerA, AdiCmdServerClient.TxDataIfPllUnlock.TxRampedDownToZero);
Link.Talise.InitObsProfiles(1, 1, 4, 2, 245760, 200000000, 225000, [185, 141, 172, 90, 1280, 942, 1332, 90, 1368, 46, 1016, 19, 48, 48, 37, 208, 0, 0, 0, 0, 52, 0, 7, 6, 42, 0, 7, 6, 42, 0, 25, 27, 0, 0, 25, 27, 0, 0, 165, 44, 31, 905],[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],AdiCmdServerClient.OrxDdcMode.OrxDdcDisabled, [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);
Link.Talise.InitFirFilters(1, AdiCmdServerClient.FilterName.ORx, 'C:\Program Files (x86)\Analog Devices\ADRV9009 Transceiver Evaluation Software\Resources\DigitalFilters\ORxPFIRApp307_BW200_ADC1966p08_OR245p76.ftr');
Link.Talise.InitObsRxSettings(1, AdiCmdServerClient.ObsRxChannel.ObsRxOff, AdiCmdServerClient.ObsRxLoSource.RfPll, AdiCmdServerClient.FramerSelect.FramerB);
Link.Talise.InitRfPllEnablePhaseSync(1, AdiCmdServerClient.RfPllMcs.NoSync);
Link.Talise.InitRxNcoShiftCfg(1, 0, 0, 0, 0, 0, 0, 0, 0);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Init Jesd
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Link.Talise.InitJesd204bFramer(1, AdiCmdServerClient.FramerSelect.FramerA, 1, 0, 0, 4, 32, 4, 16, 1, 1, 6, 228, 31, 0, 0, 0, 1, 0, 0);
Link.Talise.InitJesd204bFramer(1, AdiCmdServerClient.FramerSelect.FramerB, 0, 0, 0, 2, 32, 4, 16, 1, 1, 1, 228, 31, 0, 1, 0, 1, 0, 0);
Link.FpgaTalise.SetupTxConvXbar(AdiCmdServerClient.FpgaFramerSelect.FramerA, hex2dec('E4'));
Link.FpgaTalise.SetupTxConvXbar(AdiCmdServerClient.FpgaFramerSelect.FramerB, hex2dec('E4'));
Link.GetPcbDescript();
Link.Talise.InitJesd204bDeframer(1, AdiCmdServerClient.DeframerSelect.DeframerA, 0, 0, 0, 4, 32, 1, 1, 3, 228, 17, 0, 0, 16, 1, 0, 0, 0, 0);
Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.TxJesdRst);
pause(0.5);
Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);
Link.FpgaTalise.SetupJesd204(245760, 245760, 4, 6, 32, 1, 1, 16, 245760, 4, 3, 32, 1, 16, 245760, 0, 0, 32, 1, 1, 16, AdiCmdServerClient.FpgaFramerSelect.FramerA, AdiCmdServerClient.FpgaDeframerSelect.DeframerA, AdiCmdServerClient.FpgaDeframerSelect.DeframerB, false);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Program Talise
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Link.Talise.ResetDevice();
Link.Talise.Initialize();
Link.Talise.SetDacFullScale(AdiCmdServerClient.DacFullScale.DacFs0dB);
pllStatus = Link.Talise.GetPllsLockStatus();
fprintf('Talise pllStatus = %d\n', pllStatus);
Link.Talise.EnableMultichipSync(hex2dec('1'), hex2dec('0'));
Link.Ad9528.RequestSysref(1);
Link.Ad9528.RequestSysref(1);
Link.Ad9528.RequestSysref(1);
pause(0.1);
mcsStatus = Link.Talise.EnableMultichipSync(hex2dec('0'), hex2dec('0'));
fprintf('MCS Status = %d\n', mcsStatus);

Link.FpgaTalise.SetupJesd204bOversampler(AdiCmdServerClient.FpgaDeframerSelect.DeframerB, AdiCmdServerClient.FpgaSampleDecimation.DecimateBy1);
Link.SetLogLevel(0);
if pllStatus && 1
	Link.Talise.InitArm();
	Link.Talise.LoadStreamProcessor('C:\Users\ekpre\AppData\Local\Temp\TaliseStream.bin');
	Link.Talise.LoadArm('C:\Program Files (x86)\Analog Devices\ADRV9009 Transceiver Evaluation Software\Resources\arm_firmware\TaliseTDDArmFirmware.bin');
	isArmGood = Link.Talise.VerifyArmChecksum();
	fprintf('isArmGood = %d\n', isArmGood);
	if isArmGood && 1
		fprintf('ARM Loaded Successfully\n');
	else
		fprintf('ARM File not loaded correctly\n');
	end
else
	fprintf('ARM File not loaded correctly\n');
end
Link.Talise.GetArmVersion();
Link.SetLogLevel(63);
Link.Talise.SetPllLoopFilter(AdiCmdServerClient.PllName.RfPll, 50, 3);
Link.Talise.SetRfPllFrequency(AdiCmdServerClient.PllName.RfPll, 2400000000);
pllStatus = Link.Talise.GetPllsLockStatus();
fprintf('Talise pllStatus = %d\n', pllStatus);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% InitCals
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Link.Talise.AbortInitCals(0);
%initCalMask = 0
%initCalMask |= int(Link.Talise.CalMask.TxBaseBandFilter);
%initCalMask |= int(Link.Talise.CalMask.AdcTuner);
%initCalMask |= int(Link.Talise.CalMask.Tia3dBCorner);
%initCalMask |= int(Link.Talise.CalMask.DcOffset);
%initCalMask |= int(Link.Talise.CalMask.RxGainDelay);
%initCalMask |= int(Link.Talise.CalMask.FlashCal);
%initCalMask |= int(Link.Talise.CalMask.PathDelay);
%initCalMask |= int(Link.Talise.CalMask.TxLoLeakageInternal);
%initCalMask |= int(Link.Talise.CalMask.TxQecInit);
%initCalMask |= int(Link.Talise.CalMask.LoopbackRxLoDelay);
%initCalMask |= int(Link.Talise.CalMask.LoopbackRxRxQecInit);
%initCalMask |= int(Link.Talise.CalMask.RxQecInit);
%initCalMask |= int(Link.Talise.CalMask.ORxQecInit);
%initCalMask |= int(Link.Talise.CalMask.TxDac);
Link.Talise.RunInitCals(hex2dec('65DEF'));
Link.Talise.WaitInitCals(60000, 0);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Framer/Deframer
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Link.FpgaTalise.EnableJesd204bFramer(AdiCmdServerClient.FpgaFramerSelect.DisableAll);
Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.TxJesdRst);
Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);
Link.FpgaTalise.EnableJesd204bFramer(AdiCmdServerClient.FpgaFramerSelect.FramerA);
Link.Talise.EnableDeframerLink(AdiCmdServerClient.DeframerSelect.DeframerA, 0);
Link.Talise.EnableDeframerLink(AdiCmdServerClient.DeframerSelect.DeframerA, 1);
Link.Talise.EnableSysrefToDeframer(AdiCmdServerClient.DeframerSelect.DeframerA, 1);
Link.FpgaTalise.EnableJesd204bDeframer(AdiCmdServerClient.FpgaDeframerSelect.DisableAll);
Link.Talise.EnableFramerTestData(AdiCmdServerClient.FramerSelect.FramerA, AdiCmdServerClient.FramerDataSource.FtdAdcData, AdiCmdServerClient.FramerInjectPoint.FtdFramerInput);
Link.Talise.EnableFramerTestData(AdiCmdServerClient.FramerSelect.FramerB, AdiCmdServerClient.FramerDataSource.FtdAdcData, AdiCmdServerClient.FramerInjectPoint.FtdFramerInput);
Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);
Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.RxJesdRst);
Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);
Link.FpgaTalise.EnableJesd204bDeframer(AdiCmdServerClient.FpgaDeframerSelect.DeframerA);
Link.Talise.EnableFramerLink(AdiCmdServerClient.FramerSelect.FramerA, 0);
Link.Talise.EnableFramerLink(AdiCmdServerClient.FramerSelect.FramerA, 1);
Link.Talise.EnableSysrefToFramer(AdiCmdServerClient.FramerSelect.FramerA, 1);
Link.Ad9528.RequestSysref(1);
Link.Talise.ReadFramerStatus(AdiCmdServerClient.FramerSelect.FramerA);
Link.Talise.ReadDeframerStatus(AdiCmdServerClient.DeframerSelect.DeframerA);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Tracking Cals
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
pause(1);
%trackingCalMask = 0
Link.Talise.EnableTrackingCals(0);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% GainWithFloatingPoint or GainWithNoCompensation
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Ensure Stream File has been set to receive Floating Point Data
rxDataFormatter = AdiCmdServerClient.TaliseRxDataFormat;
rxDataFormatter.FormatSelect = (AdiCmdServerClient.RxDataFormatModes.GainCompensationDisabled);
rxDataFormatter.FpNumExpBits = (AdiCmdServerClient.FpExponentModes.TwoExponentBits);
rxDataFormatter.FpRoundMode = (AdiCmdServerClient.FpRoundingModes.RoundToEven);
rxDataFormatter.FpRx1Atten = (AdiCmdServerClient.FpAttenSteps.FpAtten0dB);
rxDataFormatter.FpRx2Atten = (AdiCmdServerClient.FpAttenSteps.FpAtten0dB);
rxDataFormatter.FpHideLeadingOne = (1);
rxDataFormatter.IntEmbeddedBits = (AdiCmdServerClient.EmbeddedBits.Embed1SlicerBitAtLsb);
rxDataFormatter.IntSampleResolution = (rxDataFormatter.IntSampleRes.Integer12Bit2sComp);
Link.Talise.SetRxDataFormat(rxDataFormatter);
%Link.Talise.SetRxDataFormat(TaliseRxDataFormat.0,0,0,0,0,1,0,0,2,0,0,3,3,0,0);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Set Gain & Attenuation
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Link.Talise.SetRxManualGain(AdiCmdServerClient.RxChannel.Rx1, 255);
Link.Talise.SetRxManualGain(AdiCmdServerClient.RxChannel.Rx2, 255);
Link.Talise.SetObsRxManualGain(AdiCmdServerClient.ObsRxChannel.ObsRx1, 255);
Link.Talise.SetObsRxManualGain(AdiCmdServerClient.ObsRxChannel.ObsRx2, 255);
Link.Talise.SetTxAttenuation(AdiCmdServerClient.TxChannel.Tx1, 0);
Link.Talise.SetTxAttenuation(AdiCmdServerClient.TxChannel.Tx2, 0);

Link.hw.Disconnect();
.

But when i try to excecute this function directly in Matlab ,  I have mulitple errors (Unable to resolve the name AdiCmdServerClient.xxxxx.yyyyy) , are there modifications to be made to the Matlab file generated by the talise so that it can correctly configure the FPGA?

Sincerely

Parents Reply Children
  • %Make DLL visible to matlab
    NET.addAssembly('D:\ADRV9009\ADRV9009 Transceiver Evaluation Software\AdiCmdServerClient.dll');

    Link = AdiCmdServerClient.AdiCommandServerClient.Instance;
    status = Link.hw.Connect('192.168.1.10', 55555);
    if status == 1
    fprintf('Connected to Zync\n');
    else
    fprintf('Unable to connect to Zync platform\n');
    end

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % % GUI Version: 3.6.0.6 DLL Version: 3.6.0.6 FPGA Version: 4E00021A ArmVersion: 0.0.0 Build type = TAL_ARM_BUILD_DEBUG StreamVersion: 2.17
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.FpgaTalise.StopTxData();
    Link.Ad9528.InitDeviceDataStructure(122880000, 30720000, 122880000);
    Link.Ad9528.ResetDevice();
    Link.Ad9528.Initialize();
    pause(0.5);
    arePllsLocked = Link.Ad9528.WaitForPllLock();
    fprintf('Ad9528 arePllsLocked = %d\n', arePllsLocked);

    Link.Ad9528.EnableClockOutputs(hex2dec('300A'));
    Link.SetSpiChannel(1);
    Link.FpgaTalise.ResetFpgaRegisters();
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Init Structures
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.Talise.InitClearProfiles();
    Link.Talise.InitClocks(1, 122880, 9830400, 2, AdiCmdServerClient.HsDiv.HsDiv2p5);
    Link.Talise.InitRfPllUseExternalLo(1, 0);
    Link.Talise.InitRxProfiles(1, 2, 4, 1, 245760, 200000000, 200000, [182, 142, 173, 90, 1280, 982, 1335, 96, 1369, 48, 1012, 18, 48, 48, 37, 208, 0, 0, 0, 0, 52, 0, 7, 6, 42, 0, 7, 6, 42, 0, 25, 27, 0, 0, 25, 27, 0, 0, 165, 44, 31, 905],AdiCmdServerClient.RxDdcMode.RxDdcBypass);
    Link.Talise.InitFirFilters(1, AdiCmdServerClient.FilterName.Rx, 'D:\ADRV9009\ADRV9009 Transceiver Evaluation Software\Resources\DigitalFilters\RxPFIRApp215_BW200_ADC1966p08_OR245p76.ftr');
    Link.Talise.InitRxSettings(1, AdiCmdServerClient.RxChannel.Rx1, AdiCmdServerClient.FramerSelect.FramerA);
    Link.Talise.InitTxProfiles(1, 1, 1, 2, 2, 2, 1, 245760, 100000000, 225000000, 225000, 113000, [212, 140, 175, 90, 1280, 699, 1304, 59, 1343, 33, 913, 27, 48, 48, 34, 192, 0, 0, 0, 0, 48, 0, 7, 6, 42, 0, 7, 6, 42, 0, 25, 27, 0, 0, 25, 27, 0, 0, 165, 44, 31, 905]);
    Link.Talise.InitFirFilters(1, AdiCmdServerClient.FilterName.Tx, 'D:\ADRV9009\ADRV9009 Transceiver Evaluation Software\Resources\DigitalFilters\TxPFIRApp110_IR245p76_BW225_PriSigBW100.ftr');
    Link.Talise.InitTxSettings(1, AdiCmdServerClient.TxAttenStepSize.TxAtten0P05DB, AdiCmdServerClient.TxChannel.Tx1, 0, 0, AdiCmdServerClient.DeframerSelect.DeframerA, AdiCmdServerClient.TxDataIfPllUnlock.TxRampedDownToZero);
    Link.Talise.InitObsProfiles(1, 1, 4, 2, 245760, 200000000, 225000, [185, 141, 172, 90, 1280, 942, 1332, 90, 1368, 46, 1016, 19, 48, 48, 37, 208, 0, 0, 0, 0, 52, 0, 7, 6, 42, 0, 7, 6, 42, 0, 25, 27, 0, 0, 25, 27, 0, 0, 165, 44, 31, 905],[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],AdiCmdServerClient.OrxDdcMode.OrxDdcDisabled, [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);
    Link.Talise.InitFirFilters(1, AdiCmdServerClient.FilterName.ORx, 'D:\ADRV9009\ADRV9009 Transceiver Evaluation Software\Resources\DigitalFilters\ORxPFIRApp307_BW200_ADC1966p08_OR245p76.ftr');
    Link.Talise.InitObsRxSettings(1, AdiCmdServerClient.ObsRxChannel.ObsRxOff, AdiCmdServerClient.ObsRxLoSource.RfPll, AdiCmdServerClient.FramerSelect.FramerB);
    Link.Talise.InitRfPllEnablePhaseSync(1, AdiCmdServerClient.RfPllMcs.NoSync);
    Link.Talise.InitRxNcoShiftCfg(1, 0, 0, 0, 0, 0, 0, 0, 0);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Init Jesd
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.Talise.InitJesd204bFramer(1, AdiCmdServerClient.FramerSelect.FramerA, 1, 0, 0, 2, 32, 4, 16, 1, 1, 2, 228, 31, 0, 0, 0, 1, 0, 0);
    Link.Talise.InitJesd204bFramer(1, AdiCmdServerClient.FramerSelect.FramerB, 0, 0, 0, 2, 32, 4, 16, 1, 1, 1, 228, 31, 0, 1, 0, 1, 0, 0);
    Link.FpgaTalise.SetupTxConvXbar(AdiCmdServerClient.FpgaFramerSelect.FramerA, hex2dec('E4'));
    Link.FpgaTalise.SetupTxConvXbar(AdiCmdServerClient.FpgaFramerSelect.FramerB, hex2dec('E4'));
    Link.GetPcbDescript();
    Link.Talise.InitJesd204bDeframer(1, AdiCmdServerClient.DeframerSelect.DeframerA, 0, 0, 0, 2, 32, 1, 1, 1, 228, 17, 0, 0, 16, 1, 0, 0, 0, 0);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.TxJesdRst);
    pause(0.5);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);
    Link.FpgaTalise.SetupJesd204(122880, 245760, 2, 2, 32, 1, 1, 16, 245760, 2, 1, 32, 1, 16, 245760, 0, 0, 32, 1, 1, 16, AdiCmdServerClient.FpgaFramerSelect.FramerA, AdiCmdServerClient.FpgaDeframerSelect.DeframerA, AdiCmdServerClient.FpgaDeframerSelect.DeframerB, false);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Program Talise
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.Talise.ResetDevice();
    Link.Talise.Initialize();
    Link.Talise.SetDacFullScale(AdiCmdServerClient.DacFullScale.DacFs0dB);
    pllStatus = Link.Talise.GetPllsLockStatus();
    fprintf('Talise pllStatus = %d\n', pllStatus);
    Link.Talise.EnableMultichipSync(hex2dec('1'), hex2dec('0'));
    Link.Ad9528.RequestSysref(1);
    Link.Ad9528.RequestSysref(1);
    Link.Ad9528.RequestSysref(1);
    pause(0.1);
    mcsStatus = Link.Talise.EnableMultichipSync(hex2dec('0'), hex2dec('0'));
    fprintf('MCS Status = %d\n', mcsStatus);

    Link.FpgaTalise.SetupJesd204bOversampler(AdiCmdServerClient.FpgaDeframerSelect.DeframerB, AdiCmdServerClient.FpgaSampleDecimation.DecimateBy1);
    Link.SetLogLevel(0);
    if pllStatus && 1
    Link.Talise.InitArm();
    Link.Talise.LoadStreamProcessor('C:\Users\zhao\AppData\Local\Temp\TaliseStream.bin');
    Link.Talise.LoadArm('D:\ADRV9009\ADRV9009 Transceiver Evaluation Software\Resources\arm_firmware\TaliseTDDArmFirmware.bin');
    isArmGood = Link.Talise.VerifyArmChecksum();
    fprintf('isArmGood = %d\n', isArmGood);
    if isArmGood && 1
    fprintf('ARM Loaded Successfully\n');
    else
    fprintf('ARM File not loaded correctly\n');
    end
    else
    fprintf('ARM File not loaded correctly\n');
    end
    Link.Talise.GetArmVersion();
    Link.SetLogLevel(63);
    Link.Talise.SetPllLoopFilter(AdiCmdServerClient.PllName.RfPll, 300, 3);
    Link.Talise.SetRfPllFrequency(AdiCmdServerClient.PllName.RfPll, 4000000000);
    pllStatus = Link.Talise.GetPllsLockStatus();
    fprintf('Talise pllStatus = %d\n', pllStatus);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % InitCals
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.Talise.AbortInitCals(0);
    %initCalMask = 0
    %initCalMask |= int(Link.Talise.CalMask.TxBaseBandFilter);
    %initCalMask |= int(Link.Talise.CalMask.AdcTuner);
    %initCalMask |= int(Link.Talise.CalMask.Tia3dBCorner);
    %initCalMask |= int(Link.Talise.CalMask.DcOffset);
    %initCalMask |= int(Link.Talise.CalMask.RxGainDelay);
    %initCalMask |= int(Link.Talise.CalMask.FlashCal);
    %initCalMask |= int(Link.Talise.CalMask.PathDelay);
    %initCalMask |= int(Link.Talise.CalMask.TxLoLeakageInternal);
    %initCalMask |= int(Link.Talise.CalMask.TxQecInit);
    %initCalMask |= int(Link.Talise.CalMask.LoopbackRxLoDelay);
    %initCalMask |= int(Link.Talise.CalMask.LoopbackRxRxQecInit);
    %initCalMask |= int(Link.Talise.CalMask.RxQecInit);
    %initCalMask |= int(Link.Talise.CalMask.ORxQecInit);
    %initCalMask |= int(Link.Talise.CalMask.TxDac);
    Link.Talise.RunInitCals(hex2dec('65DEF'));
    Link.Talise.WaitInitCals(60000, 0);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Framer/Deframer
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.FpgaTalise.EnableJesd204bFramer(AdiCmdServerClient.FpgaFramerSelect.DisableAll);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.TxJesdRst);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);
    Link.FpgaTalise.EnableJesd204bFramer(AdiCmdServerClient.FpgaFramerSelect.FramerA);
    Link.Talise.EnableDeframerLink(AdiCmdServerClient.DeframerSelect.DeframerA, 0);
    Link.Talise.EnableDeframerLink(AdiCmdServerClient.DeframerSelect.DeframerA, 1);
    Link.Talise.EnableSysrefToDeframer(AdiCmdServerClient.DeframerSelect.DeframerA, 1);
    Link.FpgaTalise.EnableJesd204bDeframer(AdiCmdServerClient.FpgaDeframerSelect.DisableAll);
    Link.Talise.EnableFramerTestData(AdiCmdServerClient.FramerSelect.FramerA, AdiCmdServerClient.FramerDataSource.FtdAdcData, AdiCmdServerClient.FramerInjectPoint.FtdFramerInput);
    Link.Talise.EnableFramerTestData(AdiCmdServerClient.FramerSelect.FramerB, AdiCmdServerClient.FramerDataSource.FtdAdcData, AdiCmdServerClient.FramerInjectPoint.FtdFramerInput);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.RxJesdRst);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);
    Link.FpgaTalise.EnableJesd204bDeframer(AdiCmdServerClient.FpgaDeframerSelect.DeframerA);
    Link.Talise.EnableFramerLink(AdiCmdServerClient.FramerSelect.FramerA, 0);
    Link.Talise.EnableFramerLink(AdiCmdServerClient.FramerSelect.FramerA, 1);
    Link.Talise.EnableSysrefToFramer(AdiCmdServerClient.FramerSelect.FramerA, 1);
    Link.Ad9528.RequestSysref(1);
    Link.Talise.ReadFramerStatus(AdiCmdServerClient.FramerSelect.FramerA);
    Link.Talise.ReadDeframerStatus(AdiCmdServerClient.DeframerSelect.DeframerA);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Tracking Cals
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    pause(1);
    %trackingCalMask = 0
    Link.Talise.EnableTrackingCals(0);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % GainWithFloatingPoint or GainWithNoCompensation
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %Ensure Stream File has been set to receive Floating Point Data
    rxDataFormatter = AdiCmdServerClient.TaliseRxDataFormat;
    rxDataFormatter.FormatSelect = (AdiCmdServerClient.RxDataFormatModes.GainCompensationDisabled);
    rxDataFormatter.FpNumExpBits = (AdiCmdServerClient.FpExponentModes.TwoExponentBits);
    rxDataFormatter.FpRoundMode = (AdiCmdServerClient.FpRoundingModes.RoundToEven);
    rxDataFormatter.FpRx1Atten = (AdiCmdServerClient.FpAttenSteps.FpAtten0dB);
    rxDataFormatter.FpRx2Atten = (AdiCmdServerClient.FpAttenSteps.FpAtten0dB);
    rxDataFormatter.FpHideLeadingOne = (1);
    rxDataFormatter.IntEmbeddedBits = (AdiCmdServerClient.EmbeddedBits.Embed1SlicerBitAtLsb);
    rxDataFormatter.IntSampleResolution = (rxDataFormatter.IntSampleRes.Integer12Bit2sComp);
    Link.Talise.SetRxDataFormat(rxDataFormatter);
    %Link.Talise.SetRxDataFormat(TaliseRxDataFormat.0,0,0,0,0,1,0,0,2,0,0,3,3,0,0);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Set Gain & Attenuation
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.Talise.SetRxManualGain(AdiCmdServerClient.RxChannel.Rx1, 255);
    Link.Talise.SetRxManualGain(AdiCmdServerClient.RxChannel.Rx2, 255);
    Link.Talise.SetObsRxManualGain(AdiCmdServerClient.ObsRxChannel.ObsRx1, 255);
    Link.Talise.SetObsRxManualGain(AdiCmdServerClient.ObsRxChannel.ObsRx2, 255);
    Link.Talise.SetTxAttenuation(AdiCmdServerClient.TxChannel.Tx1, 0);
    Link.Talise.SetTxAttenuation(AdiCmdServerClient.TxChannel.Tx2, 0);

    Link.hw.Disconnect();

  • This is the error message when I run MATLAB

  • The DLL is visible to MATLAB, and AdiCmdServerClient.dll has been successfully imported, but an error is still reported

    %Make DLL visible to matlab
    NET.addAssembly('D:\ADRV9009\ADRV9009 Transceiver Evaluation Software\AdiCmdServerClient.dll');

    Link = AdiCmdServerClient.AdiCommandServerClient.Instance;
    status = Link.hw.Connect('192.168.1.10', 55555);
    if status == 1
    fprintf('Connected to Zync\n');
    else
    fprintf('Unable to connect to Zync platform\n');
    end

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % % GUI Version: 3.6.0.6 DLL Version: 3.6.0.6 FPGA Version: 4E00021A ArmVersion: 0.0.0 Build type = TAL_ARM_BUILD_DEBUG StreamVersion: 2.17
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.FpgaTalise.StopTxData();
    Link.Ad9528.InitDeviceDataStructure(122880000, 30720000, 122880000);
    Link.Ad9528.ResetDevice();
    Link.Ad9528.Initialize();
    pause(0.5);
    arePllsLocked = Link.Ad9528.WaitForPllLock();
    fprintf('Ad9528 arePllsLocked = %d\n', arePllsLocked

    Link.Ad9528.EnableClockOutputs(hex2dec('300A'));
    Link.SetSpiChannel(1); %用于选择不同的SPI设备
    Link.FpgaTalise.ResetFpgaRegisters();
    % Link.FpgaTalise.ResetFpgaIp(FpgaResets.resetMask);
    AdiCmdServerClient.FpgaTalise.ResetFpgaIp(FpgaResets.ClearAllRst);
    % Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Init Structures
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.Talise.InitClearProfiles();
    Link.Talise.InitClocks(1, 122880, 9830400, 2, AdiCmdServerClient.HsDiv.HsDiv2p5);
    Link.Talise.InitRfPllUseExternalLo(1, 0);
    Link.Talise.InitRxProfiles(1, 2, 4, 1, 245760, 200000000, 200000, [182, 142, 173, 90, 1280, 982, 1335, 96, 1369, 48, 1012, 18, 48, 48, 37, 208, 0, 0, 0, 0, 52, 0, 7, 6, 42, 0, 7, 6, 42, 0, 25, 27, 0, 0, 25, 27, 0, 0, 165, 44, 31, 905],AdiCmdServerClient.RxDdcMode.RxDdcBypass);
    Link.Talise.InitFirFilters(1, AdiCmdServerClient.FilterName.Rx, 'D:\ADRV9009\ADRV9009 Transceiver Evaluation Software\Resources\DigitalFilters\RxPFIRApp215_BW200_ADC1966p08_OR245p76.ftr');
    Link.Talise.InitRxSettings(1, AdiCmdServerClient.RxChannel.Rx1, AdiCmdServerClient.FramerSelect.FramerA);
    Link.Talise.InitTxProfiles(1, 1, 1, 2, 2, 2, 1, 245760, 100000000, 225000000, 225000, 113000, [212, 140, 175, 90, 1280, 699, 1304, 59, 1343, 33, 913, 27, 48, 48, 34, 192, 0, 0, 0, 0, 48, 0, 7, 6, 42, 0, 7, 6, 42, 0, 25, 27, 0, 0, 25, 27, 0, 0, 165, 44, 31, 905]);
    Link.Talise.InitFirFilters(1, AdiCmdServerClient.FilterName.Tx, 'D:\ADRV9009\ADRV9009 Transceiver Evaluation Software\Resources\DigitalFilters\TxPFIRApp110_IR245p76_BW225_PriSigBW100.ftr');
    Link.Talise.InitTxSettings(1, AdiCmdServerClient.TxAttenStepSize.TxAtten0P05DB, AdiCmdServerClient.TxChannel.Tx1, 0, 0, AdiCmdServerClient.DeframerSelect.DeframerA, AdiCmdServerClient.TxDataIfPllUnlock.TxRampedDownToZero);
    Link.Talise.InitObsProfiles(1, 1, 4, 2, 245760, 200000000, 225000, [185, 141, 172, 90, 1280, 942, 1332, 90, 1368, 46, 1016, 19, 48, 48, 37, 208, 0, 0, 0, 0, 52, 0, 7, 6, 42, 0, 7, 6, 42, 0, 25, 27, 0, 0, 25, 27, 0, 0, 165, 44, 31, 905],[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],AdiCmdServerClient.OrxDdcMode.OrxDdcDisabled, [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);
    Link.Talise.InitFirFilters(1, AdiCmdServerClient.FilterName.ORx, 'D:\ADRV9009\ADRV9009 Transceiver Evaluation Software\Resources\DigitalFilters\ORxPFIRApp307_BW200_ADC1966p08_OR245p76.ftr');
    Link.Talise.InitObsRxSettings(1, AdiCmdServerClient.ObsRxChannel.ObsRxOff, AdiCmdServerClient.ObsRxLoSource.RfPll, AdiCmdServerClient.FramerSelect.FramerB);
    Link.Talise.InitRfPllEnablePhaseSync(1, AdiCmdServerClient.RfPllMcs.NoSync);
    Link.Talise.InitRxNcoShiftCfg(1, 0, 0, 0, 0, 0, 0, 0, 0);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Init Jesd
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.Talise.InitJesd204bFramer(1, AdiCmdServerClient.FramerSelect.FramerA, 1, 0, 0, 2, 32, 4, 16, 1, 1, 2, 228, 31, 0, 0, 0, 1, 0, 0);
    Link.Talise.InitJesd204bFramer(1, AdiCmdServerClient.FramerSelect.FramerB, 0, 0, 0, 2, 32, 4, 16, 1, 1, 1, 228, 31, 0, 1, 0, 1, 0, 0);
    Link.FpgaTalise.SetupTxConvXbar(AdiCmdServerClient.FpgaFramerSelect.FramerA, hex2dec('E4'));
    Link.FpgaTalise.SetupTxConvXbar(AdiCmdServerClient.FpgaFramerSelect.FramerB, hex2dec('E4'));
    Link.GetPcbDescript();
    Link.Talise.InitJesd204bDeframer(1, AdiCmdServerClient.DeframerSelect.DeframerA, 0, 0, 0, 2, 32, 1, 1, 1, 228, 17, 0, 0, 16, 1, 0, 0, 0, 0);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.TxJesdRst);
    pause(0.5);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);
    Link.FpgaTalise.SetupJesd204(122880, 245760, 2, 2, 32, 1, 1, 16, 245760, 2, 1, 32, 1, 16, 245760, 0, 0, 32, 1, 1, 16, AdiCmdServerClient.FpgaFramerSelect.FramerA, AdiCmdServerClient.FpgaDeframerSelect.DeframerA, AdiCmdServerClient.FpgaDeframerSelect.DeframerB, false);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Program Talise
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.Talise.ResetDevice();
    Link.Talise.Initialize();
    Link.Talise.SetDacFullScale(AdiCmdServerClient.DacFullScale.DacFs0dB);
    pllStatus = Link.Talise.GetPllsLockStatus();
    fprintf('Talise pllStatus = %d\n', pllStatus);
    Link.Talise.EnableMultichipSync(hex2dec('1'), hex2dec('0'));
    Link.Ad9528.RequestSysref(1);
    Link.Ad9528.RequestSysref(1);
    Link.Ad9528.RequestSysref(1);
    pause(0.1);
    mcsStatus = Link.Talise.EnableMultichipSync(hex2dec('0'), hex2dec('0'));
    fprintf('MCS Status = %d\n', mcsStatus);

    Link.FpgaTalise.SetupJesd204bOversampler(AdiCmdServerClient.FpgaDeframerSelect.DeframerB, AdiCmdServerClient.FpgaSampleDecimation.DecimateBy1);
    Link.SetLogLevel(0);
    if pllStatus && 1
    Link.Talise.InitArm();
    Link.Talise.LoadStreamProcessor('C:\Users\zhao\AppData\Local\Temp\TaliseStream.bin');
    Link.Talise.LoadArm('D:\ADRV9009\ADRV9009 Transceiver Evaluation Software\Resources\arm_firmware\TaliseTDDArmFirmware.bin');
    isArmGood = Link.Talise.VerifyArmChecksum();
    fprintf('isArmGood = %d\n', isArmGood);
    if isArmGood && 1
    fprintf('ARM Loaded Successfully\n');
    else
    fprintf('ARM File not loaded correctly\n');
    end
    else
    fprintf('ARM File not loaded correctly\n');
    end
    Link.Talise.GetArmVersion();
    Link.SetLogLevel(63);
    Link.Talise.SetPllLoopFilter(AdiCmdServerClient.PllName.RfPll, 300, 3);
    Link.Talise.SetRfPllFrequency(AdiCmdServerClient.PllName.RfPll, 4000000000);
    pllStatus = Link.Talise.GetPllsLockStatus();
    fprintf('Talise pllStatus = %d\n', pllStatus);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % InitCals
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.Talise.AbortInitCals(0);
    %initCalMask = 0
    %initCalMask |= int(Link.Talise.CalMask.TxBaseBandFilter);
    %initCalMask |= int(Link.Talise.CalMask.AdcTuner);
    %initCalMask |= int(Link.Talise.CalMask.Tia3dBCorner);
    %initCalMask |= int(Link.Talise.CalMask.DcOffset);
    %initCalMask |= int(Link.Talise.CalMask.RxGainDelay);
    %initCalMask |= int(Link.Talise.CalMask.FlashCal);
    %initCalMask |= int(Link.Talise.CalMask.PathDelay);
    %initCalMask |= int(Link.Talise.CalMask.TxLoLeakageInternal);
    %initCalMask |= int(Link.Talise.CalMask.TxQecInit);
    %initCalMask |= int(Link.Talise.CalMask.LoopbackRxLoDelay);
    %initCalMask |= int(Link.Talise.CalMask.LoopbackRxRxQecInit);
    %initCalMask |= int(Link.Talise.CalMask.RxQecInit);
    %initCalMask |= int(Link.Talise.CalMask.ORxQecInit);
    %initCalMask |= int(Link.Talise.CalMask.TxDac);
    Link.Talise.RunInitCals(hex2dec('65DEF'));
    Link.Talise.WaitInitCals(60000, 0);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Framer/Deframer
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.FpgaTalise.EnableJesd204bFramer(AdiCmdServerClient.FpgaFramerSelect.DisableAll);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.TxJesdRst);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);
    Link.FpgaTalise.EnableJesd204bFramer(AdiCmdServerClient.FpgaFramerSelect.FramerA);
    Link.Talise.EnableDeframerLink(AdiCmdServerClient.DeframerSelect.DeframerA, 0);
    Link.Talise.EnableDeframerLink(AdiCmdServerClient.DeframerSelect.DeframerA, 1);
    Link.Talise.EnableSysrefToDeframer(AdiCmdServerClient.DeframerSelect.DeframerA, 1);
    Link.FpgaTalise.EnableJesd204bDeframer(AdiCmdServerClient.FpgaDeframerSelect.DisableAll);
    Link.Talise.EnableFramerTestData(AdiCmdServerClient.FramerSelect.FramerA, AdiCmdServerClient.FramerDataSource.FtdAdcData, AdiCmdServerClient.FramerInjectPoint.FtdFramerInput);
    Link.Talise.EnableFramerTestData(AdiCmdServerClient.FramerSelect.FramerB, AdiCmdServerClient.FramerDataSource.FtdAdcData, AdiCmdServerClient.FramerInjectPoint.FtdFramerInput);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.RxJesdRst);
    Link.FpgaTalise.ResetFpgaIp(AdiCmdServerClient.FpgaResets.ClearAllRst);
    Link.FpgaTalise.EnableJesd204bDeframer(AdiCmdServerClient.FpgaDeframerSelect.DeframerA);
    Link.Talise.EnableFramerLink(AdiCmdServerClient.FramerSelect.FramerA, 0);
    Link.Talise.EnableFramerLink(AdiCmdServerClient.FramerSelect.FramerA, 1);
    Link.Talise.EnableSysrefToFramer(AdiCmdServerClient.FramerSelect.FramerA, 1);
    Link.Ad9528.RequestSysref(1);
    Link.Talise.ReadFramerStatus(AdiCmdServerClient.FramerSelect.FramerA);
    Link.Talise.ReadDeframerStatus(AdiCmdServerClient.DeframerSelect.DeframerA);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Tracking Cals
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    pause(1);
    %trackingCalMask = 0
    Link.Talise.EnableTrackingCals(0);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % GainWithFloatingPoint or GainWithNoCompensation
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %Ensure Stream File has been set to receive Floating Point Data
    rxDataFormatter = AdiCmdServerClient.TaliseRxDataFormat;
    rxDataFormatter.FormatSelect = (AdiCmdServerClient.RxDataFormatModes.GainCompensationDisabled);
    rxDataFormatter.FpNumExpBits = (AdiCmdServerClient.FpExponentModes.TwoExponentBits);
    rxDataFormatter.FpRoundMode = (AdiCmdServerClient.FpRoundingModes.RoundToEven);
    rxDataFormatter.FpRx1Atten = (AdiCmdServerClient.FpAttenSteps.FpAtten0dB);
    rxDataFormatter.FpRx2Atten = (AdiCmdServerClient.FpAttenSteps.FpAtten0dB);
    rxDataFormatter.FpHideLeadingOne = (1);
    rxDataFormatter.IntEmbeddedBits = (AdiCmdServerClient.EmbeddedBits.Embed1SlicerBitAtLsb);
    rxDataFormatter.IntSampleResolution = (rxDataFormatter.IntSampleRes.Integer12Bit2sComp);
    Link.Talise.SetRxDataFormat(rxDataFormatter);
    %Link.Talise.SetRxDataFormat(TaliseRxDataFormat.0,0,0,0,0,1,0,0,2,0,0,3,3,0,0);

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Set Gain & Attenuation
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Link.Talise.SetRxManualGain(AdiCmdServerClient.RxChannel.Rx1, 255);
    Link.Talise.SetRxManualGain(AdiCmdServerClient.RxChannel.Rx2, 255);
    Link.Talise.SetObsRxManualGain(AdiCmdServerClient.ObsRxChannel.ObsRx1, 255);
    Link.Talise.SetObsRxManualGain(AdiCmdServerClient.ObsRxChannel.ObsRx2, 255);
    Link.Talise.SetTxAttenuation(AdiCmdServerClient.TxChannel.Tx1, 0);
    Link.Talise.SetTxAttenuation(AdiCmdServerClient.TxChannel.Tx2, 0);

    Link.hw.Disconnect();

  • It looks like you installed  the TES GUI in D drive. Can you try installing in C drive, generate MATLAB script and then try running the script  in MATLAB.

    Can you confirm that Is the Talise Board IP 192.168.1.10?