updated binaries, updated manuals, updated git versioning

This commit is contained in:
maliakal_d 2018-03-12 14:21:02 +01:00
parent b389402d64
commit 72970c9669
22 changed files with 1174 additions and 434 deletions

View File

@ -1,4 +1,4 @@
SLS Detector Package 3.1.0 released on 2018-03-08
SLS Detector Package 3.1.0 released on 2018-03-12
=================================================
@ -63,32 +63,32 @@ CONTENTS
Firmware Requirements
=====================
Please refer to the link below for more details on the firmware versions.
https://www.psi.ch/detectors/firmware.
Please refer to the link below for more details on the firmware versions.
https://www.psi.ch/detectors/firmware.
Gotthard
========
Minimum compatible version : 11.01.2013
Latest version : 08.02.2018 (50um and 25um Master)
09.02.2018 (25 um Slave)
Gotthard
========
Minimum compatible version : 11.01.2013
Latest version : 08.02.2018 (50um and 25um Master)
09.02.2018 (25 um Slave)
-Can not be upgraded remotely.
Eiger
=====
Minimum compatible version : 16
Latest version : 21
Eiger
=====
Minimum compatible version : 16
Latest version : 20
-Can be upgraded remotely via bit files.
-Can be upgraded remotely via bit files.
Jungfrau
========
Minimum compatible version : 13.11.2017
Latest version : 13.11.2017
Jungfrau
========
Minimum compatible version : 13.11.2017
Latest version : 13.11.2017
-Can be upgraded remotely via sls_detector_put programfpga <pof>.
-Can be upgraded remotely via sls_detector_put programfpga <pof>.

View File

@ -18,13 +18,15 @@ original version by: Nikos Drakos, CBLU, University of Leeds
<LINK REL="STYLESHEET" HREF="slsDetectors-FAQ.css">
<LINK REL="previous" HREF="node44.html">
<LINK REL="up" HREF="slsDetectors-FAQ.html">
</HEAD>
<BODY >
<DL>
<DT><A NAME="foot1316">... tab&nbsp;</A><A
HREF="MYTHEN.html#tex2html20"><SUP>3.1</SUP></A></DT>
HREF="node35.html#tex2html20"><SUP>3.1</SUP></A></DT>
<DD>The default name of the calibrated trimfiles is <I>trimbits/beamline/</I><I>settings</I><I>/noise.snxxx</I> where <I>settings</I> is the chosen settings. You can change it in <I>src/qDetector.h</I> and then recompile the acquisition program as described in&nbsp;<A HREF="#sec:installation"><IMG ALIGN="BOTTOM" BORDER="1" ALT="[*]"
SRC="file:/usr/share/latex2html/icons/crossref.png"></A>.
@ -61,7 +63,7 @@ original version by: Nikos Drakos, CBLU, University of Leeds
</PRE>
</DD>
<DT><A NAME="foot1317">....snxxx&nbsp;</A><A
HREF="MYTHEN.html#tex2html21"><SUP>3.2</SUP></A></DT>
HREF="node35.html#tex2html21"><SUP>3.2</SUP></A></DT>
<DD>The default name of the calibration file <I>calibration/</I><I>settings</I><I>.snxxx</I> where <I>settings</I> is the chosen settings. You can change it in <I>src/qDetector.h</I> and then recompile the acquisition program.
<PRE>.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

@ -20,9 +20,31 @@ Frequently Asked Questions">
<LINK REL="STYLESHEET" HREF="slsDetectors-FAQ.css">
<LINK REL="next" HREF="node1.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html25"
HREF="node1.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up_g.png">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev_g.png">
<A NAME="tex2html23"
HREF="node1.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
SRC="file:/usr/share/latex2html/icons/contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html26"
HREF="node1.html">Contents</A>
&nbsp; <B> <A NAME="tex2html24"
HREF="node1.html">Contents</A></B>
<BR>
<BR>
<!--End of Navigation Panel-->
<P>
@ -31,11 +53,198 @@ Frequently Asked Questions">
Frequently Asked Questions</H1>
<P ALIGN=CENTER><STRONG>Anna Bergamaschi</STRONG>
</P>
<BR><P ALIGN=CENTER><B>Date:</B> February 28, 2018</P>
<BR><P ALIGN=CENTER><B>Date:</B> March 12, 2018</P>
<HR>
<BR><HR>
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"></A>
<UL>
<LI><A NAME="tex2html27"
HREF="node1.html">Contents</A>
<LI><A NAME="tex2html28"
HREF="node2.html">SLS Detectors Software</A>
<UL>
<LI><A NAME="tex2html29"
HREF="node3.html">Which programs can I use to control my detector?</A>
<LI><A NAME="tex2html30"
HREF="node4.html">How can I control many detectors in parallel or independently?</A>
<UL>
<LI><A NAME="tex2html31"
HREF="node5.html">Examples</A>
</UL>
<LI><A NAME="tex2html32"
HREF="node6.html">How can I configure the data receiver?</A>
<LI><A NAME="tex2html33"
HREF="node7.html">What are settings and calibration files for?</A>
<UL>
<LI><A NAME="tex2html34"
HREF="node8.html">MYTHEN</A>
<LI><A NAME="tex2html35"
HREF="node9.html">GOTTHARD</A>
</UL>
<LI><A NAME="tex2html36"
HREF="node10.html">How should a configuration file look like?</A>
<LI><A NAME="tex2html37"
HREF="node11.html">What is the meaning of the file name?</A>
<LI><A NAME="tex2html38"
HREF="node12.html">Which is the sequence of the acquisition flow?</A>
<LI><A NAME="tex2html39"
HREF="node13.html">How can I synchronize my detector with the experiment?</A>
<LI><A NAME="tex2html40"
HREF="node14.html">How can several controllers be synchronized?</A>
<LI><A NAME="tex2html41"
HREF="node15.html">How can the detector movement and position and I0 readout be customized for my beamline?</A>
<LI><A NAME="tex2html42"
HREF="node16.html">In which data format are written the data?</A>
<UL>
<LI><A NAME="tex2html43"
HREF="node17.html">GOTTHARD</A>
<LI><A NAME="tex2html44"
HREF="node18.html">EIGER</A>
<LI><A NAME="tex2html45"
HREF="node19.html">JUNGFRAU</A>
</UL>
</UL>
<BR>
<LI><A NAME="tex2html46"
HREF="node20.html">General questions about detectors</A>
<UL>
<LI><A NAME="tex2html47"
HREF="node21.html">In which X-ray energy range can I use the detector?</A>
<UL>
<LI><A NAME="tex2html48"
HREF="node22.html">Sensors</A>
<LI><A NAME="tex2html49"
HREF="node23.html">Frontend electronics</A>
</UL>
<LI><A NAME="tex2html50"
HREF="node24.html">What limits the maximum frame rate?</A>
</UL>
<BR>
<LI><A NAME="tex2html51"
HREF="node25.html">Single photon counting detectors</A>
<UL>
<LI><A NAME="tex2html52"
HREF="node26.html">Which detector settings should I choose?</A>
<UL>
<LI><A NAME="tex2html53"
HREF="node27.html">MYTHEN</A>
</UL>
<LI><A NAME="tex2html54"
HREF="node28.html">How do I chose the comparator threshold?</A>
<LI><A NAME="tex2html55"
HREF="node29.html">How does the flat field correction work?</A>
<UL>
<LI><A NAME="tex2html56"
HREF="node30.html">Why isn't my flat-field flat?</A>
<LI><A NAME="tex2html57"
HREF="node31.html">Dynamic acquisition of the flat field</A>
</UL>
<LI><A NAME="tex2html58"
HREF="node32.html">What happens when I trim the detector?</A>
<UL>
<LI><A NAME="tex2html59"
HREF="node33.html">MYTHEN</A>
</UL>
<LI><A NAME="tex2html60"
HREF="node34.html">In what consists the energy calibration of the detector?</A>
<UL>
<LI><A NAME="tex2html61"
HREF="node35.html">MYTHEN</A>
</UL>
<LI><A NAME="tex2html62"
HREF="node36.html">Why should I change the dynamic range of the counters?</A>
<LI><A NAME="tex2html63"
HREF="node37.html">When should I enable rate correction</A>
<UL>
<LI><A NAME="tex2html64"
HREF="node38.html">How can I choose the dead time?</A>
</UL>
</UL>
<BR>
<LI><A NAME="tex2html65"
HREF="node39.html">Charge Integrating detectors</A>
<UL>
<LI><A NAME="tex2html66"
HREF="node40.html">(Dynamic) Gain Switching</A>
<LI><A NAME="tex2html67"
HREF="node41.html">Pedestals</A>
<LI><A NAME="tex2html68"
HREF="node42.html">Energy calibration</A>
<LI><A NAME="tex2html69"
HREF="node43.html">Data processing</A>
</UL>
<BR>
<LI><A NAME="tex2html70"
HREF="node44.html">Angular conversion</A>
<UL>
<LI><A NAME="tex2html71"
HREF="node45.html">How is the channel number coverted into angle?</A>
<LI><A NAME="tex2html72"
HREF="node46.html">How are different positions merged together?</A>
<UL>
<LI><A NAME="tex2html73"
HREF="node47.html">Introduction</A>
<UL>
<LI><A NAME="tex2html74"
HREF="node48.html">Notation</A>
<LI><A NAME="tex2html75"
HREF="node49.html">Observables</A>
</UL>
<LI><A NAME="tex2html76"
HREF="node50.html">Basic binning</A>
<UL>
<LI><A NAME="tex2html77"
HREF="node51.html">Special nasty cases</A>
</UL>
<LI><A NAME="tex2html78"
HREF="node52.html">Advanced binning</A>
<LI><A NAME="tex2html79"
HREF="node53.html">Poisson and normal statistics for diffraction</A>
<LI><A NAME="tex2html80"
HREF="node54.html">Average vs. weighted average</A>
<UL>
<LI><A NAME="tex2html81"
HREF="node55.html">Simple average</A>
<LI><A NAME="tex2html82"
HREF="node56.html">Zero-skipping average</A>
<LI><A NAME="tex2html83"
HREF="node57.html">Weighted average: definition and relationship with <IMG
WIDTH="22" HEIGHT="34" ALIGN="MIDDLE" BORDER="0"
SRC="img1.png"
ALT="$ \chi ^2$">
</A>
<LI><A NAME="tex2html84"
HREF="node58.html">Straight Poisson (zero-skipping) weighted average</A>
<LI><A NAME="tex2html85"
HREF="node59.html">Mighell-Poisson weighted average</A>
<LI><A NAME="tex2html86"
HREF="node60.html">Comparison</A>
<LI><A NAME="tex2html87"
HREF="node61.html">Analytical comparison of averages</A>
<LI><A NAME="tex2html88"
HREF="node62.html">Numerical comparison of averages</A>
</UL>
<LI><A NAME="tex2html89"
HREF="node63.html">Scaling Poisson variates</A>
<LI><A NAME="tex2html90"
HREF="node64.html">Bibliography</A>
</UL>
<LI><A NAME="tex2html91"
HREF="node65.html">Why can't I properly merge different positions?</A>
</UL>
<BR>
<LI><A NAME="tex2html92"
HREF="node66.html">About this document ...</A>
</UL>
<!--End of Table of Child-Links-->
<BR><HR>
<ADDRESS>
Thattil Dhanya
2018-03-12
</ADDRESS>
</BODY>
</HTML>

