Jump to content
  • 0

What determines the max buffer size for acquisition for the Analog Discovery 3?


eradarhughes

Question

I used the following code to determine the maximum buffer size for acquisition:

nBufMax = c_int()
dwf.FDwfAnalogInBufferSizeInfo(hdwf, 0, byref(nBufMax))
print("nBufMax = ", nBufMax)

For my AD3, I am getting an answer of c_int(16,384).   For what reason am I getting this instead of 32768?    I have DWF Version: b'3.22.2'.  My acquisition mode is acqmodeSingle.   I would like to capture more samples, but if I set my acquisition buffer to anything larger than 16,384, I get zeroes in all samples above that number.   Any insight to this would be greatly appreciated.

Thanks.

 

Edited by eradarhughes
fix typo
Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Hi @eradarhughes

Use the second device configuration for 2x 32768 oscilloscope sample device buffer.
If one channel is enabled will let you capture up to 65536 samples.
For more samples at lower rate (<=10MS/s) use streaming mode, see AnalogIn_Record.py .... AnalogOutIn_PlayRecord.py examples

image.png

Link to comment
Share on other sites

  • 0
26 minutes ago, attila said:

Hi @eradarhughes

Use the second device configuration for 2x 32768 oscilloscope sample device buffer.
If one channel is enabled will let you capture up to 65536 samples.
For more samples at lower rate (<=10MS/s) use streaming mode, see AnalogIn_Record.py .... AnalogOutIn_PlayRecord.py examples

image.png

That worked!   I had to use dwf.FDwfDeviceConfigOpen(c_int(-1),c_int(1), byref(hdwf)) because of the zero indexing of Python.  Thanks!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...