Psykinematix may emit error or warning messages in the Experiment log drawer either at the design stage of an experiment or during an experimental session. This section provides more information about these messages to help you understand and troubleshoot problems you may have with Psykinematix.

Understanding Errors & Warnings
Design & Run-Time Errors
Miscellaneous Problems

Understanding Errors & Warnings

Errors and warnings issued while processing or running experiments are logged in the drawer available in the Experiment Designer window. This drawer is automatically opened when the experiment aborts or terminates if errors or warnings are issued. It drawer can also be hidden or shown on demand by clicking on the gray triangle next to "Experiment log":

The error and warning messages (in red and blue, respectively) provide a description of the problem and the name of the event during which they occurred. Note that while errors interrupt the processing and running of experiments, warnings do not, though they may still indicate an experiment malfunction. Run-time errors are also indicated with the indicator in the column of the design table.

Described below are error and warning messages of each type followed by possible solutions.

Design & Run-Time Errors

  • Design

    • Event '<event name>' of category '<category name>' does not support event '<event name>' of category '<category name>'

      This error is emitted during the structure check of the currently selected experiment in the Design panel. The status column indicates which events are the source of the error (their names are also indicated in the error message): the red "x" icon indicates a node event with an invalid child event, this child event being indicated by the blue arrow icon .

    • The type of <event category > Event '<event name>' has not been properly defined yet: Edit its properties!

      This error indicates that the event properties have not been fully specified. Defining only the category and type of the event from the 'Category' pop-up menu in the Design panel is not enough: You should always check and set the properties of newly created events before running an experiment. Unexpected behaviors may otherwise occur.

  • Stimuli

    • Error in stimulus generation while processing event entitled '<event name>': not enough memory!

      This error occurs when the required memory to compute or store the stimulus exceeds the available memory (RAM and virtual memory).

    • Error in stimulus generation while processing event entitled '<event name>': not enough texture memory to store the stimuli sequence (<value> MB)!

      This error occurs when the required video memory (VRAM) to store a stimuli sequence as OpenGL textures exceeds the available texture memory (indicated in MB). The duration of the time-varying stimulus may be too long and you should shorten the duration to the minimum requirement. If a long duration is required (for adaptation purpose for example), please refer to the Motion Stimuli section of the Tips chapter for some recommendations on the creation of time-varying stimuli.

    • Error in stimulus generation while processing event '<event name>': float representation missing

      Creation of a stimulus failed: this error occurs when there is not enough memory.

    • Undefined texture while running event '<event name>'!

      Creation of the texture for a stimulus failed: this error occurs when there is not enough memory (RAM or VRAM).

    • Contrast or Luminance Overflow occurred while processing event '<event name>': <value> % maximum allowed!

      This error occurs when too high a contrast or luminance is applied to a chromatic vector. Maximum contrast is limited by the display and is dependent on the chromaticity. Reduction of the contrast or luminance parameter should resolve the problem. Note that the maximum contrast available for a given chromaticity can be obtained by inspecting the stimulus properties, and setting a too large value in the contrast field (in the "Common Properties" box) which reveals a small caution icon at the right of the contrast field. Clicking on this icon replaces the contrast value with the maximum contrast available for the specified chromaticity.

      Tip: To prevent this error, you may replace the contrast parameter by a clipping expression. For example, to clip achromatic contrast to 100%, use the expression: 100-rect(100-[contrast]) , where [contrast] is the dependent variable of your experimental protocol if you are measuring contrast detection threshold.

    • Undefined error in RGB/HSB conversion while processing event '<event name>'

      This error occurs when an attempt to convert an RGB vector to an HSB vector (or vice versa) fails. This occurs when one of the vector elements is inconsistent with the conversion.

    • Undefined color conversion matrix occurs while processing event '<event name>'

      This error occurs when the matrix required for a color conversion has not been defined. Incomplete color calibration may be the cause.

    • Error in stimulus generation while processing event '<event name>': expression evaluation failed for '<expression>'

      Evaluation of the expression for generating a custom stimulus failed: this error occurs when there is not enough memory.

    • Error in Timeline Event: Linked SOA/ISI event entitled '<event name>' does not exist!

      This error message is emitted when events inside a timeline event have either been moved or deleted while some other remaining events are still defined by an SOA or an ISI associated with these moved or deleted events. The solution is simple: Select and edit the timeline event to correct any inconsistencies.

    • Warning in Association Event: Type of event '<event name>' not supported, event will be skipped!

      An event of some type could not be used in an association event.

    • Warning in Association Event: Value '<value>' for variable '<variable name>' cannot be associated with event '<event name>'!

      The specified value cannot be associated with some event because it has already been used for another event.

    • Warning in MEF/RDK Event '<event name>': stimulus event named '<stimulus name>' cannot be found (its name may have changed), event will be skipped!

      A stimulus specified in the MEF or RDK Event cannot be retrieved. The stimulus has either been removed from the experiment hierarchy or its name has been changed. The solution is simple: Review and save the properties of the MEF or RDK Event before running again the experiment.

    • Error in MEF/RDK Event '<event name>': no valid stimulus!

      None of the stimuli specified in the MEF/RDK Event is supported.

    • Warning in RDK event '<event name>': an overflow in coherence level occurred (100% maximum allowed!)

      This error occurs when too high a coherence level is applied. Maximum coherence level is always 100%.

    • Resource file '<file name>' for Multimedia is missing

      This error occurs when the specified Multimedia resource cannot be found from the expected location. The embedding folder may have been moved. The solution is either to restore the resource file to its original location or to control-click on the "+" button in the Multimedia panel to specify a new folder where the "not found" items are now located.

  • Variables & Expressions

    • Variable [<variable name>] does not exist!

      This error occurs when an unknown variable is used to specify the value of an event parameter. This variable should either be defined as a control or a response variable (see "Using Variables").

    • Value for variable [<variable name>] cannot be retrieved because this variable does not exist!

      This error occurs when attempting to retrieve the value of an unknown variable, generally when an independent variable is specified in a procedure decision but is not actually used to specify some stimulus parameters. A common mistake that also results in this error message is the use of a parameter name that specifies some properties in a custom stimulus, while these custom parameters are only defined locally and are not seen from outside the definition of the custom stimulus (nevertheless the value taken by these custom parameters can include dependent or independent variables between brackets, which are globally-defined variables).

    • Value for variable [<variable name>] cannot be retrieved because it may not have been properly initialized!

      This error occurs when attempting to retrieve the value of a variable that has not been properly initialized, possibly due to an invalid format.

    • Expression '<expression>' has incorrect format: make sure to add [ ] around variables!

      This error occurs when an unknown string is discovered inside an expression, generally due to one or several variables being used inside the expression without the required brackets [ ] around the variable names. Brackets are required when using a variable name to specify a value, which is the mandatory rule inside expressions.

    • Error in parameter evaluation while processing event '<event name>': Expression '<expression>' generated a '<error name>' error!

      This error occurs when the evaluation of an expression failed. The error name indicates the error in the specified expression. For example, an 'Unknown variable' error would occur if a variable name were containing the space character.

    • Error in parameter evaluation while processing event '<event name>': format is not supported!

      This error occurs when an event parameter specifies an invalid format for its value. See "Using Variables" for a list of supported formats.

    • Event '<event name 2>' declares the dependent variable '<variable name>' already in use by event '<event name 1>'!

      This error occurs when 2 consecutive methods use the same name for their dependent variable. Make sure to use different names and to synchronize them with their references in the stimulus parameters.

    • Some system-defined variables ([TIME],[DURATION],[SELECTION]) are not supported in decision statements: revise expression '<expression>'!

      A decision statement in a procedure includes a reference to a system-defined variable ([TIME], [DURATION], [SELECTION]) that is not defined in the procedure event.

  • Devices

    • Could not attach the device '<device name>' to the experiment. It may have been disconnected or disabled: check your connection and rescan the devices in the "Response Devices" Preferences!

      This error occurs when a response device (shown in Experiment devices) is missing, possibly because it has been disconnected while Psykinematix is running. Open the Response Devices panel, check the cables to the missing device, and rescan the devices list ().

      This error may also occur if the order of the devices has changed since the last run due to some of them being disconnected and reconnected between Psykinematix launches. Open the Experiment Input/Output settings, remove all devices present in the table, and add them again making sure to check the default device.

    • Failed to open the device '<device name>': Check the '<connection type>' connection and settings for the device!
      Failed to close the Serial device '<device name>'!

      These errors occur when an I/O device (shown in Experiment devices) is missing, possibly because it has been disconnected while Psykinematix is running. Open the I/O Preferences panel, click on the device type (USB, Serial, or Network), check the cables to the missing device, rescan the device list (), and retest the device.

      These errors may also occur if the order of the devices has changed since the last run due to some of them (in particular USB devices) being disconnected and reconnected between Psykinematix launches. Open the Experiment Input/Output settings, remove all devices present in the table, and add them again making sure to check the default device.

    • Data not sent to device '<device name>' because this device is not available or ready!

      This warning is emitted when there is an attempt to send some data to a I/O device which is either absent or not ready. The device may have been disabled on purpose.

    • '<device type>' Device '<device name>' is used by the experiment but has not been enabled on this setup!

      This warning is emitted in the setup summary when there is an attempt to initialize a I/O device which is either absent from the I/O Preferences panel or disabled. This warning generally occurs after exporting an experiment to another computer which lacks the device specified in the Experiment Input/Output settings.

    • Error in event entitled '<event name>': No '<device type>' input device has been set up in this experiment!

      This error is emitted in the precomputing summary when a stimulus offset is controlled by a device input (see the "Offset" properties in the stimuli Control palette) that has not been declared in the Experiment Input/Output settings.

    • Trigger information for event '<event name>' will not be sent to device '<device name>' because it has not been enabled on this setup or for this experiment!

      This warning is emitted in the precomputing summary when it is detected that the trigger information associated with the specified event could not be sent to a I/O device which is either disabled or absent from the I/O Preferences panel or the Experiment Input/Output settings. This warning generally occurs after exporting an experiment to another computer which lacks the device specified in the Experiment Input/Output settings.

    • Failed to evaluate <device name> message '<data name> = <data value>'

      This warning is emitted when the data stream sent to a I/O device contains some expression that failed to be evaluated. Check the description of the data stream for the device and correct the <data value> assigned to <data name>.

  • General

    • The experiment aborted due to a fatal error (code <error code>)

      This error message is emitted when a fatal error occurs which requires the experiment be aborted. See the error messages listed above to find the source of the problem.

    • Could not measure the display frame rate with enough accuracy: It is advisable to quit all unneeded applications that may interfere with OpenGL timing (eg: network or background activity)!

      This error occurs when the frame rate cannot be measured with enough accuracy (see 'Frame duration precision' in Timing Preferences panel to customize the error threshold). This generally happens when too much background activity is interfering with the OpenGL timing. Although Psykinematix automatically pauses the user's resource-consuming applications while an experiment is running, this might not be enough for various reasons: other users' applications (including Admin and Root) may still be running in the background or the computer may be running out of RAM causing it to use virtual memory on the hard disk. If the problem persists after a few attempts at running the experiment, try restarting the computer to clean up the background activity.

      Note that the theoretical frame rate presented in the Display Preferences panel is only an estimate of the actual frame rate. Small deviations are normal and an estimated frame rate with sub-millisecond accuracy displayed in the log window is a good indication that there is no interfering background activity (corresponding to less than 6% precision for a frame rate of 60Hz):

      Frame Duration: 16.70 ± 0.18 ms | 59.90 Hz

      See the Timing section for more details.

    • Requested display mode not valid: check that the correct display is properly connected or change the experiment display settings!

      This error message is emitted when the requested display configuration selected in the Experiment Display settings cannot be applied: the most likely reason is that the previously used display is not anymore connected or that it has been changed and the new one cannot support the specified resolution or frame rate. It is critical to first calibrate any new display attached to your experimental computer before using it. New valid configuration entries will be then available for the new display. To do so, start selecting the display configuration from the Display Preferences panel (or check the Calibration tutorial for step-by-step instructions).

