Skip to main content

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. This is the recommended way to install Visiomode, as it will not interfere with any other python packages you may have installed on your system.

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

sudo apt install pipx

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

Metadata

Release files for visiomode 0.6.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for visiomode 0.6.0
File Size Uploaded
visiomode-0.6.0.tar.gz 6.9 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for visiomode 0.6.0
File Interpreter ABI Platform
visiomode-0.6.0-py3-none-any.whl Python 3 none any Details

Total release size: 8.6 MB

Release files / visiomode-0.6.0.tar.gz

Download URL visiomode-0.6.0.tar.gz
Size 6.9 MB
Tags Source
SHA-256 checksum
How to use checksums
4d22310c363e2b0e17ea936003f1617697d9b63758d68b4fb08cc27441ef6d53
BLAKE2b-256 checksum
How to use checksums
db8546b10da55ca5bcb09fcde34d03e1cbea48c6e14ac869e98ae5049f5ea347
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.9.19

Release files / visiomode-0.6.0-py3-none-any.whl

Download URL visiomode-0.6.0-py3-none-any.whl
Size 1.7 MB
Tags Python 3
SHA-256 checksum
How to use checksums
a170dc1504a7561aa75a2b7a4b587ccfdef78726933e6ad89b5ed10fe55e0231
BLAKE2b-256 checksum
How to use checksums
675c9a93843dbf1b11443e7e0c529ee04ddd8c597b31b077b6e33dfb87aca91a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.9.19

Release history Release notifications | RSS feed

This release

0.6.0 This release

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

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