Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Supported by

Help installing Pyxid module into Open Sesame v3.3

I am attempting to install the module "pyxid" into Open Sesame to allow it to communicate with the Cedrus "Stimtracker" unit we have in our lab. I am using the following command in the console window of Open Sesame to download & install Pyxid module from Anaconda.org :

!conda install -c conda-forge pyxid

This command returns the error message below:

"UnsatisfiableError: The following specifications were found

to be incompatible with the existing python installation in your environment:

Specifications:

- pyxid -> python[version='2.7.*|>=2.7,<2.8.0a0']

Your python: python==3.7.6=h5b45d93_2".

Does this error imply that Pyxid will only run with an installed Python of 2.7? if so will I have to downgrade to older python version in order to install & run Pyxid?

thanks,

Mike.

Comments

  • edited July 2020

    Hi @MikeN ,

    I don't have experience with the pyxid library myself, but my understanding is that it is indeed only compatible with Python 2. So you would have to use the Python-2-based package of OpenSesame to use it. Alternatively (and again if my understanding is correct), the pyxid2 package should be compatible with Python 3, and might therefore be a better option.

    Cheers!

    Sebastiaan

  • Thanks @sebastiaan ,

    Since pyxid2 wasn't available via Anaconda.org I installed pyxid2 using PIP but when I run the OpenSesame program which has an inline script

    import pyxid2

    it returns error message

    exception message: No module named 'pyxid2'

    I used the command pip freeze to check installed packages and it returned

    pyxid2==1.0.1

    So that suggests the pyxid2 module is installed?

  • Hi @MikeN,

    Did you install the package into a Python installation on your computer, or into the Python installation that comes with OpenSesame? If you're not on Linux, there is a difference between the two.

    To install directly within OpenSesame, run the following in the Debug Window:

    import pip

    pip.main(["install", "pyxid2"])

    That should install it within OpenSesame's version, I think.

  • Hi @Edwin,

    I originally installed it into both but still got the error message about pyxid2 not being installed.

    I followed your suggestion and it seemed to complete the pyxid2 install but gave a permission error about an OpenSesame sub directory. I ran OpenSesame again but this time using "Run as Administrator" first. Re-running the pip install worked fine and the inline script was able to identify the Cedrus Stimtracker as being installed.

    many thanks to both yourself and @sebastiaan! 😀

    Mike.

  • Hi Mike,

    Care to point me out to the inline script you used for making pyxid2run with OS?

  • edited August 2021

    Once I knew pyxid2 was installed I used the following script to check if Open Sesame could detect the stimtracker device. The print command wasn't really needed I just included it to make sure the stimtracker was detected.


    import pyxid2
    # get a list of all attached XID devices
    devices = pyxid2.get_xid_devices()
    
    # assign first device to variable dev
    dev = devices[0]  
    
     # print name of first device to verify detection
    print(dev)
    
    dev.reset_base_timer()
    dev.reset_rt_timer()
    


    I haven't progressed much further since then so that's all the help I can offer I'm afraid. For more info on the commands check out the Cedrus support page : https://cedrus.com/support/xid/commands.htm

  • Thanks Mike!


    I decided to ask a clleague that's more knowledgeable than myself to dig into the Python code. Will see if they can manage.

Sign In or Register to comment.