The BlueHub is an Arduino-based control unit designed to enable closed-loop optogenetic stimulation in freely moving mice. At its core is an Arduino UNO Rev4, connected to four BNC input channels for receiving external triggers, an OLED screen for a graphical user interface (GUI), and a rotary encoder for menu navigation. Through the on-board GUI, users can assign each BNC input channel to a specific BlueBerry device and define its stimulation protocol (e.g., frequency, pulse width). Once configured, the BlueHub automatically manages Bluetooth Low Energy (BLE) communication, triggering the assigned optogenetic parameters whenever an input is activated. In addition, the BlueHub features three BlueBerry stations—two dedicated to charging devices post-experiment, and one that supports both charging and uploading the base program onto the BlueBerry devices (refer to the BlueBerry software documentation for further details). Because it uses off-the-shelf components and offers a user-friendly GUI to flexibly map BNC inputs for external digital interfaces, the BlueHub is straightforward to build and easily integrates into existing behavioral frameworks. The following sections describe the hardware assembly process and BlueHub software configuration.
This guide walks you through the hardware assembly of the BlueHub device, covering solder paste application, surface-mount and through-hole component placement, and final assembly with the OLED screen and Arduino module. Before you begin, ensure you have access to the following equipment and tools:
To build the BlueHub, you will need a custom PCB and various electronic components. The PCB production file can be downloaded from the download page, and we recommend ordering from PCB GoGo, although other manufacturers can also be used. Follow these steps:
Once you have obtained all materials, you can proceed with the assembly process.
Before proceeding, make sure you have:
Lay them out as shown in the reference image to streamline the assembly process.
Below is a step-by-step guide for uploading the BlueHub program onto the device. This process will allow you to configure and control optogenetic stimulations in multiple BlueBerry devices. It is important to note that this guide is specifically for programming the BlueHub itself, not for using the BlueHub to program BlueBerry devices. If you are looking for instructions on programming BlueBerry devices via the BlueHub, please refer to the BlueBerry Software section of the documentation.
These instructions cover programming the Arduino UNO Rev4, which serves as the core of the BlueHub. Before you begin, ensure that: