Skip to content

BenjaminEscribano/BIT-Boy

 
 

Repository files navigation

BITboy

A handheld oscilloscope and behavioral setup debugger for neuroscientists. Your every-day companion for trouble shooting and setting up experimental instruments.

Read and write both analog and digital signals with ease. Check continuity in electronic circuits with the continuity checker. It can be used as a handheld oscilloscope or connected to your pc on a desk for higher resolution.

General disclaimer: Our BITboy is designed to work in a range of 0-5V and will take damage if connected to higher loads. Therefore, please be careful. We are planning a future version with overvoltage protection.

All provided files are in metric units (mm). The case can be 3D printed, while the cover can be lasercut or printed. The design aims at maximum reproduxibility with low total cost.

Commercial Parts List

Item Quantity Notes Product Example Link
PCB 1 piece custom design eurocircuits.com
Arduino UNO R4 Wifi 1 piece with LED matrix arduino.cc
Pin Header 90 degrees bar of 1x11 & 1x2 attached conrad.de
Pin Header bar of 1x6, 2x 1x8 & 1x10 attached conrad.de
Battery Holder 1 piece BC9VPC digikey.de
Screw M2x8 mm 3 pieces for battery holder mercateo.com
Nut M2 3 pieces for battery holder digikey.de
Washer M2 3 pieces for battery holder digikey.de
9V Block Battery 1 piece conrad.de
On-Off Switch 1 piece L101011ML04Q digikey.de
Rotary Encoder 1 piece PEC11R-4215F-S0024-ND digikey.de
DIP Switch 1 piece DS01C-254-L-03BE digikey.de
Piezo Buzzer 1 piece 490-4692-ND digikey.de
Red LED 1 piece set of 100 conrad.de
Tactile Switch 1 piece 450-1650-ND digikey.de
BNC Connector 1 piece ARF1690-ND digikey.de
470R Resistor 1 piece for LED conrad.de
10K Resistor 1 piece puldown for continuity check digikey.de
Jumper Male-Female 2 wires for continuity check conrad.de

Case Parts

Item Quantity Notes Product Example Link
Case 1 piece custom design 3D printed
Acrylic Cover (3 mm) 1 piece custom design lasercut, can be printed
Screw M3x10 mm 8 pieces self-tapping mercateo.com
Washer M3 8 pieces mercateo.com

All files are available as .STEP (for 3D CAD), .DXF Files (scaling: 1pt equals 1mm for laser cutting), .STL (3D Object for Printing). Electronics are provided as fusion arcive files (.f3z) and gerber files for PCB production with eurocircuits.

Wiring Diagram

PCB Layout

Pin Layout

Red LED

Arduino Pin Connected to Note
D12 red LED + (long) via 470R resistor
GND red LED -

Piezo Buzzer

Arduino Pin Connected to Note
D11 piezzo buzzer + PWM (pulse width modulation)
GND piezzo buzzer -

BNC 1 Analog I/O

Arduino Pin Connected to Note
A0 BNC connector signal pin for DAC
GND BNC connector shield/GND

BNC 2 Digital I/O

Arduino Pin Connected to Note
D5 BNC connector signal pin
GND BNC connector shield/GND

DIP Switch (Dual in-line package)

Arduino Pin Connected to Note
D6 1 A
D7 2 A
D8 3 A
GND 1/2/3 B

Rotary Encoder with Button

Arduino Pin Connected to Note
D2 button 2 interrupt pin
GND button 1
D3 encoder A interrupt pin
D4 encoder B
GND encoder shield & COM

Continuity Check

Arduino Pin Connected to Note
A3 1x2 pin header with 10K pulldown resistor to GND
5V 1x2 pin header

Reset Button

Arduino Pin Connected to Note
RST tactile switch A
GND tactile switch B

Here you find an example for using the RST pin with a tactile switch

ON-OFF Switch and Battery

Arduino Pin Connected to Note
VIN switch +
battery holder + switch -
GND battery holder -

Here you find more about powering options for Arduinos

Here you find an example and pictures for powering with a battery

Breakout Pins

Arduino Pin Connected to Note
AREF 1x11 pin header for custom code
GND 1x11 pin header for custom code
D10 1x11 pin header for custom code
D9 1x11 pin header for custom code
TX 1x11 pin header for custom code
RX 1x11 pin header for custom code
A2 1x11 pin header for custom code
A1 1x11 pin header for custom code
5V 1x11 pin header for custom code
3.3V 1x11 pin header for custom code
VIN 1x11 pin header for custom code

BITboy Control Logic

Each reset/reboot of the device will start a readout procedure of the DIP switch to determine one of six operational settings modes.

The following table provides an overview about individual modules and their task during each mode:

Module Analog In Pulse/Constant Analog Out Pulse Analog Out Constant Digital In Pulse/Constant Digital Out Pulse Digital Out Constant
BNC_1 Analog I/O Analog Read Analog Write Analog Write Idle Idle Idle
BNC_2 Digital I/O Idle Idle Idle Digital Read Digital Write Digital Write
Rotary Encoder Temporal Resolution Set Voltage Set Voltage Temporal Resolution Idle Idle
Rotary Button Idle Hold Toggle Idle Hold Toggle
Output LED-Red Idle Write Indicator Write Indicatr Idle Write Indicator Write Indicator
Buzzer Coupled Continuity
LED Matrix Analog Voltage Analog Voltage Analog Voltage Digital Voltage Digital Voltage Digital Voltage
Continuity Check Active Active Active Active Active Active
Breakout Pins Idle Idle Idle Idle Idle Idle

Lasercutting

We used a Trotec Speedy Flex lasercutter with a 100W CO2 laser with the following settings for 3 mm acrylic glass:

Parameter Cutting Quality
Power 40 Watts
Speed 0,2 %
Laser Source CO2
Frequency 20000
Passes 1
Power Correction 10
z-Offset 0

3D Printing

We suggest printing with PLA, tough PLA or ABS for best results. Any standard print settings will provide aceptable results. Avoid fancy materials to reduce cost and effort.

For the case, we used a Babulab A1 mini filament printer with generic PLA.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 95.1%
  • C++ 4.9%