psychopy.org | Reference | Downloads | Github

Keyboard not responsive during eye tracker setup procedure with SR Eye Link

OS: Win10
PsychoPy version: 2021.1.0
Standard Standalone? Yes

I am trying to run the stroop ioHub demo to test out my eyetracking setup. I am using a SR EyeLink 1000 eye tracker and want to use it in Remote tracking mode. I update the eyelink_std.yaml file. The ioHub server connects but when tracker.runSetupProcedure() is called, the keyboard inputs to control the eye tracker setup do not work on the stimulus computer (except escape, which does work). I can use the keys on the host computer, but nothing shows up on the stimulus monitor other than the instructions for the setup procedure.

I’ve seen other posts about similar issues, but not necessarily this one. It all seems fine other than the calibration routine just doesn’t want to work.

I’ve tried making sure the SR dongle is in the stimulus computer, the SDK is installed, and the host computer is active. I’m not sure if this an issue or if I am doing something wrong in my setup.

Hi jkoen,

but nothing shows up on the stimulus monitor other than the instructions for the setup procedure.

Are you seeing the eyelink specific instruction screen, or a generic instruction screen? I’m wondering if the calibration window is being hidden by the psychopy window on your system.

If it is the eyelink specific setup screen and the escape key is working you likely just need to hit the ‘enter’ key to get into the camera setup screen.

The stroop iohub demo is no longer distributed with the Builder demo’s, so you may also want to try the new Builder visualsearch_eyetracker demo instead.

There are also some other eye tracking Coder demos in demos/coder/iohub/eyetracking.

If none of this helps, please send me the project folder you are trying to run with your config changes and we can go from there.

Thank you.

Thank you Sol!

I get the exact same issue with the visualsearch_eyetracker demo as well. It is the eyelink specific setup screen where the issue is happening. When I press ‘enter’, ‘c’, or ‘v’ nothing happens. I could be wrong, but I was expecting the display screen to show the fixation points to participants (like using the SR Experiment Builder software). Pressing the ‘escape’ key works to quite the configuration.

I have included the config file I’m using below. One thing that may be of relevance is that my stimulus computer is a dual-monitor setup with the monitors mirrored. This works with the SR software, so I was expecting it to work that way too.

Appreciate the help again.

eyetracker.hw.sr_research.eyelink.EyeTracker:
    name: tracker
    device_timer:
        interval: 0.001
    monitor_event_types: [ MonocularEyeSampleEvent, BinocularEyeSampleEvent, FixationStartEvent, FixationEndEvent, SaccadeStartEvent, SaccadeEndEvent, BlinkStartEvent, BlinkEndEvent]
    simulation_mode: False
    enable_interface_without_connection: False
    network_settings: 100.1.1.2
    default_native_data_file_name: et_data
    runtime_settings:
        sampling_rate: 1000
        track_eyes: RIGHT_EYE
        sample_filtering:
            FILTER_ONLINE: FILTER_OFF
        vog_settings:
            pupil_measure_types: PUPIL_AREA
            tracking_mode: PUPIL_CR_TRACKING
            pupil_center_algorithm: CENTROID_FIT
    calibration:
        type: THIRTEEN_POINTS
        auto_pace: True
        pacing_speed: 1.5
        screen_background_color: [128,128,128]
        target_type: CIRCLE_TARGET
        target_attributes:
            # outer_diameter and inner_diameter are specified in pixels
            outer_diameter: 33
            inner_diameter: 6
            outer_color: [255,255,255]
            inner_color: [0,0,0]
    model_name: EYELINK 1000 REMOTE

Hi again,

On second thought, I’m thinking that the experiment is not actually connecting to the eyelink eye tracker. Ignore my last post for now. :wink:

Can you check that the network_settings: is set correctly? The ip address of the host PC is usually 100.1.1.1 (which should be the default in the demo), not 100.1.1.2.

If the experiment can not make the network connection to the eyelink, it enables enable_interface_without_connection allowing the api to be used without a tracker connection. If running from a cmd line you would see a warning printed,

RuntimeError: Could not connect to tracker at 100.1.1.2
 ** EyeLink Error: Could not connect to EyeLink Eye Tracker. EyeLink Eye tracker device will run in 'dummy' mode.

but if running from Builder you will not see this little warning. You can tell if there is a network connection issue to the eyeink by looking at the connection status on the host application. If it is not ‘connected’ when the experiment has started the setup procedure, then the network settings are not correct and it has launched without actually connecting to the tracker.

thanks again.

Thanks Sol! The network setting was the issue. I thought I had changed the 100.1.1.1 network setting but I didn’t use that file apparently. All is working now.

Appreciate all your help.