spec

Software for Diffraction

mythen

Dectris Mythen/Mythen2 MCA

INTRODUCTION

The Dectris Mythen and Mythen2 are high-dynamic range, short readout time and high frame rate MCA models. spec supports single and multiple frame acquisition, optionally gated and/or triggered. Connection to the Mythen is over a UDP or TCP socket. Multiple units can be configured for use at the same time.

The original Mythen comes in configurations containing from one to twenty-four 1280-channel modules in a single system. The new Mythen2 is available with either 640 or 1280 channel modules, where single system configurations can have a mix of both types.

The Mythen firmware has undergone significant evolution. The current release of spec supports Mythen firmware versions 1.3 through 4. Firmware revisions have introduced new commands and new syntax for existing commands. In revision 4, some existing commands have been removed. All these changes should be handled transparently by spec's built-in code. For the most part, user commands to set parameters or modes that aren't handled by the firmware version on the configured Mythen units are silently ignored.

CONFIGURATION

Each Mythen unit is configured on the MCA and Image Aquisition screen of the the configuration editor along the following lines:

MCA (1D) and Image (2D) Acquisition Device Configuration

MCA            DEVICE    ADDR  <>MODE                <>TYPE
 0  YES        mythen                  Dectris Mythen (UDP)
 1  YES     host:1030      Cu          Dectris Mythen (UDP)
 2  YES  192.168.0.90  TrimMo          Dectris Mythen (UDP)
 3  YES     host:1031   StdCu          Dectris Mythen (TCP)

The TYPE can be configured for either UDP or TCP connections. (Mythen version 1 firmware only recognizes UDP connections.) The DEVICE name is either a resolvable host name or IP address. A port number for the socket connection can be specified. Otherwise, the default port (1030 for UDP, 1031 for TCP) will be used.

The ADDR field can optionally contain the name of the initial trim or settings file to load. For firmware below version 2, the names TrimCr, TrimCu and TrimMo are recognized. If missing, the TrimCu trim file will be loaded by default. For firmware version 2, the names StdCu, StdMo, HgCr, HgCu, FastCu and FastMo are recognized by the Mythen. For firmware version 3 and 4, the names can be one of Cu, Mo, Cr or Ag. For firmware version 2 and above, if no name is given, the existing settings on the Mythen will be used. Loading the settings file takes time on the Mythen, making it preferable to leave the ADDR field blank.

Configure only one entry for units with multiple modules. Individual modules on the units can be addressed with syntax described in the Multiple Modules section below.

For Mythen firmware 1.3, 2 and 3, the optional controller parameters "inpol" and "outpol" can be assigned through the configuration editor. Type p from the main screen to bring up the optional parameter screen and add the parameter names and values to the configuration.

OPERATION

The Mythen can be started and stopped from spec two ways: automatically with the built-in count functions or by explicit mca_par("run") commands. If auto-run mode is set with

mca_par("auto_run", 1)

the MCA will be started and stopped with the counting functions used by the standard macros such as ct and all the scans. If soft-preset mode is also set with

mca_par("soft_preset", 1)

the MCA will programmed with the same count time as the master timer in count-to-time mode.

For version 4 firmware, if "soft_preset" is not set, the Mythen will be programmed for a very long count time and halted when the master timer completes. For earlier firmware, if "soft_preset" is not set, the Mythen will be programmed for the "preset" count time set with mca_par(), which must be nonzero. With pre-version 4 firmware, data is lost if an acquisition is halted, so counting to a definite preset is the only option.

A gate signal from the master timer or counter can be used to gate the MCA so that the acquisition interval exactly matches the master. Enable hardware gating with the "gateen" option to mca_par().

When using "auto_run" mode, only one frame will be acquired. In order to acquire multiple frames, use

mca_par("run")

