Skip to the content
2 layers39.9 × 50.5 mmEeg, the printed circuit board in 3D

eeg

Size
39.9 × 50.5 mm
Copper layers
2
Thickness
1.6 mm
Parts
77
Nets
68
Pads
275
Tracks, vias
683, 46
Pours
9
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
4 May 2020
Updated
9 Nov 2022

Overview

Eeg is an open-source printed circuit board by gianisalive, from the gianisalive/lucid_candy repository on GitHub. It is a 2-layer board of 39.9 × 50.5 mm with 77 parts on 68 nets, routed with 683 tracks and 46 vias.

It is built around the ADM8660ARZ, ADP7182ACPZN-2.5R7 and ADS1299IPAG, with the TPD4E1B06DCKR-TP among its other parts. Its parts include 39 capacitors, 21 resistors, 6 diodes, 5 ICs and 2 connectors.

Main components

4

README

README.md

Lucid Candy

board pic A bare minimum 8 channel EEG board with TI ads1299 chip. It can be driven with any microcontroller that has 3.3V logic. Multiple boards can be chained together to record with 16 or 24 channels. This repository includes KiCad files and SPI example.

Disclaimer

It still needs a lot of improvement, professional guidance and review. In no way it's fully tested to perform under clinical setting. Please use basic principles to test and evaluate before using it. All suggestions are highly appreciated: gianisalive@gmail.com

Who should use it?

No one really should, but if you're a newbie in electronics, software, and neuroscience, and want to learn more by building, then this might be a thing for you. If you're just looking for an affordable EEG, there're better open source ones out there, such as OpenBCI.

Files & Locations

|-- lucid_candy
|---- component_datasheet------important datasheet of the components used for the board
|---- e_component---------------all the KiCad pcb footprint (from SnapEDA) for the components
|---- eeg------------------------KiCad design files
|---- firmware-------------------example of Arduino DUE communicating with the board via SPI
|---- gerber_zip-----------------same file used to produce the current board with JLCPCB

Schematics

The philosophy with current version of the design is to work within TI's recommendation, and choose components with least amount of tolerance/inductance to develope a baseline. In the future, any design improvement can be evaluated/compared to the current design. eeg_schematics power_schematics

Components

All the component used can be found here. Some of these are pretty over priced. In most situations, you can probably get away with cheaper parts.

Programming in a nutshell

Overview:

  • Data are transfered via SPI MODE1 with MSB first
  • Data are retrieve with no-op command 0x00
  • Chip has an internal clock. If BYOO (bring your own oscillator), then connect it to CLK pin, and tie CLKSEL low.

Power up sequence:

  • Set CLKSEL pin high to enable internal oscillator
  • Set RESET pin high, and make sure VCAP1 is settled around 1.1V
  • Send reset command, and at this point DRDY pin should toggle at around 250Hz
  • Send SDATAC (stop data continuous) command
  • Set CONFIG1(0x01), CONFIG2(0x02) and CONFIG3(0x03)
  • Set CHnSET (single ended, double ended or generate test signal)

Data conversion:

  • After sending RDATA or RDATAC command, data is returned on the second rising edge of the DRDY pin
  • Initial 3 bytes are status data, and it always starts with 1100. Then it'll transfer 3 bytes of data per channel. An 8 channel board will have 8 * 3 + 3 = 27 bytes of data
  • Data are structured in 2's compliment. The MSB is used to determin whether the value is positive or negative
  • V = LSB * (2 * 4.5 / 24) / (2 ^ 24) // LSB = decimal value of 3 bytes channel data

Testing

Fully assembled device with current Arduino firmware is tested with a calibrated Keysight DSOX1204G oscilloscope/function generator.

Chanllenges

In a nutshell, eliminating noises and extracting the signal is one of the most chanllenging part when it comes to designing the hardware and the software.
Neurons communcate via electrical signals (Action Potentials). When neurons are ready to send signals to neighboring neurons, they produce about 100 mV spike in less than 3 ms. These signals are further attenuated (reduction in signal strength) by the surrounding anatomical structures. When the electrode receives the signal, it's been attenuated to uV scale. In order to extract the signals, we need to filter out the noise with minimal distortion to the signal. There're few methods suggest that're yet to be implemented, such as bandpass filter, CleanLine and infinite impulse response.

Miscellaneous

Some silly questions I asked:

Parts

