https://github.com/adaptivemotorcontrollab/joystickcontrolsystem

joystick system used in Mathis et al, 2017

https://github.com/adaptivemotorcontrollab/joystickcontrolsystem

Science Score: 59.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
    Links to: sciencedirect.com
  • Committers with academic emails
    1 of 1 committers (100.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.7%) to scientific vocabulary
Last synced: 7 months ago · JSON representation

Repository

joystick system used in Mathis et al, 2017

Basic Info
Statistics
  • Stars: 7
  • Watchers: 1
  • Forks: 2
  • Open Issues: 0
  • Releases: 0
Created about 6 years ago · Last pushed over 3 years ago
Metadata Files
Readme Contributing License

README.md

Joystick Control System

The rep has the control system for the 2-axis joystick used in Mathis et al, 2017 Somatosensory Cortex Plays an Essential Role in Forelimb Motor Adaptation in Mice. https://doi.org/10.1016/j.neuron.2017.02.049

Essential Hardware:

  • Joystick base, Digi-Key, Cat #679-2501-ND
  • Joystick handle; replace d-pad (removed by screw) with any handle you prefer (the grip point was 2 mm in diameter)
  • Joystick spring; you may need to exchange the base spring with a lower stiffness spring (should be independently verified)
    • Note, we modified the joystick base to reduce the force required to move the joystick (0.1-0.2 N from 4N)
  • NI-DAQ card, PCI-e6251 National Instruments, Cat # NI PCIe-6251 – 779512-01
  • LabView 2013 or newer, National Instruments http://www.ni.com

Essential Software:

  • our custom LabView VIs

The main file is "Pull Behavior...". The other vi's are for grabbing frames from another source, i.e. 2-photon. They need to be included for the code to run. There are three output files (reward TTLs, a "trial start" TTL, and the full X and Y joystick trajectory + lick signal + frame count). You need to set up NIDAQ tasks, as shown in the media folder.

Experimental Settings File:

The experimental parameters is a text file that you load, so you can customize this to your system/needs. You specify a resting home box, start "box - i.e. when it crosses a point in Y space it will trigger a trial start", end box, delay times, water value open times, magnet on time, and magnet force. It's easy to customize too, if you want to make changes. Each line in the text file is a trial. i.e.;

Getting Started:

Build the joystick. Wire the joystick as specified by the manufacturer; i.e 5 V power, ground, and X, and Y go into analog inputs in the NIDAQ card. Be sure you have a clean 5V signal. Test output in NI-MAX.

Based on how you build the joystick, your resting voltage may differ. Each rig should be measured and calibrated (i.e. what voltage delta = X mm distance).

The above values (expt settings file) are a good starting point assuming the voltage rests at 2.55. Set for your rig as needed. There is a exp array that is on the front screen of the vi so you can figure out which values are which, etc, but it doesn't match the order in the text file, thus I highlighted important variables. To note, this demo assumes the joystick rests at 2.55; and every .05 is 1 mm.

Citation:

If you use this code please cite:

  • Mathis et al, 2017 Somatosensory Cortex Plays an Essential Role in Forelimb Motor Adaptation in Mice. https://doi.org/10.1016/j.neuron.2017.02.049

We greatly thank Dr. Ed Soucy at the Harvard CBS Center for Neuroengineering with LabView code and expert advice throughout the development of this joystick system!

Owner

  • Name: Mathis Lab | Adaptive Motor Control
  • Login: AdaptiveMotorControlLab
  • Kind: organization
  • Email: mackenzie@post.harvard.edu
  • Location: Swiss Federal Institute of Technology

Mechanisms underlying adaptive behavior in intelligent systems

GitHub Events

Total
  • Watch event: 3
Last Year
  • Watch event: 3

Committers

Last synced: 10 months ago

All Time
  • Total Commits: 7
  • Total Committers: 1
  • Avg Commits per committer: 7.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Mackenzie Mathis m****s@r****u 7
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 10 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
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

.github/workflows/publish-book.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • peaceiris/actions-gh-pages v3.7.3 composite
requirements.txt pypi
  • ghp-import *
  • jupyter-book *
  • matplotlib *
  • numpy *
  • numpydoc *
setup.py pypi
  • jupyter-book *
  • matplotlib *
  • numpy *
  • numpydoc *
  • pandas *
  • scikit-image *
  • scikit-learn *
  • scipy *