Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Python library for interfacing with Cedrus XID devices

XID (eXperiment Interface Device) devices are used in software such as
SuperLab, Presentation, and ePrime for receiving input as part of
stimulus/response testing experiments.

This handles all of the low level device handling for XID devices in
python projects. The developer using this library must poll the
attached device(s) for responses. Heres's an example of how to do so:

import pyxid

# get a list of all attached XID devices
devices = pyxid.get_xid_devices()

dev = devices[0] # get the first device to use
dev.reset_base_timer()
dev.reset_rt_timer()

while True:
dev.poll_for_response()
if dev.respone_queue_size() > 0:
response = dev.get_next_response()
# do something with the response


The response is a python dict with the following keys:

pressed: True if the key was pressed, False if it was released
key: Response pad key pressed by the subject
port: Device port the response was from (typically 0)
time: value of the Response Time timer when the key was hit/released


Timers

Each Cedrus XID device has an internal timer a Base Timer and a
Response Time Timer. The Base Timer should be reset at the start of
an experiment. The Response Time timer should be reset whenever a
stimulus is presented.

At the time of this library release, there is a known issue with clock
drift in XID devices. Our hardware/firmware developer is currently
looking into the issue. Once it has been resolved, a new version of
this library will be released. For the time being, the time field in
the dict returned by XidDevice.get_next_response() is 0 until the fix
is applied in a subsequent release.

Windows Specific Issues

Sometimes, windows fails at detecting XID devices. Running
detect_xid_devices() a second time should result in finding the
devices.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyxid-1.0b3.tar.gz (6.2 kB view details)

Uploaded Source

File details

Details for the file pyxid-1.0b3.tar.gz.

File metadata

  • Download URL: pyxid-1.0b3.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pyxid-1.0b3.tar.gz
Algorithm Hash digest
SHA256 17696d66acafc2681ee61129600235038a95b531e9be6a9c0794ed384f41af63
MD5 c0b6bcac44acdcfbf9611b27f297a015
BLAKE2b-256 96dc093efd37e6a1eefcbee35ad1e0ea537a2c23ebf1688eb599e1316d543aa0

See more details on using hashes here.

Release history Release notifications | RSS feed

1.0

1 file

This release

1.0b3 This release

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page