running-wheel
An economical solution to record and control wheel-running for group-housed mice
Science Score: 54.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: sciencedirect.com -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (9.9%) to scientific vocabulary
Repository
An economical solution to record and control wheel-running for group-housed mice
Basic Info
Statistics
- Stars: 1
- Watchers: 0
- Forks: 1
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Running wheel
Control program for a custom made running wheel with a locking mechanism.
See paper for method validation and further information.

Prerequisites
- Wheel Control to install the control program.
- Arduino IDE to upload the firmware to the micro-controller of the wheel (last compiled and tested with Arduino 1.8.5).
- MATLAB only if planning on editing the source code (last tested with R2022a).
Install control program
- Download and install Wheel Control.
- Download and install Arduino.
Flash wheel firmware
- Connect one or more wheels to the computer.
- Open
Wheel.inowith Arduino IDE, edit the value ofwheelIdso that each wheel has a unique number. - Set
Tools/BoardtoArduino Pro or Pro Mini"andTools/ProcessortoATmega328p (3V, 8MHz)orATmega328p (5V, 15MHz)according to the choice of micro-controller for your apparatus. - Set one port at a time in
Tools/Port, clickSketch/Uploadand press the reset button in the board right after. - You may need to install FTDI drivers first.
If planning on editing the source code: * Download and install MATLAB. * Download and extract the source code to Documents/MATLAB
Control program overview
- Open the control program by going to
Start Menu / Wheel - Connect one or several wheels; a temperature trace will be plotted shortly after each connection is stablished.
- The RFID tag list is populated when an animal gets on the wheel or if you write a list of RFID tags to set a target running distance. This locking distance is also listed next to each tag.
- A distance trace will be plotted for each animal (i.e. each RFID tag).
Setting the locking distance
The locking mechanism engages whenever the apparatus detects that an animal with a given RFID tag reaches a previously defined locking distance and disengages for other animals or if the locking distance is extended for the animal on the wheel.
The target distance can be applied immediately or scheduled to happen at a given time of the day, and defined separately for each animal or a group of animals.
- Select one or more tags from the tag list or type these directly in the text box
- Type a distance value in centimeters
- Click
setto apply a locking distance relative to 0; or - Click
addto apply a locking distance relative to the current distance; or - Click
scheduleand set a date when prompted in the format HHMMSS (2-digit hour, 2-digit minute, 2-digit second) to apply a locking distance relative to the current distance at a given time of the day - Repeat if necessary for different subset of animals or different distance values
Data logs
Data from each wheel are displayed in the GUI and saved as soon as they are received into a comma-separated-values file (CSV file) with a name corresponding to the RFID tag, under the folder Documents/Wheel. These data consist of cage id, cage temperature, wheel rotation, and the animal's RFID tag.
This csv file can be opened as a Spreadsheet in Excel for a quick review or imported into MATLAB for more advanced manipulations.
Version History
See release notes
License
© 2019 Leonardo Molina
This project is licensed under the GNU GPLv3 License.
Owner
- Name: Leo
- Login: leomol
- Kind: user
- Repositories: 5
- Profile: https://github.com/leomol
Citation (CITATION.cff)
cff-version: 1.2.0
title: "Running wheel controller"
abstract: "Control program for a custom made running wheel with a locking mechanism. "
type: software
version: 1.0.0
doi: 10.17605/OSF.IO/RXJHK
date-released: 2019-07-31
repository-code: https://github.com/leomol/running-wheel
authors:
- family-names: "Molina"
given-names: "Leonardo A."
email: "leonardomt@gmail.com"
affiliation: "University of Calgary"
orcid: https://orcid.org/0000-0002-6601-7185
GitHub Events
Total
Last Year
Issues and Pull Requests
Last synced: 12 months ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0