DRS4 Forum
  DRS4 Discussion Forum, Page 1 of 14  Not logged in ELOG logo
Entry  Tue May 4 21:18:28 2021, Abaz Kryemadhi, recording only timestamp and amplitude and/or filesize maximum 

I have been collecting some date using the DRS4 board at a trigger rate of 10-20 Hz,    I only need the timestamp and the amplitude,
is there anyway to select only these two live as the data comes in to be stored. 
    Reply  Wed May 5 10:12:44 2021, Stefan Ritt, recording only timestamp and amplitude and/or filesize maximum 
The maximum file size depends on the underlying linux file system. Common values are 4-16 GBytes.


Entry  Wed Apr 7 03:29:39 2021, Sean Quinn, Unexpected noise in muxout: t_samp related? transp_example.PNGtransp_readout_example_noise.PNGdrs_datasheet_fig11.PNGr0_r1_delay.png
Dear DRS4 team,

I'm experiencing some issues that seem to be isolated to the ASIC, and would like to understand if we are doing something wrong. There are
several items to address in the post.
    Reply  Wed Apr 7 08:26:12 2021, Stefan Ritt, Unexpected noise in muxout: t_samp related? 
Dear Sean,

noise in transparent mode comes from some coupling to your system clock. But 3.5 mV RMS seems rather hight to me. You should get it to below
1 mV if the DRS4 input is clean (try to short it).
       Reply  Fri Apr 9 20:22:13 2021, Sean Quinn, Unexpected noise in muxout: t_samp related? ex_cal_wave.png
Hi Stefan,


Thanks much for the quick reply. Ok, yes, things do seem ok after the offset calibration. I am running into some other issues I could use your
          Reply  Fri Apr 9 20:55:28 2021, Stefan Ritt, Unexpected noise in muxout: t_samp related? 
If you do the cell calibration correctly, your noise should be ~0.4 mV. You seem to be 2-3x larger. The periodic negative spikes come if you dont'
sample at the right time. Adjust t_samp until they are gone.

             Reply  Fri Apr 9 21:56:54 2021, Sean Quinn, Unexpected noise in muxout: t_samp related? 
Yes, there is some systematic board noise on this prototype, unfortunately 

Ok, then it seems the other post I made might still belong in this thread after all.
Entry  Fri Apr 9 20:29:45 2021, Sean Quinn, Spikes/noise sensitive to clock settings? spikes_16MHz.pngspike_period.pngbetter_spikes_15MHz.pngspike_period_15MHz.png
Dear DRS4 team,

I'm trying to troubleshoot some odd spike behavior. If I run the ADC and SR CLK at 16 MHz (behavior also seen at 33 MHz) we get very noisy
data (post-calibration) with periodic spikes.
    Reply  Fri Apr 9 21:38:59 2021, Stefan Ritt, Spikes/noise sensitive to clock settings? 

Quinn wrote:

Dear DRS4 team,
Entry  Fri Feb 26 17:05:26 2021, Tom Schneider, Trouble getting PLL to lock 

I am working on a custom PCB design with the DRS4 chip, and I can't get the PLL to lock.  I'm feeding CLKIN with a 1MHz CMOS clock
(REFCLK- tied to VDD/2), and I'm using the same loop filter as the eval board.  I see from the datasheet that the PLL is enabled by default,
    Reply  Fri Feb 26 17:59:14 2021, Stefan Ritt, Trouble getting PLL to lock 
I guess you mean "1 MHz clock at REFCLK+", and not CLKIN, there is no CLKIN, just a SRCLK, but that is someting else!

There could be many reasons why this is not working. It's hard for me to debug your board without actually having it in hands. So just some
       Reply  Fri Feb 26 18:33:52 2021, Tom Schneider, Trouble getting PLL to lock 

Thanks for responding so quickly.  Yes I have my clock source going to REFCLK+ (CLKIN is the signal name on my schematic).  BIAS is
0.7V exactly, /RESET is high, A0-A3 are 0x0000, and the loop filter has a 4.7nF cap to GND with a 130ohm resistor + 1uF cap in parallel, just like the
          Reply  Fri Feb 26 20:32:25 2021, Stefan Ritt, Trouble getting PLL to lock 
