Page tree

Pilatus Setup

Setup on detector-PC

Get hidra

  • login as user root
  • use frozen HiDRA version 4.0.7
  • download HiDRA from http://nims.desy.de/extra/hidra/freeze/linux/

  • unpack HiDRA into /opt

    tar -xzvf hidra-v4.0.7-x86_64-2.7-suse10.2.tar.gz -C /opt
  • For version 4.x and newer there is an option in the config file to handle monitored sub-directory creation inside the source directory:

    eventdetector:
        inotify_events:
            create_fix_subdirs: True

    For hidra versions 3.x and older:

    Create source directory where the data is written to

    mkdir /ramdisk/local
    mkdir -p /ramdisk/current/raw
    mkdir -p /ramdisk/current/scratch_bl
    mkdir -p /ramdisk/commissioning/raw
    mkdir -p /ramdisk/commissioning/scratch_bl
  • Create log directory

    mkdir -m 777 /var/log/hidra

Configure

  • the configuration file can be found  in <unpacked_dir>/hidra/conf (e.g. when done as described above: /opt/hidra/conf)
  • adjust hidra config file, e.g for beamline p00

    conf/datamanager_p00.conf
    general:
        log_path: /var/log/hidra
        log_name: datamanager_p00.log
        procname: hidra_p00
    
    eventdetector:
        inotify_events:
            monitored_dir: /ramdisk
            fixed_subdirs: ["commissioning/raw", "commissioning/scratch_bl", 
                            "current/raw", "current/scratch_bl",
                            "local"]
    
    datafetcher:
        use_data_stream: True
        data_stream_targets: [["asap3-p00", 50100]]
        remove_data: True

    You may think on changing permissions of datamanager_p00.conf to read-only
    Alternatively (for version > 4.0:

        remove_data: stop_on_error

    or

        remove_data: with_confirmation

Run

  • login as user det

  • run sender

    /opt/hidra/hidra.sh start --beamline <beamline>

    what the script does is following:

    • export library path
    • creating log-dir (/var/log/hidra) + change permissions of log-dir to 1777
    • starts hidra daemon


Setup on receiver-PC

Get hidra

from git

  • clone git repo into /opt 

    /opt/hidra
  • Create log directory + change permissions

    mkdir /var/log/hidra
    chmod 1777 /var/log/hidra

from repo

  • on all Debian beamline PCs hidra can be installed via apt

    apt install hidra-receiver

Configure

  • adjust hidra config file, e.g. for beamline p00

    conf/datareceiver_p00.conf
    general:
        log_path: /var/log/hidra
        log_name: datareceiver_p00.log
        username: p00user
        procname: hidra_receiver_p00
        whitelist: a3p00-hosts
    
    datareceiver:
        target_dir: /beamline/p00
        data_stream_ip: asap3-p00

    TODO: set target_dir to /beamline/pxx

Run

  • run receiver

    systemctl start hidra-receiver@p00
  • No labels