DRS4 Forum
  DRS4 Discussion Forum  Not logged in ELOG logo
Entry  Sat Apr 15 03:48:31 2017, Strahinja Lukic, Wave rotation during transfer from the board? 
    Reply  Wed Apr 19 12:17:25 2017, Stefan Ritt, Wave rotation during transfer from the board? 
       Reply  Thu Apr 20 06:30:13 2017, Strahinja Lukic, Wave rotation during transfer from the board? 
Message ID: 605     Entry time: Sat Apr 15 03:48:31 2017     Reply to this: 606
Author: Strahinja Lukic 
Subject: Wave rotation during transfer from the board? 

I don't know if this question is already documented elsewhere.

I am developing a DAQ code for the DRS evaluation board, v4 for a test beam experiment. I link parts of the existing DRS code as a library.

To understand the effect of various flags used in calls to the functions DRSBoard::GetTime() and DRSBoard::GetWave(), I performed several tests with the 100 MHz signal connected to the inputs of the chip (DRSBoard::EnableTcal()), and several tests with signals from scintillation counters.

My question is about the flag "adjustToClock" in the call to DRSBoard::GetWave(). From looking at the code, I expected it to cause the waveforms to be "rotated" to start from the trigger cell, in a similar way that the flag "rotated" in the call to DRSBoard::GetTime() does for the time array. However, "adjustToClock" seems to shift the waveforms wrongly. I.e., if I want both the time and the amplitude arrays "rotated"  to start from the trigger cell, I should set rotated=true for time and adjustToClock=false for the amplitude. This is also how these functions are called in e.g., Osci::ReadWaveforms().

Is this correct, and does this mean that the amplitude array is "rotated" already during the transfer from the board?

I am using DRS evaluation board serial #2733, firmware revision 30000.

Many thanks,

Strahinja

 

ELOG V3.1.4-80633ba