77
QtyValueFootprintReferences
194.99kResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR3, R4, R5, R6, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21 +3
184.7nFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC22, C23, C24, C25, C26, C27, C28, C29, C30, C31, C32, C33, C34, C35, C36, C37 +2
61uFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC10, C11, C13, C14, C17, C19
5TPD4E1B06DCKRPackage_SO:TPD4E1B06DCKRD2, D3, D4, D5, D6
40.1uFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC9, C12, C18, C21
44.7uFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC1, C2, C4, C5
4TestPoint_Pad_D1.0mmTestPoint:TestPoint_Pad_D1.0mmAVDD, AVSS, DVDD, GND
310uFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC3, C6, C20
22.2uFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC7, C8
11.5uFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC15
1100uFCapacitor_SMD:C_1210_3225Metric_Pad1.42x2.65mm_HandSolderC16
110kResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR1
11MResistor_SMD:R_1206_3216Metric_Pad1.42x1.75mm_HandSolderR2
1ADM7160AUJZ2.5Package_TO_SOT_SMD:Analog_TSOT-5U3
1ADM7160AUJZ23.3Package_TO_SOT_SMD:Analog_TSOT-5U4
1ADM8660ARZPackage_SO:ADM8660ARZU5
1ADP7182ACPZN-2.5Package_TO_SOT_SMD:Analog_TSOT-5U2
1ADS1299IPAGSensor:ADS1299IPAGU1
1Conn_01x13Connector_PinHeader_2.54mm:PinHeader_1x13_P2.54mm_VerticalJ1
1Conn_01x19Connector_PinHeader_2.54mm:PinHeader_1x19_P2.54mm_VerticalJ2
1DDiode_SMD:D_SOD-523D1

Similar boards

  • 4 layers71.8 × 40.5 mmBioamplifier, the printed circuit board in 3D

    Bioamplifier

    RauLLorenzon/DIY_EEG

    8 Channel EEG board, based on the ADS1299

    95 parts4
  • 2 layers83.8 × 61 mmModule, the printed circuit board in 3D

    Module

    KAVIRAJec/Smart-Water-Quaity-Measurement-Kit

    🚰 Smart Water Quality Monitoring System Real-time insights into drinking water quality! This repository contains the code and documentation for our innovative water quality monitoring system.

    93 parts2
  • 2 layers72.5 × 55 mmB PSU 0x00, the printed circuit board in 3D

    B PSU 0x00

    EmilsSturitis/BPSU

    Bipolar power supply board, for op-amp's and other things

    78 parts1
  • 4 layersVolksEEG, the printed circuit board in 3D

    VolksEEG

    VolksEEG/VolksEEG

    Open Source EEG project

    148 parts77GPL-3.0
  • 4 layers35.6 × 77.5 mmCombined PCB, the printed circuit board in 3D

    Combined PCB

    Keith-Khadar/Gh05t

    This project aims to design and develop a wearable EEG headset with an integrated data acquisition system. Using OpenBCI Ultracortex Mark IV as a template, the headset is designed to map the electrodes according to the…

    43 parts9
  • 4 layers64 × 64 mmConvey, the printed circuit board in 3D

    Convey

    kennito2035/convey

    CONVEY: open 8-channel patient-isolated EEG/sEMG/ECG acquisition board (ADS1299, KiCad 10)

    146 parts4CERN-OHL-S-2.0
  • 4 layers88 × 80 mmNeuronic, the printed circuit board in 3D

    Neuronic

    kamenzh/neuronics-eeg

    A budget-focused EEG brain–computer interface project exploring a custom 8-channel acquisition PCB, ESP32 wireless streaming, and PC-based signal processing and CNN classification for brain-controlled interfaces.

    95 parts2MIT
  • 2 layers74.5 × 49 mmEEG, the printed circuit board in 3D

    EEG

    wangq22/ADS1299-BioAmp

    ADS1299 BioAmp is an 8-channel biopotential acquisition board designed for research and development of EEG, EMG, ECG, and other low-amplitude bioelectrical signals.

    76 parts2

Questions

How big is the Eeg PCB?

It measures 39.9 × 50.5 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Eeg use?

77 parts, built around the ADM8660ARZ, ADP7182ACPZN-2.5R7, ADS1299IPAG and TPD4E1B06DCKR-TP. 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 Eeg KiCad files?

From the gianisalive/lucid_candy repository on GitHub, at the commit this page was made from: the board is eeg/eeg.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Eeg design in my own project?

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