Can you post a scope trace of your refclk together with DTAP, DSPEED and DENABLE?

Schneider wrote:

             Reply  Fri Feb 26 21:24:39 2021, Tom Schneider, Trouble getting PLL to lock 
Probe capacitance makes that tricky - if I put my probe on DSPEED, I see that it starts at approx. 2.5V then gradually decreases until it hits 0V. 
DTAP decreases from 3MHz to 0 during this time.

I'll try to get something together to show you.
                Reply  Fri Feb 26 22:12:58 2021, Stefan Ritt, Trouble getting PLL to lock 
Sounds to me like your REFCLK is not getting through or your PLL loop is open. Could be a bad solder connection. Try to measure signals not on the PCB
trace, but directly on the DRS4 pins. Drive REFCLK with a proper LVDS signal. Maybe it's wrong what I wrote in the data sheet and the trick with VDD/2
is not really working.
                   Reply  Fri Feb 26 22:52:13 2021, Tom Schneider, Trouble getting PLL to lock 
Thats not a simple modification to my PCB, but I'll give it a try.  Thanks for your help

Ritt wrote:

Sounds to me like your REFCLK is not getting through or your PLL loop
                      Reply  Thu Mar 4 21:36:14 2021, Tom Schneider, Trouble getting PLL to lock 
I found the problem, and it had nothing to do with the CMOS clock input.  As it turns out, even though I was using the default state of the config
register, I still had to write to it after powerup.  Once I did that, the PLL locked immediately.

                         Reply  Fri Mar 5 09:39:42 2021, Stefan Ritt, Trouble getting PLL to lock 
That probably depends on the way your FPGA boots. If the SRCLK signal goes high after the SRIN - even a few ns - you might clock one or two zeros
into the config register, thus disabling the PLL. Shame that I haven't thought of this before.

Entry  Thu Feb 25 17:56:39 2021, Matthias Plum, DRS spike removal for multiple waveforms 

Is there a way that someone can help me and my student to enable RemoveSymmetricSpikes function in the drs_exam.cpp? We are not 100% sure
how to call the function if you want to read out four waveforms.
    Reply  Fri Feb 26 08:52:50 2021, Stefan Ritt, DRS spike removal for multiple waveforms 
Just look at the definition of the function below, all parameters are explained there. In meantime we have a firmware fix to avoid the spikes inside
the chip, but I have not yet found time to update the evaluation board.

Entry  Wed Jan 20 12:14:49 2021, Taegyu Lee, drs4 persistence 
Dear all,

I have a question about the function that drs4 can perform.

Is there any function in drs4 that is analogous to that of "persistence display" in oscilloscope?? (accumulating pulses)
    Reply  Wed Jan 20 17:37:51 2021, Stefan Ritt, drs4 persistence 
The chip itself can only sample a single waveform, that must be done in the attached software. The current DRSOscilloscope software coming with the evaluation
board has not yet implemented that, but if you write your own software you can do so.

Entry  Thu Dec 17 09:29:43 2020, Alex Myczko, drs sources on github? 
Are there plans to add the drs software to github? (asking because I have users @ethz.ch that want to use it on debian,
thus I'm creating official debian packages of it, if license allows so, but talking to upstream (the developers) would be
much easier on github (or irc) than on this "DRS4 Discussion Forum".
    Reply  Thu Dec 17 11:31:34 2020, Stefan Ritt, drs sources on github? 
Not github, but bitbucket: https://bitbucket.org/ritt/drs4eb/src/master/

But development kind of stalled, so there will be updates only in case of severe bugs, which are kind of gone after 10 years now.
Entry  Wed Oct 21 15:03:13 2020, Seiya Nozaki, Timing diagram of SROUT/SRIN signal to write/read a write shift register drs4_srin_srout_srclk.pdf
Dear Stefan,

I have questions about the timing diagram of SROUT/SRIN signal to write/read a write shift register.
    Reply  Tue Oct 27 13:37:23 2020, Stefan Ritt, Timing diagram of SROUT/SRIN signal to write/read a write shift register Screenshot_2020-10-27_at_13.45.39_.png
Dear Seiya,

1) That's correct. SRIN is ampled at the falling edge. Pleae make sure to obey the hold-time as written in the datasheet. P.12, Fig. 11:
SRIN must be stable before the falling edge of SRCLK and tH after the falling clock. tH is 5ns according to table 1. 
       Reply  Tue Oct 27 15:02:09 2020, Seiya Nozaki, Timing diagram of SROUT/SRIN signal to write/read a write shift register 