View File

@ -3,131 +3,131 @@
$key = q/sec:usersFunc/;
$ref_files{$key} = "$dir".q|How_can_detector_movement_p.html|;
$ref_files{$key} = "$dir".q|node15.html|;
$noresave{$key} = "$nosave";
$key = q/sec:merging/;
$ref_files{$key} = "$dir".q|How_are_different_positions.html|;
$ref_files{$key} = "$dir".q|node46.html|;
$noresave{$key} = "$nosave";
$key = q/sec:timing/;
$ref_files{$key} = "$dir".q|How_can_I_synchronize_my.html|;
$ref_files{$key} = "$dir".q|node13.html|;
$noresave{$key} = "$nosave";
$key = q/fig:gating/;
$ref_files{$key} = "$dir".q|How_can_I_synchronize_my.html|;
$ref_files{$key} = "$dir".q|node13.html|;
$noresave{$key} = "$nosave";
$key = q/sec:improvetrimming/;
$ref_files{$key} = "$dir".q|MYTHEN.html|;
$ref_files{$key} = "$dir".q|node33.html|;
$noresave{$key} = "$nosave";
$key = q/fig:multidet/;
$ref_files{$key} = "$dir".q|How_can_I_control_many.html|;
$ref_files{$key} = "$dir".q|node4.html|;
$noresave{$key} = "$nosave";
$key = q/eq:acqflow/;
$ref_files{$key} = "$dir".q|Which_is_sequence_acquisiti.html|;
$ref_files{$key} = "$dir".q|node12.html|;
$noresave{$key} = "$nosave";
$key = q/fig:autotiming/;
$ref_files{$key} = "$dir".q|How_can_I_synchronize_my.html|;
$ref_files{$key} = "$dir".q|node13.html|;
$noresave{$key} = "$nosave";
$key = q/sec:3/;
$ref_files{$key} = "$dir".q|Scaling_Poisson_variates.html|;
$ref_files{$key} = "$dir".q|node63.html|;
$noresave{$key} = "$nosave";
$key = q/fig:samplefluo/;
$ref_files{$key} = "$dir".q|How_do_I_chose_comparator.html|;
$ref_files{$key} = "$dir".q|node28.html|;
$noresave{$key} = "$nosave";
$key = q/fig:settings/;
$ref_files{$key} = "$dir".q|MYTHEN.html|;
$ref_files{$key} = "$dir".q|node27.html|;
$noresave{$key} = "$nosave";
$key = q/sec:2/;
$ref_files{$key} = "$dir".q|Advanced_binning.html|;
$ref_files{$key} = "$dir".q|node52.html|;
$noresave{$key} = "$nosave";
$key = q/fig:effidet/;
$ref_files{$key} = "$dir".q|Sensors.html|;
$ref_files{$key} = "$dir".q|node22.html|;
$noresave{$key} = "$nosave";
$key = q/sec:11/;
$ref_files{$key} = "$dir".q|Basic_binning.html|;
$ref_files{$key} = "$dir".q|node50.html|;
$noresave{$key} = "$nosave";
$key = q/fig:thrscanfluo/;
$ref_files{$key} = "$dir".q|How_do_I_chose_comparator.html|;
$ref_files{$key} = "$dir".q|node28.html|;
$noresave{$key} = "$nosave";
$key = q/sec:dataFormat/;
$ref_files{$key} = "$dir".q|In_which_data_format_are.html|;
$ref_files{$key} = "$dir".q|node16.html|;
$noresave{$key} = "$nosave";
$key = q/fig:mythensett/;
$ref_files{$key} = "$dir".q|Frontend_electronics.html|;
$ref_files{$key} = "$dir".q|node23.html|;
$noresave{$key} = "$nosave";
$key = q/sec:sync/;
$ref_files{$key} = "$dir".q|How_can_several_controllers.html|;
$ref_files{$key} = "$dir".q|node14.html|;
$noresave{$key} = "$nosave";
$key = q/fig:badff/;
$ref_files{$key} = "$dir".q|Why_isn_t_my_flat_field_fla.html|;
$ref_files{$key} = "$dir".q|node30.html|;
$noresave{$key} = "$nosave";
$key = q/fig:datareceiver/;
$ref_files{$key} = "$dir".q|How_can_I_configure_data.html|;
$ref_files{$key} = "$dir".q|node6.html|;
$noresave{$key} = "$nosave";
$key = q/fig:effiback/;
$ref_files{$key} = "$dir".q|Sensors.html|;
$ref_files{$key} = "$dir".q|node22.html|;
$noresave{$key} = "$nosave";
$key = q/fig:trig/;
$ref_files{$key} = "$dir".q|How_can_I_synchronize_my.html|;
$ref_files{$key} = "$dir".q|node13.html|;
$noresave{$key} = "$nosave";
$key = q/fig:ffsetup/;
$ref_files{$key} = "$dir".q|Dynamic_acquisition_flat_fi.html|;
$ref_files{$key} = "$dir".q|node31.html|;
$noresave{$key} = "$nosave";
$key = q/fig:thresholdscanuntrimmed/;
$ref_files{$key} = "$dir".q|MYTHEN.html|;
$ref_files{$key} = "$dir".q|node33.html|;
$noresave{$key} = "$nosave";
$key = q/fig:trimdistribution/;
$ref_files{$key} = "$dir".q|MYTHEN.html|;
$ref_files{$key} = "$dir".q|node33.html|;
$noresave{$key} = "$nosave";
$key = q/sec:angcal/;
$ref_files{$key} = "$dir".q|How_is_channel_number_cover.html|;
$ref_files{$key} = "$dir".q|node45.html|;
$noresave{$key} = "$nosave";
$key = q/sec:trimdir/;
$ref_files{$key} = "$dir".q|What_are_settings_calibrati.html|;
$ref_files{$key} = "$dir".q|node7.html|;
$noresave{$key} = "$nosave";
$key = q/fig:trimplot/;
$ref_files{$key} = "$dir".q|MYTHEN.html|;
$ref_files{$key} = "$dir".q|node33.html|;
$noresave{$key} = "$nosave";
$key = q/fig:thresholdscantrimmed/;
$ref_files{$key} = "$dir".q|MYTHEN.html|;
$ref_files{$key} = "$dir".q|node33.html|;
$noresave{$key} = "$nosave";
$key = q/sec:noisetrim/;
$ref_files{$key} = "$dir".q|MYTHEN.html|;
$ref_files{$key} = "$dir".q|node33.html|;
$noresave{$key} = "$nosave";
$key = q/sec:encal/;
$ref_files{$key} = "$dir".q|In_what_consists_energy_cal.html|;
$ref_files{$key} = "$dir".q|node34.html|;
$noresave{$key} = "$nosave";
$key = q/fig:thrscan/;
$ref_files{$key} = "$dir".q|How_do_I_chose_comparator.html|;
$ref_files{$key} = "$dir".q|node28.html|;
$noresave{$key} = "$nosave";
1;

