Project

General

Profile

Wiki » History » Version 19

Sho Nagao, 04/14/2025 03:38 AM

1 1 Alexandre Camsonne
h1. Wiki
2
3 16 Sho Nagao
h3. Contact
4
5
* Sho Nagao (Responsible person, DAQ, snagao@jlab.org, sho.nagao@nex.phys.s.u-tokyo.ac.jp)
6
* Alexandre Camsonne (JLab manager, camsonne@jlab.org)
7
* Ken Nishida (Detector, ken.nishida@nex.phys.s.u-tokyo.ac.jp)
8
* Ravindu Kumaragamage (Detector, ravindu@jlab.org)
9
10 19 Sho Nagao
h3. Links
11 18 Sho Nagao
12 17 Sho Nagao
* Wiki (this page)
13 19 Sho Nagao
* Shift Table [https://docs.google.com/spreadsheets/d/1l6xSZyWtJp-qullufdNhQUQxzDeH2rkriUogHcKd2Kk/edit?usp=sharing]
14
* Beamtime Log Note [https://docs.google.com/document/d/1jugEdr5lsl8IZCmf_lVthm3e4gvbkZWo8eYAMRVqb88/edit?tab=t.0]
15 16 Sho Nagao
16 1 Alexandre Camsonne
h3. For shift personel
17
18 19 Sho Nagao
* Shift work is written at the top of the Shift Table. Each shift will take about 10 minutes. If you find anything strange, please contact an expert.
19 1 Alexandre Camsonne
20 19 Sho Nagao
h3. Troubleshooting
21
22
* Cannot find the latest pdf files.
23
** If the timestamp is within 30 minutes.
24
PDF files are generated & uploaded after the current run is over; since one run is 30 minutes, only PDFs up to at least 30 minutes previous run are uploaded.
25
** No update for more than 1 hour
26
Raspberry pi or EASIROC or some other things may be down. Contact experts.
27
28
29 1 Alexandre Camsonne
h3. For expert
30
31
This section describes DAQ operations during beamtime. For more information, check "How to operate new-firmware EASIROC and RaspberryPi".
32 19 Sho Nagao
33
h4. How to handle remote power switch
34
35
h4. After reboot raspberry pi
36
37
If you have restarted raspberry pi due to some trouble, please follow the procedure below to restore it.
38
# Login and move to "/home/nex/NIM_EASIROC/controller" dir.
39
# Open a new tmux session "Controller"
40
#* @$ tmux new -s Controller@
41
#* @./Controller.rb@
42
# Check HV status
43
#* @statusHV@
44
# Set HV if needed
45
#* @increaseHV 56.0@
46
# Detach session
47
#* @ctrl+b, d@
48
# Move to analysis dir.
49
# Open a new tmux session "MergeLog" and run MergeLog.py
50
#* @python MergeLog.py@
51
#* @ctrl+b, d@
52
# Open a new tmux session "PlotLog"
53
#* @./plotlog.sh@
54
#* @ctrl+b, d@
55
#* If this shell script outputs errors, it may contain unexpected text in the log file. Delete the line from run_xxxx.log and try it again.
56
57
h4. Checking EASIROC Controller
58
59 16 Sho Nagao
*_NOTE: Never open multiple Controller.rb. Before open it, check running jobs with "ps x" command._*
60
*Procedure*
61
# Login to the RaspberryPi.
62
#* @ssh -Y nex@129.57.193.11@
63
# Open tmux window.
64
#* @tmux a -t Controller@
65
# Execute ruby script. The current directory should be "/home/nex/NIM_EASIROC/controller".
66
#* @./Controller.rb@
67
# Increase HV. *_NOTE:"Tab" doesn't work on Controller.rb._*
68
#* @increaseHV 56.0@     
69
# Check HV. Typical V / A = 55.97V / 7.2 uA.
70
#* @statusHV@
71
# Set DAQ mode.
72
#* @adc on@
73
#* @tdc on@
74
#* @scaler on@
75
# Start DAQ. If you want to stop, type @stop@ during data taking. This "stop" command does not work while "Reading monitor ADC" or "Switching now" is in progress. Please enter it when the progress bar is moving.
76
#* @readloop@
77
# Exit the script if you want.
78
#* @exit@
79
# If you want to close tmux terminal, type
80
#* Ctrl+b, d
81
82
*MEMO for tmux beginners*
83
* Check tmux list @tmux ls@
84
* Open new session @tmux new -s session_name@
85
* Open running session @tmux a -t session_name@
86
* Detach tmux session @Ctrl+b, d@
87
* Close tmux session @exit@
88
89
Data (.dat), compressed data (.tar.xz), log (.log), and run settings (runlist.csv) are automatically generated in the data directory. The shift person simply checks to see if the data collection is working. If it is working as usual, "readloop" will automatically collect the data without doing anything.
90
If you find anything strange, please contact Alex, Sho and Ken.
91
92
93 4 Ken Nishida
h3. List of equipement from Japan
94 1 Alexandre Camsonne
95 4 Ken Nishida
# SiPM 3ch Box    Qty.4
96
# Special 30m LAN cable    Qty.4
97
# Raspberry Pi5     Qty.1
98
# 7 inch Monitor     Qty.1
99
# USB-LAN connector      Qty.1
100
# Standard LAN cable      Qty.2
101
# NIM EASIROC     Qty.1
102
# TTL-NIM-TTL 8ch module    Qty.1 (https://www.kagaku.com/hoshin/n002.html,  1ch TTLtoNIM, 4ch NIM-TTL will be used)
103
# 2ch Gate&Delay Module    Qty.2 (http://www.tcnland.co.jp/archives/product_type/gatedelaygenerator_n-tm_307,  4ch G&D will be used)
104
# 4ch logic fan I/O    Qty.1 (http://www.tcnland.co.jp/archives/product_type/fanin%EF%BC%8Ffanout_n-tm_102,  2ch will be used)
105 1 Alexandre Camsonne
106
The SiPM is 3ch SiPM Box x 4 = 12 ch total. All SiPM can be handled by the adobe items.
107
For 8.~10., please arrange for spare modules in case the modules sent from Japan are defective. Equivalent products are fine.
108
We were unable to handle the detector well due to the effects of noise and crosstalk from TTL with standard cat.7 LAN cables or ECL Flat cables. We will provide a cable with an additional shield on the cat.7 cable.
109
110
111
112 4 Ken Nishida
h3. Old map of Hall A for previous SBS experiment
113 1 Alexandre Camsonne
114 4 Ken Nishida
# https://userweb.jlab.org/~efuchey/SBS_BB/Pictures/GlobalPlanHallAFloor_lowBBangle.pdf
115
# https://redmine.jlab.org/documents/118
116
117
118
119 6 Ken Nishida
h3. How to operate new-firmware EASIROC and RaspberryPi
120 5 Ken Nishida
121
# Access to RaspberryPi
122
* IP address : 129.57.193.11
123
* Password : Please ask Ken
124
* Can access via JLab hall-gateway
125
* RasbberryPi controls EASIROC, edits EASIROC parameter files, saves aquired data by EASIROC, and outputs TTL signal for LED.
126 1 Alexandre Camsonne
127 6 Ken Nishida
# Turn on LED in SiPM Boxes
128
* Each SiPM box has LED so that we can see 1p.e. level signal clearly.
129
* LEDs flash by sending TTL signal from RaspberryPi via BNC cable at 200Hz. This TTL signal is also used for DAQ trigger.
130 11 Ken Nishida
* Execute @python gpio_led.py@ to start sending TTL and turning on LED. While executing @gpio_led.py@, you can see TTL signal on oscilloscope ch1.
131
* Execute @python gpio_pedestal.py@ to take ADC pedestal data. While executing @gpio_pedestal.py@, you cannot see TTL signal on oscilloscope.
132 6 Ken Nishida
* LED emission intensity is very sensitive to width and amplitude of TTL signal. Ken has already adjusted it, so please don't touch NIM gate& delay generator and variable register. 
133
* You can edit @GPIO.py@ script and select @Pedestal mode@/ @LED mode@. In @Pedestal mode@, you will aquire only pedestal data (without 1p.e. signal), while in @LED mode@, you will aquire 1p.e. data. 
134
135 5 Ken Nishida
# Boot EASIROC 
136
* Confirm power supply to NIM crate, RaspberryPi is OK
137
* Once power is supplied to EASIROC correctly, LED1 at the bottom of EASIROC module turns red
138
* Main directory of EASIROC operation files on RaspberryPi
139
  @cd ~/EASIROC@ : main directory
140
  @Controller.rb@ : EASIROC controller script
141
  @GPIO.py@ : TTL signal for LED
142
  @yaml@ : EASIROC parameter files. @RegisterValue.yaml@ is the only parameter file we need to edit.
143
  @data@ : Data files (both .dat & .root). Once DAQ is completed, both rawdata(.dat) and decoded root file(.root) are output automatically in this directory. 
144
* Boot EASIROC (IP: @192.168.10.21@ )
145
  @./Controller.rb [IP address]@
146
147
# Command to operate EASIROC
148
* @./Controller.rb [IP address]@ will open interactive EASIROC controller.
149
* @help@ command will show available interactive commands
150
* Basic commands we will use are:
151
<pre>
152
 setHV [bias voltage] : Set SiPM HV as [bias voltage] value.
153
 statusHV : Show HV & current value on SiPMs.
154
 slowcontrol : Reflect changes on slow-controller setting (every time after you edit RegisterValue.yaml ).
155
 tdc on/off : TDC data taking ON/OFF. You can basically set as "ON".
156
 adc on/off : ADC data taking ON/OFF. You can basically set as "ON".
157
 scaler on/off : Scaler data taking ON/OFF. You can basically set as "ON".
158
 read [EventNumber] [Filename] : Start data taking. Data taking will go at 200Hz and EventNum around 10000-50000 looks fine. Filename is currently like "test000x.dat". 
159
</pre> 
160
161
* Caution0: EASIROC is ASIC module and is very weak for example against over-current caused by your wrong HV operation. Please be careful when you operate EASIROC not to break it, and please ask Ken if you have something unclear before doing it.  
162
163
* Caution1: When setting SiPM HV, you should increase SIPM HV gradually like 0V->20V->40V->50V->53V->54.5V. You can see 1p.e. signals from SiPM at 53V. If you cannot see the signals at 53V, you have some mistakes or troubles like HV line is not connected correctly. Also, be careful not to set  SiPM HV larger than 56V. Please check your input value every time you use @setHV@ command. HV will be enough at around 54.5V or 55.0V. Please check HV & current status frequently with @statusHV@ command.
164
165
* Caution2: Every time before disconnecting HV line or shutting down EASIROC, you should decrease SiPM HV gradually with @setHV@ command. Don't cut off HV suddenly.
166
167 1 Alexandre Camsonne
* Caution3: Sometimes, EASIROC interactive mode may unexpectedly and suddenly closed while you are operating it. Basically, EASIROC is designed to decrease HV gradually in even such cases not to damage SiPM and EASIROC itself. So, you don't worry about it too much, but please let Ken know if some troubles happen.
168 6 Ken Nishida
169 8 Ken Nishida
# Edit EASIROC parameter file
170
* By editing @RegisterValue.yaml@, you can change some shaping parameter in EASIROC. However, only you need to change may be EASIROC channel you want to monitor signal with oscilloscope.
171 12 Ken Nishida
* @RegisterValue.yaml@ is like as below:
172
<pre>
173
EASIROC1:
174
        Capacitor HG PA Fdbck: 200fF
175
        Capacitor LG PA Fdbck: 200fF
176
        Time Constant HG Shaper: 150ns
177
        Time Constant LG Shaper: 100ns
178
        DAC code: 700
179
180
EASIROC2:
181
        Capacitor HG PA Fdbck: same
182
        Capacitor LG PA Fdbck: same
183
        Time Constant HG Shaper: same
184
        Time Constant LG Shaper: same
185
        DAC code: same
186
187
High Gain Channel 1: 4
188
High Gain Channel 2: -1
189
Probe Channel 1: 4
190
Probe Channel 2: -1
191
Probe 1: Out_fs
192
Probe 2: Out_fs #Out_PA_HG,Out_PA_LG,Out_ssh_HG,Out_ssh_LG,Out_fs
193
SelectableLogic: 
194
        Pattern: Or64 #OneCh_#,Or32u,Or32d,Or64,Or32And,Or16And,And32u,And32d,And64,And32Or
195
        HitNum Threshold: 4 # Threshold for each OR logic. 0~64. Default: 0
196
        And Channels: -1 # Cannels used in And Logic. 0~63. Default: -1
197
TimeWindow: 4095ns
198
UsrClkOut: "OFF" #"OFF","ON",1Hz,10Hz,100Hz,1kHz.10kHz,100kHz,3MHz,25MHz
199
Trigger:  ## This "Trigger" values are not used for this version.
200
        Mode: 0  #0-7
201
        DelayTrigger: -1  #500MHz #default:-1, 0-253 #trig -> hold -> l1 -> l2
202
        DelayHold: -1     #25MHz
203
        DelayL1Trig: -1   #6MHz
204
        Width: raw  
205
</pre>
206
In this script,
207 15 Ken Nishida
@HG Channle 1 : [channel number]@ is output channel of HG Out 1 from the front panel of EASIROC module. HG Out 1 is set so that you can monitor Slow-sheper analog output from each channel.
208
@Probe 1 : [channel number]@ is output channel of Probe 1 from the front panel of EASIROC module. Probe 1 is set so that you can monitor Fast-sheper analog output from each channel.
209
210 8 Ken Nishida
* For example, when checking signal of Box2, you can edit @RegisterValue.yaml@ as @HG Channle 1 : 4@ and @Probe 1 : 4@ to monitor fast/slow shaper analog signal from channel 4 (=MPPC4) with oscilloscope. Don't forget @slowcontrol@ command to reflect the change.
211 6 Ken Nishida
212 14 Ken Nishida
213
214
215 7 Ken Nishida
h3. Signal line & HV line connection 
216 13 Ken Nishida
217 14 Ken Nishida
# Connection around EASIROC module
218 1 Alexandre Camsonne
* We have 4 SiPM boxes and 
219
!connection1.png!
220
221 14 Ken Nishida
# Channel assign of MPPC/EASIROC
222
|_.BOX|\3. BOX1|\3. BOX2|\3. BOX3|\3. BOX4|
223
|TTL (BNC cable)|\3. TTL1|\3. TTL2|\3. TTL3|\3. TTL4|
224
|Signal&HV line(LAN cable)|\3. LAN1|\3. LAN2|\3. LAN3|\3. LAN4|
225
|MPPC|1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |11 |12 |
226
|EASIROC ch|1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |11 |12 |
227 1 Alexandre Camsonne
228 7 Ken Nishida
229 8 Ken Nishida
h3. Check signals with oscilloscope
230 9 Ken Nishida
231
# How SiPM signals are processed inside EASIROC
232
* EASIROC is ASIC-based stand-alone DAQ module. It can amp.&shaping SiPM raw analog signal, and it extracts TDC, ADC, Scaler data inside itself(stand-alone). Already processed 64-bit(?) data is sent from EASIROC to RaspberryPi.
233 7 Ken Nishida
!signal1.png!
234
235
# 4ch oscilloscope  is assigned as followed:
236 1 Alexandre Camsonne
<pre>
237
ch1: (50ohm impedance, 1V/div.) TTL signal from RaspberryPi -> use oscilloscope trigger
238 7 Ken Nishida
ch2: (1Mohm impedance, 50mV/div.) Fast-shaper analog output from EASIROC 
239
ch3: (1Mohm impedance, 50mV/div.) Slow-shaper analog output from EASIROC
240
ch4: (50ohm impedance, 1V/div.) Hold timing signal
241 6 Ken Nishida
As for orizontal scale, around 200ns/div will be good.  
242 10 Ken Nishida
</pre>
243
244 14 Ken Nishida
h3. How to remove noise on SiPM signal
245
!shielding.png!