Thanks so much for making this for us. I had been holding off on
implementing it in my ongoing experiment because it required updating
MWorks and changing some of the code. But I recently got to a point where
it made sense to get better eye tracking so I took the plunge. First of
all, it's awesome. It certainly has my vote for MWorks feature-of-the-year.
I do have one thing I wanted to report back to you on. After I first put it
all together, I was having problems with MWorks never allowing a trial to
get started. I figured out that this was because it was detecting lots and
lots of saccades that were noise or so small I didn't care about. Reza, our
eye movements expert tells me that Eyelink's internal calibration is great
but its on line saccade detection is not. So in the end, I just removed the
requirement that the monkey be fixating on a fixation point to count it as
fixated upon in the fixation-checks, and instead only require that the eye
be within the boundary. And since the calibration is so accurate (less than
1 degree diameter!) it seems good enough. That said, it might still be nice
to make fixation and saccade detection possible and tunable within MWorks,
so I will probably be putting an eye_monitor back in for saccade detection
rather than relying on Eyelink. Just thought you might like to know that in
case someone else asks. I'll let you know if I encounter anything else
weird, but it seems to be working perfectly right now.
Thanks for testing and report back. I'm glad to hear that things are mostly working well.
Regarding saccade/fixation detection, have you tried tweaking the EyeLink's saccadic thresholds? Section 4.3.5 of the EyeLink 1000 Plus User Manual describes three settings (saccade_velocity_threshold, saccade_acceleration_threshold, and saccade_motion_threshold) that can be changed. Maybe you can convince it to be a little more forgiving of small eye movements?
If not, you can always use MWorks' eye monitor instead, as you noted.