Building Site

Get Assistance with FRED

If you need help navigating FRED or understanding its features, check out our helpful videos and articles. Whether you're just starting or looking to dive deeper into advanced functionalities, our resources offer clear instructions to guide you through every step. Explore the articles to enhance your knowledge and make the most of FRED's capabilities.

Frequently Asked Questions

Most Common Questions

Pre-sales Questions

How many rays can FRED raytrace?

FRED can raytrace and analyze up to 263 rays.

What is the recommended computer configuration for running FRED?

While we don't recommend a specific computer manufacturer or model, the following factors should be considered when selecting a system to run FRED:

  • Operating System: FRED is compatible only with Windows. We recommend using Windows 7 or newer (XP is no longer supported).
  • Processor (CPU): FRED can perform multi-threaded calculations on up to 17 threads, while FRED Optimum supports up to 127 threads. Any threads beyond the limit for your version of FRED will not be utilized. Since some tasks, like BASIC scripting and model updates, are not multi-threaded, high-speed processors are highly beneficial. In many cases, a smaller number of faster cores (e.g., 16 cores at 3.2 GHz) will outperform a larger number of slower cores (e.g., 24 cores at 2.4 GHz).
  • Memory (RAM): We recommend between 16 and 48 GB of RAM to handle large raytraces and avoid buffer overflows. However, when tracing more rays than can fit in available RAM, buffering may still occur. 
  • Disk I/O and Storage: To minimize the impact of buffering, having a system with high disk I/O speed is advantageous. This refers to the speed at which data is transferred between the hard disk and RAM. An SSD (Solid State Drive) is recommended for faster performance.
  • Graphics Card (GPU): While FRED and FRED Optimum do not use GPUs for computation, having a good-quality graphics card will enhance the user experience and improve model editing. Photon Engineering has found reliable performance with NVIDIA NVS series graphics cards.
  • FREDmpc (GPU Usage): If you're using FREDmpc, it utilizes GPUs for raytracing and analysis, running up to 150 times faster than CPU-based calculations. In this case, an NVIDIA GPU board is required.

This configuration ensures smooth performance when using FRED, FRED Optimum, or FREDmpc depending on your specific needs.

What versions of FRED are available? Will I need to buy any additional add-ons?

We believe in providing transparent pricing without hidden costs or extra charges for essential features. We aim to offer comprehensive software without making customers pay more for critical functionalities.

However, we recognize that different users have different needs. That’s why we offer three editions of FRED: FRED Standard, FRED Optimum, and FREDmpc. Each edition is designed to cater to various levels of functionality, ensuring you have the right tools for your specific requirements.


For more details, visit our FRED Overview product page.

How frequently are updates released?

FRED is continuously evolving, and for users eager to access the latest features, we offer several developmental versions between official releases.

Official updates are typically released two to three times a year, and these versions undergo rigorous testing both in-house and by our beta testers to ensure reliability.

Installation and Licensing

Can I use multiple network USB dongles on the same computer?

Yes, you can use multiple network USB dongles on the same computer. The total available licenses are the cumulative total of the network keys. Licenses are checked out from the USB keys in the order they were plugged into the computer.

To monitor network licenses, you can access the license server by entering the following address in a web browser: http://localhost:6002.

How Do I Install FRED on My Network and Set Up a SuperPro Network Key?

Follow these detailed instructions to set up FRED with a SuperPro network key. The setup process involves installing and configuring the license server and setting up client computers for network key access. Here's an overview of the necessary steps:

License Server Setup 

FRED Optical Engineering Software uses USB Super-Pro key dongles provided by Thales to implement its software license protection strategy. The license server computer only needs to have the Sentinel Protection Server installed and is not required to have a full installation of the FRED Optical Engineering Software.

Sentinel Protection Installer version 7.7.1 supports the following platforms:

  • Windows XP (32-bit and 64-bit)
  • Windows 7 (32-bit and 64-bit)
  • Windows 8 (32-bit and 64-bit)
  • Windows 8.1 (32-bit and 64-bit)
  • Windows 10 (32-bit and 64-bit)
  • Windows 11 (64-bit)
  • Windows Server 2008 R2 (64-bit)
  • Windows Server 2012 (64-bit)
  • Windows Server 2016 (64-bit)
  • Windows Server 2019 (64-bit)
  • Windows Server 2022 (64-bit)