Dear Stefan,

Thank you for your reply.
          Reply  Tue Oct 27 15:24:38 2020, Stefan Ritt, Timing diagram of SROUT/SRIN signal to write/read a write shift register 
This is a static shift register, so you can make the clock as slow as you want. Actually I don't use a "clock", I just use a data pin I
control via a state machine in the VHDL code. This way I have more control over the edges. I need several (internal) clock cycles to produce one SRCLK
clock cycle, but that does not matter for the DRS.
             Reply  Wed Oct 28 04:32:19 2020, Seiya Nozaki, Timing diagram of SROUT/SRIN signal to write/read a write shift register 
Dear Stefan,

OK, it's good to hear! Thank you!
Entry  Tue Sep 22 17:45:26 2020, Elmer Grundeman, External triggering 
Dear all,

I had a question about timing jitter and external triggering.

I trigger the board externally with a 3V pulse from a DG645 delay generator and as a test I use the gated charge function to integrate another
    Reply  Wed Oct 7 10:56:03 2020, Stefan Ritt, External triggering 
The trigger is there only to trigger the chip, but cannot be used as a precise time reference. If you want to measure precise timing, do this always
BETWEEN two inputs, never between an input and the trigger. You might want to split and delay your trigger signal and feed one copy to another input of
the evaluation board as your reference.
       Reply  Wed Oct 7 11:17:52 2020, Elmer Grundeman, External triggering 
I will try that, thanks!

Ritt wrote:

The trigger is there only to trigger the chip, but cannot be used as
Entry  Mon Aug 31 16:44:12 2020, Hans Steiger, Channel Cascading 
Dear All,

I have a board with Channel Cascading Option. I have the problem, that it seems to be impossible to run all 4 Channels simultaneously for digitizing
pulses. I can just run even or odd channels but not even and odd ones? If I run in combined option, My question: If a board comes with this combined option,
    Reply  Mon Aug 31 17:17:30 2020, Stefan Ritt, Channel Cascading Screenshot_2020-08-31_at_16.52.28_.png
If you have a board with cascading option, it should show the "combined" option in the 2048-bin option enabled (not grayed), as in the
attached screen shot. If the 2048-bin option is all greyed out, the system does not recognize the cascading option. If your board has a sticker "2048
bin" and you still see the 2048-bin option greyed out, it might mean that a resistor on that board has been forgotten. If you do not see the "2048
Entry  Sat Aug 29 22:00:30 2020, Hans Steiger, Dynamic Range Evaluation Board and Software 
Dear Evaluation Board Team,


currently I am facing the problem of digitizing pulses with an amplitude of -0.6V to -0.8V. As the dynamic range of the board is 1Vpp, this should
    Reply  Mon Aug 31 10:52:42 2020, Stefan Ritt, Dynamic Range Evaluation Board and Software 
You cannot go below -0.5V for the inputs, since the board does not have an internal negative power supply, which would be necessary for that. If you
have -0.8V pulses, the easiest is to use a passive inverter at the input to convert it to a 0.8V pulse.

Entry  Wed Feb 20 08:03:04 2019, Lev Pavlov, meg? 
Hey. Strange problem. Why does the compiler refer there at all? Library installed drsosc works


LINK : fatal error LNK1104: cannot open file "C:\meg\online\drivers\drs\libusb-1.0\libusb-1.0.lib"
    Reply  Wed Feb 20 08:08:42 2019, Stefan Ritt, meg? 
You have to change the path to libusb-1.0.lib to the one where you installed it.


       Reply  Wed Feb 20 12:13:44 2019, Lev Pavlov, meg? 
Great, drs_exam compiles without problems. Now when you run the compiled file drs_exam writes board not found, but drsosc and drscl work without problems.
What could possibly be the matter?

thanks for your patience
          Reply  Wed Feb 20 12:56:56 2019, Stefan Ritt, meg? 
