Have you set the sampling frequency
b->SetFrequency(5, true);
before the calibration?
Note there is also the "drscl" program, which is a ocmmand linke interface to the evaluation board. Start it, and do the calibration there:
/drs4eb/software/drscl$ ./drscl
DRS command line tool, Revision 21435
Type 'help' for a list of available commands.
Found DRS4 board 0 on USB, serial #2400, firmware revision 30000
B0> freq 5
B0> calib
Enter calibration frequency [GHz]: 5
Enter range [V]: 0
Enter mode [1]024 or [2]048 bin mode: 1
Please make sure that no input signal are present then hit any key
Creating Calibration of Board on USB, serial #2400
B0> ===============================================]
B0>
then look at the code in drscl.cpp (around line 1097).
/Stefan
Alessio Berti wrote: |
Hi,
we were trying to implement an automatic way to calibrate our DRS4 both in voltage and in time (we have the V5 Evaluation Board). We started from drs_exam.cpp and tried with the following lines:
/* set input range to -0.5V ... +0.5V */
b->SetInputRange(0);
b->CalibrateVolt(NULL);
b->CalibrateTiming(NULL);
While the timing calibration seems to work (we checked with drsosc executable), the voltage calibration in our test program seems not to do the same as in drsosc when pressing the button "Execute Voltage Calibration". Specifically we think that no primary calibration, secondary calibration or spike removal is applied when calling CalibrateVolt(). It seems that the methods to perform those tasks are implemented in Osci.ccp/Osci.h, but drs_exam.cpp uses objects of the class DRS (i.e. defined in DRS.cpp and DRS.h).
Is there a way to execute the voltage calibration in drs_exam.cpp in the same way performed within drsosc?
Cheers,
Alessio
|
|