I have a custom waveform (6225920 points @ 4.1 MHz) that is larger than the buffer size allowed with the custom function (65535 points). The play function seems like the solution to this, so I have used the AnalogOut_Play.py demo provided with Waveforms as a reference for implementing it. I am using an Eclypse Z7
Unfortunately it keeps failing at the FDwfAnalogOutNodePlayData function. To double check it wasn't my code, I tried running the unmodified AnalogOut_Play.py, and used a mono 1kHz tone, 44.1kHz sample rate, +/- 1 V, 30 second, wav file as "audio.wav". This also failed at the same function, so it's not a problem with my implementation. The function doesn't provide any error message, but this is the output:
Load audio.WAV file
Rate: 44100
Size: 1323000
Type: int16
Scaling: INT16
DWF Version: b'3.21.3'
Opening first device...
Playing audio...
Length: 30.0
Error
Lost: 17
Corrupted: 0
done
As a further check, I've tried playing the audio file using the Waveforms GUI. The program fails, and mentions that the error is again with the FDwfAnalogOutNodePlayData function. This error will keep popping up and requires a restart of the program.
Is the Eclypse Z7 Zmod AWG known to work with the play function? I am able to generate any standard function and even custom waveforms using both the GUI and the SDK via Python, so I am not sure what else could be wrong.