View File

@ -3,131 +3,131 @@
$key = q/sec:usersFunc/;
$external_labels{$key} = "$URL/" . q|How_can_detector_movement_p.html|;
$external_labels{$key} = "$URL/" . q|node15.html|;
$noresave{$key} = "$nosave";
$key = q/sec:merging/;
$external_labels{$key} = "$URL/" . q|How_are_different_positions.html|;
$external_labels{$key} = "$URL/" . q|node46.html|;
$noresave{$key} = "$nosave";
$key = q/sec:timing/;
$external_labels{$key} = "$URL/" . q|How_can_I_synchronize_my.html|;
$external_labels{$key} = "$URL/" . q|node13.html|;
$noresave{$key} = "$nosave";
$key = q/fig:gating/;
$external_labels{$key} = "$URL/" . q|How_can_I_synchronize_my.html|;
$external_labels{$key} = "$URL/" . q|node13.html|;
$noresave{$key} = "$nosave";
$key = q/sec:improvetrimming/;
$external_labels{$key} = "$URL/" . q|MYTHEN.html|;
$external_labels{$key} = "$URL/" . q|node33.html|;
$noresave{$key} = "$nosave";
$key = q/fig:multidet/;
$external_labels{$key} = "$URL/" . q|How_can_I_control_many.html|;
$external_labels{$key} = "$URL/" . q|node4.html|;
$noresave{$key} = "$nosave";
$key = q/eq:acqflow/;
$external_labels{$key} = "$URL/" . q|Which_is_sequence_acquisiti.html|;
$external_labels{$key} = "$URL/" . q|node12.html|;
$noresave{$key} = "$nosave";
$key = q/fig:autotiming/;
$external_labels{$key} = "$URL/" . q|How_can_I_synchronize_my.html|;
$external_labels{$key} = "$URL/" . q|node13.html|;
$noresave{$key} = "$nosave";
$key = q/sec:3/;
$external_labels{$key} = "$URL/" . q|Scaling_Poisson_variates.html|;
$external_labels{$key} = "$URL/" . q|node63.html|;
$noresave{$key} = "$nosave";
$key = q/fig:samplefluo/;
$external_labels{$key} = "$URL/" . q|How_do_I_chose_comparator.html|;
$external_labels{$key} = "$URL/" . q|node28.html|;
$noresave{$key} = "$nosave";
$key = q/fig:settings/;
$external_labels{$key} = "$URL/" . q|MYTHEN.html|;
$external_labels{$key} = "$URL/" . q|node27.html|;
$noresave{$key} = "$nosave";
$key = q/sec:2/;
$external_labels{$key} = "$URL/" . q|Advanced_binning.html|;
$external_labels{$key} = "$URL/" . q|node52.html|;
$noresave{$key} = "$nosave";
$key = q/fig:effidet/;
$external_labels{$key} = "$URL/" . q|Sensors.html|;
$external_labels{$key} = "$URL/" . q|node22.html|;
$noresave{$key} = "$nosave";
$key = q/sec:11/;
$external_labels{$key} = "$URL/" . q|Basic_binning.html|;
$external_labels{$key} = "$URL/" . q|node50.html|;
$noresave{$key} = "$nosave";
$key = q/fig:thrscanfluo/;
$external_labels{$key} = "$URL/" . q|How_do_I_chose_comparator.html|;
$external_labels{$key} = "$URL/" . q|node28.html|;
$noresave{$key} = "$nosave";
$key = q/sec:dataFormat/;
$external_labels{$key} = "$URL/" . q|In_which_data_format_are.html|;
$external_labels{$key} = "$URL/" . q|node16.html|;
$noresave{$key} = "$nosave";
$key = q/fig:mythensett/;
$external_labels{$key} = "$URL/" . q|Frontend_electronics.html|;
$external_labels{$key} = "$URL/" . q|node23.html|;
$noresave{$key} = "$nosave";
$key = q/sec:sync/;
$external_labels{$key} = "$URL/" . q|How_can_several_controllers.html|;
$external_labels{$key} = "$URL/" . q|node14.html|;
$noresave{$key} = "$nosave";
$key = q/fig:badff/;
$external_labels{$key} = "$URL/" . q|Why_isn_t_my_flat_field_fla.html|;
$external_labels{$key} = "$URL/" . q|node30.html|;
$noresave{$key} = "$nosave";
$key = q/fig:datareceiver/;
$external_labels{$key} = "$URL/" . q|How_can_I_configure_data.html|;
$external_labels{$key} = "$URL/" . q|node6.html|;
$noresave{$key} = "$nosave";
$key = q/fig:effiback/;
$external_labels{$key} = "$URL/" . q|Sensors.html|;
$external_labels{$key} = "$URL/" . q|node22.html|;
$noresave{$key} = "$nosave";
$key = q/fig:trig/;
$external_labels{$key} = "$URL/" . q|How_can_I_synchronize_my.html|;
$external_labels{$key} = "$URL/" . q|node13.html|;
$noresave{$key} = "$nosave";
$key = q/fig:ffsetup/;
$external_labels{$key} = "$URL/" . q|Dynamic_acquisition_flat_fi.html|;
$external_labels{$key} = "$URL/" . q|node31.html|;
$noresave{$key} = "$nosave";
$key = q/fig:thresholdscanuntrimmed/;
$external_labels{$key} = "$URL/" . q|MYTHEN.html|;
$external_labels{$key} = "$URL/" . q|node33.html|;
$noresave{$key} = "$nosave";
$key = q/fig:trimdistribution/;
$external_labels{$key} = "$URL/" . q|MYTHEN.html|;
$external_labels{$key} = "$URL/" . q|node33.html|;
$noresave{$key} = "$nosave";
$key = q/sec:angcal/;
$external_labels{$key} = "$URL/" . q|How_is_channel_number_cover.html|;
$external_labels{$key} = "$URL/" . q|node45.html|;
$noresave{$key} = "$nosave";
$key = q/sec:trimdir/;
$external_labels{$key} = "$URL/" . q|What_are_settings_calibrati.html|;
$external_labels{$key} = "$URL/" . q|node7.html|;
$noresave{$key} = "$nosave";
$key = q/fig:trimplot/;
$external_labels{$key} = "$URL/" . q|MYTHEN.html|;
$external_labels{$key} = "$URL/" . q|node33.html|;
$noresave{$key} = "$nosave";
$key = q/fig:thresholdscantrimmed/;
$external_labels{$key} = "$URL/" . q|MYTHEN.html|;
$external_labels{$key} = "$URL/" . q|node33.html|;
$noresave{$key} = "$nosave";
$key = q/sec:noisetrim/;
$external_labels{$key} = "$URL/" . q|MYTHEN.html|;
$external_labels{$key} = "$URL/" . q|node33.html|;
$noresave{$key} = "$nosave";
$key = q/sec:encal/;
$external_labels{$key} = "$URL/" . q|In_what_consists_energy_cal.html|;
$external_labels{$key} = "$URL/" . q|node34.html|;
$noresave{$key} = "$nosave";
$key = q/fig:thrscan/;
$external_labels{$key} = "$URL/" . q|How_do_I_chose_comparator.html|;
$external_labels{$key} = "$URL/" . q|node28.html|;
$noresave{$key} = "$nosave";
1;

