I have worked with nidaqmx in the past. I worked with an NI 9229 (using a usb cDAQ-9171 single slot chassis) which is capable of simultaneous sampling. I could set the sample rate and also continuously sample the buffer with my tkinter application.
I am now working with a NI 9207 (using a usb cDAQ-9171 single slot chassis). I now have 16 channels to sample, and I now have a CONVERT CLOCK to work with as well which I have learned is different from the normal clocks that I am used to adjusting the sample rates on. The usual command I use is
self.task.timing.cfg_samp_clk_timing(sampleRate,source = '/'+self.daqName+'/ai/SampleClock', sample_mode=nidaqmx.constants.AcquisitionType.CONTINUOUS,samps_per_chan=self.numberOfSamples)
I get an error as follows:
DaqReadError: Specified route cannot be satisfied, because the hardware does not support it.
Property: DAQmx_SampClk_Src
Property: DAQmx_SampClk_ActiveEdge
Source Device: cDAQ6Mod1
Source Terminal: ai/ConvertClock
Task Name: _unnamedTask<3B>
Status Code: -89136
I have scrounged for examples and referred also the NI-DAQmx Python Documentation
I have had success in using basic task.read()
commands but this frankly doesn't offer the flexibility that I need.
TLDR; I don't know how to change the sample rate and to setup continuous acquisition with an NI card that has a CONVERT CLOCK.