Using a fully connected neural network, a data collector and an OpenBCI electrode cap, this program learns to read brain waves and classify them as being a 2d motion (Left, Up, Right, Down), then allows the user to control a circle in 2d with their thoughts.
I made this when I was quite new to ML so in hindsight I can say the model used for the kind of data is subpar and I'm a bit pessimistic about any results I may have gotten. This repository should be used primarily as an example of how to use the OpenBCI cyton board with python.
brainreader.py can be used to record and save data
train.py will train model on saved data
movement.py will use model to convert brain waves directly to motion
Pytorch pyOpenBCI OpenBCI electrode cap + Cyton Board + Daisy (16 channels)
This has only been tested on Ubuntu and programs using the cyton must be run with sudo to be able to access ports.