Can I control to two Eyelinks Simultaneously with Mworks?

Michael Yoo's Avatar

Michael Yoo

24 Jan, 2022 07:20 PM

Hello Chris,

I am Michael Yoo, a postdoc working with Mehrdad Jazayeri. I am trying to control two eye-tracker (specifically, Eyelink 1000) with one Mworks. However, I could only control one, and Mworks showed an error saying it could not connect to the other one. It may not be the problem with IP addresses since I followed the SR-research technical staff's guidance for IP addresses configuration. Furthermore, I could control each eye-tracker when I turned one of them off.

If you could help me with what to do for first-round troubleshooting, that would be a great start.

Thank you so much.

Best,
Michael

  1. Support Staff 1 Posted by Christopher Sta... on 25 Jan, 2022 02:16 PM

    Christopher Stawarz's Avatar

    Hi Michael,

    The EyeLink Developers Kit, which MWorks uses, does not support connecting to multiple EyeLink systems from a single application. If you have multiple instances of MWServer running on a single Mac, each one should be able to connect to a different EyeLink (though I have never tried this), but connecting to multiple systems from a single MWServer instance isn't possible.

    Cheers,
    Chris

  2. 2 Posted by Michael Yoo on 25 Jan, 2022 06:45 PM

    Michael Yoo's Avatar

    Hello Chris,

    Thank you so much for your answer. According to your answer, if I want to track the eyes of two subjects simultaneously, it would be nice to consider tracking eyes via multiple MWServer and synchronize them. An initial trial would be through NIDAQ or Arduino, but do you have any suggestions?

    Best,
    Michael

  3. Support Staff 3 Posted by Christopher Sta... on 26 Jan, 2022 05:16 PM

    Christopher Stawarz's Avatar

    Hi Michael,

    According to your answer, if I want to track the eyes of two subjects simultaneously, it would be nice to consider tracking eyes via multiple MWServer and synchronize them. An initial trial would be through NIDAQ or Arduino, but do you have any suggestions?

    I wasn't really recommending that approach. I was just saying that it's probably possible.

    MWorks isn't really designed for running multiple MWServer instances on one machine, and I think you'd run in to issues if you tried. For one thing, the two instances would share settings, so you couldn't specify a different stimulus display for each instance. On the other hand, if the second instance were just talking to an EyeLink and sending events to the first, it might work. But there could be other problems.

    Being limited to one EyeLink connection per process seems entirely arbitrary. The EyeLink API communicates with the eye tracker via a TCP socket, so there's no obvious reason why you shouldn't be able to connect to more than one system simultaneously. My guess is that the SR Research folks designed the API that way just to keep things simple for the common case.

    A potential solution would be for MWServer to spawn a separate child process for communicating with each connected EyeLink. This is what happens for NIDAQ devices (although for different reasons). However, this would entail a major reworking of MWorks' EyeLink interface, so I couldn't get it to you quickly. (Given my current workload, it'd likely be several months before I could even start on it.)

    Sorry -- I wish I had a better answer for you, but I don't at the moment.

    Cheers,
    Chris

  4. Christopher Stawarz closed this discussion on 08 Mar, 2022 02:59 PM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac

Recent Discussions

17 May, 2022 02:12 PM
16 May, 2022 03:12 PM
04 May, 2022 06:02 PM
03 May, 2022 01:30 PM
02 May, 2022 10:47 PM