to start acquisition. With firmware 3 and earlier, the Mythen can only buffer four data frames, so it is essential that spec read data as it becomes available. That is done during the automatic hardware polling built into spec. It is important not to disable that feature with spec_par() and not to set too long of a polling interval. In addition, one must not run commands during multi-frame acquisition that will interfere with polling, such as creating a subshell with unix(). With version 4 firmware, the Mythen2 can buffer several thousand frames, so continuous real-time transfer of the data to spec is not as crucial.

CORRECTIONS

The Mythen offers three correction capabilities: bad-channel, flat-field and rate correction. Each correction can be configured to be performed within the Mythen before data is returned, within spec or not at all.

With bad-channel correction, counts in channels marked as bad will be replaced with the average counts from the next neighbors. If the correction is turned off, the channel will contain a -2. The bad-channel file is included with the detector as part of the firmware.

The flat-field correction, when enabled, is applied to the entire image using data from a correction file included with the detector.

The rate correction corrects for dead time at high data rates.

MULTI-FRAME DATA

There are two ways for spec to store the Mythen multi-frame data. In the first method, spec will allocate enough storage to hold the data for the number of frames configured. The data can be retrieved using the "frame" or "cframe" options to mca_par(). The "frame" option returns the data as read from the Mythen. The "cframe" option applies any corrections (flat-field, bad-channel, rate) that have been configured to be done in spec rather than by the Mythen firmware.

In the second method for reading data, an appropriately configured data array is designated using the "array" option to mca_par(). The data array should be of type long, the number of columns should be equal to the total number of channels in all the Mythen modules associated with the unit. The number of rows in the array should be at least as great as the number of frames set with the "frames" option. For example, a data array configured as

long array data[200][1280]

would accommodate 200 frames for a 1K single-module unit. If using a 6K or 24K Mythen, multiply the 1280 by the number of modules. With a Mythen2, take into account the total number of 640- or 1280-channel modules.

spec will apply any data corrections that are configured to be performed by spec to the data that goes into the array.