View File

@ -20,9 +20,31 @@ Frequently Asked Questions">
<LINK REL="STYLESHEET" HREF="slsDetectors-FAQ.css">
<LINK REL="next" HREF="node1.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html25"
HREF="node1.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up_g.png">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev_g.png">
<A NAME="tex2html23"
HREF="node1.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
SRC="file:/usr/share/latex2html/icons/contents.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html26"
HREF="node1.html">Contents</A>
&nbsp; <B> <A NAME="tex2html24"
HREF="node1.html">Contents</A></B>
<BR>
<BR>
<!--End of Navigation Panel-->
<P>
@ -31,11 +53,198 @@ Frequently Asked Questions">
Frequently Asked Questions</H1>
<P ALIGN=CENTER><STRONG>Anna Bergamaschi</STRONG>
</P>
<BR><P ALIGN=CENTER><B>Date:</B> February 28, 2018</P>
<BR><P ALIGN=CENTER><B>Date:</B> March 12, 2018</P>
<HR>
<BR><HR>
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"></A>
<UL>
<LI><A NAME="tex2html27"
HREF="node1.html">Contents</A>
<LI><A NAME="tex2html28"
HREF="node2.html">SLS Detectors Software</A>
<UL>
<LI><A NAME="tex2html29"
HREF="node3.html">Which programs can I use to control my detector?</A>
<LI><A NAME="tex2html30"
HREF="node4.html">How can I control many detectors in parallel or independently?</A>
<UL>
<LI><A NAME="tex2html31"
HREF="node5.html">Examples</A>
</UL>
<LI><A NAME="tex2html32"
HREF="node6.html">How can I configure the data receiver?</A>
<LI><A NAME="tex2html33"
HREF="node7.html">What are settings and calibration files for?</A>
<UL>
<LI><A NAME="tex2html34"
HREF="node8.html">MYTHEN</A>
<LI><A NAME="tex2html35"
HREF="node9.html">GOTTHARD</A>
</UL>
<LI><A NAME="tex2html36"
HREF="node10.html">How should a configuration file look like?</A>
<LI><A NAME="tex2html37"
HREF="node11.html">What is the meaning of the file name?</A>
<LI><A NAME="tex2html38"
HREF="node12.html">Which is the sequence of the acquisition flow?</A>
<LI><A NAME="tex2html39"
HREF="node13.html">How can I synchronize my detector with the experiment?</A>
<LI><A NAME="tex2html40"
HREF="node14.html">How can several controllers be synchronized?</A>
<LI><A NAME="tex2html41"
HREF="node15.html">How can the detector movement and position and I0 readout be customized for my beamline?</A>
<LI><A NAME="tex2html42"
HREF="node16.html">In which data format are written the data?</A>
<UL>
<LI><A NAME="tex2html43"
HREF="node17.html">GOTTHARD</A>
<LI><A NAME="tex2html44"
HREF="node18.html">EIGER</A>
<LI><A NAME="tex2html45"
HREF="node19.html">JUNGFRAU</A>
</UL>
</UL>
<BR>
<LI><A NAME="tex2html46"
HREF="node20.html">General questions about detectors</A>
<UL>
<LI><A NAME="tex2html47"
HREF="node21.html">In which X-ray energy range can I use the detector?</A>
<UL>
<LI><A NAME="tex2html48"
HREF="node22.html">Sensors</A>
<LI><A NAME="tex2html49"
HREF="node23.html">Frontend electronics</A>
</UL>
<LI><A NAME="tex2html50"
HREF="node24.html">What limits the maximum frame rate?</A>
</UL>
<BR>
<LI><A NAME="tex2html51"
HREF="node25.html">Single photon counting detectors</A>
<UL>
<LI><A NAME="tex2html52"
HREF="node26.html">Which detector settings should I choose?</A>
<UL>
<LI><A NAME="tex2html53"
HREF="node27.html">MYTHEN</A>
</UL>
<LI><A NAME="tex2html54"
HREF="node28.html">How do I chose the comparator threshold?</A>
<LI><A NAME="tex2html55"
HREF="node29.html">How does the flat field correction work?</A>
<UL>
<LI><A NAME="tex2html56"
HREF="node30.html">Why isn't my flat-field flat?</A>
<LI><A NAME="tex2html57"
HREF="node31.html">Dynamic acquisition of the flat field</A>
</UL>
<LI><A NAME="tex2html58"
HREF="node32.html">What happens when I trim the detector?</A>
<UL>
<LI><A NAME="tex2html59"
HREF="node33.html">MYTHEN</A>
</UL>
<LI><A NAME="tex2html60"
HREF="node34.html">In what consists the energy calibration of the detector?</A>
<UL>
<LI><A NAME="tex2html61"
HREF="node35.html">MYTHEN</A>
</UL>
<LI><A NAME="tex2html62"
HREF="node36.html">Why should I change the dynamic range of the counters?</A>
<LI><A NAME="tex2html63"
HREF="node37.html">When should I enable rate correction</A>
<UL>
<LI><A NAME="tex2html64"
HREF="node38.html">How can I choose the dead time?</A>
</UL>
</UL>
<BR>
<LI><A NAME="tex2html65"
HREF="node39.html">Charge Integrating detectors</A>
<UL>
<LI><A NAME="tex2html66"
HREF="node40.html">(Dynamic) Gain Switching</A>
<LI><A NAME="tex2html67"
HREF="node41.html">Pedestals</A>
<LI><A NAME="tex2html68"
HREF="node42.html">Energy calibration</A>
<LI><A NAME="tex2html69"
HREF="node43.html">Data processing</A>
</UL>
<BR>
<LI><A NAME="tex2html70"
HREF="node44.html">Angular conversion</A>
<UL>
<LI><A NAME="tex2html71"
HREF="node45.html">How is the channel number coverted into angle?</A>
<LI><A NAME="tex2html72"
HREF="node46.html">How are different positions merged together?</A>
<UL>
<LI><A NAME="tex2html73"
HREF="node47.html">Introduction</A>
<UL>
<LI><A NAME="tex2html74"
HREF="node48.html">Notation</A>
<LI><A NAME="tex2html75"
HREF="node49.html">Observables</A>
</UL>
<LI><A NAME="tex2html76"
HREF="node50.html">Basic binning</A>
<UL>
<LI><A NAME="tex2html77"
HREF="node51.html">Special nasty cases</A>
</UL>
<LI><A NAME="tex2html78"
HREF="node52.html">Advanced binning</A>
<LI><A NAME="tex2html79"
HREF="node53.html">Poisson and normal statistics for diffraction</A>
<LI><A NAME="tex2html80"
HREF="node54.html">Average vs. weighted average</A>
<UL>
<LI><A NAME="tex2html81"
HREF="node55.html">Simple average</A>
<LI><A NAME="tex2html82"
HREF="node56.html">Zero-skipping average</A>
<LI><A NAME="tex2html83"
HREF="node57.html">Weighted average: definition and relationship with <IMG
WIDTH="22" HEIGHT="34" ALIGN="MIDDLE" BORDER="0"
SRC="img1.png"
ALT="$ \chi ^2$">
</A>
<LI><A NAME="tex2html84"
HREF="node58.html">Straight Poisson (zero-skipping) weighted average</A>
<LI><A NAME="tex2html85"
HREF="node59.html">Mighell-Poisson weighted average</A>
<LI><A NAME="tex2html86"
HREF="node60.html">Comparison</A>
<LI><A NAME="tex2html87"
HREF="node61.html">Analytical comparison of averages</A>
<LI><A NAME="tex2html88"
HREF="node62.html">Numerical comparison of averages</A>
</UL>
<LI><A NAME="tex2html89"
HREF="node63.html">Scaling Poisson variates</A>
<LI><A NAME="tex2html90"
HREF="node64.html">Bibliography</A>
</UL>
<LI><A NAME="tex2html91"
HREF="node65.html">Why can't I properly merge different positions?</A>
</UL>
<BR>
<LI><A NAME="tex2html92"
HREF="node66.html">About this document ...</A>
</UL>
<!--End of Table of Child-Links-->
<BR><HR>
<ADDRESS>
Thattil Dhanya
2018-03-12
</ADDRESS>
</BODY>
</HTML>

