A python project which uses a Muse 2016 to make a servo-powered hand wave by using theta power as a biomarker for 'focus'.
Users wear Muse and neural signal is sent to Windows PC through Muselsl and
BlueMuse. Muselsl supports time series visualization using
muselsl view. To start calibration with system, run Wave.ipynb. This will initiate a PsychoPy calibration screen which
directs users to relax and focus. This trains our system to understand the users current specific theta power threshold which
determines 'focused' vs 'non-focused' states.
Wave.ipynb : Main
psycho_tracker.py : The Calibration class and other metric collection things
data_record.py : Data record class for Calibration class to hold
utils.py : Collects data from inlet
process.py : Returns the smooth band powers given the eeg_data
metrics.py : Calculates and returns the metrics (e.g. alpha, theta, beta, delta) given the smooth band powers
PsychoPy_Code/PsychoRun.py : run_psychopy() to run the calibration visuals
PsychoPy_Code/pics : The images that PsychoPy uses
PsychoPy_Code/data : The data recoreded by PsychoPy records (not necessary)
- BrainWave.py contains the most up-to-date code for the PsychoPy calibration portion.
To run, make sure you have PsychoPy dependencies installed https://www.psychopy.org/installation.html
- Introduction click
- Instructions click
- Loop (3 times, each with a random landscape and Waldo image)
3a) Relax cue 1s
3b) Relax 10s w/ Landscape image
3c) Focus cue 1s
3d) Focus 7s w/ Where's Waldo image