SPEC common commands


osh                                                                            # open fast shutter

csh                                                                            # close fast shutter

shopen                                                                      # Open safety shutter

shclose                                                                      # Close safety shutter

shbreak                                                                     # Break interlock of EH2

att [0 -15];                                                                 # insert attenuator ‘0’, …,‘15’ (GINIX attenuator box)

pon                                                                           # Start: Spec session as displayed on screen will be also printed

poff                                                                           # Stop: Spec session as displayed on screen will be also printed

plotselect <counter>                                                 # select counter to plot ('diode')

plot                                                                           # plot last scan with selected counter

where                                                                        # Show current motor position in plot

pic                                                                             # go to peak position

cen                                                                            # got to center position

newrun                                                                     # start a new experiment

newfile <filename>                                                    # set a new filename

ct <exposure time>                                                   # Count for 1 second

dada on                                                                    # activate DADA GUI


wa                                                                                         # show all motor positions

wm <motor>                                                                        # show motor position

set <motor> <position>                                                       # set motor position

mv <motor> <position>                                                       # move absolute

mvr <motor> <position>                                                      # move relative

umv <motor> <position>                                                     # move absolute and update positional change

umvr <motor> <position>                                                    # move relative and update positional change

set_lm <motor name> <position_min> <position_max>       # Set software limits


dscan <motorname> <rel. start position> <rel. end position> <number of intervals> <exposure>    # relative scan

ascan <motorname> <abs. start position> <abs. end position <number of intervals> <exposure>    # absolute scan

mesh                                                                                                                                                   # Absolute mesh

dmesh                                                                                                                                                 # Relative mesh


lsdef *eiger*                                                                   # List of all commands for Eiger

pcooff                                                                            # Switch off PCO camera

pilatuson                                                                        # Switch on PILATUS

pilatusoff                                                                        # Switch off PILATUS

pilatusstatus                                                                  # Show status of PILATUS

pilatusenergy <energy in eV>                                        # Set threshold energy of Pilatus

piacqset 0.1 100;                                                            # Set Pilatus for acquiring 100 frames with 0.1 s exposure

    ct 0.1                                                                         # If executed after ‘piacqset’ it will make a series of frames

diodeon                                                                         # Switch on (activate) diode

diode_in                                                                         # Insert diode

diode_out                                                                       # Extract diode

live_print                                                                        # Print live viewer image


wm mic*                                                                       # Show positions of mic-related motors

mic_print                                                                      # print front microscope image

oav_print                                                                      # print exit microscope image

umv micexpo 100                                                         # set microscope exposure

umv micgain 33                                                            # set microscope gain

umv miczoom 10                                                          # adjust the zoom of the microscope (0, 10, 20, 30, 40)

Commands to be checked/clarified:

SPEC> savstate

SPEC> reconfig

SPEC> config

SPEC> debug 192

SPEC> h chg_dial

SPEC> chg_dial( mdetz ,"lim-")

SPEC> waitmove

SPEC> liveshowlin                                                    # show detector? live view plot in linear scale

SPEC> liveshowlog                                                   # # show detector? live view plot in log scale

SPEC> liveshowroi 1

SPEC> cp_defaults

SPEC> sync

SPEC> motor_par(stzrot,"send","nreset")

SPEC> motor_par(px,"send","AZ");sleep(10);motormotor_par(py,"send","AZ");sleep(10);_par(pz,"send","AZ")

SPEC> DO_DIR = "/home/desy/2012A/20120523/spec/macros/"


The macros can be written in .mac file and compiled by qdo in SPEC.

Example: qdo /usr/local/lib/spec.d/macros/pilatus1M.mac


def <command> '{

    <motor> <position>;


Existing macros:

  • takahashi in/out
  • sample     in/out
  • dada_       on/off - gives additional information after ct command
  • eiger<on> / off / slow(single image) / scan(linescan) - switch before scans or meshes


  • Takahashi - beam cleaning pinhole of 50 um

Data organization for dmesh

Every line of the scan is saved in a separate .h5 file