MW75 EEG Streamer Documentationο
MW75 EEG Streamer is a Python package for streaming real-time EEG data from MW75 Neuro headphones. It provides a clean, modular architecture with support for multiple output formats including WebSocket, CSV, and Lab Streaming Layer (LSL).
Contents:
Key Featuresο
- β‘ High-Speed Streaming
Real-time EEG data streaming at expected ~500Hz with minimal latency
- π Multiple Output Formats
Stream to WebSocket, CSV files, Lab Streaming Layer (LSL), or stdout
- π§ MW75 Neuro Integration
Seamless integration with MW75 Neuro headphones using BLE activation
- π Data Validation
Built-in packet validation, checksum verification, and automatic conversion to microvolts
- π§ Modular Architecture
Clean, modular codebase with type safety and comprehensive logging
- π¬ Research Ready
Perfect for neuroscience research, BCI development, and real-time brain signal analysis
Quick Installationο
# Install from PyPI (recommended)
uv pip install "mw75-streamer[all]"
# For LSL support on macOS
brew install labstreaminglayer/tap/lsl
export DYLD_LIBRARY_PATH="/opt/homebrew/lib:$DYLD_LIBRARY_PATH"
Quick Usageο
# Basic streaming
python -m mw75_streamer --csv eeg.csv
python -m mw75_streamer --ws ws://localhost:8080
python -m mw75_streamer --lsl MW75_EEG
# Combined outputs
python -m mw75_streamer --csv eeg.csv --ws ws://localhost:8080
Platform Supportο
Currently supported on macOS only. The package uses macOS-specific Bluetooth frameworks (IOBluetooth via PyObjC) for BLE activation and RFCOMM streaming. Linux and Windows support are planned for future releases.
Requirementsο
macOS (primary platform)
Python 3.9+
MW75 Neuro headphones paired in macOS Bluetooth settings
Optional: WebSocket clients, LSL applications for real-time data consumption