Main Page
|| User Wiki || User Schedule || Staff Wiki || Staff Log || IT Support ||
Introduction
The Hard X-ray Nanoprobe (HXN) beamline at NSLS-II is a powerful tool for studying materials at the nanoscale level. HXN uses two x-ray microscopes each equipped with a zone plate or multilayer Laue lenses (MLLs). They can operate in the energy range of 6 to 18 keV and achieve a spatial resolution of 10 nm. The HXN beamline can also perform multimodal characterization of different types of materials, such as metals, ceramics, polymers, and biological samples. Moreover, the HXN beamline has various in situ capabilities that allow researchers to observe how materials behave under different conditions. The HXN beamline is controlled by EPICS, a software framework for distributed control systems. The data acquisition is done using Bluesky, a Python-based software package developed at NSLS-II. The data analysis is supported by a suite of software tools that enable image processing, visualization, and quantification. Read more about the beamline capabilities on our webpage. Read our experimental procedures for standard experiments here (internal website).
Sample Preparation
Sample preparation step is very critical to get useful data in reasonable time frame. Before you start your experiment, you need to prepare your sample in a way that ensures its stability and quality under the beam conditions. This may involve cutting, polishing, coating, mounting, or aligning your sample depending on the type and size of the material you are studying. The beamline staff can assist you with the appropriate equipment and techniques for your sample preparation. They can also advise you on how to optimize your data collection and analysis based on your sample characteristics and research goals. The following is a brief overview of some common steps involved in sample preparation for different types of experiments. Please talk to beamline staff for specific details.
Sample size considerations
If you want to scan a sample with our high resolution scanner, you need to know some important parameters. The scanner can only cover a range of 30 um x 30 um in one 2D scan, so you have to adjust your sample size accordingly. The resolution and time are also factors that affect the quality and duration of the scan. The microscope you use (zone plate vs MLLs) determines the step size you need for the best resolution. For zone plate, it is 30 nm and for MLLs, it is 10 nm. You can change these values for different purposes, but we usually do. Another parameter is the exposure time, which depends on the type of sample. For metallic nanoparticles, we use 0.03 second and for bio-imaging of trace elements, we use 0.25 second. To calculate the experimental time of one 2D image, you can use this formula: (X_dim/X_resolution)x(Y_dim/Y_resolution)*exposure_time. For example, if you scan a 5x5 um sample with zone plate using 50 nm step size and and 0.03 second exposure time, the experimental time is (5000/50)x(5000/50)x0.03 = 300 seconds.Tomography and XANES are examples of high level scans that require more time than just 2D imaging methods. This is because they need to capture multiple 2D images at different angles or energies. A typical measurement at HXN can last up to a day for one sample, for these techniques.
Substrates/Tomo pins
| Name | Vendor /Link | Part Number | Details | Notes |
|---|---|---|---|---|
| Diving Boards | Norcada | NCT4155P-IV-Cr | Si membrane 10-pack
Frame: 3.5mmx1.5mm, 300um silicon Membrane size: 0.50mm x 1.40mm Membrane: 10um <100> Silicon P-type + 20nm SiNx Fiducial markers: ~50nm thick Chromium |
Good for all microscopes. See Drawings. |
| Si3N4 Windows | Norcada | NXCT-0101-Cr-I | SiNx Membrane 10-pack
Membrane: 1.50mmx2.00mm, 200nm thick Frame: 5mmx5mm, 200µm thick Silicon Fiducial marks: ~50nm Cr |
Preferred for bio-imaging and low-Z elements mapping. See Drawings.
Not good for MLL microscope because of the size |
| Open-Edge SiN Windows for X-ray Tomography | Norcada | NCT4155P-III-CrPt | Frame: 3.5mmx1.5mm, 300μm Silicon
Membrane size: 0.5mmx1.4mm Membrane thickness: 10μm <100> Silicon P-type / 20nm SiNx Membrane fiducial markers: 50nm Chromium + 50nm Platinum Maximum unobstructed viewing angle: 320 degrees |
NCT4155P-II-Pt or NCT4155P-II-Cr are also fine |
| Stainless Steel Tomo Pin | Fine Science Tools | 7000-10 (part # 26001-25 cut to 18mm length) | Tip Diameter: 0.03mm
Rod Diameter: 0.25mm Material: Stainless Steel Length: 18mm |
The distance between the aluminum pin base and the beam height is 18 mm. The vertical stage stroke is roughly +/- 5 mm. See Main Page#Instructions for focused ion beams. |
| Tungsten Tomo Pin | Fine Science Tools | 10130-05 | Tip Diameter: 0.001mm
Rod Diameter: 0.125mm Material: Tungsten Carbide Length: 12mm |
The distance between the aluminum pin base and the beam height is 18 mm. The vertical stage stroke is roughly +/- 5 mm. See Main Page#Instructions for focused ion beams. |
Instructions for focused ion beams
For the needle, make sure to not have burrs on the bottom or they will not mount well to the aluminum post.
For the sample mount, using a focused ion beam (FIB) we usually cut the needle tip to match the size of the sample to hold it well. For further details, which optic you will be using for your project. ZP or MLL is required to determine the acceptable diameter of your sample.
If you are also interested in taking fluorescence images for Fe, Mn, and Co, using tungsten pins is better to avoid a crosstalk between Fe and these elements. However, if you have sufficient amount of Pt deposition buffer, that would avoid the crosstalk as well. For observing the K-line fluorescence of Si, P, and S and the M-line fluorescence of W and Au, a carbon deposition buffer would be better; the Pt deposition buffer will prevent detecting their fluorescence signals.
If you would like to see the phase image using ptychography, a carbon deposition buffer would work well. Thick metal deposition shows up with a significant contrast in ptychographical phase images, making it challenging to reconstruct a subtle inhomogeneity inside the sample.
| FIB sample structure | FIB sample transfer |
|---|---|
Sample Mounting
The sample holder for the microscope consists of a custom aluminum holder that can accommodate 2-5 grids depending on the choice of substrates. The membranes are attached to the grids using glue (nail polish is common) and then mounted on the pin. The specifications of the sample holder are given below. These pins are available at the beamline. Contact the beamline staff if you need them shipped to your home institute. The following diagrams show how to mount an HXN Sample to the pin using different options.
Drawings
Sample Loading/Exchange
The next step in loading the aluminum sample holder with windows or pins for microscopic analysis is to place securely on the microscope stage. To do this, you need to use the holes on the sample mount as a guide to align the sample with the stage. The image below shows holder the position on the stage. After placing the sample, you need to use a special nut to fasten the holder and prevent any movement of the sample during observation.

Sample Chamber feed-throughs
Microscope and Sample Stage Images
Some details of the microscope maybe found in this document HXN Microscope ZP
In situ Heating Stage
Data Collection
To perform experiments at HXN, users can choose one of the two methods available to collect data: command line based method or graphical user interface (GUI) method. The command line based method allows users to write scripts and execute commands directly on the terminal. This method is more flexible and powerful, but also requires more programming skills and familiarity with the beamline software. The GUI method provides a user-friendly interface that simplifies the data collection process . This method is easier and faster, but also has some limitations and may not support all the features of the beamline. Users can switch between the two methods at any time during their experiment, depending on their needs and preferences.
To operate the beamline and the experimental stations, NSLS-II uses a software platform called CS Studio (CSS) that allows users to monitor and control various parameters and devices. One of the devices that can be controlled by CSS is the motor, which is used to move and align the sample and the detector. The HXN-GUI is a graphical user interface that provides access to the most important motors for navigation and alignment at the beamline. The HXN-GUI also displays some parameters from CSS, such as the current position and the status of the motors. Users can switch between the HXN-GUI and the CSS windows when necessary, depending on their needs.
BSUI Command line
At NSLS-II, we use a software framework called Bluesky to control our experiments and collect data. Bluesky is a python-based library that provides a flexible and powerful way to define scan plans and record metadata. To use Bluesky, you need to have a basic understanding of python syntax and commands. However, you don't need to be an expert programmer, as the beamline staff and manual will guide you through the process of using Bluesky at our beamline. The HXN beamline manual contains specific information about how to operate the microscope with Bluesky, as well as some examples of common scan plans. You can also find general Bluesky tutorials and documentation here.
BSUI Graphical User Interface
Data Transfer
There are several options available to access your data from the beamline. Beamline scientists will help ensure your data is saved in the correct format in your beamline directory. Once that is done, you can transfer the data to your own systems using one of the following methods:
1. Globus (Preferred Method)
Your experimental data is stored at:
/nsls2/data/hxn/proposals/*cycle*/pass-*yourproposalnumber*
To access it:
- Visit https://globus.nsls2.bnl.gov
- Log in using your BNL credentials
- Navigate to the path above, replacing:
*cycle*with your actual proposal cycle (e.g.,2025-3)*yourproposalnumber*with your actual proposal number
⏳ Note: It may take some time for your data to appear after collection.
📹 Video Tutorial: How to Transfer Data to Local Machine
---
2. SFTP (Secure File Transfer Protocol)
You can transfer files using your BNL domain account. All platforms (Win/Mac/Linux) can use scp. For example, on Mac:
scp -J username@ssh.nsls2.bnl.gov -r username@xf03idc-ws2:/source_directory/ /destination_directory/
Replace:
usernamewith your BNL account usernamesource_directoryanddestination_directorywith actual paths
Windows Users: MobaXterm provides an easy-to-use graphical SCP client.
---
3. RSYNC
Use rsync to efficiently transfer large datasets:
rsync -av -e 'ssh -J username@ssh.nsls2.bnl.gov' username@xf03idc-ws2:/source_directory/ local/destination_directory/

These options allow you to effectively access and transfer the data acquired from the beamline for further analysis and processing on your own systems.
Remote Access Through Virtual Desktop (VDI)
Step 1: Connect to the VDI Portal
- Go to: https://vdi.nsls2.bnl.gov
- Choose one of the following options:
- Install VMware Horizon Client (recommended)
- Use VMware Horizon HTML Access (browser-based)
For Personal Computers
- Download the Horizon Client from the Omnissa website
- On the downloads page, click View Download Components
- Select the version that matches your operating system
- Add the following as your Connection Server:
https://vdi.nsls2.bnl.gov/
For NSLS-II Managed Workstations
- The client is already installed
- Launch it by running the following command in a terminal:
/usr/bin/vmware-view
- Log in using your BNL credentials
- Approve the Duo prompt for authentication
- Select the appropriate desktop:
- N2SN – for beamline users and staff
- Accelerator – if you are part of the Accelerator Division
---
Step 2: Launch Data Analysis Tools
Once inside the virtual desktop:
- Open a terminal (Click Activities in the top-left corner)
- Connect to the analysis workstation:
ssh -YC xf03idc-ws2
- Type
load-hxnto set the environment - Launch any of the following tools using either the short command (if available in your environment) or the full path:
| Tool Name | Short Command | Full Path |
|---|---|---|
| PyXRF | run-pyxrf |
/nsls2/data/hxn/shared/config/bluesky/profile_analysis/scripts/run-pyxrf
|
| DPC2 | run-dpc2 |
/nsls2/data/hxn/shared/config/bluesky/profile_analysis/scripts/run-dpc2
|
| PyXRF Batch | run-pyxrf-batch |
/nsls2/data/hxn/shared/config/bluesky/profile_analysis/scripts/run-pyxrf-batch
|
| DPC2 GUI | run-dpc2-gui |
/nsls2/data/hxn/shared/config/bluesky/profile_analysis/scripts/run-dpc2-gui
|
| Jupyter Notebook | run-jupyter-notebook |
/nsls2/data/hxn/shared/config/bluesky/profile_analysis/scripts/run-jupyter-notebook
|
| Probe Propagation | run-probe-prop |
/nsls2/data/hxn/shared/config/bluesky/profile_analysis/scripts/run-probe-prop
|
| PyXRF Tools | run-pyxrftools |
/nsls2/data/hxn/shared/config/bluesky/profile_analysis/scripts/run-pyxrftools
|
| MANTiS | run-mantis |
/nsls2/data/hxn/shared/config/bluesky/profile_analysis/scripts/run-mantis
|
| XMIDAS | run-midas |
/nsls2/data/hxn/shared/config/bluesky/profile_analysis/scripts/run-midas
|
| Diff View | run-diff-view |
/nsls2/data/hxn/shared/config/bluesky/profile_analysis/scripts/run-diff-view
|
| Ptycho GUI | run-ptycho-pixi
|
/nsls2/data/hxn/shared/config/bluesky/profile_analysis/scripts/run-tycho-pixi
|
🛠️ Tip: If the short command doesn’t work, use the full path version. This ensures compatibility across different environments.
FAQ
Note: The answers below are general and may not apply to every situation or context. They are intended to provide basic information and guidance. For specific or detailed information, please contact the beamline staff.
How long does it take to measure one sample?
Typically, measurements can be completed in one day — unless you are collecting 2D images of your sample at multiple positions.
The experimental time for a scan depends on:
- The type of scan
- Sample size
- Resolution (step size)
- Exposure time
Example – 2D scan time estimate:
To estimate scan time:
Time = (ScanWidth/StepSize) x (ScanHeight/StepSize) x ExposureTime
For a 5×5 µm scan at 50 nm steps and 0.03s exposure:
(5000 / 50) × (5000 / 50) × 0.03 = 300 seconds
So it would take **300 seconds** to acquire one 2D image.
High-level scans like tomography or XANES require multiple 2D images.
For example, a tomography scan with 90 projections:
90 × (5000 / 50) × (5000 / 50) × 0.03 = 27,000 seconds (~7.5 hours)
> 💡 Add **25–50% overhead** for positioning and system delays.
---
How long is a typical beamtime?
A minimum of **3 days** is typically allocated, which equals **9 shifts**.
---
What's the lowest incident energy?
The lowest operational energy is **5.9 keV**.
---
How long does it take to change the sample?
- Up to **2 hours** for sample exchange and vacuum.
- Up to **3 hours** for realignment after exchange.
---
What’s the sample environment?
- Helium gas is used as a buffer (low scattering, high thermal conductivity).
- Typical pressure: **~250 mm Hg**
- For lower background or better SNR, vacuum up to **10⁻⁶ Torr** is possible.
> ⚠️ Experiments **cannot be performed in air**.
---
What is the shipping address?
ATTN: Beamline Scientist's Name National Synchrotron Light Source II Bldg. 743 Brookhaven National Laboratory Upton, NY 11973-5000