The following steps should be taken to install or update the network license services running on the server computer:

  • Ensure that the SuperPro USB dongle is unplugged from the server computer before starting.
  • Download the Sentinel Protection Installer (v7.7.1) from one of these locations:
  • Note: Unzip the package and then run the setup.exe file to begin the installation.  Thales provides PDF instructions for installation, which are included in the ZIP package, but can also be found here: Sentinel Protection Installer 7.7.1 Read-Me

    • From your existing FRED installation: <FRED installation path>\Utilities
    • From the Thales website
  • Follow the steps in the Sentinel Protection Installer and select the "Complete" setup option when asked. This will install three necessary services for using the network USB dongle: Sentinel Keys Server, Sentinel Protection Server, and Sentinel Security Runtime. If the installation fails, run the SSD Clean-up Utility, restart your computer, and then try installing the Sentinel Protection software again.
  • Verify the services are running by checking the Windows services list.
  • Check that one of the following ports is open for network communication:
    • For TCP/IP protocol, UDP port 6001
    • For IPX/SPX protocol, SAP messages are sent over 361 Hex

    System administrators should verify that no other applications are using port 6001 by issuing the "netstat -a -b" command.  After allowing the command to fully execute, check the output for [spnsvnt.exe] running on UDP port 6001.  The network key communication will fail if any software other than the sentinel software is using that port (LabView is a common conflicting software.

  • Plug the USB dongle into the license server.
  • Open the Windows Device Manager and check the Universal Serial Bus Controllers group for a device labeled "SafeNet USB SuperPro/UltraPro"
  • Reminder: Check your firewall and antivirus software to ensure they aren't blocking necessary communications.

    Client Setup

    After setting up the license server, follow these steps on each client computer:

    To set up a client computer for use with a SuperPro network key, follow the steps below. If your FRED installation is not up to date or you haven’t received a download link for the latest version, contact CBS Support at support@cbseu.com  for assistance.

  • Install FRED Optical Engineering Software on the client machine.
  • To add a new Windows system environment variable, open the Control Panel and go to the System section. In the dialog that appears, click on Advanced System Settings (requires administrative privileges). Then, click the Environment Variables button to view the list of system environment variables. Select New to create a new system environment variable.
  • The System environment variable should have the name, NSP_HOST
  • The value of the environment variable should be specified as one of the following options (server name or IP address recommended):
  • Environment Variable Value

    Description

    server name, IP address, or IPx address

    This is the fastest and most efficient access mode for locating the server. This value allows a maximum of 63 characters. Designating the server name is the most reliable since the IP address can change in some cases.

    RNBO_SPN_BROADCAST

    Broadcasts a request over the local subnet to find a server with an available license. 

    RNBO_SPN_LOCAL 

    Looks for a hardware key on the local computer (standalone mode using a local server). 

    RNBO_SPN_DRIVER

    Looks for a hardware key on the local computer (standalone mode without a local server).

    RNBO_SPN_SERVER_MODES 

    Tries RNBO_SPN_LOCAL followed by RNBO_SPN_BROADCAST. 

  • Start FRED on the client's computer. If the Dashboard appears, you will see the acquired license information in the top-right corner. If the License Search Strategy dialog appears instead, it means no license was found. In that case, click the "Results Dialog..." button for more details on the license issue. Make sure the "Licensing Technology Search Strategy" option in this dialog is set to either "SuperPro only," "SuperPro then Sentinel," or "Sentinel then SuperPro" for proper license acquisition.
  • I recently upgraded FRED, and my network license has stopped working. What should I do?

    Upgrading a network license to the latest version of FRED involves a two-step process: 1) installing FRED on the local PC and 2) upgrading the Sentinel License Server on the server. Please ensure that both steps have been completed. If they haven't, you can download the Sentinel Protection Installer from the following website: Gemalto Sentinel Downloads.

    Follow these steps to download the installer:

    Select the following search options:

    • User Category: End User
    • Product: Sentinel SuperPro
    • Operating System: Your Operating System
    • Type: Runtime and Device Driver
    • Language: Your Language

    Click Search.

    In the Search Results table, choose the option that includes the FULL installer, not just the driver.

    Click I Accept at the bottom of the End User License Agreement.

    Click on the Download link in the Knowledge Base article to start the download.

    How to Set Up Client Computer License Search for a Network Key?

    You can apply additional parameters on the client computer to control how it searches for a network key. Except for the NSP_HOST_CONFIG option (described below), these parameters should be used alongside the NSP_HOST environment variable. You can set these optional parameters either as additional environment variables or as startup parameters in the FRED desktop icon.

    Sentinel Client Configuration File

    The Sentinel software lets you designate a configuration file (sntlconfig.xml) to manage how the license search is conducted, as outlined in the Safe-net Sentinel documentation. You can specify this file for use by setting the following system environment variable:

    • Variable Name: NSP_HOST_CONFIG
    • Variable Value: Path to a configuration file (ex. "C:\MyDocuments\sntlconfig.xml")
    • Example XML configuration file: sntlconfig.xml

    Specifying License Search by Environment Variables

    Environment variables can be set in Windows by going to Control Panel > System > Advanced: Environment Variables. At a minimum, the NSP_HOST variable must be set. Then, additional environment variables or startup parameters can be specified to provide further control over license access. The following optional environment variables can be specified to refine the network license search:

    System Environment Variable

    Variable Value

    Description

    NSP_HOSTKEYSERNUM

    Key serial number in decimal form (ex. "1B2" in hex = 2*16 0 + 11*161 + 1*162 = 434)

    Designates a specific SuperPro key on the license server from which a license must be acquired. This option requires that the designated key serial number is known. This environment variable takes precedence over the NSP_HOSTKEYTYPE variable.

    NSP_HOSTKEYTYPE

    standard, optimum, or mpc

    Specifies the FRED license type that must be acquired (FRED, FRED Optimum, or FREDmpc)



    Specifying License Search by FRED Startup Parameters

    Instead of specifying a particular hardware key by its serial number using NSP_HOSTKEYSERNUM or a specific version type with NSP_HOSTKEYTYPE, you can set these options as startup parameters for FRED. For the parameter /HostKeySerNum, use the decimal representation of the target key's serial number. For the parameter /HostKeyType, you can choose from "mpc," "optimum," or "standard."

    Example

    Description

    fred.exe /HostKeySerNum=256

    A license is acquired from a SuperPro key with serial number 256 (in decimal), or no license is acquired.

    fred.exe /HostKeyType=optimum

    A license of FRED Optimum is acquired, or no license is acquired.

    Note: Ensure there are no spaces when entering the startup parameters.

    These startup parameters can be issued at the command line or by editing the FRED startup desktop icon "Target" entry (ex. "C:\Program Files\FRED\Bin\Fred.exe" /HostKeyType=optimum).

    Updating Server Dongle Authorization

    You can update the license authorization codes for a network key from any client computer connected to the server in FRED. This update only needs to be done once and will apply to all clients. Follow these steps to update a network license:

    • Launch FRED on a client computer that can access the license you want to update. If multiple FRED SuperPro dongles are hosted on the license server, use the environment variable or startup parameter options described earlier to ensure the client acquires a license from the specific key you are updating.
    • In FRED, go to Help > License Authorization to open the license authorization dialog. Note that if your FRED license has expired, this dialog will automatically appear when you start FRED.
    • Input the license authorization code strings into the dialog box and click Authorize Key.
    • A dialog box will appear indicating whether the license update was successful or failed. The FRED License Status information at the top of the dialog should refresh to show the new authorization codes.

    Sentinel License Monitor

    Once you have the Sentinel license server software installed, you can access the license monitor, which runs as a Java applet through a web browser interface. To view the license monitor, open your web browser and enter the following address: http://localhost:6002.

    Note: many web browsers and security settings may block this applet from running. Internet Explorer tends to be the most compatible option for accessing the license monitor.

    License Log

    You can use the loadserv.exe utility, found in the *..\Program Files\Common Files\SafeNet Sentinel\Sentinel Protection Server* folder, to set up log files for tracking usage and errors related to your network license. The following steps should be taken to set logging for a network license:

    1. Run loadserv.exe

    2. In the Server and Command line option section, click Configure.

    3. Select the "..." browse button in the Usage Log File section and designate a *.log file for collecting license usage information (typically in the same folder as the utility).

    4. Select the "..." browse button in the Error Log File section and designate a *.log file for collecting license error information (typically in the same folder as the utility).

    5. Click OK on the Server Options dialog.

    6. Click Quit on the Sentinel Protection Service Loader dialog.

    7. Restart the Sentinel Services from the Control Panel.

    How to Update Sentinel License Authorization?

    Updated license authorization files may be provided by Photon Engineering when a license maintenance contract is renewed, an upgrade occurs, or when payment is received for a new license. In these situations, CBS sends the license authorization codes electronically in a “vendor to customer” file (.v2c file). You can apply these codes to the corresponding FRED license using the procedures outlined below. The license update needs to be completed only once from any client PC running FRED or through the Sentinel Admin Control Center (ACC).

    Updating a Sentinel License from within FRED

    Note for Network Licenses: The following instructions assume that, when updating a Sentinel license that is a network license: (a) the client PC running FRED is on the same network as the server computer hosting the Sentinel key, and (b) the Sentinel Runtime Environment is installed and running on both the client PC and the network license server.

  • Start a FRED session on the client's PC.
  • If the License Search Strategy dialog opens automatically upon startup, it indicates that the FRED session was unable to acquire a license.
    For a Single-User Dongle:
    • Ensure that the dongle is plugged into the client's PC.
    • Verify that the Sentinel License Search Strategy allows for the acquisition of the local dongle license. If not, define a search strategy that permits connection to the local dongle and restart FRED.
  • For a Single-User Softkey, Network Dongle, or Network Softkey:
    • Check that the Sentinel Runtime Environment is installed and running on the client PC by opening a web browser and navigating to http://localhost:1947. You should be able to access the Sentinel Admin Control Center (ACC).
    • Use the ACC to confirm that the license being updated is visible in the Sentinel Keys list. If not, go to Help > License Search Strategy, and click the Sentinel Dialog button to open the Sentinel License Authorization dialog.
  • In the License Registration Actions section of the (Sentinel) FRED License Authorization dialog, select the "Apply update (.v2c, .h2h, .r2h, or .h2r)" option from the drop-down menu.
  • In the Parameters section, click the "..." button in the "Select Update File" row to browse to the .v2c file provided by CBS.
  • Click the "Do Action" button in the License Registration Actions section. Please note that a warning message will appear, indicating that there will be an interruption to the license service due to the update.
  • If the license update is successful, you will see a message stating: "Successful update. You can close and then reopen this License Authorization Dialog to view the updated parameters."
    It may take up to a minute for the updated license information to be displayed in the License Authorization dialog. Alternatively, you can close and reopen FRED to see the updated license information.
  • If the license update is unsuccessful, an error message will appear in the Action Status section of the (Sentinel) FRED License Authorization dialog. For a list of potential licensing error codes, refer to the Sentinel Error Codes section below.

    Note: The updated license parameters for the key can only be viewed in the License Authorization Dialog if the updated key is currently connected to FRED. You can also view the updated license authorization for the key using the Features option in the ACC for the key of interest.


    Related questions:

    • Sentinel type Single-User Softkey
    • Sentinel type Network Softkey
    What are the Sentinel Error Codes and Their Meanings?

    The following table lists the error codes that may be encountered when using the Sentinel licensing implementation. This information can help debug failed license update operations.

    Code

    Status

    Description

    0

    HASP_STATUS_OK

    Request was successfully completed

    1

    HASP_MEM_RANGE

    Request exceeds the Sentinel protection key memory range

    2

    HASP_INV_PROGNUM_OPT

    Legacy HASP HL Run-time API: Unknown/Invalid Feature ID option

    3

    HASP_INSUF_MEM

    System is out of memory

    4

    HASP_TMOF

    Too many open sessions exist

    5

    HASP_ACCESS_DENIED

    Access to Feature was denied

    6

    HASP_INCOMPAT_FEATURE

    Legacy decryption function cannot work on Feature

    7

    HASP_HASP_NOT_FOUND

    Sentinel protection key is no longer available

    8

    HASP_TOO_SHORT

    Encrypted/decrypted data length too short to execute function call

    9

    HASP_INV_HND

    Invalid handle was passed to function

    10

    HASP_INV_FILEID

    Specified File ID is not recognized by API

    11

    HASP_OLD_DRIVER

    Installed driver is too old to execute function

    12

    HASP_NO_TIME

    Real-time clock (RTC) not available

    13

    HASP_SYS_ERROR

    Generic error from host system call

    14

    HASP_NO_DRIVER

    Required driver is not installed

    15

    HASP_INV_FORMAT

    File format for update is not recognized

    16

    HASP_REQ_NOT_SUPP

    Unable to execute function in this context

    17

    HASP_INV_UPDATE_OBJ

    Binary data that was passed to function does not contain an update

    18

    HASP_KEYID_NOT_FOUND

    Sentinel protection key was not found

    19

    HASP_INV_UPDATE_DATA

    Required XML tags were not found



    OR



    Contents in binary data are missing or invalid

    20

    HASP_INV_UPDATE_NOTSUPP

    Update request is not supported by Sentinel protection key

    21

    HASP_INV_UPDATE_CNTR

    Update counter is not set correctly

    22

    HASP_INV_VCODE

    Invalid Vendor Code was passed

    23

    HASP_ENC_NOT_SUPP

    Sentinel protection key does not support encryption type

    24

    HASP_INV_TIME

    The time value that was passed is outside the supported value range

    25

    HASP_NO_BATTERY_POWER

    The real-time clock battery has run out of power

    26

    HASP_NO_ACK_SPACE

    Acknowledge data that was requested by the update ack_data parameter is NULL

    27

    HASP_TS_DETECTED

    Program is running on a terminal server

    28

    HASP_FEATURE_TYPE_NOT_IMPL

    Requested Feature type is not implemented

    29

    HASP_UNKNOWN_ALG

    Unknown algorithm used in V2C or V2CP file

    30

    HASP_INV_SIG

    Signature verification operation failed

    31

    HASP_FEATURE_NOT_FOUND

    Requested Feature not found

    32

    HASP_NO_LOG

    Access log not enabled

    33

    HASP_LOCAL_COMM_ERR

    Communication error occurred between the API and the local Sentinel License Manager

    34

    HASP_UNKNOWN_VCODE

    Vendor Code is not recognized by API

    35

    HASP_INVSPEC

    Invalid XML specification exists

    36

    HASP_INV_SCOPE

    Invalid XML scope exists

    37

    HASP_TOO_MANY_KEYS

    Too many Sentinel protection keys are currently connected

    38

    HASP_TOO_MANY_USERS

    Too many users are currently connected

    39

    HASP_BROKEN_SESSION

    Session was interrupted. This can occur when certain updates are applied to the license while a session is active. For example:

    A Feature required by the session was deleted.

    The license was canceled.

    The network (remote license) support setting for a required Feature was changed. (In this case, all sessions will be interrupted, including local sessions.)

    40

    HASP_REMOTE_COMM_ERR

    Communication error occurred between local and remote Sentinel License Managers

    41

    HASP_FEATURE_EXPIRED

    Feature expired or no executions remain

    42

    HASP_OLD_LM

    Sentinel License Manager version too old

    43

    HASP_DEVICE_ERR

    For a Sentinel SL key, an input/output error occurred in the secure storage area



    OR



    For a Sentinel HL key, a USB communication error occurred

    44

    HASP_UPDATE_BLOCKED

    Update installation not permitted

    45

    HASP_TIME_ERR

    System time has been tampered with

    46

    HASP_SCHAN_ERR

    Communication error occurred in the secure channel

    47

    HASP_STORAGE_CORRUPT

    Corrupt data exists in secure storage area of Sentinel protection key

    48

    HASP_NO_VLIB

    The customized vendor library (haspvlib.vendorID.*) cannot be located

    49

    HASP_INV_VLIB

    Unable to load Vendor library

    50

    HASP_SCOPE_RESULTS_EMPTY

    Unable to locate any Feature that matches the scope

    51

    HASP_VM_DETECTED

    Protected application is running on a virtual machine, but one or more Features are not enabled for virtual machines.



    OR



    The user attempted to rehost a protection key from a physical machine to a virtual machine. However, none of the Features contained in the protection key are enabled for virtual machines.

    52

    HASP_HARDWARE_MODIFIED

    Sentinel SL key incompatible with machine hardware. Sentinel SL key locked to different hardware.



    OR



    In the case of a V2C or V2CP file, conflict between Sentinel SL key data and machine hardware data. Sentinel SL key locked to different hardware.

    53

    HASP_USER_DENIED

    Login denied because of user restrictions

    54

    HASP_UPDATE_TOO_OLD

    Trying to install a V2C or V2CP file with an update counter that is out of sequence with update counter in the Sentinel protection key. Values of update counter in file are lower than those in Sentinel protection key.

    55

    HASP_UPDATE_TOO_NEW

    Trying to install a V2C or V2CP file with an update counter that is out of sequence with the update counter in the Sentinel protection key. First value in file is more-than-1 greater than value in Sentinel protection key.

    56

    HASP_OLD_VLIB

    Vendor library is too old

    57

    HASP_UPLOAD_ERROR

    Check in of a file (such as V2C, H2R) using Admin Control Center failed, possibly because of illegal format

    58

    HASP_INV_RECIPIENT

    Invalid XML RECIPIENT parameter

    59

    HASP_INV_ACTION

    Invalid XML action parameter

    60

    HASP_TOO_MANY_PRODUCTS

    The scope specified in the Transfer function does not specify a unique Product

    61

    HASP_INV_PRODUCT

    Invalid Product information

    62

    HASP_UNKNOWN_RECIPIENT

    Update can only be applied to recipient machine specified in the Detach function, not to this machine

    63

    HASP_INVALID_DURATION

    Invalid detached license duration period specified. Duration must be less than or equal to maximum allowed for this license.



    OR



    Duration extension is to a date earlier than the expiration date of the current detached license.

    64

    HASP_CLONE_DETECTED

    Cloned Sentinel SL storage was detected. Feature is unavailable.

    65

    HASP_UPDATE_ALREADY_ADDED

    The specified V2C or or V2CP update was already installed in the License Manager service

    66

    HASP_HASP_INACTIVE

    Specified Key ID is in Inactive state

    67

    HASP_NO_DETACHABLE_FEATURE

    No detachable Feature exists in the specified key from which the detached license is requested

    68

    HASP_TOO_MANY_HOSTS

    The specified scope does not specify a unique host

    69

    HASP_REHOST_NOT_ALLOWED

    Rehost action is not allowed for the specified Key ID

    70

    HASP_LICENSE_REHOSTED

    Original license has been transferred to another machine. Therefore, the license cannot be returned to the source machine.

    71

    HASP_REHOST_ALREADY_APPLIED

    Old rehost license cannot be applied. A rehost-counter mismatch occurred

    72

    HASP_CANNOT_READ_FILE

    A V2C or V2CP file was not found, or access was denied

    73

    HASP_EXTENSION_NOT_ALLOWED

    The license cannot be extended because the number of detached licenses is greater than the number of concurrent licenses allowed

    74

    HASP_DETACH_DISABLED

    The user attempted to detach a Product from a network license hosted on a virtual machine. However, none of the Features included in the Product are enabled for virtual machines.

    75

    HASP_REHOST_DISABLED

    The user attempted to rehost a protection key from a virtual machine. However, none of the Features contained in the protection key are enabled for virtual machines.

    76

    HASP_DETACHED_LICENSE_FOUND

    The user attempted to format an SL-AdminMode key or to migrate an SL-Legacy key to an SL-AdminMode key. However, a Product is currently detached from the key.

    77

    HASP_RECIPIENT_OLD_LM

    For a rehost operation: The fingerprint of the target machine was collected using tools (RUS utility or Licensing API) earlier than Sentinel LDK v.7.0.

    78

    HASP_SECURE_STORE_ID_MISMATCH

    A secure storage ID mismatch occurred.

    79

    HASP_DUPLICATE_HOSTNAME

    The license fingerprint is bound to a specific hostname; however, two or more machines with this hostname were found in the network. As a result, the license cannot be used.

    80

    HASP_MISSING_LM

    A protected application tried to log in to a Feature that supports concurrency on a Sentinel HL (Driverless configuration) key. The Sentinel LDK License Manager service is not active on the computer where the key is located.

    81

    HASP_FEATURE_INSUFFICIENT_EXECUTION_COUNT

    A protected application tried to consume multiple executions while logging in to a Feature. However, the license does not contain the number of executions that were requested.

    83

    HASP_HASP_DISABLED

    A Sentinel HL (Driverless configuration) key was disabled because a user attempted to tamper with the key or with the protected application.

    400

    HASP_NO_API_DYLIB

    Unable to locate dynamic library for API

    401

    HASP_INVALID_API_DYLIB

    Dynamic library for API is invalid

    500

    HASP_INVALID_OBJECT

    Object was incorrectly initialized

    501

    HASP_INVALID_PARAMETER

    Scope string is too long (maximum length is 32 KB)

    502

    HASP_ALREADY_LOGGED_IN

    Logging in twice to same object

    503

    HASP_ALREADY_LOGGED_OUT

    Logging out twice from same object

    525

    HASP_OPERATION_FAILED

    Incorrect use of system or platform

    698

    HASP_NOT_IMPL

    Requested function was not implemented



    OR



    In the case of the API Dispatcher, API DLL is too old

    699

    HASP_INT_ERR

    Internal error occurred in the API

    What is a Sentinel Type Single-User Softkey License and How Does It Work?

    A Sentinel Type Single-User Softkey License is a licensing model that allows users to run the FRED software on a client PC, utilizing a softkey for authorization. Here’s how it works and what you need to know:

    Functionality:

    • One or more FRED sessions can be run on the client PC as long as the Sentinel softkey is hosted locally and the license search strategy is configured to access it.
    • FRED can be executed through Remote Desktop as long as the softkey is hosted locally on the remote PC.
    • The softkey is portable, meaning it can be moved from one PC to another without restrictions on the user.

    Installation Requirements:

    • The Sentinel Runtime Environment must be installed on the client PC to enable the softkey's functionality.

    License Management:

    • To instantiate a softkey license, the client PC must be able to exchange XML data files with Photon Engineering.
    • Rehosting the softkey (moving it to another computer) requires the ability to exchange these XML files between the current host and the new host, without involving Photon Engineering.
    • The XML data files contain strings of data that can be several thousand characters long. If you are unable, or unwilling, to exchange XML data files to facilitate license instantiation, updating and/or rehosting, softkeys may not be appropriate for your network environment.

    Protection Against Loss:

    • Users are responsible for safeguarding their softkey from theft or loss, as outlined in the FRED Optical Engineering Software EULA. Photon Engineering does not replace lost keys.
    • It’s advisable to insure your softkey for the software's value, similar to other valuable assets.

    Best Practices:

    • If you plan to modify the configuration of a workstation with a softkey, rehosting it to another computer during modifications can help prevent loss due to system failures or activation of the Sentinel clone detection feature, which may render the softkey unusable.
    • This licensing model offers flexibility for users who need to run FRED across different machines, as long as they are equipped with the necessary software and adhere to the outlined protocols.
    How Do I Install a Single-User Sentinel Softkey on My Client Computer?

    To install a Single-User Sentinel Softkey on your client computer, follow these steps to prepare the system:

    Install the Sentinel Runtime Environment:

    Download FRED from the Photon Engineering website and run the installer. During installation, ensure you select the Sentinel Runtime Environment component, which enables communication with the locally hosted softkey.

    Check Windows Services:

    Open the Windows services list and verify that the Sentinel LDK License Manager service is present and its status is set to Running.

    Configure FRED License Search Strategy:

    • Start FRED. If the License Search Strategy dialog does not open automatically, navigate to Help > License Search Strategy.
    • Set the License Technology Search Strategy to Sentinel Only. If necessary, you can refine access to specific Sentinel keys in the Sentinel License Search Strategy (Sentinel keys only) section of the dialog.
    • Click OK on the License Search Strategy dialog. The new settings will take effect the next time you start FRED.

    Generate a New Softkey License or Rehost an Existing One:

    • If you use a newly purchased Sentinel softkey, Trial license, or Gratis license, proceed with the Generating a New Softkey License instructions.
    • If you are rehosting an existing Sentinel softkey to this client computer, refer to the Softkey Rehosting and Detachment instructions linked below.

    Warning: If the computer already has the Sentinel LDK License Manager installed, reinstalling using any of the above options may disrupt existing services. If this is the case, you might want to skip to the next section, Generating a New Softkey License.

    What is the process for generating a new Sentinel softkey license?

    To generate a new softkey license, the customer needs to exchange files with CBS. The customer will send CBS a customer-to-vendor (.c2v) "fingerprint" file containing the client's PC identification information for the softkey. CBS will then generate and return a vendor-to-customer (.v2c) file to the customer. When applied by the customer, this file will create the softkey license.

    Generating a new softkey license requires a coordinated file exchange with CBS Europe (CBS Inc.). Here’s how to do it:

  • Start FRED: If the License Search Strategy dialog does not open automatically, navigate to Help > License Search Strategy and press the Sentinel Dialog button.
  • Create Fingerprint: In the License Registration Actions section, select the Fingerprint (.c2v) option.
  • Designate Output: Use the “...” button in the Create Fingerprint (.c2v) row to choose a file name and location for the .c2v file. If you don't modify it, FRED will save the .c2v file to your Desktop.
  • What is a fingerprint file and what information does it contain?

    The following information regarding machine fingerprints is taken from the Thales Sentinel LDK version 7.8 Software Licensing and Protection Guide:

    As part of the Activation process for a licensed Product, the Sentinel LDK License Manager creates a “fingerprint” of the computer on which the protected software is installed. This fingerprint contains hash values of a number of characteristics of the computer. This fingerprint (referred to as the reference fingerprint) is stored within the secure storage on the computer and is also returned to the Vendor in the C2V file.  Each time the end user starts the protected software, the Sentinel LDK License Manager creates a new fingerprint of the computer (referred to as the system fingerprint) and compares it to the reference fingerprint. If the system and reference fingerprints are identical or sufficiently close (as described in this appendix), Sentinel LDK allows the protected software to operate.

    This scheme uses various components such as CPU, ethernet card, optical drive, and PCI card slot peripherals, along with the hard drive serial number and motherboard ID to verify fingerprints. This scheme provides enhanced reliability against false positive clone detection and maintains the inherent security of the scheme.

  • Execute Action: Press the Do Action button and check the Action Status area to confirm the operation was successful.
  • Send .c2v File: Email the .c2v file generated in step 4 to CBS Europe at support@cbseu.com
  • Once you receive a .v2c file from CBS Europe follow these steps:

  • Access Sentinel Admin Control Center: In a web browser, navigate to http://localhost:1947 on the same computer that generated the .c2v file.
  • Update/Attach License: Click on the Update/Attach link in the left Options section.
  • Select File: Press the Choose File button and select the .v2c file you received from CBS Europe.
  • Apply the File: Press the Apply File button. A message will indicate whether the operation was successful.
  • Check the New License: Click on the Sentinel Keys link on the left side of the ACC. Ensure the new softkey is listed, and use the Features button to view its available features and any restrictions.
  • How do I install a Network Type Sentinel Softkey for FRED?

    The Sentinel Runtime Environment must be installed on the license server to allow the use of a Sentinel network softkey. Follow the steps below to prepare the license server for hosting a network softkey. If the Sentinel LDK License Manager is already installed on the server, you can skip ahead to the "Generating a New Softkey License" section.

    Preparing the License Server:

  • Install the Sentinel Runtime Environment with administrative privileges. Important: If the license server already has the Sentinel LDK License Manager installed, re-installing it using any of the methods below will interrupt the existing service. You can access the installer package in one of the following ways:
    • Download HASPUserSetup.exe from the Thales website: Sentinel Runtime Environment Setup. (Additional installers for different OS platforms and command-line installations are also available on the Thales website).
    • Download HASPUserSetup.exe from the Photon Engineering website.
    • Copy Sentinel Runtime Environment Setup.exe from a PC with an existing FRED installation. The file is located in the <FRED install dir>\Utilities directory.
    • Install FRED on the server and select the Sentinel Runtime Environment component when prompted (the Hardware Key Driver and Remote Service options are not required).

    2. Open the Windows services list and check that the Sentinel LDK License Manager service is present and that its status is Running.

    3. Open a web browser and navigate to http://localhost:1947 to check that the Sentinel Admin Control Center (ACC) is accessible.

    The server is now ready to host a network softkey license. If this is your first time generating a network softkey license, please refer to the "Generating a New Softkey License" section below. If you are transferring an existing network softkey license to this server, follow the instructions in the "Softkey Rehosting and Detachment" section.

    What is the process for generating a new Sentinel softkey license?

    To generate a new softkey license, the customer needs to exchange files with CBS. The customer will send CBS a customer-to-vendor (.c2v) "fingerprint" file containing the client's PC identification information for the softkey. CBS will then generate and return a vendor-to-customer (.v2c) file to the customer. When applied by the customer, this file will create the softkey license.

    Generating a new softkey license requires a coordinated file exchange with CBS Europe (CBS Inc.). Here’s how to do it:

  • Start FRED: If the License Search Strategy dialog does not open automatically, navigate to Help > License Search Strategy and press the Sentinel Dialog button.
  • Create Fingerprint: In the License Registration Actions section, select the Fingerprint (.c2v) option.
  • Designate Output: Use the “...” button in the Create Fingerprint (.c2v) row to choose a file name and location for the .c2v file. If you don't modify it, FRED will save the .c2v file to your Desktop.
  • What is a fingerprint file and what information does it contain?

    The following information regarding machine fingerprints is taken from the Thales Sentinel LDK version 7.8 Software Licensing and Protection Guide:

    As part of the Activation process for a licensed Product, the Sentinel LDK License Manager creates a “fingerprint” of the computer on which the protected software is installed. This fingerprint contains hash values of a number of characteristics of the computer. This fingerprint (referred to as the reference fingerprint) is stored within the secure storage on the computer and is also returned to the Vendor in the C2V file.  Each time the end user starts the protected software, the Sentinel LDK License Manager creates a new fingerprint of the computer (referred to as the system fingerprint) and compares it to the reference fingerprint. If the system and reference fingerprints are identical or sufficiently close (as described in this appendix), Sentinel LDK allows the protected software to operate.

    This scheme uses various components such as CPU, ethernet card, optical drive, and PCI card slot peripherals, along with the hard drive serial number and motherboard ID to verify fingerprints. This scheme provides enhanced reliability against false positive clone detection and maintains the inherent security of the scheme.



    4. Execute Action: Press the Do Action button and check the Action Status area to confirm the operation was successful.

    5. Send .c2v File: Email the .c2v file generated in step 4 to CBS Europe at support@cbseu.com

    Once you receive a .v2c file from CBS Europe follow these steps:

  • Access Sentinel Admin Control Center: In a web browser, navigate to http://localhost:1947 on the same computer that generated the .c2v file.
  • Update/Attach License: Click on the Update/Attach link in the left Options section.
  • Select File: Press the Choose File button and select the .v2c file you received from CBS Europe.
  • Apply the File: Press the Apply File button. A message will indicate whether the operation was successful.
  • Check the New License: Click on the Sentinel Keys link on the left side of the ACC. Ensure the new softkey is listed, and use the Features button to view its available features and any restrictions.
  • Preparing the Client's Computer

    To allow a client PC to access the network license, follow these steps:

  • Install FRED on the client PC, ensuring the Sentinel Runtime Environment component is selected during installation. This component is necessary for the client PC to communicate with the server hosting the network softkey.
  • Open the Windows Services list and confirm that the Sentinel LDK License Manager service is present and running.
  • 3. Start FRED on the client's PC.

    4. If the License Search Strategy dialog appears automatically upon startup, it indicates that FRED failed to acquire a license. This issue typically arises from one of two common problems:

    • The License Search Strategy on the client PC is not properly configured to locate the network license hosted remotely. In this case, the search strategy needs to be reconfigured, and FRED should be restarted. Ensuring that the "Licensing Technology Search Strategy" is set to either "Sentinel Only" or "Sentinel then SuperPro" may resolve the issue.

    • The Sentinel license managers on the client and server computers are not able to communicate over the network. This can be checked by opening a web browser and navigating to the Sentinel Admin Control Center (ACC) at http://localhost:1947. In the Sentinel Keys list, check if the network license is visible. If not, go to the Configuration settings in the ACC and, under the "Access to Remote License Managers" tab, enable the options for "Allow access to remote licenses," "Broadcast search for remote licenses," and "Aggressive search for remote licenses."

    If, upon starting FRED, the user is not prompted with a dialog upon FRED startup, then a license has been acquired.  Proceed to step 5 for more information on checking the specifics of the license that was acquired.

    5. Navigate to Help > License Authorization to open the licensing dialog for the connected FRED license.  Confirm that:

    • The dialog title is "FRED License Authorization (Sentinel)"
    • The License Status information corresponds to the desired Sentinel key

    If the above items are confirmed, then the setup is complete.  If the license information does not correspond to the desired Sentinel key, proceed to step 6.

    6. Navigate to Help > License Search Strategy.  Reconfigure the search strategy to specifically connect to the desired Sentinel license.  Restart FRED and repeat step 4 to confirm that the desired key is connected.

    How to check my dongle serial number

    NOTE: This guide only applies to FRED versions before 19.40.  As of version 19.40, the key serial number is always displayed in the license authorization dialog.

    This guide describes the procedure for determining the internal serial number of the license FRED is currently accessing.  This can be useful when debugging licensing issues or attempting to identify which dongle is being used in an environment where multiple dongles are available.  

    Note that the internal key serial number is different from the FRED key #, if you need this then you should contact Photon Engineering at fredsupport@photonengr.com and provide the internal serial number information retrieved from this process and we will provide you with the corresponding FRED key #.

  • Open a command prompt
  • Change Directories to the \Bin directory of the FRED installation
  • Start FRED with the "/sn" option by issuing: Fred.exe /sn
  • From the Dashboard, press "License Info" to open the License Authorization Dialog.  Or, go to Help > License Authorization.
  • The internal key serial number is listed in text at the bottom center of the resulting License Authorization Dialog.  The serial number is in hexadecimal.
  • This process is illustrated through the screenshots below.  In the final step, showing the License Authorization Dialog, the internal key serial number being used is 0x360.  This serial number should be provided to Photon Engineering in order to lookup the corresponding FRED key #.

    Figure 1 - Command Prompt
    CD to \Bin directory
    /sn flag
    License Authorization
    License Auth Dialog
    How to check my dongle serial number

    NOTE: This guide only applies to FRED versions before 19.40.  As of version 19.40, the key serial number is always displayed in the license authorization dialog.

    This guide describes the procedure for determining the internal serial number of the license FRED is currently accessing.  This can be useful when debugging licensing issues or attempting to identify which dongle is being used in an environment where multiple dongles are available.  

    Note that the internal key serial number is different from the FRED key #, if you need this then you should contact Photon Engineering at fredsupport@photonengr.com and provide the internal serial number information retrieved from this process and we will provide you with the corresponding FRED key #.

  • Open a command prompt
  • Change Directories to the \Bin directory of the FRED installation
  • Start FRED with the "/sn" option by issuing: Fred.exe /sn
  • From the Dashboard, press "License Info" to open the License Authorization Dialog.  Or, go to Help > License Authorization.
  • The internal key serial number is listed in text at the bottom center of the resulting License Authorization Dialog.  The serial number is in hexadecimal.
  • This process is illustrated through the screenshots below.  In the final step, showing the License Authorization Dialog, the internal key serial number being used is 0x360.  This serial number should be provided to Photon Engineering in order to lookup the corresponding FRED key #.

    Figure 1 - Command Prompt
    CD to \Bin directory
    /sn flag
    License Authorization
    License Auth Dialog
    Moving (rehosting) a Sentinel Softkey

    Sentinel softkeys can be moved between computers using the "rehosting" procedures described below.  In this context, the "host" computer is the one on which the softkey is currently installed and the "recipient" computer is the one receiving the softkey.

    A rehostable softkey is indicated by the "rehostable" tag and icon displayed in the Sentinel Keys page of the ACC on the host computer. If your license does not have this tag and icon then it cannot be rehosted.

    It is important to note that moving a softkey will interrupt any FRED sessions currently connected to the softkey - you can use the ACC to check whether the softkey being moved has any active FRED sessions.

    The general flow of moving a softkey from a host computer to the recipient computer is the following:

    1.  Generate a computer ID file on the recipient computer (.id file)
    2.  On the host computer, use the recipient ID file to generate a "host-to-host" file (.h2h file, this removes the softkey from the host)
    3.  On the recipient computer, apply the host-to-host file (this re-instantiates the softkey on the recipient)

    Two procedures for softkey rehosting are provided below, one procedure that uses the FRED interface on both the recipient and host computers, and a second procedure using the Sentinel ACC interface on the recipient computer.  The end result of the license rehosting will be the same regardless of the procedure used.IMPORTANT: We do not recommend rehosting a network softkey that has detached licenses.  Cancel the license detachments, or wait until all detached licenses have expired and are returned to the host, before proceeding with the softkey rehosting.

    Rehosting a softkey using FRED

    The following steps are performed on the recipient computer
    1.  Start FRED.  It does not need to be configured to access the Sentinel softkey being moved.
    2.  If the License Search Strategy dialog does not automatically open, Navigate to Help > License Search Strategy.  Press the "Sentinel Dialog" button.
    3.  Select the "Recipient information for detach or rehost (.id)" option in the License Registration Actions section of the dialog.  Use the "..." button in the "Create recipient information file (.id)" row to designate a custom output file name and location.  If left unmodified, FRED will write the output .id file to the Desktop.
    4.  Press the "Do Action" button in the License Registration Actions section of the dialog.  Check that the Action Status portion of the dialog reports a successful generation of the file.  Make the .id file accessible to the license manager of the host computer for the next steps.
    The following steps are performed on the host computer
    5.  Start FRED.  
    6.  If the License Search Strategy dialog does not automatically open, Navigate to Help > License Search Strategy.  Press the "Sentinel Dialog" button.

    IMPORTANT - Ensure that the FRED session is NOT connected to the softkey being rehosted, which would cause the rehosting procedure to fail

    It is generally necessary to change the FRED License Search Strategy configuration to make sure that the FRED session does not connect to the softkey being rehosted. This can be accomplished by configuring the FRED License Search Strategy as shown below and then closing and restarting FRED so that the changes take effect.

    When restarting FRED after this step you should be faced with the License Search Strategy dialog (above) and can proceed to step 7.
    7.  Select the "Rehost softkey (.h2h)" option in the License Registration Actions section of the dialog.  
    8.  Use the "..." button in the "Create rehost file (.h2h)" row to designate a custom output file name and location for the host-to-host file.  If left unmodified, FRED will write the output .h2h file to the Desktop.
    9.  Use the "..." button in the "Select recipient information file (.id)" row to browse to the recipient ID file generated from step 4 above.
    10.  Use the "Key identifier" listbox to select the softkey intended to be moved from the host.
    11.  Press the "Do Action" button in the License Registration Actions section of the dialog.  A message will be presented indicating that proceeding with the current action will interrupt any FRED instances connected to the softkey being moved.  Press OK to continue.  Check that the Action Status portion of the dialog reports a successful generation of the file.

    Make the the output .h2h file accessible to the license manager of the recipient computer for the next steps.
    12.  Though not required, you may check the Sentinel Keys page of the ACC on the host computer to confirm that the softkey is no longer present on the host computer.
    The following steps are performed on the recipient computer
    13.  In a FRED session, navigate to Help > License Search Strategy.  Press the "Sentinel Dialog" button.
    14.  Select the "Apply update (.v2c .h2h .r2h or .h2r)" option in the License Registration Actions section of the dialog.  Use the "..." button in the "Select update (.v2c .h2h .r2h or .h2r)" row to open a file browser dialog allowing selection of the .h2h file generated in step 11 above.  Note that in the file browser dialog there is a file extension filter on the bottom right of the dialog (default is "Update Files *.v2c") that can be changed to allow visibility of the desired file types.
    15.  Press the "Do Action" button in the License Registration Actions section of the dialog.  A message will be presented indicating that proceeding with the current action will interrupt any FRED instances connected to the softkey being moved.  Press OK to continue.  If the rehosting operation is successful, a message box will be presented indicating so.
    16.  Open a web browser and navigate to the Sentinel Admin Control Center (ACC) at http://localhost:1947.  Click on the Sentinel Keys link in the Options list on the left hand side of the webpage.  Check to see that the rehosted license appears in the key list.

    Rehosting a softkey using the Sentinel Admin Control Center (ACC)

    Due to limitations in the ACC capability (as of ACC version 7.103), rehosting a Sentinel softkey cannot be performed through the use of the ACC by itself.  Specifically, generating the host-to-host file on the host computer requires the use of FRED as described below.

    The following steps are performed on the recipient computer using the ACC
    1.  In a web browser, navigate to http://localhost:1947 to access the Sentinel Admin Control Center running on the recipient computer.
    2.  Click on the Diagnostics link of the Options menu on the left hand side of the ACC.
    3.  Press the "Create ID File" button on the far right hand side of the second row in the Diagnostics page.  An *.id file will be saved by the web browser subject to your web browsers file download settings.  Make the .id file accessible to the license manager of the host computer for the next steps.
    The following steps are performed on the host computer using FRED
    4.  Start FRED.  
    5.  If the License Search Strategy dialog does not automatically open, Navigate to Help > License Search Strategy.  Press the "Sentinel Dialog" button.

    Ensure that the FRED session is NOT connected to the softkey being rehosted, which would cause the rehosting procedure to fail.  If necessary, change the FRED License Search Strategy configuration to make sure that the FRED session does not connect to the softkey being rehosted.  This can be accomplished by configuring the FRED License Search Strategy as shown below and then closing and restarting FRED so that the changes take effect.

    6.  Select the "Rehost softkey (.h2h)" option in the License Registration Actions section of the dialog.  
    7.  Use the "..." button in the "Create rehost file (.h2h)" row to designate a custom output file name and location for the host-to-host file.  If left unmodified, FRED will write the output .h2h file to the Desktop.
    8.  Use the "..." button in the "Select recipient information file (.id)" row to browse to the recipient ID file generated from step 4 above.
    9.  Use the "Key identifier" listbox to select the softkey intended to be moved from the host.
    10.  Press the "Do Action" button in the License Registration Actions section of the dialog.  A message will be presented indicating that proceeding with the current action will interrupt any FRED instances connected to the softkey being moved.  Press OK to continue.  Check that the Action Status portion of the dialog reports a successful generation of the file.

    Make the the output .h2h file accessible to the license manager of the recipient computer for the next steps.
    11.  Though not required, you may check the Sentinel Keys page of the ACC on the host computer to confirm that the softkey is no longer present on the host computer.
    The following steps are performed on the recipient computer using the ACC
    12.  In a web browser, navigate to http://localhost:1947 to access the Sentinel Admin Control Center running on the recipient computer.
    13.  Click on the Update/Attach link of the Options menu on the left hand side of the ACC.
    14.  Press the "Browse" button in the Apply File section of the page and browse to the .h2h file generated from step 10 above.  The web interface will present a message indicating success or failure of the rehosting operation.
    15.  Click on the "Sentinel Keys" link of the Options menu on the left hand side of the ACC.  Confirm that the rehosted key is now available in the keys list.
    Overview of Licensing Terms and Authorization for FRED Software

    This article aims to clarify the terminology used in the licensing of FRED and how these terms relate to the information displayed in the Help License Authorization window within the FRED software.

    • USB Key / Hard Key / Hardware Key / Dongle: This refers to a physical license protection mechanism that utilizes a USB hardware device containing the FRED license. The device must be connected to your computer to run FRED. There are two types of USB keys: the older "SuperPro" keys and the newer "Sentinel" keys. Transferring the FRED license from one machine to another requires physically moving the USB key between the devices.
    • Softkey / Software Key / Soft License: This is a non-physical, software-based license protection system that installs specific codes on a machine to activate the license, enabling FRED to run. Softkeys are always Sentinel keys.
    • Network License: This type of license allows a certain number of concurrent seats to be installed on a network-accessible host machine or server, enabling licenses to be shared among a group of users. Any authorized user on the network can access the license, thereby consuming one of the available seats. Network licenses are also referred to as "floating licenses" and can be issued as either USB keys or Softkeys.
    • Standalone: A single-seat license issued via a USB key or, in the case of a Softkey, locked to a specific machine. Only users of that machine or those with access to the USB key can use the license. A standalone softkey license may also be called "node-locked."
    • Seats: The maximum number of users permitted to access the license simultaneously. Standalone licenses always have one (1) seat, while network licenses can have one (1) or more seats. The seat count is indicated in the License Authorization dialog.
    • Concurrency: The ability for multiple licensed users to access the software simultaneously, based on the seat count. Network licenses support concurrency, whereas standalone licenses do not.
    • Support Expiry: All licenses are sold with a defined support period during which the license holder(s) can receive program updates (new releases) and request technical assistance. The support expiry date indicates when this support period ends and is displayed in the License Authorization dialog.
    • Max Authorized Version: This indicates the maximum FRED version that the license can run, which is linked to the support expiry date and is listed in the License Authorization dialog.
    • Software Expiry: The date after which the license will cease to operate. This applies only to Leases, Trials, and University Gratis licenses and is noted in the License Authorization dialog.
    • Permanent: A license that does not have a software expiry date and will continue to function beyond the support expiry date. This is also known as a Perpetual license.
    • Lease: A license that will only operate until the software expiry date, after which it will no longer be valid. The software expiry date is indicated in the License Authorization dialog. Another term for this is "Subscription."
    • Key Label: A short, typically five-digit or fewer, user-friendly unique ID number for the key, also known as the "Key Number," which is displayed in the License Authorization dialog.
    • Serial Number: A longer internal reference number for the license used by the licensing engine, listed in the License Authorization dialog.
    • SuperPro Key: An older USB-based software licensing technology offered by Thales.
    • Sentinel Key: A newer software licensing technology from Thales, available as both a hard key and a soft key.
    Should I uninstall older versions of FRED before installing a newer version?

    No, it is not necessary to uninstall older versions of FRED. The newer version will be installed in a separate directory with a path name that reflects the version number.

    Note: Keep in mind that FRED files are not forward-compatible. This means that a file saved in a newer version of FRED cannot be opened in earlier versions of the software.

    Why does my FRED copy show an expiration date if the licenses are permanent?

    When a new copy of FRED is ordered, the USB dongle is initially provided with temporary license authorization codes. These temporary codes establish a Software Expiration Date, after which the program will cease to function. Once payment for the license is confirmed, permanent license authorization codes are emailed to the end user, along with instructions for updating the USB dongle to activate the new codes. After this update, the Software Expiration Date will display as “None.”

    How do I enter my license authorization and update my license codes?

    If your current license codes have expired, a License Authorization dialog box will appear when you start FRED. To manually access the License Authorization dialog box, go to Menu > Help > License Authorization in the menu.

    When you renew your FRED license, you will receive new authorization codes from the software provider, along with instructions on how to enter these codes into FRED.

    Where can I obtain the USB key drivers?

    FRED automatically installs the required USB key drivers during the installation process. However, there may be situations where you need to install a standalone key driver manually. This installer can be found in the FRED installation directory at  <install directory>\Utilities\Sentinel Protection Installer.exe.

    Note: Ensure that all USB dongles are removed before proceeding with the installation.

    Another Note: You can also access the Installer file and the associated User Guide on the Gemalto website here:

    Sentinel Protection Installer executable file

    Sentinel Protection Installer User Guide

    Technical Questions

    My 3D visualization view is slow and unresponsive. What can I do?

    Photon Engineering adheres strictly to the OpenGL standard, but sometimes graphics card drivers can cause issues. To improve the performance of your 3D visualization view, try the following:

    Change the pixel format preference:

    • Navigate to Tools > Preference from the menu.
    • Click on the Visualization tab.
    • Set the pixel format to “Fast.”

    Note: This change will not take effect until you open a new FRED document.

    By following these steps, you may enhance the responsiveness of your 3D visualization view.

    My 3D visualization view freezes and/or crashes. What can I do?

    To resolve freezing or crashing problems in your 3D visualization view, consider the following solutions:

  • Adjust Pixel Format:
    • Go to Tools > Preferences from the menu.
    • Click on the Visualization tab.
    • Set the pixel format to “Safe” to enforce a software rendering mode.

    Note: Changes to FRED preferences take effect only when a new FRED document is opened.

    2. Use the GLView.exe Utility:

    • Utilize the GLView.exe utility included with your FRED installation to find an acceptable OpenGL hardware rendering mode for your graphics card.
    • Generally, choose a pixel mode where the “letter cube” in the GLView.exe utility rotates smoothly without flickering (this may not be the fastest rotation).

    3. Update Video Drivers:

    • Download and install the latest video drivers from your graphics card manufacturer’s website.

    By following these steps, you should be able to improve the stability of your 3D visualization view.

    My computer crashed, and I didn't save my FRED File. What can I do?

    By default, FRED autosaves one “level of undo” in the Undo directory. You can undo one action by selecting Edit > Undo from the menu. This action is stored in a .fru file or a .frs script in the Undo directory.

    To increase the number of autosaved FRED documents, select Tools > Preferences from the menu, then click on the Miscellaneous 2 tab. Use the up or down arrows to change the “number of levels of undo.” The autosaved .fru files are named “FREDUndoXXXXXXX_Y.fru,” where X represents the timestamp of the autosave, and Y indicates the undo level. However, FRED only autosaves the most recent script file as MostRecentScript.frs.

    To recover a .fru file, locate the Undo directory and change the file’s extension from .fru to .frd. You can then open or move this file as you normally would.

    To recover the most recent script file, find it in the Undo directory and open it as you would any script file. You can then save this file as you normally would.

    Note: The default Undo directory is C:\Documents and Settings<username>\Local Settings\Temp\Fred Undo. You can change this by selecting Tools > Preferences > File Locations from the menu, scrolling through the file list, and editing the entry for “Undo directory.”

    Another Note: To have FRED automatically search the Undo directory and recover the most recent .fru document, ensure “Allow abort recovery” is selected as a preference. To do this, select Tools > Preferences, click on the Miscellaneous tab, and check the “Allow abort recovery” checkbox.

    Why don't I see the expected speed improvements with my multi-core computer?

    Hyper-threading technology creates virtual CPU cores that do not function the same way as physical CPU cores. As a result, the anticipated linear speed scaling may not occur. Performance scaling can also depend on the specific construction of your FRED model. For instance, the types and organization of surfaces within the model influence how effectively the raytrace can scale with the number of threads. Additionally, keep in mind that the Trace and Render option for a raytrace operates as a single-threaded calculation, meaning it does not utilize the additional cores of your computer.

    How Do I Restore Lost Toolbars or Windows in FRED?

    FRED’s user interface is highly flexible and customizable, allowing toolbars and windows to be floated or docked anywhere on the screen. If something has been moved off the screen or is no longer visible, you can restore it.

    For a Lost Toolbar:

    • Go to View > Customize > Toolbars from the menu.
    • Click on the Reset button to restore the toolbar.

    For a Lost Window (e.g., the Output Window):

    If resetting the toolbar doesn't resolve your issue, follow these steps to restore a lost window:

    • Open a Command Prompt in Windows.
    • Change to the Bin directory of your FRED installation. For example, type:
    • cd "C:\Program Files\Photon Engineering\FRED 14.40.0\Bin"
    • Run the FRED executable with the command line option:
    • Fred.exe /NoLoadWindowStates

    This command will reset the window settings to their default state, allowing you to regain access to any lost windows.

    How can I model a partially coherent source in FRED?

    To model a partially coherent source in FRED, simulate an extended source as a collection of point sources. These sources should be positioned at different locations (for finite conjugates) or directed in various ways (for infinite conjugates). While each individual source will remain coherent, they will be incoherent with respect to one another.

    Here's how to set this up in FRED:

    • Use Different Wavelengths: Assign different wavelengths to each point source to simulate partial coherence.
    • Example File: A practical example of implementing a partially coherent source can be found in the FRED Sample Files folder at the following path: <installation dir>\Resources\Samples\Tutorials & Examples\examplePartialCoherenceDiffractometer.frd.
    How to create a solar source model in FRED?

    Modeling a solar source in FRED can be approached in different ways depending on the accuracy required for your simulation. The parameters to consider include the time of year, time of day, geographic location (longitude and latitude), and weather conditions. Here’s a simple method to create a solar source:

  • Create a Plane Source:
    • Set up a plane source with randomized ray positions and directions within an angular range that represents the subtense of the solar disk (approximately 0.5°).
  • Define Wavelengths:
    • Add wavelengths and weightings that are appropriate for a blackbody source like the sun. This can be done by creating a blackbody spectrum. 
  • Adjust for Atmospheric Conditions:
    • Scale the wavelength weights according to atmospheric transmission values to account for weather or regional conditions.
  • Set Source Power:
    • Configure the power of the source in the Power tab to reflect the solar irradiance value and the size of the system aperture.
  • For a more automated approach, you can use the Solar Source (simple) type of Source Primitive, which implements the above method semi-automatically.

    For advanced modeling, consider utilizing theories such as the Bird Model (available at NREL). This model accounts for diffuse radiance from the atmosphere, which can be treated as isotropic, and provides specific data regarding the wavelength spectrum.

    How to customize the chart view in FRED?

    You can customize your chart view in FRED by using the following methods:

    Advanced Controls: Utilize the “Advanced” controls in the chart viewer to adjust various aspects of the chart's appearance and data presentation.

    Preference Settings: Access FRED’s Preference settings to modify default chart settings and personalize your charting experience.

    Chart customization in FRED

    FRED utilizes a third-party chart control tool from Component One, LLC, for displaying and processing visual data. This tool offers advanced settings and features that can be modified within FRED. For additional help, two documents related to the 2D and 3D chart controls are located in the directory C:\Windows\Help\, named olch2d8u.chm and olch3d8u.chm. You can also access chart help by right-clicking in the chart view, selecting Advanced from the menu, and clicking the Help button.

    Customization Procedure

    To customize your chart views, follow these steps:

  • With a chart open in FRED, adjust the settings using the FRED menu options or the advanced controls available by right-clicking in the chart view. For detailed documentation on the advanced controls, refer to the help content mentioned above.
  • After selecting your desired settings, open the advanced chart controls by right-clicking in the chart view and choosing Advanced from the menu.
  • In the advanced controls dialog, select Save from the Control tab. This will create a file containing the specifications for your current chart settings.
  • In FRED, open the Preferences dialog by navigating to Menu > Tools > Preferences, and select the File Locations tab.
  • In the File List area, choose the chart type you wish to customize, then use the File Location browser to select the saved file from step 3.
  • Press OK to accept the settings. The next plot window will reflect your customizations.
  • By following these steps, you can effectively customize your charts in FRED to better suit your visual data needs.

    Why am I unable to write frame #a to page file #b in FRED?

    This error message usually indicates that security software is likely interfering with FRED’s read/write operations. We recommend consulting your IT department to check for any recent updates or changes to your security software that might be causing this issue.

    What should I do if I am unable to allocate memory for RayBuffer (RBV) in FRED?

    This issue may occur when the minimum free hard disk space is less than the amount needed for the Ray Buffer pagefile. For more details and solutions, please refer to the article “FRED Preference Optimization.”

    What need I do if I get "Insufficient disk space" error when creating a ray buffer pagefile in FRED?

    This error typically occurs when the minimum free hard disk space is less than what is required for the Ray Buffer pagefile. For more information and troubleshooting steps, please refer to FRED’s Online Help topic “FRED Preference Optimization.”

    How do I attach analysis planes to NURB surfaces in FRED?

    The parametric construction of NURB surfaces differs fundamentally from other native FRED surfaces, making it challenging to position or attach analysis surfaces to NURBs. While native FRED surfaces have a definite, known origin, imported CAD models may have NURB surfaces with arbitrary shapes, sizes, and positions. This raises the question of which point on the NURB surface becomes the origin after import. For a detailed guide on attaching analysis planes to NURB surfaces, please refer to the article, “CAD Surface Position and Orientation.”

    What should I verify if a surface appears incorrect despite accurate data entry in FRED?

    If you are confident that the surface information is correct, the issue is most likely related to visualization settings. Try increasing the tessellation (i.e., decreasing the tessellation scale size) for the selected entities to improve the surface's appearance. For further details on adjusting visualization attributes, please refer to FRED’s Online Help topic, “Visualization Attributes.”

    How can I create some basic shapes in FRED?

    Please see FRED’s Online Help topic entitled “Creating Basic Shapes”.

    "Error - Not enough storage to complete this operation" in FRED?

    This error occurs when running a script in FRED version 9.50 or earlier after saving a document as a *.frs file. To resolve this issue, remove the lines “Sub Main” and “End Sub” from the script file before running it. This adjustment should prevent the error and allow the script to run properly.

    How do I manipulate the position and orientation of an object in a script in FRED?

    To manipulate the position and orientation of an object using FRED’s scripting language, use the T_OPERATION structure along with the linear transformation commands. You can find a comprehensive list of these commands in FRED’s Online Help topic, “FRED Commands by Usage.” Additionally, in the article, “Rotating Prisms by Scripting,” provides an example of scripting object position and orientation. For more detailed discussions and further examples, refer to FRED’s Online Help topic titled “Position / Orientation.”

    Download the FRED file: rotatingElement.frd

    Why aren't my script commands being recognized by the editor in FRED?

    In FRED v9.50 and later, script commands are divided into application-level and document-level commands. Application-level commands (e.g., math commands, file commands) can be run without an open FRED document. However, document-level commands require an associated FRED document to be recognized by the script editor.

    If only one document is open, FRED automatically associates the script with that document. If multiple documents are open, you need to manually associate the script with a specific document. To do this, go to Script > Associate with FRED Document in the menu, select the document, and click OK.

    Getting Started Guide

    Preference Optimization

    When FRED is installed on a computer for the first time, the default settings are configured to prioritize program stability rather than fully utilizing the machine's resources. These initial settings are intentionally conservative to ensure reliable operation. This article outlines the key preference adjustments you should make after installing FRED to enhance the graphical user interface (GUI) and improve the performance of raytracing and analyses.

    It is advisable to launch FRED, apply the recommended changes detailed in this guide, and then close the application. Doing so ensures that the modifications are properly saved to the system registry.

    • GUI Preferences
    • Ray Buffer Preferences
    Graphical User Interface Settings
    Navigate to the View menu and toggle the Cells option of the Output Window sub-menu.  This option allows to view the Output Window as a spreadsheet (which it is) rather than as an empty text window.

    Next, open up the Preferences dialog by navigating to Tools > Preferences. The Output Window tab allows you to control how many rows and columns are available at any given time. To maintain a comprehensive history in the Output Window for easier navigation and review of FRED outputs, it is recommended to set the preferences to 10,000 rows and 24 columns. Additionally, consider disabling the formula engine if it is not required for your workflow, as this can help avoid potential issues and improve stability.

    Next, move to the Visualization tab and make the following changes:
    • Pixel Format = Fast
    • Allow multi-threaded tessellation = Checked
    • The screen background color can be customized based on your preference, with common choices being black or white. This is the section where you can adjust this setting to suit your visual preferences.
    The Pixel Format setting controls whether the 3D view uses a “software” rendering mode or hardware acceleration using your graphics card.  The Fast option tells FRED to use the graphics card acceleration. Multi-threaded tessellation is exactly what it indicates. When the 3D view needs to be redrawn, FRED will use as many CPU cores as are available.

    Move to the Miscellaneous tab of the Preferences dialog and duplicate the options below.
    • Enable IntelliMouse in Grids – this option allows mouse wheel scrolling in dialogs that use grids.  This includes the Output Window!
    • Enable Formula Engine in certain dialogs – uncheck this for the reason mentioned above
    • Enter Curvatures – uncheck this, unless you are a crazy person and prefer to think in a manner that is the reciprocal of the way rational people think
    • Use isotropic scaling in analysis windows – opens chart windows with the view scaled proportionally to the analysis grid axes
    • Display enhanced raytrace statistics – toggle this and you will get additional information printed to the output window following a raytrace
    • Generate curve enclosure masks – make sure this is toggled so that certain surface types with complex apertures use “enclosure masks” to help with raytrace efficiency
    • Show dashboard on startup - will display the dashboard when you start FRED allowing you quick access to various functions, licensing information, and Help information

    Ray Buffer Preferences
    To optimize FRED's performance, it is essential to configure the settings in the Ray Buffer tab of the Preferences dialog. Before diving into specific configurations, it is helpful to understand how the ray buffer operates. Ideally, all ray data should be stored in RAM for rapid access. However, over-utilizing RAM can lead to unpredictable program behavior or system instability, even though Windows attempts to manage such situations effectively.

    By default, FRED allocates a small portion of RAM for storing ray data. While this ensures stability, it limits the amount of ray data that can be stored in memory. If more rays are generated during a trace than the allocated RAM can accommodate, FRED temporarily stores the excess ray data in “pagefiles” on the hard drive. This process allows for continued operation but impacts raytracing performance, as accessing data from RAM is significantly faster than from a hard drive, although the performance gap is reducing with advancements in storage technology.

    The concept can be illustrated as follows: a “frame” in FRED represents a finite-sized block of RAM allocated for storing a specific number of rays. The total number of frames and the rays per frame are user-defined settings. Their product determines the maximum number of rays that can reside in RAM at any moment, effectively dictating the RAM allocated for FRED's ray buffer.

    For example, if six rays are stored per frame and 24 frames are allocated, the total capacity is 6×24=144 rays in RAM at any time. If a raytrace produces more than 144 rays, the additional data is stored in pagefiles on the hard drive and swapped back into memory as needed. While this system maintains functionality, optimizing the allocation can significantly improve performance.

    So what are the general rules for optimizing the ray buffer preferences?
    • Allocating more RAM is better since accessing data in RAM is fast.  Depending on what else you want to do with the computer while FRED is running, consider leaving 2-4GB of RAM free on your computer.
    • FRED only uses as much RAM as it needs at the current time, up to the maximum amount you have allocated.  For example, if you have allocated a maximum of 64 GB of RAM in your preferences and FRED only traces a single ray, it doesn't reserve the full 64 GB of RAM for that operation.  However, if you traced a billion rays, FRED would reserve the full 64 GB of RAM for raytracing and then store the excess ray information temporarily in pagefiles on disk.
    • Don’t over-allocate RAM to FRED!  If you allocate too much RAM, your system may become very sluggish or unstable.  In this condition, Windows handles the data swapping rather than FRED which is generally undesirable.
    • If you have an SSD that can be used to store the page files, do so.  SSDs have much faster read/write speeds than traditional platter drives.
    • Adjust the "# of frames in memory" until the desired RAM allocation is achieved.
    • Incoherent rays contain the least amount of information and are therefore more compact than polarized or coherent rays.  The type of rays you are tracing affects how much RAM is allocated for the same number of rays being traced.
    Given the above statements regarding the allocation of RAM to FRED, let us look at a particular case.  The Ray Buffer tab of the Preferences dialog is shown below with its default settings.

    This copy of FRED is installed on a computer having a total of 32GB RAM.  The C: drive is an SSD.  As shown in the dialog above, FRED will store 20,000 rays in each frame and use 200 frames for a total of 200*20,000 = 4,000,000 rays being stored in RAM at any given moment.  If more than 4M rays are generated during a raytrace, the excess rays will be temporarily stored in pagefiles in the C:\tmp\fred\ directory.  Furthermore, the 4M rays would consume ~976MB of RAM if they are all incoherent and ~2.9GB of RAM if the rays are all coherent.Let us now modify the ray buffer preferences to take advantage of the 32GB of RAM available on this computer.  We don’t want FRED to use all 32GB of RAM, since Windows needs a certain amount of RAM to operate by itself (say 2-3GB) and we may want the computer running other applications in addition.  So, let us say that we want FRED to use ~25GB of RAM for storing ray data (and assume these are incoherent rays).  In the image below, I have adjusted the number of frames to be 5000, such that I can store 100 million rays in RAM at any given time.  I can expect that the 100 million rays will consume 24.4 GB of RAM and that any additional rays will be stored in pagefiles in the C:\tmp\fred\ directory.  While the pagefile location has no impact on performance in this case, since the C: drive is an SSD, it does allow put the pagefiles in a directory that is easier for me to find and keep an eye on.


    Another option worth considering in this dialog is the “Min free disk space (in GB)” setting. By default, FRED requires at least 2GB of free disk space in the pagefile directory to initiate a ray trace. In practice, this error is rarely encountered, but adjusting this value may be beneficial in specific scenarios.

    Isolating Stray Light Contribution

    Each Analysis Surface and Detector Entity includes an option to filter the rays contributing to the calculated quantity. This option is located at the bottom of the next image under the section labeled "Ray Selection."

    There are many options to choose from:

    A very simple way to isolate the stray light contribution in an imaging system (where no scatter is present) is to append a Ray Filter "Specular Ancestry > 0." Thus the designed optical path will be ignored when processing the calculated quantity (e.g. Irradiance). You can append filters by right-clicking in the list area.

    The two pictures below show an Irradiance plot of an imaging system first with and then without the Specular ancestry > 0 filter.

    Alternatively, if you wanted to isolate only the scatter contribution you might want to add the Ray Filter "Scatter Ancestry > 0."

    Ray Ancestry

    This guide explains the concept of ray ancestry in the context of both specular and scattering events, providing graphical illustrations to clarify the associated conventions.

    Ray ancestry refers to the splitting of an incident ray into transmitted, reflected, and/or scattered rays. Terms like parent, child, grandchild, and so on—or numerical generations [0, 1, 2, …]—are commonly used to describe this relationship. Control over ray ancestry settings is managed through the Raytrace Controls options.


    When a ray is incident upon an interface between two materials of differing refractive index, it undergoes specular splitting into a reflected and transmitted ray if the angle of incidence is less than the critical angle. The parentage of these rays is determined by the Parent Ray Specifier option on the assigned Raytrace Control dialog. The default setting for this option is the Largest incoherent power which is determined by the Coating specification. If the Coating is of type Uncoated, Thin Film, Quarterwave Layer, or General Sampled then the angle of incidence will also play a part in determining which ray is the parent. The user has three other choices for the Parent Ray Specifier: Transmitted [transmitted ray always parent], Reflected [reflected ray always parent], or Monte-Carlo (1 ray only) [probabilistic determination].

    The picture below illustrates graphically the parentage of specular split rays incident on two interfaces under four distinct conditions when Largest incoherent power is selected. When both interfaces have R ≤ T as in Figure a, the parent ray (0) is transmitted along with even generations while the reflected rays are of odd generation. With R ≤ T on the first and R > T on the second as in Figure b, the parent ray is ultimately reflected and increasing generations both reflect and transmit. With R > T on the first and R ≤ T on the second as in Figure c, the parent ray is immediately reflected and increasing generations both reflect and transmit. Finally, with R > T on both interfaces as in Figure d, the parent is immediately reflected with all subsequent reflections and transmissions of generation two.

    Linking scripts to toolbar buttons

    User Tools enable you to link custom scripts to buttons on FRED's main toolbar. Once configured, you can execute your script with a single click on the associated toolbar button.

  • To add an existing FRED script to the User Tools toolbar: 
    Go to View
    > Customize in the menu.
    In the Customize dialog, select the Toolbars tab.
    Check the box next to User Tools in the list to enable the toolbar.
  • Note: To move any toolbar in FRED from its default location, hover your mouse over the vertical ellipse to the left of the toolbar. Hold down the mouse button, drag the toolbar to your preferred location, and release the button when it's positioned as desired.

     

     

    4. Finally, provide text for the tooltip that displays when you hover your mouse over the button. Use the scroll bar to find and select the corresponding Displayed Name. User Tool #. Type your text in the File Location text box. Click on the OK button to save your changes and close the dialog box. 

      Defining Custom Views

      The Visualize toolbar has a dropdown list and several buttons that can be used to quickly snap the 3D View to a specific orientation relative to the global axes. Clicking on one of those buttons, or selecting one of the many options in the dropdown list immediately changes the orientation of the 3D view (e.g., side view, from top, from back, etc.). 

      The three custom views at the bottom of the dropdown option list allow the user to customize a specific view that can be snapped to this orientation with a single click.

      The user can also set the three "Custom View" options in FRED's Preferences by selecting Tools > Preferences from the menu. On the Visualization tab, the user can 1) enter the camera position/orientation manually, or 2) click on the Get Current View button to import the data for the current view.

      Analysis Surface Ray Filters
      Ray Selection Filter Basics

      Analysis Surface Ray Filters provide a method for sorting through rays and establishing a set of criteria that must be met for a ray to be included in the operation being performed (e.g. Irradiance calculation, Spot Diagram).

      The video and example file below describes the basic principle behind Ray Selection Filter Criteria.

      Example file: RaySelectionCriteria.frd

      Watch Photon Engineering video guide of Ray Selection Filter Criteria

      How Ray Selection Criteria are Evaluated

      Ray filters can be specified in the ray selection list by right-mouse clicking and choosing an appropriate option; cut, copy, paste, delete, edit, insert, or append. The specific ray filters are logical operations that evaluate to either TRUE or FALSE on a given ray. Additionally, there is no parenthetical grouping of the ray filters, so they are evaluated sequentially in the list. 

      Consider the following examples in which a ray selection criteria list consisting of three filters is applied to a single ray. The ray selection criteria list is shown on the left and its logical application to the single ray is shown on the right. In the top example the serial evaluation of AND-AND-OR results in TRUE, meaning that the ray passes the selection criteria and is included in the analysis or operation. In the bottom example the serial evaluation of AND-AND-AND results in a FALSE, meaning that the ray does not pass the selection criteria and is not included in the analysis or operation.

      Rays Halting Unexpectedly

      Sometimes rays unexpectedly halt on a surface. The picture below shows a single ray bouncing inside a perfectly reflecting cylinder, but surprisingly stops.

      Raytrace Summary

      In simple scenarios, looking at the Raytrace Summary that is automatically printed to the Output Window might give you all the information you need. The clue to this problem is in the line "Num rays halted due to exceeding number of consecutive intersections on the same surface."

      Table of Ray Errors

      In more complex cases, it might be more insightful to view the Table of Ray Errors report located under the Tools menu. This logs all ray errors on a surface-by-surface basis. 

      The Solution  (in this case)

      In this case, we need to increase the relevant cut-off in the associated Raytrace Control, to allow the ray to reflect off the same surface consecutively more than the default 10 times.

      Saving Analysis Data
      Save via the ARN

      If your data is stored in an ARN (located in the Analysis Results folder) of the Tree, then you can simply right-click and select Save Data to File...


      SAVE via the chart window

      You can also save the data from the chart window by selecting Save Data to Text File... from the right-click menu.

      Note, however that due to historical reasons these two file formats are different to each other.

      Setting Pixel Size

      The pixel size of your Analysis Surface and Detector Entities are set in the areas highlighted in the screenshots below.

      The pixel size will be the full width of the detector divided by the number of divisions, which in the first case below would be 1/21 = 0.0476mm. If you are using the Analysis Surface, then make sure to uncheck the "Autosize to Data" option to get explicit control over the grid widths, otherwise, FRED will auto size the grid based on the footprint of the ray bundle.

      Difference Between "Trace and Render" and "Trace All Sources"

      The two primary options for starting a CPU-based raytrace in FRED are "Trace and Render" and "Trace All Sources."

      • "Trace and Render" displays the rays as they are traced through the system, providing a visual representation of the ray paths.
      • "Trace All Sources" performs the trace without visualizing the rays, which can improve performance.

      While visualizing the rays can be useful, it is important to note that drawing the rays can slow down the raytrace, especially when dealing with large numbers of rays (thousands or millions). For this reason, most users opt for the "Trace All Sources" option when tracing large datasets, as it does not include the overhead of ray visualization.

      However, the impact of selecting "Trace and Render" over "Trace All Sources" can be more significant than just a slight slowdown. Enabling ray visualization in "Trace and Render" forces the raytrace to be single-threaded. In contrast, when using "Trace All Sources", FRED can distribute the raytrace across up to 17 threads (cores). For FRED Optimum and FREDmpc, this capability extends even further, utilizing up to 63 threads.

      Thus, when multiple cores are available, the difference in performance between "Trace and Render" (single-threaded) and "Trace All Sources" (multi-threaded) can be substantial. The choice of which option to use depends on whether you prioritize visualization or performance.

      Rays drawn with dashed lines

      When the user uses the Trace and Render option, rays with dashed lines can sometimes be seen. These are rays that are leaving a surface (or source) and do not intersect with any other surface in the model (i.e. are heading to infinity).

      The length of these lines can be decreased (or increased) in the software preferences. To turn off drawing these rays, set this value to 0.

      Below is a picture of the same raytrace, with the above scale factor set to 0.1.

      Troubleshooting - Stray Light Report Unavailable

      The Stray Light Report and the Raytrace Paths Report, both available by selecting Tools > Reports from the FRED menu, are very useful tools for looking at ghost/scatter paths in the system.

      If these options are grayed out, it is because you must first perform a raytrace using the Advanced Raytrace dialog with the "Determine raypaths" option selected.

       The reports rely on raypath information, which is not automatically saved during a "normal" raytrace. This option must be selected in the Advanced Raytrace settings, as shown below: 

      Note: It is also valuable to select the "Create/use ray history file" option as discussed in this article: Raypaths and ray history

      Remote Desktop Access

      A non-network license of FRED can be operated via Remote Desktop, as long as the dongle is located on the PC that will be running FRED. The default installation of the software and key driver is required on the host machine.

      Additionally, for older superpro dongles, before the dongle will allow you to start a new instance of FRED on the remote machine you will need to make some modifications to how the host computer searches for the dongle.  Please take the following actions:

    • Install the Safe-Net Sentinel services on the machine being used to run FRED.  In the FRED installation directory, you will see a Utilities folder which contains the Sentinel Protection Installer.  Unplug your hardware dongle and run this installer.
    • If the computer does not have the Sentinel key software installed, then accept the license agreement and proceed with a CUSTOM install when prompted.  In the custom setup step, select each component (Sentinel System Drivers, Sentinel Protection Server, Sentinel Keys Server, and Sentinel Security Runtime) and choose, “This feature, and all subfeatures, will be installed on the local hard drive”.  There should be no components with an X symbol present.  Hit Next and complete the installation.  This process may require you to reboot your computer.
    • If the computer already has the Sentinel key software installed, select the MODIFY option after running the installer.  In the custom setup step, select each component (Sentinel System Drivers, Sentinel Protection Server, Sentinel Keys Server, and Sentinel Security Runtime) and choose, “This feature, and all subfeatures, will be installed on the local hard drive”.  There should be no components with an X symbol present.  Hit Next and complete the installation.  This process may require you to reboot your computer.
    • After restarting the computer, set up a new system environment variable having name = NSP_HOST and value = RNBO_SPN_LOCAL.  Environment variables are accessed through the System dialog found on the Control Panel.
    • Start FRED locally on the machine to verify that the key is properly detected and that you can run FRED without going over the network.
    • If (3) is successful, close FRED and log out of the machine.
    • On another computer, remote the desktop into the machine you just set up and try to start FRED.
    • Monitoring network license usage

      To monitor the usage of a FRED Network license,  open a web browser on the license server computer and follow the steps below:

      Newer LDK Keys

      Navigate to http://localhost:1947 

      This opens the Sentinel Admin Control Center. Choose the "Sessions" option to see the machines currently connected to licenses. To review how many licenses are in use (logins) and available (concurrency) see the information in the "Features" area.

      Older SuperPro Keys

      Navigate to http://localhost:6002

      This opens up the Sentinel License Monitor (will install Java if not already on there) which will allow the viewer to see the available licenses and who is using them. Clicking on the leftmost column (Keys#) will show a separate page indicating who is accessing that license. Clicking on the “Sublicense” column will show a separate page indicating how many of the network licenses for that key are in use.

      Monitoring variables in a script

      When debugging a script, it's sometimes valuable to check the value of a variable or the contents of a structure or array. This can be done quite easily in FRED's scripting editor.

      However, the one thing to note is that you have to specify each item "to watch" individually - you can't just browse the whole of an array or structure

    • Open the script editor
    • Left-click in the gray margin at the left side to add a breakpoint at a line of your choosing
    • Run the script
    • In the area at the top, note that there is a tab on the left side labeled "Watch", click this.
    • Then, in the blank window, write in the variables that you wish to keep an eye on. In the picture at the top of this page, there are three examples:
    • a single variable: lens
    • a member of the T_ENTITY structure: ent.name
    • the contents of one cell of an array: myArray(2)
    • Then as you step through the script (e.g. by using the "step into" button) the value of these variables will be dynamically updated at the top.
    • Note: if you don't see this mini toolbar at the top of the script debug window, then select from the FRED main menu select Tools / Preferences... / Format tab/ Script Editor Window / Show toolbar

      Customizing the Toolbar in FRED

      FRED's main toolbar can be customized to suit your needs.

      1. Go to View / Customize..
      2. Select Toolbars

      Here you can choose which toolbar groupings you want to include on the FRED toolbar.

      To customize the content of each toolbar grouping:
      3. Click back to the Commands tab
      4. Select the Category that you wish to customize (e.g. Analyses)
      5. To add a button, drag and drop the item from this list to the FRED toolbar


      6. To remove a button from the toolbar right-click on the toolbar button and select Delete

      Notice also that you can move the toolbars around by dragging them with the mouse.

      Changing items' names in the Object Tree in FRED

      Many items on the Object Tree have setting windows that pop up when you double-click. However some items do not (e.g. a Subassembly, Custom Element, Keyword, Embedded Script, ARN), and therefore it can be a little confusing how to change the name of these items.

      You can either highlight the item and the left-click again to edit the name, or highlight the item and press F2 on the keyboard.

      How to select a ray path to trace sequentially

      FRED's default raytrace mode is non-sequential, but the user also has the option to switch to a sequential raytrace. One common scenario is that a user might have performed a non-sequential raytrace and is viewing the Raytrace Paths Report, or Stray Light Report and having identified a path of interest will next want to trace it sequentially. 

      First, right-click on the path of interest and select Copy to User-Defined Path List.

      Next, open the Advanced Raytrace dialog (again), and switch the Raytrace Method to "Sequential using a user-defined path", choosing the path that has just been saved.

      Note: the path details can be viewed/edited via Raytrace / User-defined Ray Paths...