Skip to the content
2 layers93.2 × 50 mmMC Circuit v2, the printed circuit board in 3D

This repository contains the necessary software, CAD, and PCB fabrication files, and instructions needed to setup a CV guided open-source active commutator for neural imaging.

Size
93.2 × 50 mm
Copper layers
2
Thickness
1.6 mm
Parts
33
Nets
50
Pads
146
Tracks, vias
192, 3
Pours
2
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
3 Apr 2024
Updated
29 Jan 2026

Overview

MC Circuit v2 is an open-source printed circuit board by bsbrl, from the bsbrl/Motorized-Commutator repository on GitHub. It is a 2-layer board of 93.2 × 50 mm with 33 parts on 50 nets, routed with 192 tracks and 3 vias.

It is built around the NRF24L01 and MS 2. Its parts include 9 capacitors, 9 connectors, 3 resistors, 3 ICs and 3 diodes. It belongs with the NXP (LPC, Kinetis, i.MX RT) boards of this library.

Main components

2

README

README.md

Computer vision guided open-source active commutator for neural imaging in freely behaving animals

This repository contains the necessary software, CAD, and PCB fabrication files, and instructions needed to setup a CV guided open-source active commutator for neural imaging. The software files include the Python and Teensy codes for live tracking and cable tangling elimination. The CAD files are a combination of SolidWorks assembly files, SolidWorks part files, and step files.

PCB Fabrication

The Rx PCB Production and Tx PCB Production folders contain the files needed to fabricate the PCBs. The same folders also contain the BOM information for the PCBs.

CAD Files

The CAD folder contains the SolidWorks assembly files for the motorized commutator and the translating commutator.

Parts needed for 3D printing

If you are setting up just the rotation stage, there are two parts that you will need to 3D print:

  1. Motor, Slip Ring, and Circuit Holder This part houses the motor, slip ring, and the motorized commutator PCB. The part also provides a means to attach the assembly to an arena using screws.

  2. Cable Holder and Support with Pulley This part holds and supports the cables exiting the slip ring. Also, it is mounted directly on the slip ring and thus provides a means to drive the slip ring through a pulley system.

If you are setting up the translation stage as well, you will need to print an additional part for attaching the rotation state to the gantry: Motorized Commutator Gantry Attachment

Software Installation Instructions (Windows)

The following steps assume you have Anaconda installed on your machine. The commands can be run through Anaconda Powershell Prompt.

Create a conda environment with Python 3.7 and tensorflow:

text
conda create -n dlc-commutator python=3.7 tensorflow-gpu==1.13.1 # if using GPU
conda create -n dlc-commutator python=3.7 tensorflow==1.13.1 # if not using GPU

Activate the conda environment, install the DeepLabCut-live package:

text
conda activate dlc-commutator
pip install deeplabcut-live

You can test the dlc-live installation by running the following command: dlc-live-test

You can find more information about dlc-live installation from the Github page.

Install other necessary packages:

text
pip install pyserial
pip install keyboard
pip install matplotlib

Also, install the Arduino software from the Arduino Website. Once you have this installed, install the Teensy add-on in the Arduino IDE. This is needed to flash firmware to the Teensy microcontroller.

Running the Live Tracking Software

Switch to the directory that contains the live tracking software: cd <path to folder>

These commands can be run through Anaconda Powershell Prompt to start the live tracking software:

text
python apa_live_tracking.py    # APA live tracking for instance

Parts

