Spectrometers with new computers show increasingly timeouts.

This can  be because the timer in the backen is not synchronized with the pulseblaster.
When the timer starts running >0.5s before the pulse program is started, a timeout could occur.
The current value of additional 0.5s is changed to 2s. This timer has nothing to do with the trigger line.

- fixes T21
This commit is contained in:
Markus Rosenstihl 2016-11-23 14:46:31 +00:00
parent c8d76f06c3
commit 5b52fb3e5a

View File

@ -821,9 +821,9 @@ result* SpectrumMI40xxSeries::get_samples(double _timeout) {
starts running before the actual start of the pulse program because the OS is not loading and starting
the pulseblaster immediatly. It is not possible to
synchronize the timers for now.
Thus, we add a generous 1s to the timeout to be on the safe side. One second ought to be enoug for everybody!
Thus, we add a generous 2s to the timeout to be on the safe side.
*/
while (core::term_signal==0 && adc_status!=SPC_READY && elapsed_time<=(effective_settings->timeout + post_gate_maxtime + 0.5) ) {
while (core::term_signal==0 && adc_status!=SPC_READY && elapsed_time<=(effective_settings->timeout + post_gate_maxtime + 2) ) {
timespec sleeptime;
sleeptime.tv_nsec=10*1000*1000; // 10 ms
sleeptime.tv_sec=0;