Welcome to #NeuroRigBuilder!

Javascript is disabled!

Our site was designed and built for using JavaScript technology.
For full functionality of this site it is necessary to enable JavaScript.
Here are the instructions how to do it in your web browser.

The #NeuroRigBuilder Team

#NeuroRigBuilder - A manufacturer-independent neuroscience shopping mall and resource portal for rig builders!
https://www.neurorigbuilder.com #NeuroRigBuilder


PulsePal DIY pulse generator

The PulsePal is a publication from 2014 by Joshua I. Sanders and Adam Kepecs, which gives a DIY solution to build your own open and inexpensive (~$210) alternative to pulse generators used in neurophysiology research.


Precisely timed experimental manipulations of the brain and its sensory environment are often employed to reveal principles of brain function. While complex and reliable pulse trains for temporal stimulus control can be generated with commercial instruments, contemporary options remain expensive and proprietary. We have developed Pulse Pal, an open source device that allows users to create and trigger software-defined trains of voltage pulses with high temporal precision. Here we describe Pulse Pal’s circuitry and firmware, and characterize its precision and reliability. In addition, we supply online documentation with instructions for assembling, testing and installing Pulse Pal. While the device can be operated as a stand-alone instrument, we also provide application programming interfaces in several programming languages. As an inexpensive, flexible and open solution for temporal control, we anticipate that Pulse Pal will be used to address a wide range of instrumentation timing challenges in neuroscience research.

Github repsitory : https://github.com/sanworks/PulsePal

Get to PulsePal

Headplate and light-blocking sleeve for 2P imaging

3Dneuro made it available for everyone to use a good standardized tool for light shielding.

This system was designed to provide simple and reliable light shielding for 2-photon imaging in awake head-fixed mice (running on a 3D-treadmill with visual stimulation in our case). With this in mind, we optimized for the following criteria:

  1. No hand-made or improvised components that can add variability to the data quality of each experiment – so no putty, wax or tape.
  2. Simple connection between the animal’s headplate and the light shielding around the microscope lens, to prevent having to work close to the animal’s head, which can stress animals and impact task performance.
  3. Quick fastening mechanism (< 1 minute). Animals only have a limited time span for motivated, focused performance. We want to lose as little as possible of that time on setting up the imaging. Ideally, the time between putting the animal on the treadmill and beginning the first imaging sequence should be well below 10 minutes.
  4. Easy to ensure watertight seal with the skull to prevent leakage of fluid during imaging.
  5. Cheap and easy to replace/tweak if necessary.

Get to 3Dneuro


More than a century ago, Ramón y Cajal provided a qualitative description of neuronal branching in all its forms and variants. However, even today, few rigorous and useful formalisms are available for a quantitative description of dendritic and axonal morphology.

The TREES toolbox provides:

-Tools to automatically reconstruct neuronal branching from microscopy image stacks and to generate synthetic axonal and dendritic trees.

-The basic tools to edit, visualize, and analyze dendritic and axonal trees.

-Methods for quantitatively comparing branching structures between neurons.

-Tools for exploring how dendritic and axonal branching depends on local optimization of total wiring and conduction distance.

This software package is written in Matlab, the most widely used scientific programming language. We hope that other groups will benefit from this package and that they will add their own code to the TREES toolbox based on their own specific applications.

Get to Treestoolbox


Pack I/O is a data acquisition Labview software that uses National Instruments DAQ hardware to handle multiple analogue and digital signals. The software is useful for any experiment requiring acquisition and generation of data and can be triggered in several modes.

Dr. Adam Packer the developer of the product: 

"During graduate school, I was making electrophysiological recordings and trying to synchronize various pieces of equipment (cameras, lasers, galvanometers, etc.). I found no software that was up to the task so I began a project to develop an uber-system capable of performing any data acquisition or generation operation that could be completed with the National Instruments DAQ hardware in use at the Yuste lab at the time. I jokingly referred to the project as “PackIO”, a combination of my name and IO, as in input/output, as the software is supposed to be able to take any input or generate any output in any synchronized fashion. The name stuck and now PackIO is in use by members of Rafael Yuste’s laboratory, Jason Maclean’s laboratory, Roberto Araya’s laboratory, and I continue to use PackIO in Michael Hausser’s laboratory."

Link to the GitHub repository

Get to PackIO site


WaveSurfer is an application for acquiring neurophysiology data in Matlab developed by Dr Adam Taylor at Janelia Farm Research Campus

Key Features:

Acquisition can be either trial-based or continuous
Acquisition and stimulation can be triggered by external TTL inputs
Supports analog and digital channels
Flexible stimulus generation: pulses, trains, sinusoids, etc
Works with any model of patch-clamp amplifier
Tight integration with Heka and Axon patch-clamp amplifiers
Works with National Instruments X-series DAQ boards
Flexible and fast multi-electrode test pulse generation
User can extend with custom Matlab scripts for online analysis, visualization
Custom Matlab code can be run at start/end of trials, or periodically during acquisition
Saves data in HDF5 format, an open standard for scientific data
Provides a tool for reading WaveSurfer data files in Matlab. A similar tool for Python is provided by the companion PyWaveSurfer project.
Can integrate with Vidrio Technologies ScanImage for laser-scanning microscopy

Link to the GitHub repository

Get to Wavesurfer site


CaImAn is a Python toolbox for large scale Calcium Imaging data Analysis and behavioral analysis.