No idea. Maye some access problem. Have you tried to start your program under an admin account?


             Reply  Thu Feb 21 09:51:24 2019, Lev Pavlov, no board found 
Hey. Yes, the program is running as administrator. By the way, this is win10. Your drs_exam works fine. My drs_exam compiled wrote no board found. Maybe
this is a problem like in the post https://elog.psi.ch/elogs/DRS4+Forum/698. Maybe there were solutions to the problems?

Thank You
                Reply  Thu Feb 21 09:57:53 2019, Stefan Ritt, no board found 
Could be. Have you tried that elog:657


                   Reply  Mon Feb 25 08:40:44 2019, Lev Pavlov, no board found 

Hello. When compiling drs_exam, do you need to use a "static "version of usblib or a "dynamic" version?"The problem
with "no board found" is not solved. Thanks for your help.
                      Reply  Mon Feb 25 08:48:27 2019, Stefan Ritt, no board found 
"dynamic" or "static" does not matter, as long as you don't use your program on another computer. I have no more idea about the
"no board found" problem. It works ok on all computers I tried at our lab.

                         Reply  Tue Jul 28 22:40:44 2020, Razvan Stefan Gornea, no board found DRS4_scope.png
I have a very similar problem, the command line doesn't work but the oscilloscope program does! Tried to fix it using Zadig driver update. Using
Windows 7.... 

DRS command line tool, Revision 21435
Entry  Tue May 26 11:10:27 2020, xggg, Domino wave 
Hi Stefan,

According to the datasheet DRS_rev09, the write signal is always 16 cells wide. So when the domino wave runs in infinite mode and be stopped
by setting DENABLE low , there are always 16 cells capicitors tracking the input signal . It means that the effective sample cells is 1024-16=1008? That's
    Reply  Tue May 26 12:44:16 2020, Stefan Ritt, Domino wave Screenshot_2020-05-26_at_12.43.40_.png
Look at the attached picture. For simplicity, only 4 cells are open and tracking the input signal. Time is flowing from top to bottom. So initially,
a train of 4 cells is open. When it's stopped, the train stops not immediately, but kind of "runs against a wall" at the stop cell. So each
cell is open for four time ticks effectively, and you can use all 1024 cells. 
Entry  Thu May 21 07:18:48 2020, Keita Mizukoshi, DRS4 Evaluation board control tool 'drscl' with macro file 
Dear experts,


I would like to use DRS4 evaluation board as DAQ system for small, table-top experiment.
    Reply  Fri May 22 12:53:33 2020, Stefan Ritt, DRS4 Evaluation board control tool 'drscl' with macro file 
There is an example program in the distribution under software/drscl/drs_exam.cpp which is a stand-alone program to do what you need. It uses the C library
coming with the distribution. It configureres the board, defines a trigger, and then writes a few waveforms into a file. You can use it as a starting point
for your development. If you need any other language, you have to develop bindings to the C library.
       Reply  Mon May 25 03:36:12 2020, Keita Mizukoshi, DRS4 Evaluation board control tool 'drscl' with macro file 
Thank you very much. That is what I wanted.

Ritt wrote:

There is an example program in the distribution under software/drscl/drs_exam.cpp
Entry  Thu May 21 07:38:05 2020, Keita Mizukoshi, Type check at DOFrame.h in official software 


I've failured to compile official software. The cause is the following line.
    Reply  Fri May 22 13:24:51 2020, Stefan Ritt, Type check at DOFrame.h in official software 
The software is a bit outdated, I will soon make a new release. 

In meantime, you can replace that like with

bool GetRefclk(int board) { return m_refClk[board]; }
Entry  Mon Mar 23 15:03:28 2020, Ajay Krishnamurthy, USB trigger issue 

I had forgotten to disable the turn off the power to the USB drive on Windows and DRS4 stopped triggering. Now, we are all on quarantine and
I am unable to reset the board to normal function. Are there any commands to reset the board remotely. I tried all of the default Windows based solutions
Entry  Wed Oct 23 17:56:26 2019, John Jendzurski, Computing corrected time from binary data...what is t_0,0? Screenshot.png
In the equations for computing the corrected time for channels other than channel 1, does anyone know what the term t0,0 refers
to?  This is the last term in the last equation on page 24 of DRS4 Evaluation Board User’s Manual, Board Revision 5 as of January 2014, Last
revised: April 27, 2016.
    Reply  Fri Oct 25 16:39:07 2019, Stefan Ritt, Computing corrected time from binary data...what is t_0,0? 
