Key Features • How It Works • Project Structure • Learn more • About us
The project contained in this repository is a 4-channel prototype board produced in the development of a PCB to acquire EEG signals. It contains an instrumentation amplifier, a notch filter and an anti aliasing filter. It is designed to be sampled either in a lab with the help of an oscilloscope or with a computer through a Teensy 3.2 microcontroller development board. As well, a signal visualization software can analyze the signal coming from this board.
Disclaimer: This prototype board does not work to sample EEG signals and was never intended as such. It was meant to be a platform used to test designs of filtering and amplification circuits, which we would have integrated into a true production PCB. However, our development cycle was slowed down due to the pandemic and we had to plan the release of the production version of the board for April 2021 instead. Even though we did not finish the project, we still wanted to show our progress and so we submit this prototype for the NeuroTechX 2020 Fixed Challenge.
- A PCB which amplifies the signals and filters them through an analog acquisition pipeline.
- A realtime data acquisition software that can records, save, perform machine learning and neuroscience experiments.
The board includes four channels and so five electrodes should be placed on the patient's head: one per channel and a fifth reference electrode. The reference electrode is clipped at the patient's ear and voltages from the channel electrodes are measured against it.
The full processing pipeline for EEG includes and instrumentation amplifier, which the measurement of extremely small EEG voltages. The pipeline also includes a high pass filter, a notch filter and a low pass filter which each eliminate different types of noise from the signal.
After having been processed, the data is digitized by a microcontroller's Analog to Digital Converter (ADC) and sent to a computer. Data from the board is received on the computer via one of its USB serial port.
The realtime visualization software can read the flow of data coming from the serial port and plot the signal on every channel in realtime. It can also show the data in the frequency domain using spectral, spectrogram and power band reprensentations.
All the raw data coming from the board can then be saved in a csv file for subsequent use.
- The
cad/
folder contains files used to make the PCBs. The prototype board is undercad/prototype-board/
. Two supply prototypes are included undercad/supply-analog/
andcad/supply-digital/
. - The
components/
folder contains the datasheets for important components. - The
simulations/
folder contains ltspice simulations for the elements of the analog processing pipeline. - The
software/
folder contains everything that is linked to software. The computer software for digital signal processing and realtime visualization is undersoftware/gui/
. Check it out for more information about it. The microcontroller software for sampling the analog signals and to stream them to the computer is undersoftware/teensy-code/
.
You can read more about the technical aspect of the prototype board, and of the planned production board in this wiki.
PolyCortex is a student club based at Polytechnique Montreal.
The goal of PolyCortex is to develop expertise in neuroscience and engineering to solve neuroengineering problems. This field aims to create technological solutions dedicated to the search for innovative solutions to neuroscience problems.
To do this, we recommend the use of solutions revolving around the design of brain-machine interface devices, the implementation of embedded systems, the use of machine learning and signal processing techniques.