NDTS-GUI

From Network for Advanced NMR
Jump to navigationJump to search

Overview

NDTS installations on the spectrometer workstation consist of the daemon, which runs as a service, and the NDTS graphical user interface (NDTS-GUI), which displays status information and allows users to adjust harvesting status, select the NAN user, and provide metadata to be associated with datasets. NDTS is designed to automatically harvest datasets upon completion when harvesting is enabled. Manual harvesting can also be performed via the NDTS-GUI.

Mapping NAN users to spectrometer workstation users

Each harvested dataset must be associated with a NAN user to be visible in the Dataset Browser. This association is managed primarily through the NDTS-GUI, where the selected NAN user can be changed (if permitted by facility manager settings). By default, the NAN user mapped to the current spectrometer workstation user is selected. These mappings are managed by the NMR facility manager through the user management page on the NAN portal Facility Dashboard.

NDTS harvesting defaults

Facility managers use the *Manage Facility Users* tool on the Facility Dashboard to:

  • Add NAN users to the facility
  • Map users to spectrometer workstation accounts
  • Set default harvesting preferences
  • Define fallback behavior for unmapped users

When the NDTS-GUI is launched or when the selected NAN user is changed, the default harvesting settings are refreshed based on the configuration in the *Manage Facility Users* tool.

If the NDTS-GUI is not running, NDTS harvesting defaults to the fallback settings defined in the *Manage Facility Users* tool.

Launching the NDTS-GUI

It is essential that the NDTS-GUI remain running so that harvesting status is visible and users can ensure appropriate metadata and settings are applied before data collection. To prevent accidental closure, the close button in the GUI is disabled once launched. It is strongly recommended to configure the NDTS-GUI to start automatically upon login to the spectrometer workstation.

Manually launching the NDTS-GUI

While automatic launching is preferred, the GUI can be started manually with:

/opt/nan-dtdaemon/nan_gui

Automatically launching the NDTS-GUI

The setup depends on the desktop environment and whether the configuration is per-user or system-wide. Below are instructions for different desktop environments, but with so many different versions and different Linux distros it is impossible to cover all possibilities. That said, launching an applications upon login is a common task as the correct answer can usually be found easily with a Google search or by asking one of the LLMs such as ChatGPT.

Step 1: Identifying the desktop environment

Use this command to determine your current desktop environment

echo $XDG_CURRENT_DESKTOP

if the above command does not work or show output try:

echo $DESKTOP_SESSION

Step 2: Creating the launcher script (if adding from the CLI)

If you are adding the launcher script through the command line interface you will need to create the text file below using your favorite editor and save it to the appropriate location (see the table below of the CLI-based path)

[Desktop Entry]
Type=Application
Exec=/opt/nan-dtdaemon/nan_gui
Hidden=false
NoDisplay=false
Name=NAN GUI
Comment=NDTS graphical interface
X-GNOME-Autostart-enabled=true

Most Linux distros also have the ability to add a launcher through the menu bar. Below in the table follow the directions for the Menu-Based instructions to add the launcher and select /opt/nan-dtdaemon/nan_gui as the program to launch

Desktop Environment Menu-Based Instructions CLI-Based path
KDE 3 ~/.kde/autostart/nan_gui.desktop
KDE 4 ~/.kde4/autostart/nan_gui.desktop
KDE Plasma / Newer System Settings → Startup & Shutdown → Autostart → Add Program… ~/.config/autostart/nan_gui.desktop
GNOME gnome-tweaks → Startup Applications → '+' ~/.config/autostart/nan_gui.desktop
XFCE Settings Manager → Session & Startup → Application Autostart → Add… ~/.config/autostart/nan_gui.desktop

Step 3: Make it executable:

chmod +x ~/.config/autostart/nan_gui.desktop

NDTS-GUI Main Window

NDTS GUI
NDTS-GUI Main Window Elements
Element Description
Top Text Bar Indicates whether the dataset will be harvested. Options:
  • "Data will be transmitted to NAN"
  • "Data will not be transmitted to NAN"
Middle Text Bar Shows harvesting status:
  • "NAN Transport is running"
  • "Harvesting is suspended"
Third Text Bar Indicates TopSpin or VnmrJ activity:
  • "Topspin / VNMRJ is running"
  • "Topspin / VNMRJ is not running"

Harvesting settings are irrelevant if no acquisition software is running.

Ignoring Job Numbers Datasets collected with job numbers above this threshold are ignored for harvesting. This setting is defined by the facility manager and avoids harvesting test or calibration runs without requiring toggling of the NAN harvesting radio button which is easy to forget to turn back on.
Probe Displays the currently assumed installed probe. This value is for informational purposes only and is updated via the NAN portal. If incorrect, it can be retroactively corrected by the facility manager as the facility manager applies a date when a probe swap occurs.
NAN User Indicates the currently selected NAN user. If unselected, harvesting defaults to facility manager-defined fallback behavior. Accurate user selection is essential for proper dataset access and reassignment.
NAN Harvesting Toggle Allows users to enable/disable harvesting. Permissions for toggling are set by the facility manager. Restrictions ensure harvesting behavior is consistent with user roles (e.g., preventing harvesting by commercial users).
Enter Experiment Details Opens a window to enter metadata and change the selected NAN user (see next section).
Manual Harvest Allows manual selection of a previously unharvested dataset for submission to the NAN archive (see below)

