Sector 34-ID-C Remote Operation

From Sector 34-ID-C Remote Operation
Revision as of 22:29, 22 May 2023 by Cxduser (talk | contribs) (→‎Remote Connection to 34-ID-C)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Remote Connection to 34-ID-C

The NoMachine server is We have found that wifi can be flakey and you might see better consistency if you have an ethernet connection. It's also worthwhile to have a decent monitor or a 4k TV to plug into, but not completely necessary. 4k TVs are <$300 now.

The following document is detailed instructions for accessing 34-ID-C.

34-ID-C NoMachine setup and use

APS IT has basic instructions for using NoMachine.

Here are some hints from APS IT regarding Chrome browser optimizations.

Chrome Browser optimizations.

Here are detailed instructions for using Globus to access your data during your experiment. The APS globus endpoint where your data will be available is APS:DM:34IDC, use your ANL login to access.

34-ID-C Globus setup and use

The IT group administrators pay attention to the following email reflector. If you have problems you can send an email to this address. But please try to be specific and include as much detail as possible. CC the beamline staff as well. [email protected]

NX server status

Ross Cell - +1-217-721-5526 Leave a message if he doesn't answer. Seldom answer unknown numbers.

Basic Spec at 34-ID-C

Courtesy of Don Walko at 7-ID. The struck components are not relevant to 34-ID-C.

Walko Spec basics

Spec crystal alignment instructions courtesy of Prof. Ian Robinson.

Ian R. Spec crystal alignment notes

At 34-ID-C we run the sixc version of spec in a screen session for access from multiple terminals on cxd0. If you try to run sixc in a terminal on cxd0 and get a message similar to:

   Can't lock state file "/net/s34dserv/xorApps/spec/linux-x86/34id/spec.d/sixc/userfiles/epix34id_ttyp#L".
   Are you already running on this terminal or another virtual tty?

Spec is already running! Typically in a "screen" session. Screen allows multiple terminals to connect to a "screen session". commands to know are:

This will display a list of the current screen sessions.

   cxd0% screen -ls
   There are screens on:
       4300.simspec	(Attached)
       12243.labtrans	(Attached)
       13775.simspec	(Detached)
       6123.spec	(Attached)
   4 Sockets in /var/run/screen/S-epix34id.

To attach to one of the existing sessions:

   cxd0% screen -x spec

You should see the familiar spec interface. If you want the screen to resize to the window/terminal size enter ctrl-a F Then the screen/spec terminal will follow the window size.

If you wish to create a new screen session, with a custom name like "spec" you can run:

   cxd0% screen -S spec

Only do this if there is not already a screen session called spec when you type screen -ls. You will see the terminal screen clear and a new prompt appear. You are now in a separate, attached screen session.

To detach from any screen session and leave it intact (whatever is running in it keeps running) you press CTRL-a d (control a followed by not control d) To exit a screen session (and kill anything that is running in it), just type exit at the shell prompt.

Microscope View and Orientation

The image below describes the orientation of the microscope on the diffractometer. The motor directions specified as "+ Sample X" and "- Sample Y" are describing the direction the sample will be translated by the motors if the diffractometer angles are at the zero position (th=0, phi=0, chi=90).


Startup Beamline controls

0. Log into the control computer if not already. The username is cxduser and the password is the standard for the sector.

1. Start the SSH program. An Icon is usually on the desktop. In windows it's SSH Tectia-Terminal, on a mac you just open a Terminal.

  Click Quick Connect button on the SSH tool bar.
  The default should be to log into
  The default user should be cxduser
  Please don't write the password in publicly available documents (google docs etc.).
  Type on the command line of a terminal:
    ssh -X cxduser@cxd0

2. On Windows you will need to ensure that the X server is running. An icon called Exceed should be on the desktop. If it is already running there will be an icon on the taskbar that looks like and X wearing a top hat. Don't ask me why the X is wearing a top hat.

3. At the cxd0 prompt type cxdusermenu and press enter/return.

   -bash-4.2% cxdusermenu

4. A small grey controls window should appear on one of the screens. Click the left most menu that says Control and select the 34ID-C mainscreen menu option. You should see the familiar control window for the beamline.

Alternatively, there are icons on the windows desktop that will open the main control screen or the cxdusermenu. Hopefully they continue to work after IT updates things.

