OS (Win10):
PsychoPy version (2021.2.3):
Standard Standalone Installation? (y)
Do you want it to also run online? (n)
What are you trying to achieve?:
Hi there, I’m doing an Eyetracking experiment with an Eyelink 1000 and iohub. The settings are set in a .yaml file (see below) that I run in a code component (begin Experiment tab). After each trial, I’d like to extract the data of the entire trial duration, at 1000Hz (to compute a saccadic latency and adapt the task across trials).
What did you try to make it work?:
At first, I had a code component with the following:
begin routine:
thisTrialSamples =
each frame:
thisTrialSamples += [eyetracker.getPosition()]
And this worked well, until I realised that the ‘each frame’ is actually 60Hz (screen FPS), so instead of accumulating eye data at 1000Hz, I had it at 60Hz.
I tried other things like ‘eyetracker.getEvents(), but it only returns 1024 items while I was expecting 3000 (I am extracting the data during 3 sec.
Link to the most relevant existing thread you have found:
This kinda looks like this getLastGazePosition() only gives new gaze position every 15 ms - #2 by Corios in which the solution was to switch from iohub to Pylink, but i’d like to stay with iohub (and preferably with the builder)
This one also had a solution, but with the coder How do you track pupil size live on iohub?
What specifically went wrong when you tried that?:
The ‘each frame’ component worked well, but is just not suited to my needs of having a 1000Hz sampling rate.
The eyetracker.getEvents() returned samples of type ‘MonocularEyeSampleEventNT’, containing all the data needed (time, x, y), but only for about 1sec of recording (I checked the time) instead of 3.
the yaml file I am using:
data_store:
enable: true
experiment_info:
code: ystart
session_info:
code: S0001
monitor_devices:
- Display:
default_eye_distance:
surface_center: 570
unit_type: mm
device_number: 0
name: display
physical_dimensions:
height: 340
unit_type: mm
width: 590
psychopy_monitor_name: default
reporting_unit_type: pix - Keyboard:
name: keyboard - Mouse:
name: mouse - Experiment:
name: experimentRuntime - eyetracker.hw.sr_research.eyelink.EyeTracker:
calibration:
auto_pace: true
pacing_speed: 1.5
screen_background_color:-
128
-
128
-
128
target_attributes:
inner_color: -
0
-
0
-
0
inner_diameter: 0
outer_color: -
0
-
0
-
0
outer_diameter: 30
target_type: CIRCLE_TARGET
type: FIVE_POINTS
default_native_data_file_name: 0031639
device_timer:
interval: 0.001
enable_interface_without_connection: false
model_name: EYELINK 1000 TOWER
monitor_event_types: -
MonocularEyeSampleEvent
-
BinocularEyeSampleEvent
-
FixationStartEvent
-
FixationEndEvent
-
SaccadeStartEvent
-
SaccadeEndEvent
-
BlinkStartEvent
-
BlinkEndEvent
name: tracker
network_settings: 100.1.1.1
runtime_settings:
sample_filtering:
FILTER_ONLINE: FILTER_OFF
sampling_rate: 1000
track_eyes: RIGHT_EYE
vog_settings:
pupil_center_algorithm: CENTROID_FIT
pupil_measure_types: PUPIL_AREA
tracking_mode: PUPIL_CR_TRACKING
save_events: true
simulation_mode: false
stream_events: true
-
