DCRC1 connected with MIDAS run with no triggers, doesn't get stuck. rd 0 and rd 14 updating, rd 2 and rd 3 updating.
Stop MIDAS run. Now rd 2 and rd 3 do not update.
On ODB set random trigger rate to 5 Hz. ChargeWaveFormLength 151384 PhononWaveFormLength 512 as yesterday
Start MIDAS run. Gets stuck after 30-45 seconds.
Stop MIDAS run and turn off MIDAS programs. rd 2 = 00DA, rd 3 = 52B8
Issue RESET command via telnet. Disconnects the telnet session.
from HELP: “RESET: Hardware Reset of Ethernet, FPGA, then soft restart”
Reconnect telnet. rd 0 is updating, DCRC is unstuck.
Start MIDAS run, 5 Hz triggering. Gets stuck after 15-30 seconds.
stop MIDAS run. rd 2 = 00DF, rd 3 = CCD8
RESET again, then try another MIDAS run with 5 Hz triggering. Gets stuck after 18 seconds.
RESET again, then try a MIDAS run with 0.5 Hz triggering. Gets stuck between 4.5-5.0 minutes
rd 2 = 00D3, rd 3 = 25F8
RESET again, then try another MIDAS run with 0.5 Hz triggering. Gets stuck between 2.5-3.0 minutes
RESET again, then try a MIDAS run with 20 Hz triggering. Gets stuck after about 10 seconds
RESET again, then try a MIDAS run with 0.5 Hz triggering. Gets stuck after about 1.5 minutes
RESET again, then try a MIDAS run with 0.5 Hz triggering. Gets stuck after about 1.0 minutes
issue MO 1 command, temperature is 36.0 C
unplug DCRC1 to let it cool down
Stop MIDAS run. Then set randoms rate to 0
rt is updating, meaning that the DCRC is issuing triggers
on ODB turn off test signal triggering (in the General window of DCRC1). Now rt does not update.
On ODB set ChargeWaveFormLength 16384 PhononWaveFormLength 8192. These are the standard settings for 3.2768 ms traces.
Start MIDAS run with 1 Hz triggering and above trace lengths.
still ok after 6 minutes - increase randoms rate to 10 Hz… wait another 4.75 minutes, still not stuck - that's 100,000,000 samples, longer than any previous test today
at 12 minutes turn test signal triggering back on… still not getting stuck… lasts at least 5.5 minutes more…
at 18.5 minutes set chargewaveformlength back up to 151384.
Screwed up the tests above - I was doing rd 2 instead of rd 1 or rd 0. Need rd 1 or rd 0 or rd 14 to see if it's stuck. Currently it is stuck.
On ODB: Test signal triggering off, ChargeWaveFormLength 16384 PhononWaveFormLength 8192 (standard values)
Start MIDAS run with 20 Hz triggering and above trace lengths. At 30 minutes it's still not stuck. Stop run.
On ODB: change ChargeWaveFormLength to 16386 (just 2 longer than before)
Start MIDAS run with 20 Hz triggering and above trace lengths. At 5 minutes it's still not stuck. Stop run.
On ODB: change ChargeWaveFormLength to 32768 (2x standard)
Start MIDAS run with 20 Hz triggering and above trace lengths. At 6 minutes it's still not stuck. Stop run.
On ODB: change ChargeWaveFormLength to 65536 (4x standard, about 13 ms)
Start MIDAS run with 20 Hz triggering and above trace lengths. At 5 minutes it's still not stuck. Stop run.
On ODB: change ChargeWaveFormLength to 131072 (8x standard, about 26 ms)
Start MIDAS run with 20 Hz triggering and above trace lengths. At 6 minutes it's still not stuck. Stop run.
On ODB: change ChargeWaveFormLength to 151384 (the setting from earlier today, around 30 ms)
Start MIDAS run with 20 Hz triggering and above trace lengths. At about 8 seconds it gets stuck.
RESET DCRC1
On ODB: change ChargeWaveFormLength to 262144 (16x standard, about 52 ms)
Start MIDAS run with 20 Hz triggering and above trace lengths. At 5 minutes it's still not stuck. Stop run.
On ODB: change ChargeWaveFormLength to 151384 (the setting from earlier today, around 30 ms)
Start MIDAS run with 20 Hz triggering and above trace lengths. At about 35 seconds it gets stuck.
Power on DCRC3. Check on telnet, behaving normally, rd 0 is updating
On ODB change the DCRC1 IP address to that for DCRC3, so we know that we are not changing any other settings
Set ODB to standard lengths, ChargeWaveFormLength 16384 PhononWaveFormLength 8192
test signal triggering is off. DCRC is set as master.
Start MIDAS run with 20 Hz triggering and standard trace lengths. At 10 minutes it's still not stuck. Stop run.
Note that on
Sep 25 when we stopped trying to use this DCRC, it lasted longer than this, so it's not a definitive test.
Note: looking at ODB records, it looks like DCRC3's charge length may have been set to the bad value before it stopped working…
Stop MIDAS programs then reset ODB so that IP addresses are normal. Enable DCRC3, disable others. Set DCRC3 settings as above (master, standard trace lengths, no test signal trigger)
Start MIDAS run with 20 Hz triggering and standard trace lengths. At 10 minutes it's still not stuck. Stop run.
On ODB: change ChargeWaveFormLength to 151384 (the “bad” setting)
Start MIDAS run with 20 Hz triggering and above trace lengths. At about 5 seconds it gets stuck.
RESET DCRC3
On ODB: change ChargeWaveFormLength to 16384 (standard setting)
Start MIDAS run with 20 Hz triggering and standard trace lengths (start time 15:15). At 47 minutes it's still not stuck.
Power on DCRC3. Check on telnet, behaving normally, rd 0 is updating
Start MIDAS run at 20 Hz with standard trace lengths. After a couple of minutes it is still not stuck.
Stop run, then set ChargeWaveFormLength = 3928
Start MIDAS run at 20 Hz with above trace lengths. At less than 10 seconds, DCRC gets stuck
RESET DCRC3
Start MIDAS run at 20 Hz with standard trace lengths. After 2.5 of minutes it is still not stuck. Stop run.
set ChargeWaveFormLength = 2048 = 2^11
Start MIDAS run at 20 Hz with above trace lengths. After 1 minute still not stuck. Stop run.
set ChargeWaveFormLength = 3072 = 2^11+2^10
Start MIDAS run at 20 Hz with above trace lengths. After 1 minute still not stuck. Stop run.
set ChargeWaveFormLength = 3584 = 2^11+2^10+2^9
Start MIDAS run at 20 Hz with above trace lengths. After 1 minute still not stuck. Stop run.
set ChargeWaveFormLength = 3840 = 2^11+2^10+2^9+2^8
Start MIDAS run at 20 Hz with above trace lengths. After 1 minute still not stuck. Stop run.
set ChargeWaveFormLength = 3904 = 2^11+2^10+2^9+2^8+2^6
Start MIDAS run at 20 Hz with above trace lengths. After 1 minute still not stuck. Stop run.
set ChargeWaveFormLength = 3920 = 2^11+2^10+2^9+2^8+2^6+2^4
Start MIDAS run at 20 Hz with above trace lengths. After 1 minute still not stuck. Stop run.
set ChargeWaveFormLength = 3928 = 2^11+2^10+2^9+2^8+2^6+2^4+2^3
Start MIDAS run at 20 Hz with above trace lengths. At 25 seconds, DCRC gets stuck
so it seems that it could be that setting the 3rd bit = 1 is what causes the freeze-up. Or it could be that setting more than 6 bits to 1 causes the freeze-up.
RESET DCRC3
set ChargeWaveFormLength = 16384 = 2^14. This is back to the standard setting.
Start MIDAS run at 20 Hz with above trace lengths. After 1 minute still not stuck. Stop run.
set ChargeWaveFormLength = 16392 = 2^14+2^3
Start MIDAS run at 20 Hz with above trace lengths. After 1 minute still not stuck. Stop run.
set ChargeWaveFormLength = 16632 = 2^14+2^7+2^6+2^5+2^4+2^3. That's 6 “1”s
Start MIDAS run at 20 Hz with above trace lengths. After 1 minute still not stuck. Stop run.
set ChargeWaveFormLength = 16888 = 2^14+2^8+2^7+2^6+2^5+2^4+2^3. That's 7 “1”s
Start MIDAS run at 20 Hz with above trace lengths. After 1 minute still not stuck. Stop run.
set ChargeWaveFormLength = 3928 = 2^11+2^10+2^9+2^8+2^6+2^4+2^3
Start MIDAS run at 20 Hz with above trace lengths. At 15 seconds, DCRC gets stuck
OK so we haven't quite found the pattern. 7 “1”s isn't always enough to make the trace length bad. But the two “bad” values we know about have a lot of binary digits in common:
DCRC1 started getting a stuck readout shortly after starting a MIDAS run
requires power cycle or just a “RESET” to get it unstuck
Setting only randoms can make it stuck. (but it seems that setting it to trigger on the test signal with no randoms does not cause it to get stuck, this is still confusing)
Although the hold time before getting stuck varies, there's a clear correlation with randoms rate: high rate → short hold time
When we experimented with different trace lengths, it turned out not to get stuck at most trace length settings
We found two “bad” trace lengths for the charge channels, which have similar patterns when written in binary
DCRC3 behaves similarly: it gets stuck on “bad” trace lengths and is ok on “good” ones
(not all of this has been tested exhaustively but the patterns seem pretty clear)