FMB User Cheat Sheet

FMB beamline status page


Useful spec commands

Moving motors

wm motorname returns motor positions for given motor, e.g.: "wm samx"

we returns motor positions for all configured motors

umv motorname # moves motor to absolute position, e.g.: “umv samx 1” will move motor samx to position 1

umvr motorname # moves motor relative to current position, e.g.: “umvr samx 1” will move motor samx +1 from its current position

tw motorname # tweak motor position in steps of size #, e.g.: “tw samx 1” will open a dialog where you are asked to enter the sign (direction) of steps, and then pressing enter/return will allow you to take multiple steps of that size in a row. Type any letter to exit the dialog.

Upstream optics

opens - open upstream shutter

closes - close upstream shutter

umv att 0 - move attenuator completely out of the beam.

att -1 = fluorescent screen. att 12 = significant attenuation

wg s1 - print positions for upstream hutch slits (define beam size with s1h and s1v)

wg s2- print positions for downstream hutch slits (guard slits)

  • Can move s1h, s1v, s2h, and s2v, with umv commands; units are mm

Organizing data (making folders, changing directories)

  1. u mkdir dir_name make a new directory in the working directory (example would make a folder called dir_name)
  2. cd dir_name moves to new directory
  3. Update detector path to the current directory - need to run this every time directories are changed
    1. For SAXS/WAXS, pil_setdir updates the Pilatus detector(s)
    2. For radiography/tomography, andor_setdir updates the Andor detector
    3. For XRF, xps_setdir updates the xpress3 paths
    4. For the Eiger, eig_setdir updates the detector paths
  4. newfile opens dialog to enter new filename and path for savingE data, applied to next scan
(move back up a level: cd ..)

Spec scans

tseries- series of snapshots

  • Usage: tseries number_of_snapshots exposure_time(s)
  • e.g. tseries 10 1
    • will take 10 snapshots with 1 second exposures

loopscan- series of snapshots with a wait in between

  • Usage: loopscan number_of_snapshots exposure_time(s) sleep_time(s)
  • e.g. loopscan 10 1 5
    • will take 10 snapshots with 1 second exposures and wait 5 seconds between each exposure

dscan- snapshots while moving a motor step-wise (not flyscanning)- relative positions

  • Usage: motorname start end intervals exposure_time(s)
  • Positions are relative to current position
  • e.g. dscan bedx -10 10 20 1
    • Will scan the motor "bedx" from -10 to +10 mm relative to the current position, with 1 mm steps and 1 second exposure times

ascan- snapshots while moving a motor step-wise (not flyscanning)- absolute positions

  • Usage: motorname start end intervals exposure_time(s)
  • Positions are absolute, not relative to current position when the command is issued
  • e.g. ascan bedx 200 220 20 1
    • Will scan bedx from motor positions 200 to 220, with 1 mm steps and 1 second exposure times, regardless of where motors are when the command is issued

plotselect choose what variable to show in the yellow spec plot

Pilatus area detector macros

List of important commands

  • pil_setup PILX # - sets up the detector with prefix (e.g. pil_setup PIL5 0)
    • Typical for simultaneous SAXS/WAXS: PIL5 = 0, PIL9 = 1, PIL11 = 2
  • pil_on/off- turns all configured detectors on/off
    • pil_on # - turn on just one configured detector (e.g. pil_on 0 turns on the 0th configured detector)
  • pil_von/voff - turns live view (video mode) on/off
    • ImageJ plugin can only handle this for one detector at a time, so if you have multiples configured, make sure only one is on before running pil_von
    • video mode must be off before starting captures
  • pil_setdir- sets all the pilatus paths to the current working directory
  • pil_settrig- choose trigger mode for configured detectors
    • use "Internal" for single snapshots (e.g. tseries, dscans)
    • user "Mult. Trigger" for external trigger (e.g. flyscans)

Examples of usage with multiple detectors

See: PilatusExamples

Andor area detector macros

List of important commands

  • andor_setup ANDOR# - sets up the detector with prefix (
    • Typical e.g. andor_setup ANDOR2
  • andor_on/off- turns andor detector capture on/off
  • andor_von/voff - turns live view (video mode) on/off
    • video mode must be off before starting captures
  • andor_setdir- sets the andor save paths to the current working directory
  • andor_settrig- choose trigger mode
    • use "Internal" for tseries, loopscans, etc.
    • use "External Start" for tomography movies with the air bearing rotation stage
  • andor_setformat- save as .tiff or .hdf5
    • either: andor_setformat "TIFF1" or andor_setformat "HDF1"
    • saving to hdf5 is necessary for fast framing rates

Querying/setting motor parameters

To query motor velocity (pulses/sec):

p motor_par(motorname, “velocity”)

To query pulses/mm

p motor_par(motorname, “step_size”)

To change velocity:

motor_par(motorname, “velocity”, newvalue)

e.g.: p motor_par(bedx, “velocity”, 40000)

Camera views and ion chamber medms

In-hutch PTZ camera by hutch door/on south wall (original StanCam):

In-hutch PTZ camera (upstream wall):

3B 4-channel Video encoder:

Cave cameras: from terminal, run “vimba

To restart preamp gui: show_amps

Defining macros

edit a file, “my_macros.mac” (or other filname) in specuser/Macros directory

in SPEC:

SPEC> udo my_macros.mac

check that it was read:

SPEC> prdef <macro_name>

Open ion chamber viewer

cd bin


Data analysis- useful information

File paths

Raw data: /nfs/chess/raw/current/id3b/YOUR-PROJECT-ID

Analysis area: /nfs/chess/auxiliary/cycles/current/id3b/YOUR-PROJECT-ID

Note, instead of "current" you can also use the run cycle, e.g. "2020-3" (this is necessary for returning to data after a run is over)

Analysis area always stays accessible. Raw data is archived after two cycles. To request raw data be restored to disk, submit a service request: https://wiki.classe.cornell.edu/Computing/ServiceRequest

Calibrating SAXS/WAXS detectors with pyFAI GUI (generating .poni files)

Open a terminal window.

Run 'source /nfs/chess/sw/miniconda3_msnc/envs/saxswaxs-viewer/bin/activate'

Start the GUI:

> pyFAI-calib2

Official documention for the GUI is here: pyFAI-calib2

More detailed, CHESS-specific documentation here: pyFAI calibration tools

Use the pyFAI-calib2 GUI to generate a .poni file for each of the area detectors used in your experiment. Save the .poni files in your aux area.

Remote access

Station computer (NoMachine) and lnx201

See: Remote access with NoMachine

CLASSE IT documentation for NoMachine can be found here: https://wiki.classe.cornell.edu/CHESS/NoMachine

Transferring files

See SFTP-SCP access or Globus

Virtual tour

A 3D Virtual tour of the MSN-C user area, including inside FMB and SMB (screenshot shown above) is located at: https://my.matterport.com/show/?m=9aGsG7sCg26&brand=0

InstantPlot Documentation

Rough flyscan time estimator

CHESS ion chamber flux calculator

X-ray attenuation calculators

Running Jupyter notebooks on the CLASSE cluster

CLASSE Git area

If you are a contributor to InstantPlot, please use gitlabs for issue reporting.

-- LouisaSmieska - 11 May 2022
Topic revision: r10 - 11 May 2022, LouisaSmieska
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding CLASSE Wiki? Send feedback