Binary file not shown.

View File

@ -4,7 +4,8 @@ DESTDIR=../docs
TEX=latex
MAINTEXS= slsDetectorInstall.tex slsDetectors-FAQ.tex
MAINTEXS2= slsDetectorInstall.tex
MAINTEXS=slsDetectors-FAQ.tex
TEXS=slsDetector-softFAQ.tex singlePhotonCounting-FAQ.tex angConv-FAQ.tex generalDet-FAQ.tex
@ -12,6 +13,7 @@ DVIS = $(MAINTEXS:.tex=.dvi)
PSS = $(MAINTEXS:.tex=.ps)
PDFS = $(MAINTEXS:.tex=.pdf)
HTMLS = $(MAINTEXS:%.tex=%)
HTMLS2 = $(MAINTEXS2:%.tex=%)
@ -19,16 +21,26 @@ all: pdf html
echo $(PWD)
echo $(PDFS)
echo $(HTMLS)
echo $(HTMLS2)
pdf: $(PDFS)
$(shell test -d $(DESTDIR) || mkdir -p $(DESTDIR))
$(shell test -d $(DESTDIR)/pdf || mkdir -p $(DESTDIR)/pdf)
mv $(PDFS) $(DESTDIR)/pdf
html: $(HTMLS)
html: $(HTMLS) $(HTMLS2)
$(HTMLS): $(TEXS) $(MAINTEXS)
$(shell test -d $(DESTDIR) || mkdir -p $(DESTDIR))
$(shell test -d $(DESTDIR)/html || mkdir -p $(DESTDIR)/html)
$(shell test -d $(DESTDIR)/html/$@ && rm -fr $(DESTDIR)/html/$@)
echo "***************************** $@"
latex $@.tex
latex2html $@.tex
mv $@ $(DESTDIR)/html
$(HTMLS2): $(MAINTEXS2)
$(shell test -d $(DESTDIR) || mkdir -p $(DESTDIR))
$(shell test -d $(DESTDIR)/html || mkdir -p $(DESTDIR)/html)
$(shell test -d $(DESTDIR)/html/$@ && rm -fr $(DESTDIR)/html/$@)
@ -53,7 +65,7 @@ $(HTMLS): $(TEXS) $(MAINTEXS)
clean:
rm -rf *.aux *.log *.toc *.out $(DVIS) $(PSS) $(PDFS) $(HTMLS)
rm -rf *.aux *.log *.toc *.out $(DVIS) $(PSS) $(PDFS) $(HTMLS) $(HTMLS2)
rm -rf $(DESTDIR)/html/slsDetectors-FAQ
rm -rf $(DESTDIR)/html/slsDetectorInstall
rm -rf $(DESTDIR)/pdf/slsDetectors-FAQ.pdf

View File

