diff --git a/RELEASE.txt b/RELEASE.txt index 27cd5cec7..69eb812c9 100755 --- a/RELEASE.txt +++ b/RELEASE.txt @@ -305,7 +305,7 @@ This document describes the differences between v6.0.0 and v5.1.0. Gotthard2 ========= - Compatible version : 27.05.2021 (v1.0) + Compatible version : 27.05.2021 (v0.1) Moench ====== diff --git a/docs/src/firmware.rst b/docs/src/firmware.rst index 7b7e8d235..d47aefae8 100644 --- a/docs/src/firmware.rst +++ b/docs/src/firmware.rst @@ -1,8 +1,6 @@ Firmware Upgrade ================= - - Eiger ------------- @@ -18,30 +16,9 @@ Upgrade ^^^^^^^^ #. Tftp must be already installed on your pc to use the bcp script. -#. Kill the on-board servers and copy new servers to the board. +#. Copy new servers to the board. See :ref:`how to upgrade detector servers` for more detals. A reboot should have started the new linked servers automatically. For Eiger, do not reboot yet as we need to program the firmware via bit files. - .. code-block:: bash - - # Option 1: from detector console - # kill old server - ssh root@bebxxx - killall eigerDetectorServer - - # copy new server - cd executables - scp user@pc:/path/eigerDetectorServerxxx . - chmod 777 eigerDetectorServerxxx - ln -sf eigerDetectorServerxxx eigerDetectorServer - sync - - # Options 2: from client console for multiple modules - for i in bebxxx bebyyy; - do ssh root@$i killall eigerDetectorServer; - scp eigerDetectorServerxxx root@$i:~/executables/eigerDetectorServer; - ssh root@$i sync; done - - - * This is crucial when registers between firmwares change. Failure to do so will result in linux on boards to crash and boards can't be pinged anymore. + * This step is crucial when registers between firmwares change. Failure to do so will result in linux on boards to crash and boards can't be pinged anymore. #. Bring the board into programmable mode using either of the 2 ways. Both methods result in only the central LED blinking. @@ -50,8 +27,13 @@ Upgrade Do a hard reset for each half module on back panel boards, between the LEDs, closer to each of the 1G ethernet connectors. Push until all LEDs start to blink. * Software: + .. code-block:: bash + # Option 1: if the old server is still running: + sls_detector_put execcommand "./boot_recovery" + + # Option 2: ssh root@bebxxx cd executables ./boot_recovery @@ -84,6 +66,18 @@ Upgrade #. Reboot the detector. + .. code-block:: bash + + # reconfig febX is necessary only if you have flashed a new feb firmware + reconfig febl + reconfig febr + # will reboot controller + reconfig fw0 + +.. note :: + + If not already there, you need to add scripts to automatically start detector server upon power on. See :ref:`Automatic start` for more details. + Jungfrau ------------- @@ -94,63 +88,13 @@ Download - `pof files `__ -Upgrade (from v4.x.x) -^^^^^^^^^^^^^^^^^^^^^^ +Upgrade +^^^^^^^^ -Check :ref:`firmware troubleshooting ` if you run into issues while programming firmware. +.. note :: -#. Tftp must be installed on pc. + These instructions are for upgrades from v5.0.0. For earlier versions, contact us. -#. Update client package to the latest (5.x.x). - -#. Disable server respawning or kill old server - .. code-block:: bash - - # Option 1: if respawning enabled - telnet bchipxxx - # edit /etc/inittab - # comment out line #ttyS0::respawn:/jungfrauDetectorServervxxx - reboot - # ensure servers did not start up after reboot - telnet bchipxxx - ps - - # Option 2: if respawning already disabled - telnet bchipxxx - killall jungfrauDetectorServerv* - -#. Copy new server and start in update mode - .. code-block:: bash - - tftp pcxxx -r jungfrauDetectorServervxxx -g - chmod 777 jungfrauDetectorServervxxx - ./jungfrauDetectorServervxxx -u - -#. Program fpga from the client console - .. code-block:: bash - - sls_detector_get free - # Crucial that the next command executes without any errors - sls_detector_put hostname bchipxxx - sls_detector_put programfpga xxx.pof - -#. After programming, kill 'update server' using Ctrl + C in server console. - -#. Enable server respawning if needed - .. code-block:: bash - - telnet bchipxxx - # edit /etc/inittab - # uncomment out line #ttyS0::respawn:/jungfrauDetectorServervxxx - # ensure the line has the new server name - reboot - # ensure both servers are running using ps - jungfrauDetectorServervxxx - jungfrauDetectorServervxxx --stop-server 1953 - - -Upgrade (from v5.0.0) -^^^^^^^^^^^^^^^^^^^^^^^^^^ Check :ref:`firmware troubleshooting ` if you run into issues while programming firmware. @@ -160,9 +104,10 @@ Always ensure that the client and server software are of the same release. #. Program from console .. code-block:: bash - # copies server from tftp folder of pc, programs fpga, - # removes old server from respawn, sets up new server to respawn - # and reboots + # copies server from tftp folder of pc, links new server to jungfrauDetectorServer, + # removes old server from respawn, sets up new lnked server to respawn + # programs fpga, + # reboots sls_detector_put update jungfrauDetectorServervxxx pcxxx xx.pof # Or only program firmware @@ -170,8 +115,8 @@ Always ensure that the client and server software are of the same release. -Gotthard ---------- +Gotthard I +----------- Download ^^^^^^^^^^^^^ @@ -206,12 +151,12 @@ Upgrade #. Reboot the detector. -Mythen3 -------- +Mythen III +----------- .. note :: - As it is still in developement, the rbf files must be picked up from the SLS Detector Group. + As it is still in development, the rbf files must be picked up from the SLS Detector Group. Download ^^^^^^^^^^^^^ @@ -221,53 +166,54 @@ Download - rbf files (in developement) -Upgrade (from v5.0.0) -^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Upgrade +^^^^^^^^ Always ensure that the client and server software are of the same release. #. Program from console .. code-block:: bash - # copies server from tftp folder of pc, programs fpga, - # and reboots (new server not respawned currently) + # copies server from tftp folder of pc, links new server to jungfrauDetectorServer, + # programs fpga, + # reboots sls_detector_put update mythen3DetectorServervxxx pcxxx xxx.rbf # Or only program firmware sls_detector_put programfpga xxx.rbf - - -Gotthard2 -------------- - .. note :: - As it is still in developement, the rbf files must be picked up from the SLS Detector Group. + If not already there, you need to add scripts to automatically start detector server upon power on. See :ref:`Automatic start` for more details. + +Gotthard II +------------- Download ^^^^^^^^^^^^^ - detector server corresponding to package in slsDetectorPackage/serverBin -- rbf files (in development) +- `rbf files `__ - -Upgrade (from v5.0.0) -^^^^^^^^^^^^^^^^^^^^^^^^^^ +Upgrade +^^^^^^^^ Always ensure that the client and server software are of the same release. #. Program from console .. code-block:: bash - # copies server from tftp folder of pc, programs fpga, - # and reboots (new server not respawned currently) + # copies server from tftp folder of pc, links new server to jungfrauDetectorServer, + # programs fpga, + # reboots sls_detector_put update gotthard2DetectorServervxxx pcxxx xxx.rbf # Or only program firmware sls_detector_put programfpga xxx.rbf +.. note :: + If not already there, you need to add scripts to automatically start detector server upon power on. See :ref:`Automatic start` for more details. Moench ------- @@ -279,8 +225,9 @@ Download - `pof files `__ -Upgrade (from v5.0.0) -^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Upgrade +^^^^^^^^ Check :ref:`firmware troubleshooting ` if you run into issues while programming firmware. @@ -289,9 +236,10 @@ Always ensure that the client and server software are of the same release. #. Program from console .. code-block:: bash - # copies server from tftp folder of pc, programs fpga, - # removes old server from respawn, sets up new server to respawn - # and reboots + # copies server from tftp folder of pc, links new server to jungfrauDetectorServer, + # removes old server from respawn, sets up new lnked server to respawn + # programs fpga, + # reboots sls_detector_put update moenchDetectorServervxxx pcxxx xx.pof # Or only program firmware @@ -307,8 +255,9 @@ Download - `pof files `__ -Upgrade (from v5.0.0) -^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Upgrade +^^^^^^^^ Check :ref:`firmware troubleshooting ` if you run into issues while programming firmware. @@ -317,9 +266,10 @@ Always ensure that the client and server software are of the same release. #. Program from console .. code-block:: bash - # copies server from tftp folder of pc, programs fpga, - # removes old server from respawn, sets up new server to respawn - # and reboots + # copies server from tftp folder of pc, links new server to jungfrauDetectorServer, + # removes old server from respawn, sets up new lnked server to respawn + # programs fpga, + # reboots sls_detector_put update ctbDetectorServervxxx pcxxx xx.pof # Or only program firmware diff --git a/docs/src/servers.rst b/docs/src/servers.rst index 94ed00b8d..0e55bd2c0 100644 --- a/docs/src/servers.rst +++ b/docs/src/servers.rst @@ -36,6 +36,7 @@ Detector Servers include: When using a blocking acquire command (sls_detector_acquire or Detector::acquire), the control server is blocked until end of acquisition. However, stop server commands could be used in parallel. +.. _Automatic start servers: Automatic start ------------------ diff --git a/docs/src/serverupgrade.rst b/docs/src/serverupgrade.rst index f931bb3e3..130c9268f 100644 --- a/docs/src/serverupgrade.rst +++ b/docs/src/serverupgrade.rst @@ -1,114 +1,39 @@ +.. _Detector Server Upgrade: Detector Server Upgrade ======================= - -Eiger -------------- - - **Location:** slsDetectorPackage/serverBin/ folder for every release. -#. Kill old server and copy new server - .. code-block:: bash - - # Option 1: from detector console - # kill old server - ssh root@bebxxx - killall eigerDetectorServer - - # copy new server - cd executables - scp user@pc:/path/eigerDetectorServerxxx . - chmod 777 eigerDetectorServerxxx - ln -sf eigerDetectorServerxxx eigerDetectorServer - sync - - # Options 2: from client console for multiple modules - for i in bebxxx bebyyy; - do ssh root@$i killall eigerDetectorServer; - scp eigerDetectorServerxxx root@$i:~/executables/eigerDetectorServer; - ssh root@$i sync; done - - -#. Reboot the detector. - - -Jungfrau -------------- - -**Location:** slsDetectorPackage/serverBin/ folder for every release. - #. Install tftp and copy detector server binary to tftp folder #. Program from console (only from 5.0.0-rcx) .. code-block:: bash - # copies new server from pc tftp folder, respawns and reboots - sls_detector_put copydetectorserver jungfrauDetectorServerxxx pcxxx + # copies new server from pc tftp folder, creates a soft link to xxxDetectorServerxxx + # [Jungfrau][CTB][Moench] also edits initttab to respawn server on reboot + # Then, the detector controller will reboot (except Eiger) + sls_detector_put copydetectorserver xxxDetectorServerxxx pcxxx + +#. Copy the detector server specific config files or any others required to the detector: + + .. code-block:: bash + + sls_detector_put execcommand "tftp pcxxx -r configxxx -g" -Gotthard ---------- +.. note :: -**Location:** slsDetectorPackage/serverBin/ folder for every release. + For Mythen3, Gotthard2 and Eiger, you need to add scripts to automatically start detector server upon power on. See :ref:`Automatic start` for more details. -#. Install tftp and copy detector server binary to tftp folder -#. Program from console (only from 5.0.0-rcx) - .. code-block:: bash + .. note :: - # copies new server from pc tftp folder, respawns and reboots - sls_detector_put copydetectorserver gotthardDetectorServerxxx pcxxx + Eiger requires a manual reboot. Or killall the servers and restart the new linked one. - -Mythen3 -------- - -**Location:** slsDetectorPackage/serverBin/ folder for every release. - -#. Install tftp and copy detector server binary to tftp folder -#. Program from console (only from 5.0.0-rcx) - .. code-block:: bash - - # copies new server from pc tftp folder and reboots (does not respawn) - sls_detector_put copydetectorserver mythen3DetectorServerxxx pcxxx - - -Gotthard2 ----------- - -**Location:** slsDetectorPackage/serverBin/ folder for every release. - -#. Install tftp and copy detector server binary to tftp folder -#. Program from console (only from 5.0.0-rcx) - .. code-block:: bash - - # copies new server from pc tftp folder and reboots (does not respawn) - sls_detector_put copydetectorserver gotthard2DetectorServerxxx pcxxx - - -Moench +Errors ------ -**Location:** slsDetectorPackage/serverBin/ folder for every release. +#. tftp write error: There is no space left. Please delete some old binaries and try again. -#. Install tftp and copy detector server binary to tftp folder -#. Program from console (only from 5.0.0-rcx) - .. code-block:: bash - - # copies new server from pc tftp folder, respawns and reboots - sls_detector_put copydetectorserver moenchDetectorServerxxx pcxxx - - -Ctb ---- - -**Location:** slsDetectorPackage/serverBin/ folder for every release. - -#. Install tftp and copy detector server binary to tftp folder -#. Program from console (only from 5.0.0-rcx) - .. code-block:: bash - - # copies new server from pc tftp folder, respawns and reboots - sls_detector_put copydetectorserver ctbDetectorServerxxx pcxxx +#. text file busy: You are trying to copy the same server. \ No newline at end of file