Welcome to the home of the PyEPL

PyEPL (the Python Experiment-Programming Library) is a library for coding psychology experiments in Python. It supports presentation of both visual and auditory stimuli, and supports both manual (keyboard/joystick) and sound (microphone) input as responses.

To use PyEPL, you need to either

Mac Installation

Ubuntu Linux Installation

As of October 2006, PyEPL is an official package in Debian unstable! This means that (on Ubuntu) all you need to do to install PyEPL is to:
  1. Enable the "universe" set of packages, if it is not already enabled (see this page, for how)
  2. If you have manually installed pyepl and pyode before, rename or remove /usr/lib/python2.4/site-packages/pyepl and /usr/lib/python2.4/site-packages/xode
  3. Type: sudo apt-get update; sudo apt-get install python-pyepl
Debian (sid) users may obtain the latest versions by adding the repository:
deb http://pkg-exppsy.alioth.debian.org/debian/ sid main
to their sources.list file. Thanks to Yaroslav Halchenko and Michael Hanke for their great work on the Debian package!

Other Linux or Nonstandard Mac Installation

PyEPL is currently maintained and tested only on Ubuntu Linux and Mac OS X, but in principle should run on any Linux distribution. In this section we provide general instructions which should apply to any setup.


Synchronizing your behavioral task with a physiological measure (like EEG) can be done by sending intermittent TTL pulses from the behavioral-task machine to the machine doing the physiological recording. This is supported by PyEPL and is referred to as sync-pulsing.

Update 10/9/11: PyEPL now supports sync pulsing with the LabJack U3 DAQ. See the comments in the pyepl.eeg module.


Sample Code

Community Resources

Hosted by SourceForge.net Logo