Skip to main content

An open-source platform for touchscreen-based visuomotor tasks in rodents.

Project description

https://www.visiomode.org


Build Status codecov Code style: black

Visiomode is an open-source platform for rodent touchscreen-based visuomotor tasks. It has been designed to promote the use of touchscreens as an accessible option for implementing a variety of visual task paradigms, with low-cost and ease-of-use as a priority. Visiomode is implemented on the popular Raspberry Pi computer, and provides the user with an intuitive web interface to design and manage experiments. It can be deployed as a stand-alone cognitive testing solution in both freely-moving and head-restrained environments.

Installation

Raspberry Pi OS (recommended)

The recommended way to install Visiomode is by using pipx (https://pypa.github.io/pipx/). pipx will create an isolated python environment from which Visiomode will run, leaving the system python alone.

WARNING: If you're using Pimoroni's Hyperpixel 4.0 display, you'll need Raspberry Pi OS "Buster" (https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-legacy), as the Hyperpixel 4.0 display does not yet support the latest Bullseye version (see https://github.com/pimoroni/hyperpixel4/issues/155).

First, make sure that your Raspberry Pi OS is up-to-date.

sudo apt update && sudo apt upgrade

Visiomode runs on SDL 2.0. To make sure all system dependencies are present, run

sudo apt install libsdl2-mixer-2.0-0 libsdl2-image-2.0-0 libsdl2-2.0-0 libsdl2-ttf-2.0-0

Install pipx using

python3 -m pip install --user pipx
python3 -m pipx ensurepath

And finally, install Visiomode using pipx:

pipx install visiomode

Linux / MacOS

While Visiomode primarily targets the Raspberry Pi OS, it can be installed on any Linux or MacOS machine, which can be useful for trying out the software before deployment, or for testing. Please note that only the Raspberry Pi OS is officially supported - your milage with any other Linux distribution or MacOS in production may vary.

The recommended way to install Visiomode is via pipx (https://pypa.github.io/pipx/).

pipx install visiomode

Usage

To launch Visiomode, open a terminal and run

visiomode

If running over ssh, you will need to prepend DISPLAY=:0 to the visiomode command to run the behaviour window on the primary display.

DISPLAY=:0 visiomode

This will launch the behaviour window (what the animal sees). The web interface can be accessed from any machine connected on the same network as the Raspberry Pi running Visiomode at http://<YOUR-PI-HOSTNAME>.local:5000, where <YOUR-PI-HOSTNAME> is the hostname of your Raspberry Pi. If you're unsure on what this is, run hostname in a terminal window.

Upgrading

Use pipx to upgrade visiomode:

pipx upgrade visiomode

Contributing

Visiomode is currently closed to PRs, except bugfixes. Please open an issue if you wish to contribute.

Funders

logo

Project details


Download files

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

Source Distribution

visiomode-0.3.5.tar.gz (3.6 MB view details)

Uploaded Source

Built Distribution

visiomode-0.3.5-py3-none-any.whl (1.7 MB view details)

Uploaded Python 3

File details

Details for the file visiomode-0.3.5.tar.gz.

File metadata

  • Download URL: visiomode-0.3.5.tar.gz
  • Upload date:
  • Size: 3.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.7.9

File hashes

Hashes for visiomode-0.3.5.tar.gz
Algorithm Hash digest
SHA256 167c1e1a28edbe780a83830824f3cf2ffeecf66b0922c5b97c57723e7c6fcfaa
MD5 16d490b230a822e23c56448a33fb904c
BLAKE2b-256 68828f54f0bd1e524c979ddc799fbf8e2a52969b7d59aa7927cb488741d37178

See more details on using hashes here.

File details

Details for the file visiomode-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: visiomode-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.7.9

File hashes

Hashes for visiomode-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 254da0bead29ed0fb2119c10b86d31ca2bcbc8d13337fe298583bf0dc4cde81a
MD5 f6529a7c30271af630949d0747e82edf
BLAKE2b-256 10b0fafd0a6a37a7d974654bed3646db61411e5fd70773e8a94a0485d6ad2d91

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page