t0,0 refers to the time of cell #0 of channel #0. So basically you keep channel 0 fixed, calculate the difference of each channel's cell #0 in respect
to channel 0, and align all channels except channel 0 so that their cell #0 has the same value. There is an inconsistency between the channel numbering.
The formula uses 0...3 and the manual says "channel 1" but it means actually the first channel, which uses index "0".
Entry  Mon Oct 14 09:32:33 2019, Danyang, how to acquire the stop position with channel cascading Capture.PNG
Hi Steffan,

       In DSR4 DATASHEET Rev.0.9 Page13,  there is a paragraph "If the DRS4 is configured for channel cascading
or daisy chaining, it is necessary to know which the current channel is where the sampling has been stopped. This can be
    Reply  Mon Oct 14 10:14:46 2019, Stefan Ritt, how to acquire the stop position with channel cascading 
You first set A3-A0, on the next clock cycle you issue pulses on srclk, and about 10ns after each clock pulse the output shows up at srout. Best is to
verity this with an oscilloscope.

The radout of the shift register is independent of the readout mode, so you can use with with MUXOUT as well.
       Reply  Mon Oct 14 11:45:06 2019, Danyang, how to acquire the stop position with channel cascading Capture.PNG
I tried the logic in my designed board.  The results are shown in the picture: Srout keeps low when A3-A0  is
set to 1101 and srclk is set as you mentioned. And the drs4 chip does not output sine wave in such configuration.

Srout signal only reacts after the rsrload signal is pulled high and A3-A0 is not 1101.  
          Reply  Mon Oct 14 12:56:13 2019, Stefan Ritt, how to acquire the stop position with channel cascading 
Note that you have to read out the Write Shift Register only if you do channel cascading, e.g. configuring the chip with 4x2048 bins by setting the Write
Shift Register to 01010101b. Then the Write Shift Register tells you in which 1024-bin segment the Domino Wave has been stopped. If you use the normal
8x1024 bin mode, you don't have to read out the Write Shift Register since it continas only 1's. 
             Reply  Mon Oct 14 13:44:26 2019, Danyang, how to acquire the stop position with channel cascading 
Yes, firstly I configured the chip with 4x2048 bins by setting the Write Shift Register to 01010101b, A3-A0 keeps 1101----> secondly
I enabled the domino wave, wait  some time for stable,  A3-A0 keeps 1111  ---->thirdly stops the domino wave when the trigger comes,
A3-A0 keeps 1101 (or 1010, 0000)----> forthly send the clock pulse to the srclk pin, A3-A0 keeps 1101,  srout
                Reply  Mon Oct 14 15:27:09 2019, Stefan Ritt, how to acquire the stop position with channel cascading 
If you configure the Write Shift Register with 01010101b, then all you have to do after a trigger is to set A3-A0 to 1101. The WSROUT pin shows you then
either ther state 01010101b or 10101010b, you the pin should be 1 or 0, and that's all you need. The Write Shift Register is NOT routed to the SROUT
pin, you only see it at the WSROUT pin.
                   Reply  Tue Oct 15 08:14:17 2019, Danyang, how to acquire the stop position with channel cascading 
Thanks a lot. The problem is solved when A3-A0 is set 1101 and srclk keeps low.

Best Regards,
Entry  Fri Sep 13 15:27:41 2019, Arseny Rybnikov, Scaler / How to modify the firmware to change the scaler integration time 

We want to use the inner DRS4 counter(scaler) within more than the 100ms integration time. We guess that we need to modify the original
firmware around this point:
Entry  Tue Aug 27 08:33:22 2019, chinmay basu, DRS4 
Is DRS4 suitable for use with Silicon surface barrier detectors?
    Reply  Tue Aug 27 09:14:03 2019, Stefan Ritt, DRS4 
Is a 5 GSPS oscilloscope suitable for use with Silicon surface barier detectors?

basu wrote:

Is DRS4 suitable for use with Silicon surface barrier detectors?
ELOG V3.1.4-80633ba