NDTS Experimental Details Window

Experiment Details Window
Experimental Details Fields
Field Description
NAN User Allows selection from the facility-defined list of NAN users. Permission to change users is governed by the facility manager.
Project / Study / Sample Drop-down lists enable assignment of datasets to a specific project, study, and sample at the time of data collection. These assignments can also be updated later in the Dataset Browser.
Refresh Button Forces immediate update of user, project, study, and sample lists, which are otherwise refreshed every 10 minutes.
Solution / Solid Toggle Indicates whether the dataset is from a solution or solid-state sample. This also determines which additional metadata fields are shown.
Magic Angle Spinning Toggle to indicate that MAS was used during acquisition.
MAS Rate (kHz) Field to enter the MAS spinning rate if not present in the dataset parameters.
Z0 Drift Correction Allows entry of the known Z0 drift rate for inclusion in metadata.
Multi-receiver / Time Sharing Checkboxes Optional indicators that can be checked if either condition applies to the dataset.
Notes Free-text field for entering user-defined notes to be associated with the dataset.

Manual Harvest Window

The manual harvest button allows users to harvest a dataset in cases where automatic data harvesting was unintentionally disabled. It is not intended for harvesting older datasets; the NAN portal provides an arbitrary data upload feature for that purpose.

Limitations

  • On VNMRj, the manual upload must be from an experiment directory (e.g. /$home/vnmrsys/expN)
  • VNMRj or TopSpin must be running
  • The NDTS-GUI must be running
    • Harvesting must be set to "on"
    • Correct NAN user, project, study, sample, and additional metadata must be selected or entered
  • Current spectrometer, probe, and related metadata will be associated with the dataset. Therefore, this feature should only be used for recently collected datasets
Manual Harvest Window

Description of Manual Harvest Pop-up Window

Field Description
User Displays the current workstation username (informational only)
Experiment Location Dialog box to select the dataset to be harvested; includes a Browse button for easier navigation
Force Forces harvesting of a dataset even if it has already been harvested; overrides the default behavior
History Opens the history of previously manually harvested datasets (see below)
Harvest Starts the harvesting process; disabled until a dataset is selected
Done Closes the Manual Harvest window
Status Line Displays the result of the last harvesting attempt

History Window

Field Description
Date Date the dataset was manually harvested (not the date of dataset acquisition)
NAN User The NAN user selected at the time of manual harvesting; this is the user the dataset will be associated with
Path Filesystem path of the manually harvested dataset
Status Status of the manual harvest (e.g., success, error)
Refresh Button to refresh the history list; otherwise, it updates only when the window is reopened

Manual Harvesting from the Command Line Interface (CLI)

Linux

For Linux workstations, run the executable /opt/nan-dtdaemon/nan_sendexp and supply the command-line arguments described below.

TopSpin and the NDTS Workstation Daemon must be running.

Windows

On Windows, invoke the batch file C:\opt\nan-dtdaemon\nan_sendexp.bat from a CMD session.

The NDTS Workstation Daemon must be running.

Command-Line Arguments

--statusReturns the current workstation user's history of manual-harvest attempts.
/opt/nan-dtdaemon/nan_sendexp --status
To view another workstation user's history, add the --username argument:
/opt/nan-dtdaemon/nan_sendexp --status --username={username}
--harvest (default) Harvests a dataset
/opt/nan-dtdaemon/nan_sendexp {experiment_location}
/opt/nan-dtdaemon/nan_sendexp --harvest {experiment_location}
Options:
--username={username}Harvest datasets as another workstation user and their default NDTS settings
/opt/nan-dtdaemon/nan_sendexp --harvest {experiment_location} --username={username}
--forceHarvest the dataset even if the experiment was previously harvested
/opt/nan-dtdaemon/nan_sendexp --harvest {experiment_location} --force
--topspin={topspin_location} (required for Windows, ignored for Linux)
/opt/nan-dtdaemon/nan_sendexp --harvest {experiment_location} --topspin=C:\Bruker\topspin4.3.0

For certain calibration routines it may be desirable to programmatically turn harvesting on and off and harvest manually through the CLI. The --ignore and --detect arguments allow the harvesting setting from the NDTS-GUI to be ignored or respected. It is important that if used the user returns the setting back to --detect for proper operation of the data harvesting.

--ignoreSends a signal to the NDTS daemon to ignore the harvesting setting from the NDTS-GUI
/opt/nan-dtdaemon/nan_sendexp --ignore
--detectSends a signal to the NDTS daemon to respect the harvesting setting from the NDTS-GUI and hence reverses --ignore
/opt/nan-dtdaemon/nan_sendexp --detect
--retcodePrepends a status character (1 = success, 0 = failure) to the command’s output to programmatically detect if a command failed or succeeded
0Unable to determine experiment type for…
--verbose Prints detailed diagnostic output.
--helpDisplays the built-in command-line help.