The array can also be a shared data array. spec will automatically tag the array as "frames" and set the frame_size and latest_frame elements of the shared data header (see spec's arrays help file). An auxiliary utility such as PyMca can do real-time display of the data in the shared array as it arrives.

Both methods for storing the data may be active at the same time.

The standard mca_get() function will return the first frame of multi-frame data. Use the "frame" or "cframe" option to mca_par() to read any single frame.

For firmware prior to version 4, high frame rates can be achieved by setting the "bits" parameter to 4, 8 or 16. Data will be read in a compressed format and no corrections will be performed in the Mythen. However, spec will still do the flat-field correction ("autocorrect"), bad-channel interpolation ("badchan") or rate correction ("rate_correct") if the value of the corresponding option has been set to a value of 1 or 2.

The compressed format is not available in firmware 4, although the "bits" parameter can still be set to control the dynamic range of the acquisition.

MULTIPLE MODULES

The Mythen hardware is available in configurations that include more than one module. For the original Mythen, each module has 1280 channels. With the Mythen2, modules can have 1280 or 640 channels. When reading the data with mca_get() or getting the bad-channel or flat-field arrays with mca_par(), the default is get all the channels from all the modules in the returned array.

The mca_get() and mca_par() functions work with the default MCA unit. If there is only one MCA unit configured, that unit is the default. Otherwise, the mca_sel() function can be used to select which MCA to use as the default unit. The mca_spar() and mca_sget() take an initial argument that specifies a specific MCA unit number, overriding the default MCA unit number set with mca_sel().

For multiple modules in a given Mythen unit, the MCA selection syntax for the commands mca_spar() and mca_sget() is expanded. To select a specific Mythen module, address arguments may be given as "0.0", 0.1, 0.2, ..., where the first digit is the MCA unit number from the config file, and the digit right of the decimal point is the MCA device, where the devices are numbered starting from 0. For module zero, the argument needs to be passed as a string. Quote marks are optional for higher numbered modules. The syntax "0:0", "0:1", "0:2", ..., is also recognized, where the arguments for each module are strings.

The syntax for mca_get() and mca_sget() is

mca_get(arr [, roi_beg [, roi_end]])
mca_sget(addr, arr [, roi_beg [, roi_end]])

where arr is a data array to receive the data, and the optional roi_beg and roi_end arguments specify start and end channels in the MCA data. By default, both functions will return data from all the modules. If the option roi_beg and roi_end arguments are used, they will be with respect to the total channel count from all modules. However, if a subaddress is used with mca_sget(), only the data for the specified module will be returned. The optional roi_beg and roi_end arguments will be with respect to the data in that module only.

The subaddress syntax with mca_spar() affects certain of the available commands as follows. If no subaddress is used, "flatfield", "flatfield_norm", "badchannels", "frame" and "cframe" return an array containing channels for all the modules, otherwise just for the module specified. For "send", "read" and "read_float", module addressing will be used if there is a subaddress. If a subaddress is used with "dump", information will be displayed only for the module specified. If no subaddress is used with "npts", the total number of channels for all modules will be returned, otherwise just for the module specified. For "tau", "autosettings", "energy" and "kthresh", the command will apply to module zero if no subaddress is given.

PARAMETERS

spec can set all of the Mythen operational parameters using the mca_par() function, as described in the following section. The parameters "auto_run", "soft_preset", "preset", "bits", "frames", "delbef", "delafter", "gateen", "gates", "trigen", "conttrigen", "threshold", "inpol", "outpol", "flatfield_slot", "autocorrect", "badchan", "rate_correct", "kthresh", "tau" and "verbose" will be retained in the user state file. In addition, "inpol" and "outpol" can be set as optional controller parameters in the hardware configuration file. Values set in the configuration file will take precedence over values in the state file.

Before sending the start command to the MCA, any parameters that have been updated will be sent to the Mythen. All parameters will also be updated on the next start command if there has been a "trimfile" or "settings" command issued. The mca_par() command "update" can also be used to have the parameters updated without starting an acquisition.

More than one client can communicate with a Mythen device at the same time. Firmware version 3 and later returns a command sequence number that allows spec to detect whether another client has accessed the device. Firmware version 4 and later returns a sequence number for commands that change settings. If there is an unexpected change in the sequence number, spec will reprogram all parameters for the next acquisition. Prior to firmware version 4, if the other client's access was read-only, the reprogramming was unnecessary, but there was no way to tell whether the other client changed parameters.

FUNCTIONS

When called with the optional argument, the functions below will set the parameter to the value of the argument. With no arguments, the functions will return the current value of the parameter. If the firmware version allows it, spec will read the parameter value from the Mythen. It isn't possible for spec to read parameter values (with earlier firmware versions) returned values will be those previously set using mca_par() during the current session, or the saved values from the user's state file, if not starting fresh.

Note, spec does not normally send commands to change the parameters until the Mythen MCA is started, either using the "run" command or during counting when "auto_run" is enabled. However, the "update" command will send values for changed parameters to the Mythen (available in spec 6.03.02). Of the following, the commands that access the Mythen (besides the obvious "run" and "halt") are "reset", "autosettings", "trimfile", "settings", "send", "read", "read_float" and, of course, "update". The commands "flatfield", "flatfield_norm" and "badchannels" will read the associated data from the Mythen if the data has not already been cached by spec. The "flatfield" command to load a user-defined flatfield available with firmware version 4.1 sends the data. The "dump" command will read the temperature, humidity and high voltage with firmware 4 and later. It will also read the settings mode for firmware prior to version 4.

If multiple MCA devices are configured in spec, use the mca_sel() function to designate the device to use with the mca_par() and mca_get() functions, or use the mca_spar() and mca_sget() forms of the functions. See the mca help file for more information.

When using the multiple-module versions, certain commands below are module specific. The module can be specified using the mca_spar() version of the command, as explained in the Multiple Modules section above.

Note, for the commands "flatfield", "flatfield_correct", "flatfield_slot" and "flatfield_norm", the characters "flatfield" can be replaced with "flat" of "ff".

Finally all the commands are case insensitive. Any combination of lower and upper case letters is allowed.

mca_par("update")
Sends any modified parameters to the Mythen. Modified parameters are also sent with the "run" command.
mca_par("run")
Programs the device with updated parameters and starts acquisition.
mca_par("halt")
Halts acquisition.
mca_par("preset" [, seconds])
Returns or sets the preset value used when manually starting the MCA using the "run" option or when using "auto_run" with "soft_preset" off with version 3 or earlier firmware. If the gate is enabled in multi-frame mode, the preset is ignored by the Mythen, but if the frame rate is greater than 10 frames per second, the preset should be set to a value of 0.1 or less so that spec will use a more robust method for reading data at high frame rates.
mca_par("auto_run" [, arg])
With no arguments, returns nonzero if auto-run mode set, otherwise returns zero. If arg is 1, enables auto-run mode. If arg is 0, turns off auto-run mode. When auto-run mode is set the device is started and stopped with the counting functions tcount(), mcount(), etc. When not set, the counting functions are ignored, but the device can be controlled with the "run" and "halt" options. In addition, the device can be halted with the stop() function and will be halted with ^C. Auto-run mode is off by default for the Mythen.
mca_par("soft_preset" [, arg])
With no arguments, returns nonzero if soft-preset mode is set, otherwise returns zero. If arg is 1, enables soft-preset mode. If arg is 0, turns off soft-preset mode. When set, and if auto-run mode is enabled (see above), the Mythen is programmed to count for the time preset given as an argument to the tcount() function. The wait() function will wait until both the timer and the Mythen have counted to their respective presets. When soft-preset mode is not set, but auto-run mode is, the Mythen2 with version 4 firmware is programmed for continuous data acquisition and will be stopped when the timer's preset is reached. Mythen with version 3 and lower firmware will be programmed with the preset time set with the "preset" option. When counting to monitor (using mcount()) rather than to time with soft-preset active, the Mythen is programmed using the same rules as when soft-preset is off.
mca_par("npts"|"group_size")
Returns the total number of channels. Use a subaddress with mca_spar() to read the number of channels in a specific module.
mca_par("bits" [, value])
Returns or sets the number of bits per channel for the Mythen to use while acquiring data. Fewer bits allow for slightly faster frame rates in multi-frame mode. Valid values are 4, 8, 16 and 24.
mca_par("frames" [, number])
Returns or sets the number of frames to acquire when using a manual start. When using "auto_run" mode, where the MCA is started and stopped with the master timer, only one frame will be acquired.
mca_par("latest_frame")
Returns the frame number of the most recently acquired frame.
mca_par("trimfile" [, name])
Returns the name of the current trim file, or loads the specified trim file. The trim file contains all the initialization parameters for the MCA and is located with the MCA firmware. Each trim file has an associated flat-field file. The flat-field data will be read and stored by spec to be used for the optional flat-field correction operation. (Deprecated with version 2 firmware. Not available with firmware 4.)
mca_par("autosettings" [, threshold])
Tells the Mythen to load suitable settings corresponding to the value of threshold. Units are keV. If the optional argument is missing, the value set via the "threshold" command is used. If that value is unset, uses the threshold value initially read from the Mythen. For multiple module systems, the module number needs to be specified as described above. (Only for version 2 or 3 firmware.)
mca_par("settings" [, name])
Without the optional argument, returns the name of the current settings designation. Otherwise, sends the Mythen the command to load the settings associated with name. (Requires version 2 or later firmware.)
mca_par("energy" [, value])
Returns or sets the X-ray energy in keV. For multiple module systems, the value will be for module zero, unless a different module number is specified using mca_spar(0) with a subaddress. (Only for version 3 and later firmware.)
mca_par("kthresh"|"threshold" [, value])
Returns or sets the threshold energy in keV. For multiple module systems, the value will be for module zero, unless a different module number is specified using mca_spar(0) with a subaddress.
mca_par("delbef" [, seconds])
Returns or sets the delay between trigger and the first measurement.
mca_par("delafter" [, seconds])
Returns or sets the delay between measurements when accumulating multiple frames.
mca_par("gateen" [, 0|1])
Returns or sets gated-measurement mode (0 for disabled and 1 for enabled).
mca_par("gates" [, number])
Returns or sets the number of gate signals for a gated measurement.
mca_par("trigen" [, 0|1])
Returns or sets triggered-measurement mode (0 for disabled and 1 for enabled). A trigger starts the entire multi-frame acquisition or a separate trigger is needed for each frame, depending on the value of the continuous-trigger-enable parameter, "conttrigen".
mca_par("conttrigen" [, 0|1])
Returns or sets repeated triggered-measurement mode (0 for disabled and 1 for enabled). With this mode, each frame needs a trigger signal.
mca_par("inpol" [, 0|1])
Returns or sets the input polarity for the trigger and gate signals (1 for falling edge and 0 for rising edge). Can be set as an optional parameter in the config file. (Not available with firmware 4.)
mca_par("outpol" [, 0|1])
Returns or sets the output polarity for trigger and gate signals (1 for active low and 0 for active high). Can be set as an optional parameter in the config file. (Not available with firmware 4.)
mca_par("frame", number)
Returns a long data array containing the data in frame number. Frame numbers start at zero.
mca_par("cframe", number)
Returns a long data array containing the corrected data in frame number. Frame numbers start at zero.
mca_par("array" [, array])
Returns or sets the name of the data array to be used to receive multi-frame data. The array name can be passed as the array variable or as a string. The array should be type long, the number of columns should be 1280 times the number of modules for 6K and 24K systems, and the number of rows should be at least as great as the number of frames.
mca_par("flatfield_correct"|"autocorrect" [, 0|1|2])
Returns or sets the mode where data placed directly into the designated data array has the flat-field correction applied. A zero disables flat-field correction, while nonzero enables the mode. With version 2 firmware and later, the correction is performed within the Mythen if the value is one and the data is not being read using the raw method. Otherwise, the correction is performed within spec.
mca_par("flatfield")
Returns a long data array containing the flat-field data as read from the detector for all channels or for one module on a multi-module system if specified with an mca_spar() subaddress. The flat-field data is used when "autocorrect" mode is enabled.
mca_par("flatfield", flat_array [, slot])
If flat_array is a data array with as many elements as there are Mythen channels, assigns that array to the user-specified flat-field correction for the optionally specified slot. If slot is missing, slot 1 is used. There are four possible slots, from 1 through 4. See note that follows.
mca_par("flatfield", filename [, slot])
If filename specifies a file that contains flat-field data in the correct format, assigns that data to the user-specified flat-field correction for the optionally specified slot. If slot is missing, slot 1 is used. There are four possible slots, from 1 through 4. The file format is a text file that contains two numbers per line with as many lines as there are Mythen channels. The first number on each line is the channel number (starting from zero), and the second number is the flat-field correction value for that channel. See note that follows.

Note: the two commands above to set a user-specified flat-field array do not enable flat-field correction or select the slot for the correction. Use the "flat_correct" and "flatfield_slot" commands for those functions. With Mythen firmware 4.1.0 and above, the user-specified flat-field arrays are stored permanently on the detector. The arrays should only need to be uploaded once, although, the arrays can be replaced as needed. For firmware below 4.1.0, the user-specified flat-field correction can only be done in spec, and the flat-field array needs to be reloaded after each start up and hardware reconfig. The flat-field correction is done in spec when the flatfield_correct parameter is set to 2.

mca_par("flatfield_slot", [, slot])
Returns or sets the user-specified flat-field array to use when the flat_correct parameter is nonzero. Valid slot values for user-specified arrays are 1 through 4. Setting slot to 0 restores using the default flat field. With no arguments, returns the currently selected flat-field correction, a value from 0 to 4. (For firmware below 4.1.0, the user-specified flat-field correction can only be done in spec.)
mca_par("flatfield_norm")
Returns a float data array containing the normalized flat-field data for all channels or for one module on a multi-module system if specified with an mca_spar() subaddress. The flat-field data is used when "autocorrect" mode is enabled.
mca_par("badchan_interpolate" [, 0|1|2])
Returns or sets bad-channel interpolation mode. When on, the values in channels marked as bad are replaced with values interpolated from neighboring channels. A zero disables bad-channel interpolation. The interpolation is performed within the Mythen if the value is one and the data is not being read using the raw method. Otherwise, the correction is performed within spec. Bad-channel interpolation is only available with version 2 or later firmware.
mca_par("badchannels")
Returns the bad-channels array for all channels or for one module on a multi-module system if specified with an mca_spar() subaddress.
mca_par("rate_correct" [, 0|1|2])
Returns or sets rate-correction mode. A value of zero disables rate-correction. A value of one sets the correction to be done within the Mythen (or in spec if data is being read using the raw method). A value of two sets the correction to be done in spec.
mca_par("tau" [, value])
Returns or sets the dead-time constant for rate correction. Units are nanoseconds. (Requires version 2 firmware.) For multiple module systems, the value will be for module zero, unless a different module number is specified using mca_spar(0) with a subaddress.
mca_par("verbose", [0|1])
Returns or sets the verbose flag. When set, spec will display an updated frame count when acquiring multiple frames.
mca_par("reset")
Sends the command to reset the Mythen to the default settings. (Requires version 2 firmware.)
mca_par("dump")

Displays the current values of the Mythen parameters for all modules for all modules or for just one module on a multi-module system if specified with an mca_spar() subaddress. For example, with version 4 firmware:

Dectris Mythen 6K SN 1007 (fw 4.0.0) over TCP ...

                            Assembled:  Tue Jan 20 08:06:38 CET 2015
              System chip temperature:  62.51 C
                Module serial numbers:  1019, 1030
   Sensor material, thickness & width
                            Module  0:  Silicon, 450x8000 um
                            Module  1:  Silicon, 320x4000 um
            HV, temperature, humidity
                            Module  0:  200 V, 31.49 C, 13%
                            Module  1:  120 V, 31.58 C, 12%
              X-ray energy ("energy")
                            Module  0:  8.05 Kev       (6.565 to 40 Kev)
                            Module  1:  8.05 Kev       (4 to 40 Kev)
         Threshold energy ("kthresh")
                            Module  0:  6.4 Kev        (5.5 to 20 Kev)
                            Module  1:  5.4 Kev        (3.5 to 20 Kev)

            Bits per channel ("bits"):  24
                    Frames ("frames"):  1
             Array for data ("array"):  -none-
         Show frame count ("verbose"):  disabled

Flat field correction ("autocorrect"):  disabled (0)
Bad channel interpolation ("badchan"):  enabled in Mythen (1)
     Rate correction ("rate_correct"):  disabled (0)
     Rate correction constant ("tau")
                            Module  0:  163.85 nsec
                            Module  1:  273.162 nsec

                      Gate ("gateen"):  disabled
            Gates per frame ("gates"):  1
                   Trigger ("trigen"):  disabled
Trigger for each frame ("conttrigen"):  disabled
    Trigger to start delay ("delbef"):  0 sec
    Delay between frames ("delafter"):  0 sec

               Preset time ("preset"):  1 sec
           Auto-run mode ("auto_run"):  On (1)
          Soft-preset ("soft_preset"):  On (1)

With version 3 firmware:

Dectris Mythen 6K SN 0611 (fw 3.0.0) over UDP ...

                            Assembled:  Thu Feb 19 14:17:09 CET 2015
                Module serial numbers:  0099, 000c, 0069
           Sensor material, thickness:  Silicon, 320 um
           Settings mode ("settings"):  auto 6.400000 8.050000
              X-ray energy ("energy")
                            Module  0:  8.05 Kev       (4.09 to 40 Kev)
                            Module  1:  8.05 Kev       (4.09 to 40 Kev)
                            Module  2:  8.05 Kev       (4.09 to 40 Kev)
         Threshold energy ("kthresh")
                            Module  0:  6.4 Kev        (4 to 20 Kev)
                            Module  1:  6.4 Kev        (4 to 20 Kev)
                            Module  2:  6.4 Kev        (4 to 20 Kev)

            Bits per channel ("bits"):  24
                    Frames ("frames"):  1
             Array for data ("array"):  -none-
         Show frame count ("verbose"):  disabled

Flat field correction ("autocorrect"):  disabled (0)
Bad channel interpolation ("badchan"):  enabled in spec (2)
     Rate correction ("rate_correct"):  disabled (0)
     Rate correction constant ("tau")
                            Module  0:  294.41 nsec
                            Module  1:  198.097 nsec
                            Module  2:  190.525 nsec

             Input polarity ("inpol"):  falling edge (0)
           Output polarity ("outpol"):  active high (0)
                      Gate ("gateen"):  disabled
            Gates per frame ("gates"):  1
                   Trigger ("trigen"):  disabled
Trigger for each frame ("conttrigen"):  disabled
    Trigger to start delay ("delbef"):  0 sec
    Delay between frames ("delafter"):  0 sec

               Preset time ("preset"):  0 sec
           Auto-run mode ("auto_run"):  On (1)
          Soft-preset ("soft_preset"):  On (1)

With version 2 firmware:

Dectris Mythen 6K SN0109 (fw 2.1.0) over UDP ...

                            Assembled:  Tue Mar 19 10:56:37 CET 2013
                Module serial numbers:  0099, 000c, 0069
                      Sensor material:  Silicon
                     Sensor thickness:  320 um
           Settings type ("settings"):  predefined StdCu
       Threshold energies ("kthresh")
                            Module  0:  6.41116 keV
                            Module  1:  6.39854 keV
                            Module  2:  6.4263 keV

            Bits per channel ("bits"):  24
                    Frames ("frames"):  1
             Array for data ("array"):  -none-
         Show frame count ("verbose"):  disabled

Flat field correction ("autocorrect"):  disabled (0)
Bad channel interpolation ("badchan"):  enabled in Mythen (1)
          Rate correction ("ratecor"):  disabled (0)
     Rate correction constant ("tau"):  0 nsec

             Input polarity ("inpol"):  falling edge (0)
           Output polarity ("outpol"):  active high (0)
                      Gate ("gateen"):  disabled
            Gates per frame ("gates"):  1
                   Trigger ("trigen"):  disabled
Trigger for each frame ("conttrigen"):  disabled
    Trigger to start delay ("delbef"):  0 sec
    Delay between frames ("delafter"):  0 sec

               Preset time ("preset"):  0 sec
           Auto-run mode ("auto_run"):  Off (0)
          Soft-preset ("soft_preset"):  Off (0)

Note, the parameter values are those spec will use the next time it starts the Mythen. The exact list of parameters displayed depends on Mythen firmware version and spec release.

mca_par("flush")
Flushes the sockets associated with the connection to the Mythen. This command should not be needed under normal operation.
mca_par("send", string)
Sends the contents of string to the Mythen. If a subaddress is specified with mca_spar(), the specified module will be addressed before the command is sent. (Normally not used, available for debugging.)
mca_par("read", string)
Sends the contents of string to the Mythen and returns the integer response. If a subaddress is specified with mca_spar(), the specified module will be addressed before the command is sent. (Normally not used, available for debugging.)
mca_par("read_float", string)
Sends the contents of string to the Mythen and returns the floating-point value sent in response. If a subaddress is specified with mca_spar(), the specified module will be addressed before the command is sent. (Normally not used, available for debugging.)

VERSION HISTORY

spec release 6.08.03 added support for Mythen firmware 4.1.0 including user specified flatfield arrays.

spec release 6.03.02 added complete support for Mythen firmware versions 3 and 4 and fixed many issues and inconsistencies.

spec release 6.00.11 added support for the multiple-module 6K and 24K Mythen models, and for Mythen firmware through version 2.0.5.

spec release 5.09.01-3 added support for most features found in Mythen firmware version 2.