# The ioHub Common Eye Tracker Interface¶

Platforms: OS support is determined by individual eye tracker manufacturers. See the individual Eye Tracker Implementation page for your eye tracker to check non-Windows OS support.

class psychopy.iohub.devices.eyetracker.EyeTrackerDevice(*args, **kwargs)[source]

The EyeTrackerDevice class is the main class for the ioHub Common Eye Tracker interface.

The Common Eye Tracker Interface–a set of common functions and methods such that the same experiment script and data analyses can be shared, used, and compared regardless of the actual eye tracker used–works by extending the EyeTrackerDevice class to configure device monitoring and data access to individual eye tracker manufacturers and models.

Not every EyeTrackerDevice subclass will support all of the umbrella functionality within the Common Eye Tracker Interface, but a core set of critical functions are supported by all eye tracker models to date. Any Common Eye Tracker Interface method not supported by the configured Eye Tracker hardware returns a constant (EyeTrackerConstants.FUNCTIONALITY_NOT_SUPPORTED).

Methods in the EyeTrackerDevice class are broken down into several categories:

1. Initializing the Eye Tracker / Setting the Device State.
2. Defining the Graphics Layer for Calibration / System Setup.
3. Starting and Stopping of Data Recording.
4. Sending Messages or Codes to Synchronize the ioHub with the Eye Tracker.
5. Accessing Eye Tracker Data During Recording.
6. Accessing the Eye Tracker native time base.
7. Synchronizing the ioHub time base with the Eye Tracker time base

Note

Only one instance of EyeTracker can be created within an experiment. Attempting to create > 1 instance will raise an exception.

trackerTime()[source]

trackerTime returns the current time reported by the eye tracker device. The time base is implementation dependent.

Args:
None
Return:
float: The eye tracker hardware’s reported current time.
trackerSec()[source]

trackerSec takes the time received by the EyeTracker.trackerTime() method and returns the time in sec.usec-msec format.

Args:
None
Return:
float: The eye tracker hardware’s reported current time in sec.msec-usec format.
setConnectionState(enable)[source]

setConnectionState either connects ( setConnectionState(True) ) or disables ( setConnectionState(False) ) active communication between the ioHub and the Eye Tracker.

Note

A connection to the Eye Tracker is automatically established when the ioHub Process is initialized (based on the device settings in the iohub_config.yaml), so there is no need to explicitly call this method in the experiment script.

Note

Connecting an Eye Tracker to the ioHub does not necessarily collect and send eye sample data to the ioHub Process. To start actual data collection, use the Eye Tracker method setRecordingState(bool) or the ioHub Device method (device type independent) enableEventRecording(bool).

Args:
enable (bool): True = enable the connection, False = disable the connection.
Return:
bool: indicates the current connection state to the eye tracking hardware.
isConnected()[source]

isConnected returns whether the ioHub EyeTracker Device is connected to the eye tracker hardware or not. An eye tracker must be connected to the ioHub for any of the Common Eye Tracker Interface functionality to work.

Args:
None
Return:
bool: True = the eye tracking hardware is connected. False otherwise.
sendCommand(key, value=None)[source]

The sendCommand method allows arbitrary commands or requests to be issued to the eye tracker device. Valid values for the arguments of this method are completely implementation-specific, so please refer to the eye tracker implentation page for the eye tracker being used for a list of valid key and value combinations (if any).

In general, eye tracker implementations should not need to support this method unless there is critical eye tracker functionality that is not accessible using the other methods in the EyeTrackerDevice class.

Args:
key (str): the command or function name that should be run. value (object): the (optional) value associated with the key.
Return:
object: the result of the command call int: EyeTrackerConstants.EYETRACKER_OK int: EyeTrackerConstants.EYETRACKER_ERROR int: EyeTrackerConstants.EYETRACKER_INTERFACE_METHOD_NOT_SUPPORTED
sendMessage(message_contents, time_offset=None)[source]

The sendMessage method sends a text message to the eye tracker.

Messages are generally used to send information you want saved with the native eye data file and are often used to synchronize stimulus changes in the experiment with the eye data stream being saved to the native eye tracker data file (if any).

This means that the sendMessage implementation needs to perform in real-time, with a delay of <1 msec from when a message is sent to when it is time stamped by the eye tracker, for it to be accurate in this regard.

If this standard can not be met, the expected delay and message timing precision (variability) should be provided in the eye tracker’s implementation notes.

Note

If using the ioDataStore to save the eye tracker data, the use of this method is quite optional, as Experiment Device Message Events will likely be preferred. ioHub Message Events are stored in the ioDataStore, alongside all other device data collected via the ioHub, and not in the native eye tracker data.

Args:
message_contents (str):
If message_contents is a string, check with the implementations documentation if there are any string length limits.
Kwargs:
time_offset (float): sec.msec_usec time offset that the time stamp of

the message should be offset in the eye tracker data file. time_offset can be used so that a message can be sent for a display change BEFORE or AFTER the actual flip occurred, using the following formula:

