From a8a4f1bfdf635088d9748283f6769b55eccf8a54 Mon Sep 17 00:00:00 2001 From: Dmitry Ozerov Date: Tue, 29 Sep 2020 18:06:51 +0200 Subject: [PATCH] preliminary version of communication with detector, mostly collection of detector config files --- detector/00README | 6 + detector/JF01T03V01.config | 41 ++++++ detector/JF02T09V02.config | 87 +++++++++++ detector/JF03T01V02.config | 26 ++++ detector/JF04T01V01.config | 27 ++++ detector/JF05T01V01.config | 28 ++++ detector/JF06T08V02.config | 74 ++++++++++ detector/JF06T32V02.config | 228 +++++++++++++++++++++++++++++ detector/JF07T32V01.config | 213 +++++++++++++++++++++++++++ detector/JF08T01V01.bernina.config | 26 ++++ detector/JF08T01V01.config | 27 ++++ detector/JF09T01V01.config | 27 ++++ detector/JF10T01V01.config | 27 ++++ detector/JF11T04V01.config | 45 ++++++ detector/JF13T01V01.config | 27 ++++ detector/initialise_detector.py | 43 ++++++ detector/initialise_detector.sh | 17 +++ detector/start_detector.sh | 52 +++++++ detector/take_pedestal.sh | 62 ++++++++ 19 files changed, 1083 insertions(+) create mode 100644 detector/00README create mode 100644 detector/JF01T03V01.config create mode 100644 detector/JF02T09V02.config create mode 100644 detector/JF03T01V02.config create mode 100644 detector/JF04T01V01.config create mode 100644 detector/JF05T01V01.config create mode 100644 detector/JF06T08V02.config create mode 100644 detector/JF06T32V02.config create mode 100644 detector/JF07T32V01.config create mode 100644 detector/JF08T01V01.bernina.config create mode 100644 detector/JF08T01V01.config create mode 100644 detector/JF09T01V01.config create mode 100644 detector/JF10T01V01.config create mode 100644 detector/JF11T04V01.config create mode 100644 detector/JF13T01V01.config create mode 100644 detector/initialise_detector.py create mode 100755 detector/initialise_detector.sh create mode 100755 detector/start_detector.sh create mode 100755 detector/take_pedestal.sh diff --git a/detector/00README b/detector/00README new file mode 100644 index 0000000..52a8c34 --- /dev/null +++ b/detector/00README @@ -0,0 +1,6 @@ +conda create -y -n detector -c slsdetectorgroup sls_detector_lib sls_detector + +export PATH=/home/dbe/miniconda3/bin:$PATH +source /home/dbe/miniconda3/etc/profile.d/conda.sh +conda activate detector + diff --git a/detector/JF01T03V01.config b/detector/JF01T03V01.config new file mode 100644 index 0000000..f2f8c9f --- /dev/null +++ b/detector/JF01T03V01.config @@ -0,0 +1,41 @@ +hostname JF1M5B-01+JF1M5B-02+JF1M5B-03+ + +detsizechan 1024 1536 + +rx_udpmac 98:f2:b3:d4:5f:d0 +rx_udpip 10.30.10.7 + +0:rx_udpport 50010 +0:detectorip 10.30.10.10 +0:detectormac 00:aa:bb:cc:dd:33 +0:configuremac 0 + +1:rx_udpport 50011 +1:detectorip 10.30.10.11 +1:detectormac 00:aa:bb:cc:dd:44 +1:configuremac 0 + +2:rx_udpport 50012 +2:detectorip 10.30.10.12 +2:detectormac 00:aa:bb:cc:dd:55 +2:configuremac 0 + +#with more than 4 modules we need time multiplexing. +0:txndelay_frame 9 +1:txndelay_frame 9 +2:txndelay_frame 9 +#3 modules per 1 ms slot (30Gbit/s max bw) + + +delay 0.001990 + +timing trigger +frames 1 +cycles 1000 +powerchip 1 +vhighvoltage 120 + +temp_threshold 55 +temp_control 1 + + diff --git a/detector/JF02T09V02.config b/detector/JF02T09V02.config new file mode 100644 index 0000000..47cb125 --- /dev/null +++ b/detector/JF02T09V02.config @@ -0,0 +1,87 @@ +detsizechan 1024 4608 +hostname JF4M5-01+JF4M5-02+JF4M5-03+JF4M5-04+JF4M5-05+JF4M5-06+JF4M5-07+JF4M5-08+JF4M5-09+ + +#workaround for 4.0.1 version +reg 7c 0 + +rx_udpip 10.30.20.6 +rx_udpmac 9c:dc:71:4d:2a:b4 + +0:rx_tcpport 1954 +0:rx_udpport 50020 +0:detectorip 10.30.20.20 +0:detectormac 00:aa:bb:cc:dd:30 +0:configuremac 0 + +1:rx_tcpport 1955 +1:rx_udpport 50021 +1:detectorip 10.30.20.21 +1:detectormac 00:aa:bb:cc:dd:31 +1:configuremac 0 + +2:rx_tcpport 1956 +2:rx_udpport 50022 +2:detectorip 10.30.20.22 +2:detectormac 00:aa:bb:cc:dd:32 +2:configuremac 0 + +3:rx_tcpport 1957 +3:rx_udpport 50023 +3:detectorip 10.30.20.23 +3:detectormac 00:aa:bb:cc:dd:33 +3:configuremac 0 + +4:rx_tcpport 1958 +4:rx_udpport 50024 +4:detectorip 10.30.20.24 +4:detectormac 00:aa:bb:cc:dd:34 +4:configuremac 0 + +5:rx_tcpport 1959 +5:rx_udpport 50025 +5:detectorip 10.30.20.25 +5:detectormac 00:aa:bb:cc:dd:35 +5:configuremac 0 + +6:rx_tcpport 1960 +6:rx_udpport 50026 +6:detectorip 10.30.20.26 +6:detectormac 00:aa:bb:cc:dd:36 +6:configuremac 0 + +7:rx_tcpport 1961 +7:rx_udpport 50027 +7:detectorip 10.30.20.27 +7:detectormac 00:aa:bb:cc:dd:37 +7:configuremac 0 + +8:rx_tcpport 1962 +8:rx_udpport 50028 +8:detectorip 10.30.20.28 +8:detectormac 00:aa:bb:cc:dd:38 +8:configuremac 0 + +# use last two time slots (first 8 is occupied by 16M, but 4p5M will not be running together with full 16M yet). For 100Hz we can use 10 time slots. +# for 40G link (currently bottleneck at daq machines) - 4 modules/slot. With 100G - 8 modules/time slot +0:txndelay_frame 8 +1:txndelay_frame 8 +2:txndelay_frame 8 +3:txndelay_frame 8 +4:txndelay_frame 9 +5:txndelay_frame 9 +6:txndelay_frame 9 +7:txndelay_frame 9 +8:txndelay_frame 7 + +cycles 10000 +frames 1 +timing trigger +delay 0.001989 + +dac:0 2220 +setbit 0x5d 4 + +# Temperature +temp_threshold 45 +temp_control 1 +# to clear event : temp_event 0 diff --git a/detector/JF03T01V02.config b/detector/JF03T01V02.config new file mode 100644 index 0000000..93b38ff --- /dev/null +++ b/detector/JF03T01V02.config @@ -0,0 +1,26 @@ +hostname JF0M5B-I0-01+ + +detsizechan 1024 512 + +rx_udpmac 98:f2:b3:d4:5f:d0 +rx_udpip 10.30.10.7 + +0:rx_udpport 50030 +0:detectorip 10.30.10.53 +0:detectormac 00:aa:bb:cc:dd:66 +0:txndelay_frame 8 +0:configuremac 0 + +delay 0.001990 + +timing trigger +frames 1 +cycles 1000 +powerchip 1 +vhighvoltage 120 + +temp_threshold 55 +temp_control 1 + + + diff --git a/detector/JF04T01V01.config b/detector/JF04T01V01.config new file mode 100644 index 0000000..9311ada --- /dev/null +++ b/detector/JF04T01V01.config @@ -0,0 +1,27 @@ +hostname JF0M5B-FL-01+ + +detsizechan 1024 512 + +rx_udpmac 98:f2:b3:d4:5f:d0 +rx_udpip 10.30.10.7 + +0:rx_udpport 50040 +0:detectorip 10.30.10.54 +0:detectormac 00:aa:bb:cc:dd:77 +0:configuremac 0 + +#with more than 4 modules we need time multiplexing. +0:txndelay_frame 1 +#3 modules per 1 ms slot (30Gbit/s max bw) + + +delay 0.001990 + +timing trigger +frames 1 +cycles 1000 +powerchip 1 +vhighvoltage 120 + +temp_threshold 55 +temp_control 1 diff --git a/detector/JF05T01V01.config b/detector/JF05T01V01.config new file mode 100644 index 0000000..5e55739 --- /dev/null +++ b/detector/JF05T01V01.config @@ -0,0 +1,28 @@ +hostname JF0M5B-ST-01+ + +detsizechan 1024 512 + +rx_udpmac 98:f2:b3:d4:5f:d0 +rx_udpip 10.30.10.7 + +0:rx_udpport 50050 +0:detectorip 10.30.10.50 +0:detectormac 00:aa:bb:cc:dd:88 +0:configuremac 0 + +#with more than 4 modules we need time multiplexing. +0:txndelay_frame 8 +#3 modules per 1 ms slot (30Gbit/s max bw) + +delay 0.001990 + +timing trigger +frames 1 +cycles 1000 +powerchip 1 +vhighvoltage 120 + + +temp_threshold 55 +temp_control 1 + diff --git a/detector/JF06T08V02.config b/detector/JF06T08V02.config new file mode 100644 index 0000000..a155493 --- /dev/null +++ b/detector/JF06T08V02.config @@ -0,0 +1,74 @@ +detsizechan 1024 4096 +hostname jf16ma-07+jf16ma-08+jf16ma-11+jf16ma-12+jf16ma-15+jf16ma-16+jf16ma-19+jf16ma-20+ + +#workaround for 4.0.1 version +reg 7c 0 +#0:reg 7c 0x0 +#1:reg 7c 0x10000 +#2:reg 7c 0x20000 +#3:reg 7c 0x30000 +#4:reg 7c 0x40000 +#5:reg 7c 0x50000 +#6:reg 7c 0x60000 +#7:reg 7c 0x70000 + +rx_udpmac 9c:dc:71:4d:2a:b4 +rx_udpip 10.30.20.6 + +0:rx_udpport 50060 +0:detectorip 10.30.20.60 +0:detectormac cc:cc:cc:dd:ee:f7 +0:configuremac 0 + +1:rx_udpport 50061 +1:detectorip 10.30.20.61 +1:detectormac cc:cc:cc:dd:ee:f8 +1:configuremac 0 + +2:rx_udpport 50062 +2:detectorip 10.30.20.62 +2:detectormac cc:cc:cc:dd:ee:fb +2:configuremac 0 + +3:rx_udpport 50063 +3:detectorip 10.30.20.63 +3:detectormac cc:cc:cc:dd:ee:fc +3:configuremac 0 + +4:rx_udpport 50064 +4:detectorip 10.30.20.64 +4:detectormac cc:cc:cc:dd:ee:e0 +4:configuremac 0 + +5:rx_udpport 50065 +5:detectorip 10.30.20.65 +5:detectormac cc:cc:cc:dd:ee:e1 +5:configuremac 0 + +6:rx_udpport 50066 +6:detectorip 10.30.20.66 +6:detectormac cc:cc:cc:dd:ee:e3 +6:configuremac 0 + +7:rx_udpport 50067 +7:detectorip 10.30.20.67 +7:detectormac cc:cc:cc:dd:ee:e4 +7:configuremac 0 + +cycles 10000 +frames 1 +timing trigger +delay 0.001989 + +0:txndelay_frame 0 +1:txndelay_frame 0 +2:txndelay_frame 1 +3:txndelay_frame 1 +4:txndelay_frame 2 +5:txndelay_frame 2 +6:txndelay_frame 3 +7:txndelay_frame 3 + +temp_threshold 45 +temp_control 1 + diff --git a/detector/JF06T32V02.config b/detector/JF06T32V02.config new file mode 100644 index 0000000..9235bdf --- /dev/null +++ b/detector/JF06T32V02.config @@ -0,0 +1,228 @@ +detsizechan 1024 16384 +hostname jf16ma-00+jf16ma-01+jf16ma-02+jf16ma-03+jf16ma-04+jf16ma-05+jf16ma-06+jf16ma-07+jf16ma-08+jf16ma-09+jf16ma-10+jf16ma-11+jf16ma-12+jf16ma-13+jf16ma-14+jf16ma-15+jf16ma-16+jf16ma-17+jf16ma-18+jf16ma-19+jf16ma-20+jf16ma-21+jf16ma-22+jf16ma-23+jf16ma-24+jf16ma-25+jf16ma-26+jf16ma-27+jf16ma-28+jf16ma-29+jf16ma-30+jf16ma-31+ + +#workaround for 4.0.1 version +reg 7c 0 + +#sf-daq-4: +#rx_udpmac 9c:dc:71:4d:2a:b4 +#rx_udpip 10.30.20.6 + +#sf-daq-7: +#rx_udpmac b8:83:03:78:ee:c0 +#rx_udpip 10.30.20.8 + +#sf-daq-3 +#rx_udpmac 98:f2:b3:d4:5f:d0 +#rx_udpip 10.30.10.7 + +#sf-daq-8 +rx_udpmac b8:83:03:6e:de:9c +rx_udpip 10.30.20.9 + +#sf-daq-9 +#rx_udpmac 04:09:73:e1:cf:a0 +#rx_udpip 10.30.20.101 + +0:rx_udpport 50060 +0:detectorip 10.30.20.60 +0:detectormac cc:cc:cc:dd:ee:f0 +0:configuremac 0 + +1:rx_udpport 50061 +1:detectorip 10.30.20.61 +1:detectormac cc:cc:cc:dd:ee:f1 +1:configuremac 0 + +2:rx_udpport 50062 +2:detectorip 10.30.20.62 +2:detectormac cc:cc:cc:dd:ee:f2 +2:configuremac 0 + +3:rx_udpport 50063 +3:detectorip 10.30.20.63 +3:detectormac cc:cc:cc:dd:ee:f3 +3:configuremac 0 + +4:rx_udpport 50064 +4:detectorip 10.30.20.64 +4:detectormac cc:cc:cc:dd:ee:f4 +4:configuremac 0 + +5:rx_udpport 50065 +5:detectorip 10.30.20.65 +5:detectormac cc:cc:cc:dd:ee:f5 +5:configuremac 0 + +6:rx_udpport 50066 +6:detectorip 10.30.20.66 +6:detectormac cc:cc:cc:dd:ee:f6 +6:configuremac 0 + +7:rx_udpport 50067 +7:detectorip 10.30.20.67 +7:detectormac cc:cc:cc:dd:ee:f7 +7:configuremac 0 + +8:rx_udpport 50068 +8:detectorip 10.30.20.68 +8:detectormac cc:cc:cc:dd:ee:f8 +8:configuremac 0 + +9:rx_udpport 50069 +9:detectorip 10.30.20.69 +9:detectormac cc:cc:cc:dd:ee:f9 +9:configuremac 0 + +10:rx_udpport 50070 +10:detectorip 10.30.20.70 +10:detectormac cc:cc:cc:dd:ee:fa +10:configuremac 0 + +11:rx_udpport 50071 +11:detectorip 10.30.20.71 +11:detectormac cc:cc:cc:dd:ee:fb +11:configuremac 0 + +12:rx_udpport 50072 +12:detectorip 10.30.20.72 +12:detectormac cc:cc:cc:dd:ee:fc +12:configuremac 0 + +13:rx_udpport 50073 +13:detectorip 10.30.20.73 +13:detectormac cc:cc:cc:dd:ee:fe +13:configuremac 0 + +14:rx_udpport 50074 +14:detectorip 10.30.20.74 +14:detectormac cc:cc:cc:dd:ee:ff +14:configuremac 0 + +15:rx_udpport 50075 +15:detectorip 10.30.20.75 +15:detectormac cc:cc:cc:dd:ee:e0 +15:configuremac 0 + +16:rx_udpport 50076 +16:detectorip 10.30.20.76 +16:detectormac cc:cc:cc:dd:ee:e1 +16:configuremac 0 + +17:rx_udpport 50077 +17:detectorip 10.30.20.77 +17:detectormac cc:cc:cc:dd:ee:e2 +17:configuremac 0 + +18:rx_udpport 50078 +18:detectorip 10.30.20.78 +18:detectormac cc:cc:cc:dd:ee:e3 +18:configuremac 0 + +19:rx_udpport 50079 +19:detectorip 10.30.20.79 +19:detectormac cc:cc:cc:dd:ee:e4 +19:configuremac 0 + +20:rx_udpport 50080 +20:detectorip 10.30.20.80 +20:detectormac cc:cc:cc:dd:ee:e5 +20:configuremac 0 + +21:rx_udpport 50081 +21:detectorip 10.30.20.81 +21:detectormac cc:cc:cc:dd:ee:e6 +21:configuremac 0 + +22:rx_udpport 50082 +22:detectorip 10.30.20.82 +22:detectormac cc:cc:cc:dd:ee:e7 +22:configuremac 0 + +23:rx_udpport 50083 +23:detectorip 10.30.20.83 +23:detectormac cc:cc:cc:dd:ee:e8 +23:configuremac 0 + +24:rx_udpport 50084 +24:detectorip 10.30.20.84 +24:detectormac cc:cc:cc:dd:ee:e9 +24:configuremac 0 + +25:rx_udpport 50085 +25:detectorip 10.30.20.85 +25:detectormac cc:cc:cc:dd:ee:ea +25:configuremac 0 + +26:rx_udpport 50086 +26:detectorip 10.30.20.86 +26:detectormac cc:cc:cc:dd:ee:eb +26:configuremac 0 + +27:rx_udpport 50087 +27:detectorip 10.30.20.87 +27:detectormac cc:cc:cc:dd:ee:ec +27:configuremac 0 + +28:rx_udpport 50088 +28:detectorip 10.30.20.88 +28:detectormac cc:cc:cc:dd:ee:ee +28:configuremac 0 + +29:rx_udpport 50089 +29:detectorip 10.30.20.89 +29:detectormac cc:cc:cc:dd:ee:ef +29:configuremac 0 + +30:rx_udpport 50090 +30:detectorip 10.30.20.90 +30:detectormac cc:cc:cc:dd:ee:d0 +30:configuremac 0 + +31:rx_udpport 50091 +31:detectorip 10.30.20.91 +31:detectormac cc:cc:cc:dd:ee:d1 +31:configuremac 0 + +cycles 10000 +frames 1 +timing trigger +delay 0.001989 + +# first 8 time slots for 16M detector +0:txndelay_frame 0 +1:txndelay_frame 0 +2:txndelay_frame 0 +3:txndelay_frame 0 +4:txndelay_frame 1 +5:txndelay_frame 1 +6:txndelay_frame 1 +7:txndelay_frame 1 +8:txndelay_frame 2 +9:txndelay_frame 2 +10:txndelay_frame 2 +11:txndelay_frame 2 +12:txndelay_frame 3 +13:txndelay_frame 3 +14:txndelay_frame 3 +15:txndelay_frame 3 +16:txndelay_frame 4 +17:txndelay_frame 4 +18:txndelay_frame 4 +19:txndelay_frame 4 +20:txndelay_frame 5 +21:txndelay_frame 5 +22:txndelay_frame 5 +23:txndelay_frame 5 +24:txndelay_frame 6 +25:txndelay_frame 6 +26:txndelay_frame 6 +27:txndelay_frame 6 +28:txndelay_frame 7 +29:txndelay_frame 7 +30:txndelay_frame 7 +31:txndelay_frame 7 + +temp_threshold 45 +temp_control 1 + diff --git a/detector/JF07T32V01.config b/detector/JF07T32V01.config new file mode 100644 index 0000000..b093ba3 --- /dev/null +++ b/detector/JF07T32V01.config @@ -0,0 +1,213 @@ +hostname JF16MB-00+JF16MB-01+JF16MB-02+JF16MB-03+JF16MB-04+JF16MB-05+JF16MB-06+JF16MB-07+JF16MB-08+JF16MB-09+JF16MB-10+JF16MB-11+JF16MB-12+JF16MB-13+JF16MB-14+JF16MB-15+JF16MB-16+JF16MB-17+JF16MB-18+JF16MB-19+JF16MB-20+JF16MB-21+JF16MB-22+JF16MB-23+JF16MB-24+JF16MB-25+JF16MB-26+JF16MB-27+JF16MB-28+JF16MB-29+JF16MB-30+JF16MB-31+ + +detsizechan 1024 16384 + +rx_udpmac 98:f2:b3:d4:5f:d0 +rx_udpip 10.30.10.7 + +0:rx_udpport 50100 +0:detectorip 10.30.10.100 +0:detectormac 00:50:c2:46:de:ec +0:configuremac 0 + +1:rx_udpport 50101 +1:detectorip 10.30.10.101 +1:detectormac 00:50:c2:46:de:ed +1:configuremac 0 + +2:rx_udpport 50102 +2:detectorip 10.30.10.102 +2:detectormac 00:50:c2:46:de:ee +2:configuremac 0 + +3:rx_udpport 50103 +3:detectorip 10.30.10.103 +3:detectormac 00:50:c2:46:de:ef +3:configuremac 0 + +4:rx_udpport 50104 +4:detectorip 10.30.10.104 +4:detectormac 00:50:c2:46:de:f0 +4:configuremac 0 + +5:rx_udpport 50105 +5:detectorip 10.30.10.105 +5:detectormac 00:50:c2:46:de:f1 +5:configuremac 0 + +6:rx_udpport 50106 +6:detectorip 10.30.10.106 +6:detectormac 00:50:c2:46:de:f2 +6:configuremac 0 + +7:rx_udpport 50107 +7:detectorip 10.30.10.107 +7:detectormac 00:50:c2:46:de:f3 +7:configuremac 0 + +8:rx_udpport 50108 +8:detectorip 10.30.10.108 +8:detectormac 00:50:c2:46:de:f4 +8:configuremac 0 + +9:rx_udpport 50109 +9:detectorip 10.30.10.109 +9:detectormac 00:50:c2:46:de:f5 +9:configuremac 0 + +10:rx_udpport 50110 +10:detectorip 10.30.10.110 +10:detectormac 00:50:c2:46:de:f6 +10:configuremac 0 + +11:rx_udpport 50111 +11:detectorip 10.30.10.111 +11:detectormac 00:50:c2:46:de:f7 +11:configuremac 0 + +12:rx_udpport 50112 +12:detectorip 10.30.10.112 +12:detectormac 00:50:c2:46:de:f8 +12:configuremac 0 + +13:rx_udpport 50113 +13:detectorip 10.30.10.113 +13:detectormac 00:50:c2:46:de:f9 +13:configuremac 0 + +14:rx_udpport 50114 +14:detectorip 10.30.10.114 +14:detectormac 00:50:c2:46:de:fa +14:configuremac 0 + +15:rx_udpport 50115 +15:detectorip 10.30.10.115 +15:detectormac 00:50:c2:46:de:fb +15:configuremac 0 + +16:rx_udpport 50116 +16:detectorip 10.30.10.116 +16:detectormac 00:50:c2:46:de:fc +16:configuremac 0 + +17:rx_udpport 50117 +17:detectorip 10.30.10.117 +17:detectormac 00:50:c2:46:de:fd +17:configuremac 0 + +18:rx_udpport 50118 +18:detectorip 10.30.10.118 +18:detectormac 00:50:c2:46:de:fe +18:configuremac 0 + +19:rx_udpport 50119 +19:detectorip 10.30.10.119 +19:detectormac 00:50:c2:46:de:ff +19:configuremac 0 + +20:rx_udpport 50120 +20:detectorip 10.30.10.120 +20:detectormac 00:50:c2:46:df:00 +20:configuremac 0 + +21:rx_udpport 50121 +21:detectorip 10.30.10.121 +21:detectormac 00:50:c2:46:df:01 +21:configuremac 0 + +22:rx_udpport 50122 +22:detectorip 10.30.10.122 +22:detectormac 00:50:c2:46:df:02 +22:configuremac 0 + +23:rx_udpport 50123 +23:detectorip 10.30.10.123 +23:detectormac 00:50:c2:46:df:03 +23:configuremac 0 + +24:rx_udpport 50124 +24:detectorip 10.30.10.124 +24:detectormac 00:50:c2:46:df:04 +24:configuremac 0 + +25:rx_udpport 50125 +25:detectorip 10.30.10.125 +25:detectormac 00:50:c2:46:df:05 +25:configuremac 0 + +26:rx_udpport 50126 +26:detectorip 10.30.10.126 +26:detectormac 00:50:c2:46:df:06 +26:configuremac 0 + +27:rx_udpport 50127 +27:detectorip 10.30.10.127 +27:detectormac 00:50:c2:46:df:07 +27:configuremac 0 + +28:rx_udpport 50128 +28:detectorip 10.30.10.128 +28:detectormac 00:50:c2:46:df:08 +28:configuremac 0 + +29:rx_udpport 50129 +29:detectorip 10.30.10.129 +29:detectormac 00:50:c2:46:df:09 +29:configuremac 0 + +30:rx_udpport 50130 +30:detectorip 10.30.10.130 +30:detectormac 00:50:c2:46:df:0a +30:configuremac 0 + +31:rx_udpport 50131 +31:detectorip 10.30.10.131 +31:detectormac 00:50:c2:46:df:0b +31:configuremac 0 + +settingsdir /home/dbe/sls_detectors_package/settingsdir/jungfrau +caldir /home/dbe/sls_detectors_package/settingsdir/jungfrau +threaded 1 +cycles 10000 +frames 1 +timing trigger + +delay 0.001990 +# for FGSX medium gain: 0.001984 + +0:txndelay_frame 0 +1:txndelay_frame 0 +2:txndelay_frame 0 +3:txndelay_frame 0 +4:txndelay_frame 1 +5:txndelay_frame 1 +6:txndelay_frame 1 +7:txndelay_frame 1 +8:txndelay_frame 2 +9:txndelay_frame 2 +10:txndelay_frame 2 +11:txndelay_frame 2 +12:txndelay_frame 3 +13:txndelay_frame 3 +14:txndelay_frame 3 +15:txndelay_frame 3 +16:txndelay_frame 5 +17:txndelay_frame 5 +18:txndelay_frame 5 +19:txndelay_frame 5 +20:txndelay_frame 6 +21:txndelay_frame 6 +22:txndelay_frame 6 +23:txndelay_frame 6 +24:txndelay_frame 7 +25:txndelay_frame 7 +26:txndelay_frame 7 +27:txndelay_frame 7 +28:txndelay_frame 8 +29:txndelay_frame 8 +30:txndelay_frame 8 +31:txndelay_frame 8 + +temp_threshold 55 +temp_control 1 + diff --git a/detector/JF08T01V01.bernina.config b/detector/JF08T01V01.bernina.config new file mode 100644 index 0000000..bad7c8d --- /dev/null +++ b/detector/JF08T01V01.bernina.config @@ -0,0 +1,26 @@ +hostname JF08T01V01+ + +detsizechan 1024 512 + +rx_udpmac 98:f2:b3:d4:5f:d0 +rx_udpip 10.30.10.7 + +0:rx_udpport 50140 +0:detectorip 10.30.10.140 +0:detectormac 00:aa:bb:cc:dd:99 +0:txndelay_frame 8 +0:configuremac 0 + +delay 0.001990 + +timing trigger +frames 1 +cycles 1000 +powerchip 1 +vhighvoltage 120 + +temp_threshold 55 +temp_control 1 + + + diff --git a/detector/JF08T01V01.config b/detector/JF08T01V01.config new file mode 100644 index 0000000..c627c75 --- /dev/null +++ b/detector/JF08T01V01.config @@ -0,0 +1,27 @@ +hostname JF08T01V01+ + +detsizechan 1024 512 + +rx_udpip 10.30.20.6 +rx_udpmac 9c:dc:71:4d:2a:b4 + +0:rx_udpport 50140 +0:detectorip 10.30.20.140 +0:detectormac 00:aa:bb:cc:dd:99 +0:txndelay_frame 8 +0:configuremac 0 + +#delay was used at Bernina: +#delay 0.001988 +#at Alvra: +delay 0.001989 + +timing trigger +frames 1 +cycles 1000 +powerchip 1 +#vhighvoltage 200 + +temp_threshold 55 +temp_control 1 + diff --git a/detector/JF09T01V01.config b/detector/JF09T01V01.config new file mode 100644 index 0000000..48eb87a --- /dev/null +++ b/detector/JF09T01V01.config @@ -0,0 +1,27 @@ +hostname JF09T01V01+ + +detsizechan 1024 512 + +rx_udpip 10.30.20.6 +rx_udpmac 9c:dc:71:4d:2a:b4 + +0:rx_udpport 50150 +0:detectorip 10.30.20.150 +0:detectormac 00:aa:bb:09:dd:01 +0:txndelay_frame 1 +0:configuremac 0 + +#delay was used at Bernina: +#delay 0.001988 +#at Alvra: +delay 0.001989 + +timing trigger +frames 1 +cycles 1000 +powerchip 1 +#vhighvoltage 200 + +temp_threshold 55 +temp_control 1 + diff --git a/detector/JF10T01V01.config b/detector/JF10T01V01.config new file mode 100644 index 0000000..a9aed0e --- /dev/null +++ b/detector/JF10T01V01.config @@ -0,0 +1,27 @@ +hostname JF10T01V01+ + +detsizechan 1024 512 + +rx_udpip 10.30.20.6 +rx_udpmac 9c:dc:71:4d:2a:b4 + +0:rx_udpport 50160 +0:detectorip 10.30.20.160 +0:detectormac 00:aa:bb:10:dd:01 +0:txndelay_frame 8 +0:configuremac 0 + +#delay was used at Bernina: +#delay 0.001988 +#at Alvra: +delay 0.001989 + +timing trigger +frames 1 +cycles 1000 +powerchip 1 +#vhighvoltage 200 + +temp_threshold 55 +temp_control 1 + diff --git a/detector/JF11T04V01.config b/detector/JF11T04V01.config new file mode 100644 index 0000000..7bb64db --- /dev/null +++ b/detector/JF11T04V01.config @@ -0,0 +1,45 @@ +hostname bchip243+bchip244+bchip245+bchip246+ + +detsizechan 1024 2048 + +rx_udpip 10.10.2.11 +rx_udpmac b8:83:03:78:ee:c0 + +0:rx_udpport 50170 +0:detectorip 10.10.2.140 +0:detectormac 00:aa:bb:11:dd:00 +0:txndelay_frame 0 +0:configuremac 0 + +1:rx_udpport 50171 +1:detectorip 10.10.2.141 +1:detectormac 00:aa:bb:11:dd:01 +1:txndelay_frame 1 +1:configuremac 0 + +2:rx_udpport 50172 +2:detectorip 10.10.2.142 +2:detectormac 00:aa:bb:11:dd:02 +2:txndelay_frame 2 +2:configuremac 0 + +3:rx_udpport 50173 +3:detectorip 10.10.2.143 +3:detectormac 00:aa:bb:11:dd:03 +3:txndelay_frame 3 +3:configuremac 0 + +#delay was used at Bernina: +#delay 0.001988 +#at Alvra: +delay 0.001989 + +timing trigger +frames 1 +cycles 1000 +powerchip 1 +#vhighvoltage 200 + +temp_threshold 55 +temp_control 1 + diff --git a/detector/JF13T01V01.config b/detector/JF13T01V01.config new file mode 100644 index 0000000..4e335a0 --- /dev/null +++ b/detector/JF13T01V01.config @@ -0,0 +1,27 @@ +hostname JF13T01+ + +detsizechan 1024 512 + +rx_udpmac 98:f2:b3:d4:5f:d0 +rx_udpip 10.30.10.7 + +0:rx_udpport 50190 +0:detectorip 10.30.10.170 +0:detectormac 00:aa:bb:13:dd:00 +0:configuremac 0 + +0:txndelay_frame 4 + +delay 0.001990 + +timing trigger +frames 1 +cycles 1000 +powerchip 1 +vhighvoltage 120 + +temp_threshold 55 +temp_control 1 + + + diff --git a/detector/initialise_detector.py b/detector/initialise_detector.py new file mode 100644 index 0000000..3a475c3 --- /dev/null +++ b/detector/initialise_detector.py @@ -0,0 +1,43 @@ +import argparse +import os +from sls_detector import Eiger, Jungfrau + +def main(): + + parser = argparse.ArgumentParser() + parser.add_argument("--detector", default=None, help="name of detector, e.g JF01T03V01") + args = parser.parse_args() + + detector_name = args.detector + + if detector_name is None: + print("No detector name given") + exit() + + if detector_name[:2] != "JF": + print(f'Not a Jungfrau detector name {detector_name}') + exit() + + if len(detector_name) != 10: + print(f'Not proper name of detector {detector_name}') + exit() + + detector_number = int(detector_name[2:4]) + + config_file = f'{detector_name}.config' + + if not os.path.exists(config_file): + print(f'{config_file} for {detector_name} does not exists') + exit() + + detector = Jungfrau(detector_number) + + detector.stop_detector() + detector.free_shared_memory() + detector.load_config(config_file) + detector.power_chip = True + detector.high_voltage = 120 + +if __name__ == "__main__": + main() + diff --git a/detector/initialise_detector.sh b/detector/initialise_detector.sh new file mode 100755 index 0000000..b5cc10d --- /dev/null +++ b/detector/initialise_detector.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ $# != 1 ] +then + echo Usage : $0 DETECTOR_NAME + echo Example : $0 JF01T03V01 + exit +fi + +DETECTOR=$1 + +export PATH=/home/dbe/miniconda3/bin:$PATH +source /home/dbe/miniconda3/etc/profile.d/conda.sh +conda deactivate +conda activate detector + +python initialise_detector.py --detector ${DETECTOR} diff --git a/detector/start_detector.sh b/detector/start_detector.sh new file mode 100755 index 0000000..23cb145 --- /dev/null +++ b/detector/start_detector.sh @@ -0,0 +1,52 @@ +#!/bin/bash + +if [ $# -lt 1 ] +then + echo "Usage : $0 DETECTOR_NAME " + echo " DETECTOR_NAME: JF07 or JF01..." + echo " number_of_cycles : optional, default 100" + exit +fi + +DETECTOR=$1 +case ${DETECTOR} in +'JF01') + D=1 + ;; +'JF02') + D=2 + ;; +'JF06') + D=6 + ;; +'JF07') + D=7 + ;; +'JF13') + D=13 + ;; +*) + echo "Unsupported detector" + exit + ;; +esac + +n_cycles=100 +if [ $# == 2 ] +then + n_cycles=$2 +fi + +export PATH=/home/dbe/miniconda3/bin:$PATH +source /home/dbe/miniconda3/etc/profile.d/conda.sh +conda activate detector + +sls_detector_put ${D}-timing trigger +sls_detector_put ${D}-cycles ${n_cycles} +sls_detector_put ${D}-exptime 5e-06 +sls_detector_put ${D}-frames 1 +sls_detector_put ${D}-dr 16 +#sls_detector_put ${D}-clearbit to 0x5d 0 # normal mode, not highG0 +sls_detector_put ${D}-status start + +echo "Now start trigger" diff --git a/detector/take_pedestal.sh b/detector/take_pedestal.sh new file mode 100755 index 0000000..eeec264 --- /dev/null +++ b/detector/take_pedestal.sh @@ -0,0 +1,62 @@ +#!/bin/bash + +#Bernina 1p5M, 16M, Vakuum: +#DETECTORS="1 7 13" +#DETECTORS="1 13" +#DETECTORS="1" + +#Alvra 4.5M, 16M(also 4M mode) +#DETECTORS="2 6" +DETECTORS="6" + +export PATH=/home/dbe/miniconda3/bin:$PATH +source /home/dbe/miniconda3/etc/profile.d/conda.sh +conda activate detector + +echo reset bits +for d in ${DETECTORS} +do + sls_detector_put ${d}-clearbit 0x5d 0 + sls_detector_put ${d}-clearbit 0x5d 12 + sls_detector_put ${d}-clearbit 0x5d 13 +done + +sleep 1 + +echo HG0 +for d in ${DETECTORS} +do + sls_detector_put ${d}-setbit 0x5d 0 +done +sleep 10 + +echo G0 +for d in ${DETECTORS} +do + sls_detector_put ${d}-clearbit 0x5d 0 +done +sleep 10 + +echo G1 +for d in ${DETECTORS} +do + sls_detector_put ${d}-setbit 0x5d 12 +done +sleep 10 + +echo G2 +for d in ${DETECTORS} +do + sls_detector_put ${d}-setbit 0x5d 13 +done +sleep 10 + +echo reset bits +for d in ${DETECTORS} +do + sls_detector_put ${d}-clearbit 0x5d 0 + sls_detector_put ${d}-clearbit 0x5d 12 + sls_detector_put ${d}-clearbit 0x5d 13 +done + +