Welcome!

Sign in with your CogSci, Facebook, Google, or Twitter account.

Or register to create a new account.

We'll use your information only for signing in to this forum.

Supported by

Dual-PC setup with SMI RED250mobile

LeaLea Posts: 4

Hey there,
I am trying to set up an eytracking/EEG experiment, in which the stimulus presenter PC (PC1) should communicate with the eyetracker PC (PC2) via an ethernet cable and with an EEG PC (PC3) via parallel port. I already wrote a Psychopy-script using pylink (assuming I could use an eyelink eyetracker), in which I simply wanted to send messages to the ET and then triggers to the EEG once in a while.

However, now I found out that I'll be using the SMI RED250mobile. I was wondering whether PyGaze would work to access this eyetracker, as I couldn't find any information online!? Right now I am trying to re-do the whole experiment in OpenSesame, as my plan was to use the ET template just to see whether is is possible to communicate with PC2 and the ET. I changed the libsmi.py file to include the two IPs, as described here: http://forum.cogsci.nl/index.php?p=/discussion/2803/dual-pc-setup-with-an-smi-eyetracker. I also copied the iViewXAPI.dll file from the ET PC2 to PC1's pygaze_eyetracker folder. But I still get the same error described in the linked thread:

Traceback:
  File "C:\Program Files (x86)\OpenSesame\lib\site-packages\libqtopensesame\misc\process.py", line 140, in run
    exp.run()
  File "C:\Program Files (x86)\OpenSesame\lib\site-packages\libopensesame\experiment.py", line 413, in run
    self.items.execute(self.var.start)
  File "C:\Program Files (x86)\OpenSesame\lib\site-packages\libopensesame\item_store.py", line 91, in execute
    self.run(name)
  File "C:\Program Files (x86)\OpenSesame\lib\site-packages\libopensesame\item_store.py", line 106, in run
    self[name].run()
  File "C:\Program Files (x86)\OpenSesame\lib\site-packages\libopensesame\sequence.py", line 51, in run
    self.experiment.items.run(_item)
  File "C:\Program Files (x86)\OpenSesame\lib\site-packages\libopensesame\item_store.py", line 106, in run
    self[name].run()
  File "C:\Program Files (x86)\OpenSesame\lib\site-packages\share\opensesame_plugins\pygaze_init\pygaze_init.py", line 204, in run
    **kwdict)
  File "C:\Program Files (x86)\OpenSesame\lib\site-packages\pygaze\eyetracker.py", line 73, in __init__
    from pygaze._eyetracker.libsmi import SMItracker
  File "C:\Program Files (x86)\OpenSesame\lib\site-packages\pygaze\_eyetracker\libsmi.py", line 42, in <module>
    from iViewXAPI import  *
  File "C:\Program Files (x86)\OpenSesame\lib\site-packages\pygaze\_eyetracker\iViewXAPI.py", line 74, in <module>
    iViewXAPI = windll.LoadLibrary("iViewXAPI.dll")
  File "C:\Program Files (x86)\OpenSesame\lib\ctypes\__init__.py", line 440, in LoadLibrary
    return self._dlltype(name)
  File "C:\Program Files (x86)\OpenSesame\lib\ctypes\__init__.py", line 362, in __init__
    self._handle = _dlopen(self._name, mode)
WindowsError: [Error 126] Das angegebene Modul wurde nicht gefunden

Do I need to install the SMI iViewX SDK on the stimulus presenter PC1? This is a bit difficult as the SMI website is... well... useless now and I can't download it. I also did not find an installer for it on the SMI ET PC (but copied all the files from the SDK folder I did find, which included the iViewXAPI.dll, into the pygaze/_eyetracker folder).

Any ideas?

Thanks in advance,
Lea

Comments

  • cescocesco Posts: 26

    One of the things I remember worked for me was "hard coding" the location (path) of the dll file in iViewXAPI.py, instead of iViewXAPI = wind.LoadLibrary("iViewXAPI.dll") .

    Can you try that? I don't think you need a fresh installation of the SDK, but I do wonder what version you have.

    Thanked by 2Lea Edwin
  • LeaLea Posts: 4

    Thanks for the quick response! It definitely helped, though I now get a new error message. It's actually the 401 one you mentioned here: http://forum.cogsci.nl/index.php?p=/discussion/2803/dual-pc-setup-with-an-smi-eyetracker. Here is my error message, just for completeness sake:

      File "C:\Program Files (x86)\OpenSesame\lib\site-packages\libqtopensesame\misc\process.py", line 140, in run
        exp.run()
      File "C:\Program Files (x86)\OpenSesame\lib\site-packages\libopensesame\experiment.py", line 413, in run
        self.items.execute(self.var.start)
      File "C:\Program Files (x86)\OpenSesame\lib\site-packages\libopensesame\item_store.py", line 91, in execute
        self.run(name)
      File "C:\Program Files (x86)\OpenSesame\lib\site-packages\libopensesame\item_store.py", line 106, in run
        self[name].run()
      File "C:\Program Files (x86)\OpenSesame\lib\site-packages\libopensesame\sequence.py", line 51, in run
        self.experiment.items.run(_item)
      File "C:\Program Files (x86)\OpenSesame\lib\site-packages\libopensesame\item_store.py", line 106, in run
        self[name].run()
      File "C:\Program Files (x86)\OpenSesame\lib\site-packages\share\opensesame_plugins\pygaze_init\pygaze_init.py", line 204, in run
        **kwdict)
      File "C:\Program Files (x86)\OpenSesame\lib\site-packages\pygaze\eyetracker.py", line 77, in __init__
        self.__class__.__init__(self, display, **args)
      File "C:\Program Files (x86)\OpenSesame\lib\site-packages\pygaze\_eyetracker\libsmi.py", line 197, in __init__
        raise Exception("Error in libsmi.SMItracker.__init__: failed to set logger; %s" % err)
    Exception: Error in libsmi.SMItracker.__init__: failed to set logger; unknown error with decimal code 401; please refer to the iViewX SDK Manual
    

    Were you able to solve the problem?

  • LeaLea Posts: 4

    Also, I actually don't know how to find out which version of the SDK I have, as I can't find it (which could be the problem?). I'd assume it is on the SMI PC, but there is only one folder called SMI, which contains a folder called iView X SDK, which in turn only contains the .dll files. Also, I'd assume I would need the SDK on the stimulus presenter PC, or wouldn't I? Sorry, I am a complete novice with this...

  • LeaLea Posts: 4

    I'm wondering if in general the communication between the PCs is not working. Each PC can ping the other one, though. I just use the eytracking template from OpenSesame now to check if it is working. I also get a similar (the same?) error (401) if I use PsychoPy with iohub.

  • cescocesco Posts: 26

    DM sent.

  • LJGSLJGS Posts: 30

    Were you guys able to get this working? I have the same 401 error myself attempting to dual-box. I also wondered if I need to install SDK on the stimulus computer...

Sign In or Register to comment.