time_offset = sendMessage_call_time - event_time_message_represent

Both times should be based on the ioHub.Computer.getTime() time base.

If time_offset is not supported by the eye tracker implementation being used, a warning message will be printed to stdout.

Return:
(int): EyeTrackerConstants.EYETRACKER_OK, EyeTrackerConstants.EYETRACKER_ERROR, or EyeTrackerConstants.EYETRACKER_INTERFACE_METHOD_NOT_SUPPORTED
runSetupProcedure(starting_state=100)[source]

The runSetupProcedure is a generic method for performing Eye Tracker-specific online configurations, such as:

1. Participant placement validation
2. Camera setup
3. Calibration and validation

The details of this method are implementation-specific.

Note

This is a blocking call for the PsychoPy Process and will not return to the experiment script until the necessary steps have been completed so that the eye tracker is ready to start collecting eye sample data when the method returns.

Args:
None
Kwargs:
starting_state (int): The state that the eye tracker should start with or perform when the runSetupProcedure method is called. Valid options are:
• EyeTrackerConstants.DEFAULT_SETUP_PROCEDURE (the default) indicates that the standard setup and calibration procedure should be performed.
• EyeTrackerConstants.CALIBRATION_STATE indicates the eye tracker should immediately start the calibration procedure when the method is called.
• EyeTrackerConstants.VALIDATION_STATE indicates the eye tracker should immediately start the validation procedure when the method is called.
• EyeTrackerConstants.DRIFT_CORRECTION_STATE indicates the eye tracker should immediately start the validation procedure when the method is called.
• EyeTrackerConstants.TRACKER_FEEDBACK_STATE indicates that any supported operator feeback graphics or windows should be displayed when the method is called..

An eye tracker implementation is only required to support the EyeTrackerConstants.DEFAULT_SETUP_PROCEDURE setting.

Return:
int: EyeTrackerConstants.EYETRACKER_OK if this method and starting_state is supported and the runSetupProcedure ran successfully. If the starting state specified was anything other the EyeTrackerConstants.VALIDATION_START_STATE, the performed calibration routine must have also passed (been sucessful). Possible values:
• EyeTrackerConstants.EYETRACKER_CALIBRATION_ERROR if this method and starting_state is supported but either calibration or drift correction (depending on the state argument provided) failed. In this case; the method can be called again to attempt a sucessful calibration and or drift correction.
• EyeTrackerConstants.EYETRACKER_ERROR if this method is supported and starting_state is, but an error occurred during the method (other than a failed calibration or drift correct result).
• EyeTrackerConstants.EYETRACKER_INTERFACE_METHOD_NOT_SUPPORTED if the eye tracker implementation does not support this method or the specified starting_state.
setRecordingState(recording)[source]

The setRecordingState method is used to start or stop the recording and transmition of eye data from the eye tracking device to the ioHub Process.

Args:
recording (bool): if True, the eye tracker will start recordng data.; false = stop recording data.
Return:
bool: the current recording state of the eye tracking device
isRecordingEnabled()[source]

The isRecordingEnabled method indicates if the eye tracker device is currently recording data.

Args:
None
Return:
bool: True == the device is recording data; False == Recording is not occurring
getLastSample()[source]

The getLastSample method returns the most recent eye sample received from the Eye Tracker. The Eye Tracker must be in a recording state for a sample event to be returned, otherwise None is returned.

Args:
None
Returns:

int: If this method is not supported by the eye tracker interface, EyeTrackerConstants.FUNCTIONALITY_NOT_SUPPORTED is returned.

None: If the eye tracker is not currently recording data.

EyeSample: If the eye tracker is recording in a monocular tracking mode, the latest sample event of this event type is returned.

BinocularEyeSample: If the eye tracker is recording in a binocular tracking mode, the latest sample event of this event type is returned.

getLastGazePosition()[source]

The getLastGazePosition method returns the most recent eye gaze position received from the Eye Tracker. This is the position on the calibrated 2D surface that the eye tracker is reporting as the current eye position. The units are in the units in use by the ioHub Display device.

If binocular recording is being performed, the average position of both eyes is returned.

If no samples have been received from the eye tracker, or the eye tracker is not currently recording data, None is returned.

Args:
None
Returns:

int: If this method is not supported by the eye tracker interface, EyeTrackerConstants.EYETRACKER_INTERFACE_METHOD_NOT_SUPPORTED is returned.

None: If the eye tracker is not currently recording data or no eye samples have been received.

tuple: Latest (gaze_x,gaze_y) position of the eye(s)

clearEvents()

Clears any DeviceEvents that have occurred since the last call to the device’s getEvents(), or clearEvents() methods.

Note that calling clearEvents() atthe device level only clears the given device’s event buffer. The ioHub Process’s Global Event Buffer is unchanged.

Args:
None
Returns:
None
enableEventReporting(enabled=True)

Specifies if the device should be reporting events to the ioHub Process (enabled=True) or whether the device should stop reporting events to the ioHub Process (enabled=False).