Random Fixes

 Terminal with Spec is frozen
 Occasionally the ssh terminal running spec will get a bad key combination and freeze.  Sometimes pushing CTRL-q (maybe Q) will unfreeze it.  The keys that cause it to freeze is CTRL-s.  
 Motor frozen in Moving State
 Click the More button on the motor control.
 Select the (All) option from the drop down menu in the top left of the More screen.
 On the right, about 1/3 down, in the All screen there is a drop down that says Go.  Click that and select Stop.  Then click again and select Go.
 This should have cleared the motor stuck in moving state.  Close the More and More all screens if you want.
 Don't mess with the soft limits unless you tell beamline staff.
 Theta motor doesn't work and readback is different than set value
 Click the More button on the motor control.
 Select the All option from the drop down menu in the top left of the More screen.
 At the bottom right there is a Torque control.  Set it to enable.
 Now adjust the set point in the motor control to match the readback.
 This happens because the cables that are either inside the stage stack or hanging from the side get snagged.  Try to keep an eye on them with the camera and let staff know if we need to go in and rearrange them.

Beamline Calendars

If you care about the 34-ID-C schedule. These files are available externally to APS, so you can add them to Google or whatever you like.

     A new version of the Beamline Scheduling application will be released
     tomorrow (6/25/2013).  This will be version 2-20-0.  Work on the internal
     server will start at 10AM.  Work on the external server will start at 1PM.
     Changes in this version will include:
    - Additional iCal (.ics) files will be produced automatically. These files
    will solve the problem that all iCal files presently contain a copy
    of the run schedule.  This produces clutter on calendars where
    individuals would like to display more than one beamline.  The calendars
    files are stored in the usual location:
    The original calendar files have file names similar to the beamline name
    shown in the Schedule System (i.e 34-ID-C.ics).  For beamlines that
    contain characters that cannot be used in filenames (such as a comma)
    those characters become an underscore (e.g. 6-ID-B,C goes to 6-ID-B_C.ics).
    New files that will be created include the following:
       - Append _brief (such as 34-ID-C_brief.ics) contain the same
         information as the original files with no run schedule or staff
         support information.
       - Append _staff (such as 34-ID-C_staff.ics) contain only the staff
         support information.
       - runSchedule.ics contains information about the run schedule only.
       - runSchedule_brief.ics  This reduces shutdown and machine
         studies periods to show only the first and last days.

FCC crystal Model

If you install eDrawings from Dassault you will be able to open the 3D model of our little FCC model at the beamline.

eDrawings Viewer

Then download this file. Right click and "save file as"


If you don't want to install eDrawings and download the easm file you can download this HTML and double click on it. It should open in a browser with in integrated viewer to display the model. For some reason the wiki server doesn't like to serve HTML files with code in them. Right click on the link below and save the file to your desktop.

HTML 3D model file

Phasing on Sayre

This is how you run phasing programs on

Connect to the beamline Mac ( It should be available to you through, so just follow the instructions above regarding connecting to the beamline computers. But select cxd2 instead of cxd3 as described.

Once connected to the Mac (cxd2), open a terminal window and type sayre at the prompt. This will connect you to the gpu machine at APS.

Activate cohere environment and go to bin directory using the commands below:

   conda activate cohere

Refer to Cohere documentation at for more information.

The documentation below for using the GUI and command line is also applicable to phasing on Sayre.

Paraview on CXD0

When logged into cxd0 through nomachine you are connected as your username. There are a couple of things you can do.

1. Change to the beamline user.

   type at the bash prompt su cxduser  
   bash-4.2$ su cxduser
   enter the standard user password
   Now everything on the command line should look like it does when logged in as cxduser.
   Paraview is kept in 
   so you could now type
   and it should pop up on the screen.

2. create a link to the paraview installation and just run it as yourself

   ln -s /net/s34data/export/34idc-work/2022/ParaView-5.10.1-MPI-Linux-Python3.9-x86_64/bin/paraview paraview
   then run it
   from your home dir.

3. use paraview as cxduser on sayre

   ssh cxduser@sayre
   log in with usual password
   run paraview
   This may be a little slower since it is running on sayre and displaying on cxd0
   I don't know what it will do to your phasing memory on the sayre graphics cards either.

Installing and use of phasing programs on your computer

1.Conda installation instruction

2.Github source code

2.5 Github User Scripts code

3. Installing users scripts

4. Using GUI to run the phasing programs

5. Using command line scripts to run the phasing programs