Timing errors introduced by eyetracker (Eyelink 1000)

Hello,

Have been having a problem when introducing the eye-tracker to my experiment. i am using the default settings for the SR eyelink setup and the calibration/ validation procedure for eyelink 1000.

I am trying to present on every frame and record responses at any point during the experiment. When using the iohub with

eyetracker_config['enable_interface_without_connection'] = True

and commenting out the calibration procedure at the beginning, the experiment works with expected flips on every frame. However once that is changed to incorporate the actual eye-tracker and the interface is connected ( i.e. eyetracker_config[‘enable_interface_without_connection’] = False) then the timings become all random - including timings that are not multiples on the flip rate.

Simply put the loop is drawing and presenting a frame >> saving the timing with .getTime , checking for keypresses, saving those to csv file >>procede to next iteration of loop/next framePreformatted text.

I am a newbie here, sorry if this is not clear/ let me know what other information you would need.

Hi, I don’t have experience with Eyelink eyetrackers (I only have access to Tobii eyetrackers.), below is my guess.

Writing data into a csv file in the loop may be the reason of the timing issue. Because writing data into a file is more time-consuming than simply storing it in the RAM, storing the eye-tracking data in numpy arrays during the experiment and only ouput the data when the experiment is finished (or at the time when timing is less important) may be a better idea.

Hope that helps!

Yu-Han

1 Like

Thank you @yh-luo This resolved the majority of the timing issues.

Hi @gretat
I seem to be encountering a very similar issue using the Eyelink1000, however I am unsure how to porgram psychopy to save to RAM during experiment, and save to permanent storage afterwards - can you maybe point me in the right direction?