Skip to content

Commit

Permalink
Merge pull request #15 from mlprt/master
Browse files Browse the repository at this point in the history
Splitting ble2lsl from WizardHat and creating a new release.
  • Loading branch information
mlprt committed Nov 6, 2018
2 parents b72e3ff + 10ff90a commit ad14ce9
Show file tree
Hide file tree
Showing 20 changed files with 631 additions and 1,331 deletions.
37 changes: 30 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# WizardHat
# WizardHat
![logo](https://github.com/merlin-neurotech/WizardHat/blob/master/WizardHatLogoSmall.jpg)

WizardHat is a library for the streaming and handling of EEG data from consumer-grade devices using the Lab Streaming Layer (LSL) protocol. WizardHat's prupose is to enable users and especially first timers to flexibly build brain-computer interfaces (BCIs) without the fuss of configuring a streaming environment. WizardHat was built by Merlin Neurotech at Queen's University. Currently, WizardHat supports the Muse (2016) brain-sensing headband, the OpenBCI Ganglion, and runs on Python 3.6. WizardHat is easy to use and only requires three lines of code to get started. WizardHat's framework enables streaming, manipulation, and visualization of online EEG data.
Expand All @@ -8,26 +8,49 @@ For first time python users, please refer to our [beginner's guide](https://docs
## Note : Active Development
Our dedicated team at Merlin Neurotech is continously working to improve WizardHat and add new functionality.
Current on-going projects:
- Frequency Spectrum Data Class
- MNE Library Compatibility
- Implementing simple filters
- Power spectrum transformer

Check back soon if the feature you are looking for is under development!

## Getting Started

To set up WizardHat, begin by cloning this repository on your local environment. Once cloned, ensure you are in a new virtual environment and download the required dependencies.
The procedure for installing WizardHat depends on whether or not you will be contributing to its development. In either case, begin by creating and activating a new python virtual environment.

### Installing for use only
Simply run

pip install wizardhat

This will automatically install the most recent release of WizardHat along with the required dependencies.

### Installing for development
To set up WizardHat for development, begin by forking the repository on GitHub, then clone your fork:

git clone https://github.com/<your-github-username>/WizardHat.git

If you are also developing for ble2lsl, fork and then clone the ble2lsl repository as well, and install its dependencies:

git clone https://github.com/<your-github-username>/ble2lsl.git
cd ble2lsl
pip install -r requirements.txt
pip install -e .
cd ..

Whether or not you cloned ble2lsl, install the remaining dependencies for WizardHat:

cd WizardHat
pip install -r requirements.txt

### Finally

For more details on how to set up your python environment on Windows/MacOS/Linux please refer to our detailed instructions in the documentation file.
For more details on how to set up your Python environment on Windows/MacOS/Linux please refer to our detailed instructions in the documentation file.

Next, to ensure a bug free experience, open [your virtual env name]/lib/python3.6/site packages/pygatt/backends/bgapi/bgapi.py in a text or code editor and add:

time.sleep(0.25)

between line 200 and 201 and save the file. This ensures that the bluetooth protocol will be given adequate time to connect to the Muse before timing out.
between line 200 and 201 and save the file. This ensures that the Bluetooth protocol will be given adequate time to connect to the Muse before timing out.

Now you are ready to use WizardHat!

Expand Down Expand Up @@ -83,4 +106,4 @@ Chris,
Hamada

## Acknowledgements
This project was inspired by Alexander Barachant's [muse-lsl](https://github.com/alexandrebarachant/muse-lsl) from which some of the modules are derived or informed (particularly `ble2lsl` and some of `wizardhat.acquire`). The device specification for the OpenBCI Ganglion is largely derived from [OpenBCI_Python](https://github.com/OpenBCI/OpenBCI_Python).
This project was inspired by Alexander Barachant's [muse-lsl](https://github.com/alexandrebarachant/muse-lsl) from which some of the modules were originally based. The device specification for the OpenBCI Ganglion is largely derived from [OpenBCI_Python](https://github.com/OpenBCI/OpenBCI_Python).
2 changes: 0 additions & 2 deletions ble2lsl/__init__.py

This file was deleted.

Loading

0 comments on commit ad14ce9

Please sign in to comment.