@ -28,9 +28,10 @@
The SLS detectors software is intended to control the detectors developed by
the SLS Detectors group. The detectors currently supported are:
MYTHEN, GOTTHARD, EIGER and JUNGFRAU.\bigskip
\indent MYTHEN, GOTTHARD, EIGER and JUNGFRAU.
\noindent The package provides software for the distributed system that comprises of
The package provides software for the distributed system that comprises of
detectors, data receivers (to process detector data), and the client (to control
or monitor the system). The client and data receivers can be embedded in
the user's acquisitions system. Furthermore, the package also provides some
@ -78,18 +79,28 @@ However, only control commands work, not the data acquisition itself.
\section{Install Binaries via Conda}
This section is useful only if one wants to download only the binaries for
specific distribution and use the package via command line. Please refer later
sections to download source code and compile them.\bigskip
sections to download source code and compile them.
\noindent One can download and install Miniconda via
\url{https://conda.io/miniconda.html} \bigskip
One can download and install Miniconda via
\noindent The conda package uses Travis CI for continuous integration with
\url{https://conda.io/miniconda.html}
The conda package uses Travis CI for continuous integration with
automatic deployment to Anaconda Cloud. One can download only the package or the
package including the python interface. \bigskip
package including the python interface.
\noindent After the installation, the binaries will be available in your path.
After the installation, the binaries will be available in your path.
Please remember to clear shared memory after installation.
\begin{verbatim}
#displays list of shared memeory segments
ipcs -m
#remove segments that have nattach equal to zero. They key is the first column
ipcrm -M [key]
\end{verbatim}
\begin{itemize}
\item Only the package
@ -194,9 +205,10 @@ required. One can install it:
\item via download from:\\
\url{
https://download.qt.io/archive/qt/4.8/4.8.2/qt-everywhere-opensource-src-4.8.2.t
ar.gz} \bigskip
ar.gz}
\noindent To install:
To install:
\begin{verbatim}
> gunzip qt-everywhere-opensource-src-4.8.2.tar.gz
> tar xvf qt-everywhere-opensource-src-4.8.2.tar
@ -207,14 +219,17 @@ ar.gz} \bigskip
By default Qt4 will be installed in /usr/local/Trolltech/Qt-4.8.2/.
\end{itemize}
\noindent \textbf{Setup Environment}
\noindent One has to ensure that \verb=PATH= and \verb=LD_LIBRARY_PATH= have
\textbf{Setup Environment}
One has to ensure that \verb=PATH= and \verb=LD_LIBRARY_PATH= have
been updated to include Qt4 install path, binaries and libraries.
Confirm by executing \verb=qmake -v= and ensuring the result points to Qt4 (not
Qt3 or Qt5). \bigskip
Qt3 or Qt5).
\noindent If the environment is not set up, one can add the libraries and
If the environment is not set up, one can add the libraries and
executables to the .bashrc by adding
\verb=LD_LIBRARY_PATH= and \verb=PATH=:
\begin{verbatim}
@ -228,9 +243,10 @@ export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
Before installing Qwt, one must install Qt
and ensure that \verb=QTDIR=, \verb=LD_LIBRARY_PATH= and \verb=PATH= point to
the correct Qt4
version. \bigskip
version.
\noindent A Qwt version equal or higher than 6 is required. One can
A Qwt version equal or higher than 6 is required. One can
install it:
\begin{itemize}
\item via YUM:
@ -240,9 +256,9 @@ install it:
\item via download from:\\
\url{
https://sourceforge.net/projects/qwt/files/qwt/6.0.0/qwt-6.0.0.zip/download}
\bigskip
\noindent To install:
To install:
\begin{verbatim}
> cd qwt-6.0.0
> qmake
@ -252,12 +268,14 @@ https://sourceforge.net/projects/qwt/files/qwt/6.0.0/qwt-6.0.0.zip/download}
By default Qwt will be installed int /usr/local/qwt-6.0.0
\end{itemize}
\noindent \textbf{Setup Environment}
\textbf{Setup Environment}
\noindent One has to ensure that \verb=QWTDIR= and \verb=LD_LIBRARY_PATH= have
been updated to include Qwt install path and libraries. \bigskip
\noindent If the environment is not set up, one can add the libraries to the
One has to ensure that \verb=QWTDIR= and \verb=LD_LIBRARY_PATH= have
been updated to include Qwt install path and libraries.
If the environment is not set up, one can add the libraries to the
.bashrc by adding \verb=LD_LIBRARY_PATH=:
\begin{verbatim}
export QWTDIR=/usr/local/qwt-6.0.0/
@ -324,6 +342,8 @@ Usage: [-c] [-b] [-h] [-d HDF5 directory] [-j]
Some example options for compilation:
Most basic option: \verb=./cmk.sh -b=
For only make: \verb=./cmk.sh=
For make clean;make: \verb=./cmk.sh -c=
@ -367,6 +387,65 @@ sls_detector_help sls_detector_put slsReceiver
\subsection{Setting environment variables}
One can set up the environment variables in the following ways.
\subsubsection{Using .bashrc file}
\begin{enumerate}
\item \verb=emacs ~/.bashrc=
\item Add the following function \verb=setup_slsdet= and replace \verb=path=
with absolute path of installed directory
\begin{verbatim}
function setup_slsdet
{
export PKGPATH=[path]
export LD_LIBRARY_PATH=$PKGPATH/slsDetectorPackage/build/bin:$LD_LIBRARY_PATH
export PATH=$PKGPATH/slsDetectorPackage/build/bin:$PATH
cd $PKGPATH/slsDetectorPackage/build/bin
}
\end{verbatim}
\item \verb=source ~/.bashrc=
\item Next time, just run \verb=setup_slsdet= to load the environment
variables.
\end{enumerate}
One can also add the GUI environment variables if installed locally by adding
the following in the function \verb=setup_sldet= \\
\begin{verbatim}
export QTDIR=/path-where-it-is/Qt-4.8.2
export QWTDIR=/path-where-it-is/qwt-6.0.1
export QWT3D=/path-where-it-is/qwtplot3d
export QMAKESPEC=$QTDIR/mkspecs/linux-g++
export LD_LIBRARY_PATH=$QTDIR/lib:$QWTDIR/lib:$QWT3D/lib:$LD_LIBRARY _PATH
export PATH=$QTDIR/bin:$PATH
\end{verbatim}
\subsubsection{Without .bashrc file}
Go to binaries folder slsDetectorPackage/build/bin and execute the following:
\begin{verbatim}
export LD_LIBRARY_PATH=$PWD:$LD_LIBRARY_PATH
export PATH=$PWD:$PATH
\end{verbatim}
\subsection{Clean Shared Memory}
It is very crucial to clean the shared memory, before using a new version of
the SLS Detector Package or a different detector type.
One can use the \verb=cleansharedmemory.sh= script available under the
slsDetector Package.
One can also just use the following commands to clean the shared memory
segments one by one.
\begin{verbatim}
#displays list of shared memeory segments
ipcs -m
#remove segments that have nattach equal to zero. They key is the first column
ipcrm -M [key]
\end{verbatim}
\section{Software Upgrade}
The upgrade of the package could require an upgrade of the on-board detector
@ -379,7 +458,7 @@ themselves (which would require dedicated softwares) but only to download on the
detector board the programming files and/or software package provided by
the SLS Detectors group.
\subsubsection{Firmware}
\subsubsection{MYTHEN Firmware}
To upgrade the firmware you need either a working version of the Altera
Quartus software or of the Quartus programmer, which can easily be downloaded
@ -389,9 +468,10 @@ from: \\
\noindent Normally, installation of the software and of the driver for the
USB-Blaster (provided together with the MYTHEN detector) are simpler under
Windows. \bigskip
Windows.
\noindent Under Windows, the first time that you connect the USB-Blaster to one
Under Windows, the first time that you connect the USB-Blaster to one
of your USB ports, you will be asked to install new hardware. Set the path to
search for the driver to:
\verb=C:\altera\80sp1\qprogrammer\drivers\usb-blasterp= (where
@ -414,7 +494,7 @@ your cable (pin1 corresponds) and that you have selected the correct programming
connector.
\end{enumerate}
\subsubsection{On-board Software}
\subsubsection{MYTHEN On-board Software}
\begin{enumerate}
\item Connect to the board using telnet:
\begin{verbatim}
@ -454,6 +534,297 @@ acqusition program correctly start.
\end{enumerate}
\subsection{GOTTHARD}
In such cases, the users are not expected to compile the software
themselves (which would require dedicated softwares) but only to download on the
detector board the programming files and/or software package provided by
the SLS Detectors group.
\subsubsection{GOTTHARD Firmware}
\textit{For SLS Detector Package v3.1.0} \\
\indent Minimum compatible version: \\
\indent \indent 11.01.2013 \\
\indent Latest version: \\
\indent \indent 08.02.2018 (50um and 25um Master) \\
\indent \indent 09.02.2018 (25 um Slave) \\
Normally, the firmware will be upgraded by us as it requires programming the
FPGA via the USB-Blaster.
To upgrade the firmware you need either a working version of the Altera
Quartus software or of the Quartus programmer, which can easily be downloaded
from: \\
\url{https://www.altera.com/download/programming/quartus2/pq2-index.jsp}
Normally, installation of the software and of the driver for the
USB-Blaster (provided together with the MYTHEN detector) are simpler under
Windows.
Under Windows, the first time that you connect the USB-Blaster to one
of your USB ports, you will be asked to install new hardware. Set the path to
search for the driver to:
\verb=C:\altera\80sp1\qprogrammer\drivers\usb-blasterp= (where
\verb=C:\altera\80sp1\qprogrammer\= is assumed to be ther path where your
Quartus version is installed).
\begin{enumerate}
\item After starting the Quartus programmer, click on Hardware Setup and in the
"Currently selected hardware" window select USB-Blaster.
\item In the Mode combo box select "Active Serial Programming".
\item Plug the end of your USB-Blaster WITH THE ADAPTER PROVIDED in the
connector ASMI on the MCS board taking care that pin1 corresponds to the one
indexed and with the rectangualr pad.
\item Click on add file and from select the programming file provided when
the upgrade has been reccomended.
\item Check "Program/Configure" and "Verify".
\item Push the start button and wait until the programming process is
finished (progress bar top left).
\item In case the programmer gives you error messages, check the polarity of
your cable (pin1 corresponds) and that you have selected the correct programming
connector.
\end{enumerate}
\subsubsection{GOTTHARD On-board Software}
Every SLS Detector package release will have its coresponding matching on-board
server under \textbf{slsDetectorPackage/serverBin}.
\begin{enumerate}
\item Install tftp if the pc does not have it.
\item Copy the server from serverBin folder to /tftpboot (or equivalent tftp
folder) of the pc
\item Copy the server to the detector by:
\begin{enumerate}
\item Connect to the blackfin on the detector\\
\verb=telnet bchipxxx=
\item Prevent existing on-board server from respawning by:
\begin{enumerate}
\item Edit \verb=/etc/inittab=
\item Comment out the line
\verb=#ttyS0::respawn:/gotthardDetectorServervxxx=
\item Reboot blackfin using \verb=reboot=
\item Run \verb=ps= to ensure no gotthardDetectorServers are running
\end{enumerate}
\item Copy new on-board server from pc to the blackfin using: \\
\verb=tftp pcxxx -r gotthardDetectorServerxxx -g=
\item Respawn the new server (server starts at detector statup):
\begin{enumerate}
\item Edit \verb=/etc/inittab=
\item Uncomment out the line
\verb=ttyS0::respawn:/gotthardDetectorServervxxx=
\item Reboot blackfin using \verb=reboot=
\item Run \verb=ps= to ensure that both the gotthardDetectorServers are
running.\\
\verb=gotthardDetectorServerxxx= \\
\verb=gotthardDetectorServerxxx 1953=
\end{enumerate}
\end{enumerate}
\end{enumerate}
\subsection{EIGER}
In such cases, the users are not expected to compile the software
themselves (which would require dedicated softwares) but only to download on the
detector board the programming files and/or software package provided by
the SLS Detectors group.
\subsubsection{EIGER Firmware}
\textit{For SLS Detector Package v3.1.0} \\
\indent Minimum compatible version: 16 \\
\indent Latest version: 20 \\
\begin{enumerate}
\item One must get the latest package's corresponding bit files from the SLS
Detector Group.
\item If one does not have the bcp script, that should also be obtained from
the SLS Detector Group. It is required to program the bit files and requires
that tftp be installed on the pc.
\item Run the following to update firmware
\begin{verbatim}
#update back end fpga
bcp download.bit bebxxx:/fw0
#update front left fpga
bcp download.bit bebxxx:/febl
#update front right fpga
bcp download.bit bebxxx:/febr
#update kernel
bcp download.bit bebxxx:/kernel
\end{verbatim}
Please update bit files with great caution as it could make your board
inaccessible, if done incorrectly.
\end{enumerate}
\subsubsection{EIGER On-board Software}
Every SLS Detector package release will have its coresponding matching on-board
server under \textbf{slsDetectorPackage/serverBin}.
Update the on-board software without connecting to the detector
\begin{verbatim}
#password for the boards: root
#Kill existing servers that are running on the detector
ssh root@beb031 killall eigerDetectorServer;
#Copy on-board server to detector inside executables folder
scp ~/path-where-it-is/eigerDetectorServerxxx root@bebxxx:~/executables;
#Overwrite the actual eigerDetectorServer on board
scp ~/path-where-it-is/eigerDetectorServerxxx
root@bebxxx:~/executables/eigerDetectorServer;
#sync
ssh root@bebxxx sync;
#reboot the eiger board
\end{verbatim}
\bigskip One can connect to the detector by:
\begin{verbatim}
ssh root@bebxxx
password: root
\end{verbatim}
The on-board server is in ~/executables folder and respawned at startup in \\
\verb=/etc/rc5.d/S50board_com.sh=
\subsection{JUNGFRAU}
In such cases, the users are not expected to compile the software
themselves (which would require dedicated softwares) but only to download on the
detector board the programming files and/or software package provided by
the SLS Detectors group.
\subsubsection{JUNGFRAU Firmware}
\textit{For SLS Detector Package v3.1.0} \\
\indent Minimum compatible version: 13.11.2017 \\
\indent Latest version: 13.11.2017 \\
At times, one has to update the firmware, which then also requires updating the
on-board software.
\textbf{\textit{Jungfrau firmware can be upgraded via the SLS Detector Package
binaries from the command line.}}
\begin{enumerate}
\item One must get the latest package's corresponding POF file from the SLS
Detector Group.
\item Update the latest SLS Detector package installed.
\item Update the on-board software as per the instructions in the next
section.
\item Start the on-board server in debug mode:
\begin{enumerate}
\item Connect to the blackfin on the detector\\
\verb=telnet bchipxxx=
\item Prevent existing on-board server from respawning by:
\begin{enumerate}
\item Edit \verb=/etc/inittab=
\item Comment out the line
\verb=#ttyS0::respawn:/jungfrauDetectorServervxxx=
\item Reboot blackfin using \verb=reboot=
\item Run \verb=ps= to ensure no gotthardDetectorServers are running
\end{enumerate}
\item Start the server in debug mode using: \\
\verb=./jungfrauDetectorServerxxx -debug= \\
Leave this console on to come back to it later.
\end{enumerate}
\item From the command line of the pc, clear shared memory \\
\verb=./sls_detector_get free= \\
If one gets shmget error, please clean the shared memory properly using the
script in \verb=slsDetectorPackage/cleansharedmemory.sh=
\item Add the detector to shared memory using \\
\verb=./sls_detector_put hostname bchipxxx=
\item Program the FPGA using \\
\verb=./sls_detector_put programfpga xxx.pof=
\item Once the programming is done:
\begin{enumerate}
\item Switch to the console that has the debug server running and kill it
using Ctrl+C and ensure no jungfrauDetectorServers are
running
\item Restart the new server to see if it runs with the new firmware \\
\verb=./jungfrauDetectorServerxxx= \\
If the server didn't start properly, please contact us with the error message
shown when starting the server up, else continue with the following steps.
\item Respawn the new server (server starts at detector statup):
\begin{enumerate}
\item Edit \verb=/etc/inittab=
\item Uncomment out the line
\verb=ttyS0::respawn:/jungfrauDetectorServervxxx=
\item Reboot blackfin using \verb=reboot=
\item Run \verb=ps= to ensure that both the gotthardDetectorServers are
running.\\
\verb=jungfrauDetectorServervxxx= \\
\verb=jungfrauDetectorServervxxx 1953=
\end{enumerate}
\end{enumerate}
\end{enumerate}
\subsubsection{JUNGFRAU On-board Software}
Every SLS Detector package release will have its coresponding matching on-board
server under \textbf{slsDetectorPackage/serverBin}.
\begin{enumerate}
\item Install tftp if the pc does not have it.
\item Copy the server from serverBin folder to /tftpboot (or equivalent tftp
folder) of the pc
\item Copy the server to the detector by:
\begin{enumerate}
\item Connect to the blackfin on the detector\\
\verb=telnet bchipxxx=
\item Prevent existing on-board server from respawning by:
\begin{enumerate}
\item Edit \verb=/etc/inittab=
\item Comment out the line
\verb=#ttyS0::respawn:/jungfrauDetectorServervxxx=
\item Reboot blackfin using \verb=reboot=
\item Run \verb=ps= to ensure no gotthardDetectorServers are running
\end{enumerate}
\item Copy new on-board server from pc to the blackfin using: \\
\verb=tftp pcxxx -r jungfrauDetectorServervxxx -g=
\item Respawn the new server (server starts at detector statup):
\begin{enumerate}
\item Edit \verb=/etc/inittab=
\item Uncomment out the line
\verb=ttyS0::respawn:/jungfrauDetectorServervxxx=
\item Reboot blackfin using \verb=reboot=
\item Run \verb=ps= to ensure that both the gotthardDetectorServers are
running.\\
\verb=jungfrauDetectorServervxxx= \\
\verb=jungfrauDetectorServervxxx 1953=
\end{enumerate}
\end{enumerate}
\end{enumerate}
\begin{comment}
\section{Detector system architecture}

View File

@ -1 +0,0 @@
../slsDetectorSoftware/eigerDetectorServer/bin/eigerDetectorServerv3.1.0.16.0

View File

@ -0,0 +1 @@
../slsDetectorSoftware/eigerDetectorServer/bin/eigerDetectorServerv3.1.0.16.1

View File

@ -1 +0,0 @@
../slsDetectorSoftware/jungfrauDetectorServer/bin/jungfrauDetectorServerv3.1.0.1

View File

@ -0,0 +1 @@
../slsDetectorSoftware/jungfrauDetectorServer/bin/jungfrauDetectorServerv3.1.0.2

View File

@ -1,9 +1,9 @@
Path: slsDetectorsPackage/slsDetectorGui
URL: origin git@github.com:slsdetectorgroup/slsDetectorPackage.git
Repository Root: origin git@github.com:slsdetectorgroup/slsDetectorPackage.git
Repsitory UUID: 12e4530702b836985408bc1e85ddb0d996a0153b
Revision: 450
Repsitory UUID: b389402d647e939342dbb2c9317c688c0eb6b105
Revision: 452
Branch: 3.1.0-rc
Last Changed Author: Dhanya_Thattil
Last Changed Rev: 3445
Last Changed Date: 2018-02-27 10:27:24.000000002 +0100 ./CMakeLists.txt
Last Changed Author: Erik_Frojdh
Last Changed Rev: 3458
Last Changed Date: 2018-03-09 10:55:40.000000002 +0100 ./src/qTabSettings.cpp

View File

@ -1,6 +1,6 @@
#define GITURL "git@github.com:slsdetectorgroup/slsDetectorPackage.git"
#define GITREPUUID "12e4530702b836985408bc1e85ddb0d996a0153b"
#define GITAUTH "Dhanya_Thattil"
#define GITREV 0x3445
#define GITDATE 0x20180227
#define GITREPUUID "b389402d647e939342dbb2c9317c688c0eb6b105"
#define GITAUTH "Erik_Frojdh"
#define GITREV 0x3458
#define GITDATE 0x20180309
#define GITBRANCH "3.1.0-rc"

View File

@ -1,9 +1,9 @@
Path: slsDetectorsPackage/slsDetectorSoftware
URL: origin git@github.com:slsdetectorgroup/slsDetectorPackage.git
Repository Root: origin git@github.com:slsdetectorgroup/slsDetectorPackage.git
Repsitory UUID: 12e4530702b836985408bc1e85ddb0d996a0153b
Revision: 1705
Repsitory UUID: b389402d647e939342dbb2c9317c688c0eb6b105
Revision: 1714
Branch: 3.1.0-rc
Last Changed Author: Dhanya_Thattil
Last Changed Rev: 3445
Last Changed Date: 2018-02-27 12:23:41.000000002 +0100 ./threadFiles/ThreadPool.o
Last Changed Author: Erik_Frojdh
Last Changed Rev: 3458
Last Changed Date: 2018-03-12 14:19:44.000000002 +0100 ./threadFiles/ThreadPool.o

View File

@ -1,6 +1,6 @@
#define GITURL "git@github.com:slsdetectorgroup/slsDetectorPackage.git"
#define GITREPUUID "12e4530702b836985408bc1e85ddb0d996a0153b"
#define GITAUTH "Dhanya_Thattil"
#define GITREV 0x3445
#define GITDATE 0x20180227
#define GITREPUUID "b389402d647e939342dbb2c9317c688c0eb6b105"
#define GITAUTH "Erik_Frojdh"
#define GITREV 0x3458
#define GITDATE 0x20180312
#define GITBRANCH "3.1.0-rc"

View File

@ -1,9 +1,9 @@
Path: slsDetectorsPackage/slsReceiverSoftware
URL: origin git@github.com:slsdetectorgroup/slsDetectorPackage.git
Repository Root: origin git@github.com:slsdetectorgroup/slsDetectorPackage.git
Repsitory UUID: 12e4530702b836985408bc1e85ddb0d996a0153b
Revision: 707
Repsitory UUID: b389402d647e939342dbb2c9317c688c0eb6b105
Revision: 708
Branch: 3.1.0-rc
Last Changed Author: Dhanya_Thattil
Last Changed Rev: 3445
Last Changed Date: 2018-02-26 12:17:44.000000002 +0100 ./src/slsReceiverTCPIPInterface.cpp
Last Changed Author: Erik_Frojdh
Last Changed Rev: 3458
Last Changed Date: 2018-03-09 12:23:14.000000002 +0100 ./src/Listener.cpp

View File

@ -1,6 +1,6 @@
#define GITURL "git@github.com:slsdetectorgroup/slsDetectorPackage.git"
#define GITREPUUID "12e4530702b836985408bc1e85ddb0d996a0153b"
#define GITAUTH "Dhanya_Thattil"
#define GITREV 0x3445
#define GITDATE 0x20180226
#define GITREPUUID "b389402d647e939342dbb2c9317c688c0eb6b105"
#define GITAUTH "Erik_Frojdh"
#define GITREV 0x3458
#define GITDATE 0x20180309
#define GITBRANCH "3.1.0-rc"