33
QtyValueFootprintReferences
4100nCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC3, C4, C5, C8
3, ,
3220RResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR1, R2, R3
210uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC6, C9
24.7uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC1, C2
1100uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC7
1A4988/TMC2209Teensy 4.0:Pololu_A4988A1
1AUTOLED_SMD:LED_1206_3216Metric_Pad1.42x1.75mm_HandSolderD2
1Barrel_Jack_MountingPinTeensy 4.0:BarrelJack_HorizontalJ5
1Conn_01x10_FemaleConnector_PinSocket_2.54mm:PinSocket_1x10_P2.54mm_VerticalJ2
1Conn_01x14_FemaleConnector_PinSocket_2.54mm:PinSocket_1x14_P2.54mm_VerticalJ3
1Conn_02x02_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x02_P2.54mm_VerticalJ10
1LD1117S33TR_SOT223Package_TO_SOT_SMD:SOT-223-3_TabPin2U3
1LD1117S50TR_SOT223Package_TO_SOT_SMD:SOT-223-3_TabPin2U2
1MANUALLED_SMD:LED_1206_3216Metric_Pad1.42x1.75mm_HandSolderD1
1MS1Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ6
1MS2Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ7
1MS3Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ8
1NRF24L01Connector_PinSocket_2.54mm:PinSocket_2x04_P2.54mm_VerticalJ1
1PWR INDLED_SMD:LED_1206_3216Metric_Pad1.42x1.75mm_HandSolderD3
1STEPPERConnector_JST:JST_EH_B4B-EH-A_1x04_P2.50mm_VerticalJ9
1SW_SPDTSPDT_Toggle_Switch:SW_100SP1T1B4M2QES1
1Teensy4.0Teensy 4.0:MODULE_DEV-15583U1

The 32 most common of 33 parts.

More from bsbrl/Motorized-Commutator

1
  • 2 layers100 × 50 mmMotorized Commutator Tx PCB, the printed circuit board in 3D

    Motorized Commutator Tx PCB

    bsbrl/Motorized-Commutator

    This repository contains the necessary software, CAD, and PCB fabrication files, and instructions needed to setup a CV guided open-source active commutator for neural imaging.

    18 parts1

Similar boards

  • 4 layers187.9 × 60.2 mmMotionModuleSTM32F103R8, the printed circuit board in 3D

    MotionModuleSTM32F103R8

    griffotron/MotionModuleSTM32R8

    PCB design and code for the STM32 powered Motion Module that controls 14 stepper motors

    246 parts13MIT
  • 2 layers85.9 × 44.7 mmSTMPS, the printed circuit board in 3D

    STMPS

    tetious/STMPS

    A 3d printer board based around the STM32F411.

    119 parts4
  • 2 layers69.6 × 80.5 mmProtoBoard, the printed circuit board in 3D

    ProtoBoard

    dustinreynolds/STM32Hardware

    Repository for Kicad board development and support libraries

    158 parts2
  • 4 layers100 × 70.5 mmSmart Irrigation SystemV2, the printed circuit board in 3D

    Smart Irrigation SystemV2

    Benedikt3141/Smart-Irrigation-System

    A smart irrigation system for irrigation of up to 6 plants. It monitors the moisture, temperature, CO2 concentration, air quality ... and displays the data on a 2.4" TFT Display using an ESP32 DevKit C as processor.

    147 parts1MIT
  • 2 layers100 × 77 mmCarte Mere PAMI 2025, the printed circuit board in 3D

    Carte Mere PAMI 2025

    goldobot/ELEC

    fichier source des cartes électroniques

    116 parts1
  • 2 layers94 × 94 mmMotorboard, the printed circuit board in 3D

    Motorboard

    icl-rocketry/payload_gimbal

    the ReAL payload

    72 parts1MIT
  • 2 layers187 × 76 mmCalyx level carrier, the printed circuit board in 3D

    Calyx level carrier

    ballhog/calyx-level

    Wired, fail-safe auto top-off (ATO) for a reef system. Part of the Corallite Calyx family (wired connected devices: Calyx-Outlet, Calyx-Sense, Calyx-Level).

    106 parts
  • 2 layers100 × 100 mmAstroBio v1, the printed circuit board in 3D

    AstroBio v1

    BrnoMarsRover/astro_bio

    Repo for Astro-Bio task

    52 parts

Questions

How big is the MC Circuit v2 PCB?

It measures 93.2 × 50 mm and has 2 copper layers, 1.6 mm thick.

What parts does the MC Circuit v2 use?

33 parts, built around the NRF24L01 and MS 2. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the MC Circuit v2 KiCad files?

From the bsbrl/Motorized-Commutator repository on GitHub, at the commit this page was made from: the board is Rx-PCB/MC_Circuit_v2.kicad_pcb and its schematic Rx-PCB/MC_Circuit_v2.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the MC Circuit v2 design in my own project?

Its repository states no licence, so its author keeps all rights: ask bsbrl before reusing the design.