A stimulus program for visual neuroscience experiments built on psychopy
Switch branches/tags
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs add space Mar 13, 2018
pyStim passing osx build on travis Mar 29, 2018
tests fix labjack test patching Mar 2, 2018
.travis.yml passing osx build on travis Mar 29, 2018
LICENSE.rst make paths relative May 19, 2017
Pipfile switch readme to md, and pypandoc to dev Mar 8, 2018
README.md update readme Mar 9, 2018
requirements.txt update requirements Mar 2, 2018


travis coveralls

What is it?

pyStim uses the Psychopy library to create visual stimuli for use in our visual neuroscience experiments. It includes a graphic user interface and is capable of running at a minimum of 60 frames/sec and with the Texas Instruments LightCrafter 4500 DLP is capable of running in excess of 180 Hz. pyStim is designed to communicate with exterinal I/O devices (currently Labjack U3), which we use to trigger the aquisition of recording amplifiers.

Latest Version

The latest version can be found in the master branch on GitHub. The dev branch is experimental, but will usually contain new features and be mostly functional.


Documentation is available on github pages. The source of the documentation can be found in the code and in the /docs/source/ folder. Further documentation on Psychopy can be found on the Psychopy website.

Quick Install

pyStim is tested and works on Windows, though it should work on OSX/Linux (successfully builds on Travis).

  1. Clone the repository:

    git clone https://github.com/SivyerLab/pystim.git
  2. Install pipenv:

    pip install pipenv
  3. Create the python environment for pystim and automatically install all the necessary packages:

    pipenv install --skip-lock
  4. Run the GUI:

    pipenv run python pyStim/pyStimGUI.py

Optional libraries:

  • pycrafter4500 (for control of a lightcrafter 4500)
  • tabulate (for formatting logs)
  • igor (for parsing tables)
  • labjackpython (see install guide for details)
  • ffmpeg (for generating movies)
  • avbin (for displaying movies)


pyStim is licensed under GNU GPL v3.0. See LICENSE for license rights and limitations.