Miscellaneous Problems

If an experiment does not seem to be behaving correctly but no error or warning message has been emitted, look at the other information displayed in the log window as it may provide some clue as to the problem. If nothing looks suspicious, review your experiment, check the variables, etc. Finally, look at the common problems listed below. If nothing helps, you may look for a solution on the Web Forum. Ultimately send us a bug report using the built-in feedback feature.

Here is a list of typical problems that do not emit an error or warning message followed by recommended solutions:

Problem: The stimulus display seems to be frozen (eg: with a fixation mark); pressing the ESC key does not end the session.
Solution: This problem typically occurs when time-varying stimulus parameters are used and your computer is not fast enough to compute all the stimulus frames in a short time. Because it may be taking awhile, the application looks frozen. Decreasing the stimuli duration and/or size should help; remember that decreasing the viewing distance may be an easy solution when stimuli with a large field of view are used.

Problem: When several stimuli are presented simultaneously (as in spatial nAFC), some stimuli get "cut".
Solution: This problem occurs because the stimuli are either too close or too large, hence overlapping in their inscribed square texture. Since the "cut" stimuli are probably occluded by the gray surround of other stimuli, this problem is easily fixed by setting the "Render" properties in the Control palette to "Transparent" blending for all stimuli that compose the intervals.

Problem: Some user variables have no effect!!!
Solution: There are some system variables that cannot be overwritten by the user variables. The system variables are always in upper case, such as [TIME], [DURATION], etc. See "Using Variables" for a list of predefined variables.

UA-20124358-1