CaImAn implements a set of essential methods required in the analysis pipeline of large scale calcium imaging data. Fast and scalable algorithms are implemented for motion correction, source extraction, spike deconvolution, and component registration across multiple days. It is suitable for both two-photon and one-photon fluorescence microscopy data, and can be run in both batch and online modes. CaImAn also contains some routines for the analysis of behavior from video cameras. 

Motion correction
Source extraction
Denoising, deconvolution and spike extraction
Automatic ROI registration across multiple days
Handling of very large datasets
Pipeline for Voltage Imaging Analysis
Behavioral Analysis
Variance Stabilization

Get to CaImAn GitHub page


Open Ephys is a nonprofit based in Cambridge, Massachusetts, with team members distributed all around the world. Our mission is to advance our understanding of the brain by promoting community ownership of the tools we use to study it. Since Open Ephys was founded in 2014, we’ve made it possible to build an entire extracellular electrophysiology rig from off-the-shelf open-source components. We are just getting started on our journey.

Each month, more scientists download our software and start adding features of their own. In this regard, the Open Ephys GUI is unique among applications for acquiring multichannel electrophysiology data. Because it's so flexible, the GUI can be used with any type of data acquisition hardware. It has the potential to become a standard within our field, but only if it gains the support of potential users like you.  

As is the case with most open-source software, there are no guarantees that the GUI will do what you want, or even what you expect it to. No matter what you're trying to use it for, don't trust it until you test it. We've already done a lot of testing ourselves, but it can't hurt to have more people checking things. The more eyes we can have verifying that things are working properly, the better.

Link to GitHub repository

Get to Open Ephys website


Psychophysics Toolbox Version 3 (PTB-3) is a free set of Matlab and GNU Octave functions for vision and neuroscience research. It makes it easy to synthesize and show accurately controlled visual and auditory stimuli and interact with the observer.

The attraction of using computer displays for visual psychophysics is that they allow software specification of the stimulus. Programs to run experiments are often written in a low-level language (e.g., C or Pascal) to achieve full control of the hardware for precise stimulus display. Although these low-level languages provide power and flexibility, they are not conducive to rapid program development. Interpreted languages (e.g., BASIC, LISP, Mathematica, and Matlab) abstract hardware details and provide friendlier development environments, but don’t provide the hardware control needed for precise stimulus display. The Psychophysics Toolbox is a software package that adds this capability to the Matlab and Octave application on Macintosh, Linux and Windows computers (we will only mention Matlab for the remainder of this text, but statements mostly apply to Octave as well).

Link to GitHub repository

Get to PsychoToolBox Site


The combination of two-photon microscopy recordings and powerful calcium-dependent fluorescent sensors enables simultaneous recording of unprecedentedly large populations of neurons. While these sensors have matured over several generations of development, computational methods to process their fluorescence remain inefficient and the results hard to interpret. Here, we introduce a set of practical methods based on novel clustering algorithms and provide a complete pipeline from raw image data to neuronal calcium traces to inferred spike times. We formulate a generative model of the fluorescence image, incorporating spike times and a spatially smooth neuropil signal, and solve the inference and learning problems using a fast algorithm. This implementation scales linearly with the number of recorded cells, and the complete pipeline runs in approximately one hour for typical two-hour long recordings, on commodity GPUs. Furthermore, this method recovers twice as many cells as a previous standard method. This allowed us to routinely record and detect ~10,000 cells simultaneously from the visual cortex of awake mice using standard two-photon resonant-scanning microscopes. 

Link to: GitHub repository

Get to Original Publication


ImageJ is a Java-based image processing program developed at the National Institutes of Health and the Laboratory for Optical and Computational Instrumentation (LOCI, University of Wisconsin). Its first version, ImageJ 1.x, is developed in the public domain, while ImageJ2 and the related projects SciJava, ImgLib2, and SCIFIO are licensed with a permissive BSD-2 license. ImageJ was designed with an open architecture that provides extensibility via Java plugins and recordable macros. Custom acquisition, analysis, and processing plugins can be developed using ImageJ's built-in editor and a Java compiler. User-written plugins make it possible to solve many image processing and analysis problems, from three-dimensional live-cell imaging to radiological image processing, multiple imaging system data comparisons to automated hematology systems. ImageJ's plugin architecture and built-in development environment has made it a popular platform for teaching image processing.

ImageJ can be run as an online applet, a downloadable application, or on any computer with a Java 5 or later virtual machine. Downloadable distributions are available for Microsoft Windows, the classic Mac OS, macOS, Linux, and the Sharp Zaurus PDA. The source code for ImageJ is freely available.

ImageJ can display, edit, analyze, process, save, and print 8-bit color and grayscale, 16-bit integer, and 32-bit floating point images. It can read many image file formats, including TIFF, PNG, GIF, JPEG, BMP, DICOM, and FITS, as well as raw formats. ImageJ supports image stacks, a series of images that share a single window, and it is multithreaded, so time-consuming operations can be performed in parallel on multi-CPU hardware. ImageJ can calculate area and pixel value statistics of user-defined selections and intensity-thresholded objects. It can measure distances and angles. It can create density histograms and line profile plots. It supports standard image processing functions such as logical and arithmetical operations between images, contrast manipulation, convolution, Fourier analysis, sharpening, smoothing, edge detection, and median filtering. It does geometric transformations such as scaling, rotation, and flips. The program supports any number of images simultaneously, limited only by available memory.

Get to ImageJ website

All images shown are for illustration purpose only. See details in Terms.
https://www.neurorigbuilder.com #NeuroRigBuilder