I've started examining the possibilities to create my own wavedata.
First I downloaded EasyWave, I just took the most recent version I could find. But it might be that they're compiled model specific.
I created a Ramp, using a dedicated app. function for that. And did a fast first test (MeasuredWave).
It shows the same dips. After which I checked the Ramp I was feeding the AWG (InputWave).
For some reason it has 2 points of the same value in the middle of the ramp. Hence the dip. I don't think it should be there.
This and some other small bugs are a sign that it's better to completely create the WaveData ourselves. One thing I also do not like is that application works with comma separated value (CSV) files. With an XPos and a Y-Value. These are floating point values, which might contribute to rounding/truncate errors. Maybe it's good for editing, or to share wave data. It is not good in showing what is exactly uploaded to the AWG.
The uploading command for my wave was:
C1:WVDT WVNM,Ramp,TYPE,5,LENGTH,32KB,FREQ,324.674987793,AMPL,0.899999976,OFST,0.352999985,PHASE,0.000000000,WAVEDATA,
Where after the WAVEDATA 32KB of wave data is added. The wave data consists of 16 bit liitle-endian signed integers. Little-endian meaning that the least significant part of the integer is in front of the memory.
x86 processors are little endian, so while reading/writing values we shouldn't have any problems.
The full 16 bit range is used while transferring the data so from -32768 to 32767. So it is unscaled data, the scaling is done while "playing" the data. This is what one should expect.