Args:
enabled (bool): True (default) == Start to report device events to the ioHub Process. False == Stop Reporting Events to the ioHub Process. Most Device types automatically start sending events to the ioHUb Process, however some devices like the EyeTracker and AnlogInput device’s do not. The setting to control this behavour is ‘auto_report_events’
Returns:
bool: The current reporting state.
getConfiguration()

Retrieve the configuration settings information used to create the device instance. This will be a combination of the default settings for the device (found in iohub.devices.<device_name>.default_,defice_name>.yaml, plus any device settings specified by the experiment author within an iohub_config.yaml file if the ioHubExperimentRuntime is being used to define the experiment logic, or if using the iohub.launchHubProcess() function in the experriment script, as device settings in dictionary form.

Changing any values in the returned dictionary has no effect on the device state.

Args:
None
Returns:
(dict): The dictionary of the device configuration settings used to create the device.
getEvents(*args, **kwargs)

Retrieve any DeviceEvents that have occurred since the last call to the device’s getEvents() or clearEvents() methods.

Note that calling getEvents() at a device level does not change the Global Event Buffer’s contents.

Args:

event_type_id (int): If specified, provides the ioHub DeviceEvent ID for which events should be returned for. Events that have occurred but do not match the event ID specified are ignored. Event type ID’s can be accessed via the EventConstants class; all available event types are class atttributes of EventConstants.

clearEvents (int): Can be used to indicate if the events being returned should also be removed from the device event buffer. True (the defualt) indicates to remove events being returned. False results in events being left in the device event buffer.

asType (str): Optional kwarg giving the object type to return events as. Valid values are ‘namedtuple’ (the default), ‘dict’, ‘list’, or ‘object’.

Returns:
(list): New events that the ioHub has received since the last getEvents() or clearEvents() call to the device. Events are ordered by the ioHub time of each event, older event at index 0. The event object type is determined by the asType parameter passed to the method. By default a namedtuple object is returned for each event.
isReportingEvents()

Returns whether a Device is currently reporting events to the ioHub Process.

Args: None

Returns:
(bool): Current reporting state.

## EyeTracker Device Configuration Settings¶

While all supported eye trackers have the same user-level methods through the Common Eye Tracker Interface, differences between eye trackers are reflected in the different configuration settings based on the capabilities and design of individual eye tracker models. Please see the implementation page for your Eye Tracker hardware for configuration specifics. These configurations settings are specified in the iohub_config.yaml.

## EyeTracker Device Constants¶

The following EyeTrackerConstant values can be used to configure the settings of the eye tracker device:

#
## Sample Filtering related constants
#

# Sample Filter Levels
FILTER_LEVEL_OFF=0
FILTER_OFF=0
FILTER_LEVEL_1=1
FILTER_LEVEL_2=2
FILTER_LEVEL_3=3
FILTER_LEVEL_4=4
FILTER_LEVEL_5=5
FILTER_ON=9

# Sample Filter Types
FILTER_FILE=10
FILTER_NET=11
FILTER_SERIAL=12
FILTER_ANALOG=13
FILTER_ALL=14

#
## Eye Type Constants
#
LEFT_EYE=21
RIGHT_EYE=22
UNKNOWN_MONOCULAR=24
BINOCULAR=23
BINOCULAR_AVERAGED=25
BINOCULAR_CUSTOM=26
SIMULATED_MONOCULAR=27
SIMULATED_BINOCULAR=28

#
## Calibration / Validation Related Constants
#

# Target Point Count
NO_POINTS=40
ONE_POINT=41
TWO_POINTS=42
THREE_POINTS=43
FOUR_POINTS=44
FIVE_POINTS=45
SEVEN_POINTS=47
EIGHT_POINTS=48
NINE_POINTS=49
THIRTEEN_POINTS=53
SIXTEEN_POINTS=56
TWENTYFIVE_POINTS=65
CUSTOM_POINTS=69

# Pattern Dimensionality Types
CALIBRATION_HORZ_1D=130
CALIBRATION_VERT_1D=131
CALIBRATION_2D=132
CALIBRATION_3D=133

# Target Pacing Types
AUTO_CALIBRATION_PACING=90
MANUAL_CALIBRATION_PACING=91

# Target Shape Types
CIRCLE_TARGET=121
CROSSHAIR_TARGET=122
IMAGE_TARGET=123
MOVIE_TARGET=124

# System Setup Method Initial State Constants
DEFAULT_SETUP_PROCEDURE=100
TRACKER_FEEDBACK_STATE=101
CALIBRATION_STATE=102
VALIDATION_STATE=103
DRIFT_CORRECTION_STATE=104

#
## Pupil Measure Type Constants
#
PUPIL_AREA = 70
PUPIL_DIAMETER = 71
PUPIL_WIDTH = 72
PUPIL_HEIGHT = 73
PUPIL_MAJOR_AXIS = 74
PUPIL_MINOR_AXIS = 75
PUPIL_DIAMETER_MM = 77
PUPIL_WIDTH_MM = 78
PUPIL_HEIGHT_MM = 79
PUPIL_MAJOR_AXIS_MM = 80
PUPIL_MINOR_AXIS_MM = 81

#
## Video Based Eye Tracking Method Constants
#
PUPIL_CR_TRACKING=140
PUPIL_ONLY_TRACKING=141

#
## Video Based Pupil Center Calculation Algorithm Constants
#
ELLIPSE_FIT=146
CIRCLE_FIT = 147
CENTROID_FIT = 148

#
## Eye Tracker Interface Return Code Constants
#
EYETRACKER_OK=200
# EYETRACKER_ERROR deprecated for EYETRACKER_UNDEFINED_ERROR
EYETRACKER_ERROR=201
EYETRACKER_UNDEFINED_ERROR=201
# FUNCTIONALITY_NOT_SUPPORTED deprecated for
# EYETRACKER_INTERFACE_METHOD_NOT_SUPPORTED
FUNCTIONALITY_NOT_SUPPORTED=202
EYETRACKER_INTERFACE_METHOD_NOT_SUPPORTED=202
EYETRACKER_CALIBRATION_ERROR=203
EYETRACKER_VALIDATION_ERROR=204
EYETRACKER_SETUP_ABORTED=205
EYETRACKER_NOT_CONNECTED=206
EYETRACKER_MODEL_NOT_SUPPORTED=207


## EyeTracker Event Types¶

The following eye tracker DeviceEvents can be accessed in the experiment script and saved to the ioDataStore (if specified).

### Sample Events¶

class psychopy.iohub.devices.eyetracker.eye_events.MonocularEyeSampleEvent(*args, **kwargs)[source]

Bases: psychopy.iohub.devices.eyetracker.eye_events.EyeTrackerEvent

A MonocularEyeSampleEvent represents the eye position and eye attribute data collected from one frame or reading of an eye tracker device that is recoding from only one eye, or is recording from both eyes and averaging the binocular data. The eye sample class contains a large number of attributes to try and accommodate for the different field types different eye trackers report at a sample level. Therefore it will not be uncommon for a given eye tracker implementation to provide a NOT_SUPPORTED_FIELD value for many attributes.

Please refer to the implementation specific documentation for the eye tracker of interest for more details.

Event Type ID: EventConstants.MONOCULAR_EYE_SAMPLE

Event Type String: ‘MONOCULAR_EYE_SAMPLE’

eye

The eye type that the sample is from. Valid values are:

• EyeTrackerConstants.LEFT_EYE
• EyeTrackerConstants.RIGHT_EYE
• EyeTrackerConstants.BINOCULAR_AVERAGED
• EyeTrackerConstants.UNKNOWN_MONOCULAR
• EyeTrackerConstants.SIMULATED_MONOCULAR
gaze_x

The calibrated horizontal eye position on the calibration plane. This value is specified in Display Coordinate Type Units.

gaze_y

The calibrated vertical eye position on the calibration plane. This value is specified in Display Coordinate Type Units.

gaze_z

The calculated point of gaze in depth. Generally this can only be provided if binocular reporting is being performed.

eye_cam_x

The x eye position in an eye trackers 3D coordinate space. Generally this field is only available by systems that are also calculating eye data using a 3D model of eye position relative to the eye camera(s) for example.

eye_cam_y

The y eye position in an eye trackers 3D coordinate space. Generally this field is only available by systems that are also calculating eye data using a 3D model of eye position relative to the eye camera(s) for example.

eye_cam_z

The z eye position in an eye trackers 3D coordinate space. Generally this field is only available by systems that are also calculating eye data using a 3D model of eye position relative to the eye camera(s) for example.

angle_x

The horizontal angle of eye the relative to the head.

angle_y

The vertical angle of eye the relative to the head.

raw_x

The non-calibrated x position of the calculated eye ‘center’ on the camera sensor image, factoring in any corneal reflection or other low level adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

raw_y

The non-calibrated y position of the calculated eye ‘center’ on the camera sensor image, factoring in any corneal reflection or other low level adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

pupil_measure1

A measure related to pupil size or diameter. The attribute pupil_measure1_type defines what type the measure represents.

pupil_measure1_type

The type of pupil size or shape information provided in the pupil_measure1 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
pupil_measure2

A second measure related to pupil size or diameter. The attribute pupil_measure2_type defines what type the measure represents.

pupil_measure2_type

The type of pupil size or shape information provided in the pupil_measure2 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
ppd_x

Horizontal pixels per visual degree for this eye position as reported by the eye tracker.

ppd_y

Vertical pixels per visual degree for this eye position as reported by the eye tracker.

velocity_x

Horizontal velocity of the eye at the time of the sample; as reported by the eye tracker.

velocity_y

Vertical velocity of the eye at the time of the sample; as reported by the eye tracker.

velocity_xy

2D Velocity of the eye at the time of the sample; as reported by the eye tracker.

status

An available status byte for the eye tracker sample. Meaning is completely tracker dependent.

class psychopy.iohub.devices.eyetracker.eye_events.BinocularEyeSampleEvent(*args, **kwargs)[source]

Bases: psychopy.iohub.devices.eyetracker.eye_events.EyeTrackerEvent

The BinocularEyeSampleEvent event represents the eye position and eye attribute data collected from one frame or reading of an eye tracker device that is recording both eyes of a participant. The BinocularEyeSample class contains a large number of attributes to try and accommodate for the different field types different eye trackers report at a sample level. Therefore it will be common for a given eye tracker implementation to provide a NOT_SUPPORTED_FIELD value for many attributes.

Please refer to the implementation specific documentation for the eye tracker of interest for more details.

left_gaze_x

The calibrated horizontal left eye position on the calibration plane. This value is specified in Display Coordinate Type Units.

left_gaze_y

The calibrated vertical left eye position on the calibration plane. This value is specified in Display Coordinate Type Units.

left_gaze_z

The calculated point of gaze in depth. Generally this can only be provided if binocular reporting is being performed.

left_eye_cam_x

The x left eye position in an eye trackers 3D coordinate space. Generally this field is only available by systems that are also calculating eye data using a 3D model of eye position relative to the eye camera(s) for example.

left_eye_cam_y

The y left eye position in an eye trackers 3D coordinate space. Generally this field is only available by systems that are also calculating eye data using a 3D model of eye position relative to the eye camera(s) for example.

left_eye_cam_z

The z left eye position in an eye trackers 3D coordinate space. Generally this field is only available by systems that are also calculating eye data using a 3D model of eye position relative to the eye camera(s) for example.

left_angle_x

The horizontal angle of left eye the relative to the head.

left_angle_y

The vertical angle of left eye the relative to the head.

left_raw_x

The non-calibrated x position of the calculated left eye ‘center’ on the camera sensor image, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

left_raw_y

The non-calibrated y position of the calculated left eye ‘center’ on the camera sensor image, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

left_pupil_measure1

A measure related to left pupil size or diameter. The attribute pupil_measure1_type defines what type the measure represents.

left_pupil_measure1_type

The type of left pupil size or shape information provided in the pupil_measure1 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
left_pupil_measure2

A second measure related to left pupil size or diameter. The attribute pupil_measure2_type defines what type the measure represents.

left_pupil_measure2_type

The type of left pupil size or shape information provided in the pupil_measure2 attribute. Several possible pupil_measure types available: attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
left_ppd_x

Horizontal pixels per visual degree for this left eye position as reported by the eye tracker.

left_ppd_y

Vertical pixels per visual degree for this left eye position as reported by the eye tracker.

left_velocity_x

Horizontal velocity of the left eye at the time of the sample; as reported by the eye tracker.

left_velocity_y

Vertical velocity of the left eye at the time of the sample; as reported by the eye tracker.

left_velocity_xy

2D Velocity of the left eye at the time of the sample; as reported by the eye tracker.

right_gaze_x

The calibrated horizontal right eye position on the calibration plane. This value is specified in Display Coordinate Type Units.

right_gaze_y

The calibrated vertical right eye position on the calibration plane. This value is specified in Display Coordinate Type Units.

right_gaze_z

The calculated point of gaze in depth. Generally this can only be provided if binocular reporting is being performed.

right_eye_cam_x

The x right eye position in an eye trackers 3D coordinate space. Generally this field is only available by systems that are also calculating eye data using a 3D model of eye position relative to the eye camera(s) for example.

right_eye_cam_y

The y right eye position in an eye trackers 3D coordinate space. Generally this field is only available by systems that are also calculating eye data using a 3D model of eye position relative to the eye camera(s) for example.

right_eye_cam_z

The z right eye position in an eye trackers 3D coordinate space. Generally this field is only available by systems that are also calculating eye data using a 3D model of eye position relative to the eye camera(s) for example.

right_angle_x

The horizontal angle of right eye the relative to the head.

right_angle_y

The vertical angle of right eye the relative to the head.

right_raw_x

The non-calibrated x position of the calculated right eye ‘center’ on the camera sensor image, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

right_raw_y

The non-calibrated y position of the calculated right eye ‘center’ on the camera sensor image, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

right_pupil_measure1

A measure related to right pupil size or diameter. The attribute pupil_measure1_type defines what type the measure represents.

right_pupil_measure1_type

The type of right pupil size or shape information provided in the pupil_measure1 attribute. Several possible pupil_measure types available: attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
right_pupil_measure2

A second measure related to right pupil size or diameter. The attribute pupil_measure2_type defines what type the measure represents.

right_pupil_measure2_type

The type of right pupil size or shape information provided in the pupil_measure2 attribute. Several possible pupil_measure types available: attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
right_ppd_x

Horizontal pixels per visual degree for this right eye position as reported by the eye tracker.

right_ppd_y

Vertical pixels per visual degree for this right eye position as reported by the eye tracker.

right_velocity_x

Horizontal velocity of the right eye at the time of the sample; as reported by the eye tracker.

right_velocity_y

Vertical velocity of the right eye at the time of the sample; as reported by the eye tracker.

right_velocity_xy

2D Velocity of the right eye at the time of the sample; as reported by the eye tracker.

status

An available status byte for the eye tracker sample. Meaning is completely tracker dependent.

### Fixation Events¶

class psychopy.iohub.devices.eyetracker.eye_events.FixationStartEvent(*args, **kwargs)[source]

Bases: psychopy.iohub.devices.eyetracker.eye_events.EyeTrackerEvent

A FixationStartEvent is generated when the beginning of an eye fixation ( in very general terms, a period of relatively stable eye position ) is detected by the eye trackers sample parsing algorithms. Please refer to the implementation specific interface documentation for your eye tracker, and even the eye tracker’s reference material itself, it you are looking for a more precise definition of how the eye tracker manufacturer has implemented their parser and how it determines when a FixationStartEvent occurs, assuming it supports this event type at all.

eye

The eye type that the event is from. Valid values are: EyeTrackerConstants.LEFT_EYE EyeTrackerConstants.RIGHT_EYE EyeTrackerConstants.UNKNOWN_MONOCULAR EyeTrackerConstants.SIMULATED_MONOCULAR

gaze_x

The calibrated horizontal eye position at the start of the eye event on the calibration plane. This value is specified in Display Coordinate Type Units.

gaze_y

The calibrated vertical eye position at the start of the eye event on the calibration plane. This value is specified in Display Coordinate Type Units.

gaze_z

The calculated point of gaze in depth at the start of the eye event. Generally this can only be provided if binocular reporting is being performed.

angle_x

The horizontal angle of eye the relative to the head at the start of the eye event.

angle_y

The vertical angle of eye the relative to the head at the start of the eye event.

raw_x

The non-calibrated x position of the calculated eye ‘center’ on the camera sensor image at the start of the eye event, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

raw_y

The non-calibrated y position of the calculated eye ‘center’ on the camera sensor image at the start of the eye event, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

pupil_measure1

A measure related to pupil size or diameter at the start of the eye event. The attribute pupil_measure1_type defines what type the measure represents.

pupil_measure1_type

The type of pupil size or shape information provided in the pupil_measure1 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
pupil_measure2

A second measure related to pupil size or diameter at the start of the eye event. The attribute pupil_measure2_type defines what type the measure represents.

pupil_measure2_type

The type of pupil size or shape information provided in the pupil_measure2 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
ppd_x

Horizontal pixels per visual degree for this eye position at the start of the eye event as reported by the eye tracker.

ppd_y

Vertical pixels per visual degree for this eye position at the start of the eye event as reported by the eye tracker.

velocity_x

Horizontal velocity of the eye at the start of the eye event; as reported by the eye tracker.

velocity_y

Vertical velocity of the eye at the start of the eye event; as reported by the eye tracker.

velocity_xy

2D Velocity of the eye at the start of the eye event; as reported by the eye tracker.

status

An available status byte for the eye tracker event. Meaning or use is completely tracker dependent.

class psychopy.iohub.devices.eyetracker.eye_events.FixationEndEvent(*args, **kwargs)[source]

Bases: psychopy.iohub.devices.eyetracker.eye_events.EyeTrackerEvent

eye

The eye type that the event is from. Valid values are: EyeTrackerConstants.LEFT_EYE EyeTrackerConstants.RIGHT_EYE EyeTrackerConstants.UNKNOWN_MONOCULAR EyeTrackerConstants.SIMULATED_MONOCULAR

duration

The calculated duration of the Eye event in sec.msec-usec format.

start_gaze_x

The calibrated horizontal eye position at the start of the eye event on the calibration plane. This value is specified in Display Coordinate Type Units.

start_gaze_y

The calibrated vertical eye position at the start of the eye event on the calibration plane. This value is specified in Display Coordinate Type Units.

start_gaze_z

The calculated point of gaze in depth at the start of the eye event. Generally this can only be provided if binocular reporting is being performed.

start_angle_x

The horizontal angle of eye the relative to the head at the start of the eye event.

start_angle_y

The vertical angle of eye the relative to the head at the start of the eye event.

start_raw_x

The non-calibrated x position of the calculated eye ‘center’ on the camera sensor image at the start of the eye event, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

start_raw_y

The non-calibrated y position of the calculated eye ‘center’ on the camera sensor image at the start of the eye event, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

start_pupil_measure1

A measure related to pupil size or diameter at the start of the eye event. The attribute pupil_measure1_type defines what type the measure represents.

start_pupil_measure1_type

The type of pupil size or shape information provided in the pupil_measure1 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
start_pupil_measure2

A second measure related to pupil size or diameter at the start of the eye event. The attribute pupil_measure2_type defines what type the measure represents.

start_pupil_measure2_type

The type of pupil size or shape information provided in the pupil_measure2 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
start_ppd_x

Horizontal pixels per visual degree for this eye position at the start of the eye event as reported by the eye tracker.

start_ppd_y

Vertical pixels per visual degree for this eye position at the start of the eye event as reported by the eye tracker.

start_velocity_x

Horizontal velocity of the eye at the start of the eye event; as reported by the eye tracker.

start_velocity_y

Vertical velocity of the eye at the start of the eye event; as reported by the eye tracker.

start_velocity_xy

2D Velocity of the eye at the start of the eye event; as reported by the eye tracker.

end_gaze_x

The calibrated horizontal eye position at the end of the eye event on the calibration plane. This value is specified in Display Coordinate Type Units.

end_gaze_y

The calibrated vertical eye position at the end of the eye event on the calibration plane. This value is specified in Display Coordinate Type Units.

end_gaze_z

The calculated point of gaze in depth at the end of the eye event. Generally this can only be provided if binocular reporting is being performed.

end_angle_x

The horizontal angle of eye the relative to the head at the end of the eye event.

end_angle_y

The vertical angle of eye the relative to the head at the end of the eye event.

end_raw_x

The non-calibrated x position of the calculated eye ‘center’ on the camera sensor image at the end of the eye event, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

end_raw_y

The non-calibrated y position of the calculated eye ‘center’ on the camera sensor image at the end of the eye event, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

end_pupil_measure1

A measure related to pupil size or diameter at the end of the eye event. The attribute pupil_measure1_type defines what type the measure represents.

end_pupil_measure1_type

The type of pupil size or shape information provided in the pupil_measure1 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
end_pupil_measure2

A second measure related to pupil size or diameter at the end of the eye event. The attribute pupil_measure2_type defines what type the measure represents.

end_pupil_measure2_type

The type of pupil size or shape information provided in the pupil_measure2 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
end_ppd_x

Horizontal pixels per visual degree for this eye position at the end of the eye event as reported by the eye tracker.

end_ppd_y

Vertical pixels per visual degree for this eye position at the end of the eye event as reported by the eye tracker.

end_velocity_x

Horizontal velocity of the eye at the end of the eye event; as reported by the eye tracker.

end_velocity_y

Vertical velocity of the eye at the end of the eye event; as reported by the eye tracker.

end_velocity_xy

2D Velocity of the eye at the end of the eye event; as reported by the eye tracker.

average_gaze_x

Average calibrated horizontal eye position during the eye event on the calibration plane. This value is specified in Display Coordinate Type Units.

average_gaze_y

Average calibrated vertical eye position during the eye event on the calibration plane. This value is specified in Display Coordinate Type Units.

average_gaze_z

Average calculated point of gaze in depth during the eye event. Generally this can only be provided if binocular reporting is being performed.

average_angle_x

Average horizontal angle of eye the relative to the head during the eye event.

average_angle_y

Average vertical angle of eye the relative to the head during the eye event.

average_raw_x

Average non-calibrated x position of the calculated eye ‘center’ on the camera sensor image during the eye event, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

average_raw_y

The average non-calibrated y position of the calculated eye ‘center’ on the camera sensor image during the eye event, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

average_pupil_measure1

A measure related to average pupil size or diameter during the eye event. The attribute pupil_measure1_type defines what type the measure represents.

average_pupil_measure1_type

The type of pupil size or shape information provided in the pupil_measure1 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
average_pupil_measure2

A second measure related to average pupil size or diameter during the eye event. The attribute pupil_measure2_type defines what type the measure represents.

average_pupil_measure2_type

The type of pupil size or shape information provided in the pupil_measure2 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
average_ppd_x

Average Horizontal pixels per visual degree for this eye position during the eye event as reported by the eye tracker.

average_ppd_y

Average Vertical pixels per visual degree for this eye position during the eye event as reported by the eye tracker.

average_velocity_x

Average Horizontal velocity of the eye during the eye event; as reported by the eye tracker.

average_velocity_y

Average Vertical velocity of the eye during the eye event; as reported by the eye tracker.

average_velocity_xy

Average 2D Velocity of the eye at the during the eye event; as reported by the eye tracker.

status

An available status byte for the eye tracker event. Meaning or use is completely tracker dependent.

Bases: psychopy.iohub.devices.eyetracker.eye_events.EyeTrackerEvent

eye

The eye type that the event is from. Valid values are: EyeTrackerConstants.LEFT_EYE EyeTrackerConstants.RIGHT_EYE EyeTrackerConstants.UNKNOWN_MONOCULAR EyeTrackerConstants.SIMULATED_MONOCULAR

duration

The calculated duration of the Eye event in sec.msec-usec format.

start_gaze_x

The calibrated horizontal eye position at the start of the eye event on the calibration plane. This value is specified in Display Coordinate Type Units.

start_gaze_y

The calibrated vertical eye position at the start of the eye event on the calibration plane. This value is specified in Display Coordinate Type Units.

start_gaze_z

The calculated point of gaze in depth at the start of the eye event. Generally this can only be provided if binocular reporting is being performed.

start_angle_x

The horizontal angle of eye the relative to the head at the start of the eye event.

start_angle_y

The vertical angle of eye the relative to the head at the start of the eye event.

start_raw_x

The non-calibrated x position of the calculated eye ‘center’ on the camera sensor image at the start of the eye event, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

start_raw_y

The non-calibrated y position of the calculated eye ‘center’ on the camera sensor image at the start of the eye event, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

start_pupil_measure1

A measure related to pupil size or diameter at the start of the eye event. The attribute pupil_measure1_type defines what type the measure represents.

start_pupil_measure1_type

The type of pupil size or shape information provided in the pupil_measure1 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
start_pupil_measure2

A second measure related to pupil size or diameter at the start of the eye event. The attribute pupil_measure2_type defines what type the measure represents.

start_pupil_measure2_type

The type of pupil size or shape information provided in the pupil_measure2 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
start_ppd_x

Horizontal pixels per visual degree for this eye position at the start of the eye event as reported by the eye tracker.

start_ppd_y

Vertical pixels per visual degree for this eye position at the start of the eye event as reported by the eye tracker.

start_velocity_x

Horizontal velocity of the eye at the start of the eye event; as reported by the eye tracker.

start_velocity_y

Vertical velocity of the eye at the start of the eye event; as reported by the eye tracker.

end_gaze_x

The calibrated horizontal eye position at the end of the eye event on the calibration plane. This value is specified in Display Coordinate Type Units.

end_gaze_y

The calibrated vertical eye position at the end of the eye event on the calibration plane. This value is specified in Display Coordinate Type Units.

end_gaze_z

The calculated point of gaze in depth at the end of the eye event. Generally this can only be provided if binocular reporting is being performed.

end_angle_x

The horizontal angle of eye the relative to the head at the end of the eye event.

end_angle_y

The vertical angle of eye the relative to the head at the end of the eye event.

end_raw_x

The non-calibrated x position of the calculated eye ‘center’ on the camera sensor image at the end of the eye event, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

end_raw_y

The non-calibrated y position of the calculated eye ‘center’ on the camera sensor image at the end of the eye event, factoring in any corneal reflection adjustments. This is typically reported in some arbitrary unit space that often has sub-pixel resolution due to image processing techniques being applied.

end_pupil_measure1

A measure related to pupil size or diameter at the end of the eye event. The attribute pupil_measure1_type defines what type the measure represents.

end_pupil_measure1_type

The type of pupil size or shape information provided in the pupil_measure1 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
end_pupil_measure2

A second measure related to pupil size or diameter at the end of the eye event. The attribute pupil_measure2_type defines what type the measure represents.

end_pupil_measure2_type

The type of pupil size or shape information provided in the pupil_measure2 attribute. Several possible pupil_measure types available:

• EyeTrackerConstants.PUPIL_AREA
• EyeTrackerConstants.PUPIL_DIAMETER
• EyeTrackerConstants.PUPIL_AREA_MM
• EyeTrackerConstants.PUPIL_DIAMETER_MM
• EyeTrackerConstants.PUPIL_WIDTH
• EyeTrackerConstants.PUPIL_HEIGHT
• EyeTrackerConstants.PUPIL_WIDTH_MM
• EyeTrackerConstants.PUPIL_HEIGHT_MM
• EyeTrackerConstants.PUPIL_MAJOR_AXIS
• EyeTrackerConstants.PUPIL_MINOR_AXIS
end_ppd_x

Horizontal pixels per visual degree for this eye position at the end of the eye event as reported by the eye tracker.

end_ppd_y

Vertical pixels per visual degree for this eye position at the end of the eye event as reported by the eye tracker.

end_velocity_x

Horizontal velocity of the eye at the end of the eye event; as reported by the eye tracker.

end_velocity_y

Vertical velocity of the eye at the end of the eye event; as reported by the eye tracker.

end_velocity_xy

2D Velocity of the eye at the end of the eye event; as reported by the eye tracker.

average_velocity_x

Average Horizontal velocity of the eye during the eye event; as reported by the eye tracker.

average_velocity_y

Average Vertical velocity of the eye during the eye event; as reported by the eye tracker.

average_velocity_xy

Average 2D Velocity of the eye at the during the eye event; as reported by the eye tracker.

peak_velocity_x

Peak Horizontal velocity of the eye during the eye event; as reported by the eye tracker.

peak_velocity_y

Peak Vertical velocity of the eye during the eye event; as reported by the eye tracker.

peak_velocity_xy

Peak 2D Velocity of the eye at the during the eye event; as reported by the eye tracker.

status

An available status byte for the eye tracker event. Meaning or use is completely tracker dependent.

## Eye Tracking Hardware Implementations¶

The following links provide details on the Common Eye Tracker Interface implementation for each currently supported eye tracking system. It is very important to review the documentation for your eye tracker, both for correct configuration and event access during the experiment.

Eye Tracker implementations are listed in alphabetical order.